Já escrevi sobre como usar ESP8266 com Alexa usando as placas da AFEletronica, agora vou começar uma série utilizando outro recurso, de algumas maneiras diferentes. Vamos abrir essa série com o mais fácil e rápido, hum?
Quais placas são suportadas?
Qualquer ESP8266 deve funcionar. Alguns não tem porta USB, dependendo de um adaptador. Alguns adaptadores não fornecem corrente o suficiente, mas esses FTDIs com tensão seletiva via jumper são bons o suficiente. A propósito, recomendo a leitura desse artigo sobre gravadores, do Laboratório Maker 09.
Requisitos adicionais
Não tem requisitos adicionais. Nem haverá programação nesse primeiro artigo, pois vamos usar um dos firmwares prontos. Não gosto de escrever sobre firmwares prontos, mas foi o MicroPython compilado que me permitiu dedicar mais tempo às implementações do que à preparação. Por essa razão olhei com bons olhos para um firmware que não é novidade, mas que não é “tão” conhecido – o Tasmota. Se manja dos “ingrêis”, pode pular esse artigo e ir direto para a documentação do projeto.
Download do firmware
O download do firmware para usar o ESP8266 com Alexa pode ser baixado no repositório. Existem diversas versões relacionadas a recursos e também versões com mudança de idioma. Baixe a versão BR.
Flasher para o firmware
Temos várias opções, algumas multiplataformas. Dessa vez me interessou utilizar a ferramenta Tasmotizer. Para Windows, pegue-o nesse link.
Para instalar o Tasmotizer no Linux, usamos o pip:
pip3 install --upgrade pip wheel
pip3 install tasmotizer
#se obtiver erro ao executar, instale a dependência:
sudo apt-get install python3-pyqt5.qtserialport
Broker MQTT
Parafraseando a documentação, o Tasmota foi projetado para controle e comunicação via MQTT. Um broker MQTT é uma boa pedida para gerar dashboards e alarmes do seu ESP8266 com Alexa. Se deseja configurar seu próprio broker, recomendo Esse artigo sobre broker MQTT no Raspberry, mas serve para qualquer Linux.
Gravar o firmware Tasmota
Hora de por a mão na massa. O backend do Tasmotizer é o esptool. Isto é, ele é um front-end, como uma série de programas em Linux, o que permite trabalhar tanto por linha de comando como por interface gráfica. No caso, o Tasmotizer é um facilitador do uso do esptool, com alguns recursos adicionais.
Pelo que vi (e ainda não testei), o Tasmotizer é capaz de baixar a última versão estável e fazer o flashing. Nesse primeiro momento gravei o firmware que baixei. O processo é simples e a interface é limpa:
Apenas indiquei o firmware e cliquei em “Tasmotize!”. Ao término do processo é solicitado o reinício do dispositivo:
Desconecte o ESP8266 e reconecte.
Configuração inicial
Antes de seguirmos com a configuração do ESP8266 com Alexa, saiba que podemos enviar as configurações pela GUI da aplicação. Aqui estou seguindo fielmente o processo linear da documentação para a prova de conceito, daí evoluímos nos próximos artigos relacionados.
O WiFi manager só fica ativo por 3 minutos. Se por alguma razão passar do tempo limite para iniciar o processo, basta reconectar o ESP8266.
O modo AP tem o IP padrão 192.168.4.1, que deverá ser acesso por um browser após termos nos conectado ao dispositivo pela rede AP. Ele deverá aparecer como “Tasmota_xxxxxx…”.
Configure a rede WiFi à qual o dispositivo deverá se conectar.
Aí temos um ponto crucial pra muita gente; depois que o dispositivo estiver conectado à sua rede WiFi, como saber qual o IP? Bem, a forma mais simples é abrir a interface do roteador e olhar a lista de IPs atribuídos aos dispositivos. Eu optei por renomear o host para tasmota01, facilitando sua identificação, ainda mais após adicionar vários dispositivos.
Outra opção é através de um scanner, seja o nmap, Wireshark, scanner em shell script ou um scanner de portas feito com Arduino ou um scanner de portas feito com ESP32. Opções não faltam. Descobriu o IP que seu ESP8266 pegou? Então abra um browser e digite o endereço correspondente. Deve abrir uma tela semelhante a essa:
Em configuração > configurar outras opções escolha Belkin WeMo para dispositivo com 1 relé e Hue Bridge com dispositivo para mais relés. Escolha um nome amigável para chamar. Não é necessário instalar nenhum aplicativo no smartphone para fazer o reconhecimento, basta aguardar que o dispositivo reinicie após aplicar as configurações e dizer:
“Alexa, descobrir dispositivos”.
Aí está seu ESP8266 com Alexa! Mas ainda falta configurar os GPIO, afinal, ligar e desligar o quê? Por padrão já temos esse primeiro GPIO configurado (que aparece como “OFF”). Configurei com o nome “tasmota”, então ao dizer: “Alexa, ligar tasmota” – o dispositivo é ligado e a string passa de OFF pra ON.
Clicando em Configurar Módulo, ajuste o GPIO de acordo. Eu configurei o D5/GPIO14 para esse módulo de teste.
Já coloquei também em meu broker MQTT e vi alguns tópicos que o dispositivo publica por padrão. Se eu me animar, teremos um belo dashboard com essas informações!
Assim como no fauxmo, o número máximo de dispositivos descobertos pela Alexa será 4. Assim que eu conseguir fazer o vídeo veremos mais detalhes, então partimos para outro artigo da série. Aproveite para ir se inscrevendo no canal Dobitaobyte no Youtube para não perder nada!
Relacionado
Tags: alexa firmware gpio mqtt tasmota wifi manager
Continue Reading
Previous Funções lambda no MicroPython
Next Regex no MicroPython – Programe menos!
Artigos relacionados
6 min read
Arduino
CNC
DIY
Eletronica
ESP32
esp8266
Raspberry
Motor de passo com HBS860H e encoder
30 de agosto de 2021 Djames Suhanko
3 min read
Embedded
ESP32
esp8266
IoT
Home automation: O que é Sonoff
16 de agosto de 2021 Djames Suhanko
6 min read
Arduino
ESP32
esp8266
Experimento: Bonsai de Ipê
12 de julho de 2021 Djames Suhanko
Você pode ter esquecido...
6 min read
Programação
Como programar em Python: Setup
26 de novembro de 2021 Djames Suhanko
10 min read
Kit Maker
Raspberry
Laboratório Maker 11: SWD debugger – Debug da Raspberry
24 de novembro de 2021 Djames Suhanko
10 min read
Embedded
Inteligencia Artificial
IoT
Linux
Raspberry
Monitorar câmeras e ONVIF no Raspberry
21 de novembro de 2021 Djames Suhanko
3 min read
Programação
Raspberry
Debug da RPi Pico no VS Code com PlatformIO
16 de novembro de 2021 Djames Suhanko
Como todo o site, esse também usa cookie. Que tal deixar de ver essa msg chata confirmando seu conhecimento na causa? Política dos biscoitos