Upgrade to Pro — share decks privately, control downloads, hide ads and more …

MQTT com café ou vice-versa

MQTT com café ou vice-versa

B59b1bd643ff429bb27032b05d4f2e23?s=128

Houssan A. Hijazi

January 08, 2019
Tweet

More Decks by Houssan A. Hijazi

Other Decks in Programming

Transcript

  1. MQTT com café ou vice-versa

  2. Quem? • André Queiroz - andrequeiroz.com@gmail.com ◦ Analista de suporte

    ◦ 7 anos experiência com Arduino ◦ 1 ano experiência com RaspberryPi ◦ Santista
  3. 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
  4. MQTT Message Queue Telemetry Transport

  5. História • Projeto IBM, final dos anos 90 • Criadores:

    Andy Stanford-Clark (IBM) e Arlen Nipper (Cirrus Link)
  6. 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
  7. 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
  8. Quem usa ? • IBM • Facebook • Eclipse Foundation

    • Intel • Bosh • Siemens • Ubuntu • Mosquitto • Mais em: https://iot.eclipse.org/working-group/#members
  9. Broker Subscriber Publisher Subscriber Subscriber Subscribe a topic Publish data

    topic Send msg to clients Arquitetura MQTT Publisher Publisher
  10. Hardware / Projeto • Arduino ESP8266 • Rele - Acionamento

    mecânico • Cafeteira
  11. Projeto Unifilar 5v (CC) 5v (CC) 110/220 (AC) GPIO: D2

  12. Código Arduino • PubSubClient • ESP8266WiFi

  13. Código Arduino

  14. 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…
  15. MQTT Python • Paho library • pip install paho-mqtt

  16. Script On/Off Python

  17. Script On/Off Python

  18. 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?
  19. Android

  20. Projeto Broker Publish message ON/OFF to topic gdgfoz/coffeeiot Send message

    ON/OFF to topic gdgfoz/coffeeiot Subscribe topic gdgfoz/coffeeiot
  21. Código Android • Kotlin • Paho library

  22. None
  23. Tá, e o café?

  24. Códigos • https://github.com/hussanhijazi/mqtt-coffee-arduino • https://github.com/hussanhijazi/mqtt-coffee-python • https://github.com/hussanhijazi/mqtt-android

  25. Contatos • Houssan Ali Hijazi - hussanhijazi@gmail.com • André Queiroz

    - andrequeiroz.com@gmail.com