MQTT com café ou vice-versa
Quem?
● André Queiroz - andrequeiroz.com@gmail.com
○ Analista de suporte
○ 7 anos experiência com Arduino
○ 1 ano experiência com RaspberryPi
○ Santista
Quem?
● Houssan Ali Hijazi - hussanhijazi@gmail.com
○ Organizador GDG Foz do Iguaçu
○ Desenvolvedor Android na Ignus Digital - https://ignusdigital.com/
○ http://www.lojasparaguai.com.br/
○ http://www.desaparecidosbr.org/
○ http://www.dolarpy.com.br/
○ Santista
MQTT
Message Queue Telemetry Transport
História
● Projeto IBM, final dos anos 90
● Criadores: Andy Stanford-Clark (IBM) e Arlen Nipper
(Cirrus Link)
Definição
● MQTT (Message Queue Telemetry Transport)
● É um protocolo de rede M2M que trabalha no top da pilha
TCP/IP.
● Alternativa para Comunicação entre Máquinas
Características
● É um protocolo leve para redes com largura de banda
limitada e alta latência
● Paradigma PUB/SUB
● Broker (Middleware)
● Assíncrono
● Consome poucos recursos dos dispositivos (Bateria,
Processamento, Largura de Banda)
● Altamente escalável
● Fácil Implementação
Quem usa ?
● IBM
● Facebook
● Eclipse Foundation
● Intel
● Bosh
● Siemens
● Ubuntu
● Mosquitto
● Mais em: https://iot.eclipse.org/working-group/#members
Broker
Subscriber
Publisher
Subscriber
Subscriber
Subscribe a
topicPublish data
topic
Send msg to
clients
Arquitetura MQTT
Publisher
Publisher
Hardware / Projeto
● Arduino ESP8266
● Rele - Acionamento mecânico
● Cafeteira
Projeto Unifilar
5v (CC)
5v (CC)
110/220
(AC)
GPIO:D2
Código Arduino
● PubSubClient
● ESP8266WiFi
Código Arduino
Projeto
Broker
Publish message
ON/OFF to topic
gdgfoz/coffeeiot
Send message
ON/OFF to topic
gdgfoz/coffeeiot
Subscribe topic
gdgfoz/coffeeiot
Script: Python, Java,
Kotlin, Ruby, Javascript
etc…
MQTT Python
● Paho library
● pip install paho-mqtt
Script On/Off Python
Script On/Off Python
Rodar por crontab do linux
● Linguagem: Python, Java, Kotlin, Ruby, Javascript etc…
● Criar script
● Adicionar ao cron do linux
● Rodar num horário específico
● E se acordar mais cedo ou mais tarde ?
● E se for feriado?
Android
Projeto
Broker
Publish message
ON/OFF to topic
gdgfoz/coffeeiot
Send message
ON/OFF to topic
gdgfoz/coffeeiot
Subscribe topic
gdgfoz/coffeeiot
Código Android
● Kotlin
● Paho library
Tá, e o café?
Códigos
● https://github.com/hussanhijazi/mqtt-coffee-arduino
● https://github.com/hussanhijazi/mqtt-coffee-python
● https://github.com/hussanhijazi/mqtt-android
Contatos
● Houssan Ali Hijazi - hussanhijazi@gmail.com
● André Queiroz - andrequeiroz.com@gmail.com

MQTT com café ou vice-versa