esp8266GeralIoTProgramação

Como utilizar MQTT no ESP8266 com MicroPython

MQTT no ESP8266 | webserver com micropython

MQTT no ESP8266

Bem, após o artigo sobre a refrigeração de cerveja na semana de fermentação, agora vamos para o controle da cerveja nas duas semanas de maturação – essa, na geladeira. Na verdade, esse artigo é um predecessor do controle de temperatura na geladeira, onde veremos previamente como instalar MQTT no ESP8266 com MicroPython. Mas antes, gostaria de dar uma dica para quem resolver fazer o sistema com pastilha de peltier para a semana de fermentação. Tive um problema essa semana, pois o volume de cerveja era grande e a levedura estava elevando bastante a temperatura dentro do cooler de isopor, chegando aos 29.5 e quase matando a levedura, então peguei meio litro de água congelada (gelo) e coloquei dentro do isopor. A temperatura baixou para 22 graus e permaneceu por quase 8 horas! Enquanto isso, coloquei um pote de sorvete com água para gelar e ao trocar depois das 8 horas, cheguei a 17 graus! Aí entendi que a pastilha não estava vencendo algum momento da temperatura, mas quando o valor limite era quebrado, a pastilha ajudava a manter firmemente. Então a dica é essa, dá pra conservar até lager no isopor! Voltando ao tema do artigo atual.

Em relação ao suporte a MQTT usando MicroPython – você pode utilizar esse firmware em qualquer ESP8266 que você tenha, desde o ESP-01, e o procedimento será o mesmo. Vou deixar já os artigos de referência que podem lhe interessar.

Se você deseja compilar seu próprio firmware do MicroPython (em Linux):

http://www.dobitaobyte.com.br/versao-estavel-micropython-para-esp8266/

Porém, se prefere pegar o firmware compilado, eu o disponibilizo junto ao procedimento no artigo abaixo, na sessão “Trocando o firmware NodeMCU por MicroPython”. Serve para substituir qualquer firmware, não se preocupe:

http://www.dobitaobyte.com.br/produto-final-com-esp8266-electro-dragon/

Se quiser configurar seu próprio broker (em Linux também, fiz com Raspberry) para fazer a automação de sua casa, incluindo uma explicação sobre esse protocolo da IoT:

http://www.dobitaobyte.com.br/iot-configurando-um-mqtt-broker/

Acredito que seja o suficiente por enquanto.

Sobre o MQTT





Já escrevi muitos artigos sobre MQTT com Raspberry, Arduino, Onion Omega, ESP8266 com NodeMCU etc. Todavia, é possível que você ainda não conheça o MQTT, mas se conhece, pule para o próximo tópico.

O MQTT é o protocolo da IoT, sendo cada vez mais utilizado nos dias atuais. É um protocolo leve, por isso roda em qualquer tipo de dispositivo embarcado, desde MCUs à CPUs de todos os tipos. Não é nada de outro mundo; do lado da MCU/CPU se envia e se recebe uma mensagem “do” e “para” o server, que é chamado de broker. Aqui mesmo no site você encontra a configuração de um broker, que também é trivial e estou rodando meu broker em casa em um Raspberry, mas se desejar, pode inclusive colocar sua rede na nuvem através de um broker público ou pago.

MQTT no ESP8266

Se você já conhece o firmware do NodeMCU, deve saber que ele tem suporte nativo ao MQTT e é bastante simples utilizá-lo. Quanto ao MicroPython para ESP8266, está em uma versão estável mas ainda amadurecendo, então não está tão recheado como o NodeMCU, mas não há dúvida que utilizar o MicroPython para conectar sua rede via MQTT é mais simples que qualquer coisa. A única questão é que você precisará incluir o suporte ao MQTT no MicroPython, e isso também é simples.

Download do MicroPython

Não sei se tem por aí firmware do MicroPython oficial para download. Eu compilei o meu próprio e estou disponibilizando-o para download através do repositório MASUGUX no git (clique para ir ao github). Nesse artigo sobre o Electro Dragon eu mostrei como instalar o firmware, não tem segredo.

Download do uMQTT para ESP8266

A biblioteca do MQTT para MicroPython se chama uMQTT, sendo que dentro do diretório de bibliotecas você terá umqtt.simple e umqtt.robust e ambas são necessárias. Pegue as bibliotecas no git primeiramente:

Instalação do MQTT no MicroPython

Depois de clonado, os arquivos necessários estarão dentro de micropython-lib/umqtt.simple/umqtt e micropython-lib/umqtt.robust/umqtt. Você pode copiá-los para dentro do sistema de arquivos do ESP8266 de forma bem simples, bastando seguir as dicas desse outro tutorial. Copie-os para o sistema de arquivos do ESP8266, crie um diretório “umqtt” e mova-os para dentro desse diretório:

Pronto, seu ESP8266 já está com suporte a MQTT!

Um exemplo simples que fiz para testar foi acender a luz da minha bancada:

Simples ou não? Para ver os métodos disponíveis, use (após fazer o import da primeira linha acima):

E exemplos maiores estarão no próximo artigo relacionado à Electro Dragon e maturação da cerveja, se inscreve aí, deixe seu like em nossa página do facebook alí na coluna da direita e aguarde pelas novidades!

1 Star2 Stars3 Stars4 Stars5 Stars (978 votes, average: 5,00 out of 5)
Loading...

Inscreva-se no nosso newsletter, alí em cima à direita e receba novos posts por email.

Siga-nos no Do bit Ao Byte no Facebook.

Prefere twitter? @DobitAoByte.

Inscreva-se no nosso canal Do bit Ao Byte Brasil no YouTube.

Nossos grupos:

Arduino BR – https://www.facebook.com/groups/microcontroladorarduinobr/
Raspberry Pi BR – https://www.facebook.com/groups/raspberrybr/
Orange Pi BR – https://www.facebook.com/groups/OrangePiBR/
Odroid BR – https://www.facebook.com/groups/odroidBR/
Sistemas Embarcados BR – https://www.facebook.com/groups/SistemasEmbarcadosBR/
MIPS BR – https://www.facebook.com/groups/MIPSBR/
Do bit Ao Byte – https://www.facebook.com/groups/dobitaobyte/

Projetos Arduino e Eletrônica – https://www.facebook.com/groups/projetosarduinoeletronica/

ESP8266 BR – https://www.facebook.com/groups/ESP8266BR/

Próximo post a caminho!

One comment

Comments are closed.

%d blogueiros gostam disto: