Uma implementação ESP32 MQTT Home Assistant do aplicativo BRmesh para controlar luzes.
Adiciona luzes automaticamente e as disponibiliza por meio de um corretor MQTT.
Os grandes projetos existentes nos quais este trabalho se baseia:
BRMesh_homeassistant por @millskyle
brMeshMQTT por @ArcadeMachinist
É baseado em PlatformIO, construído via VSCode. Baixe a fonte e faça o flash para um dispositivo ESP32 usando PlatformIO.
Por padrão, as partições ESP32 serão muito pequenas, então também incluí o layout da tabela de partições, que também pode ser atualizado usando PlatformIO.
Defina os detalhes do seu WiFi e o MQTT Broker em main.cpp antes de atualizar.
//Endereço IP do seu corretor MQTT (provavelmente seu host Home Assistant)#define MQTT_BROKER_ADDR IPAddress(192,168,0,1)//Seu SSID WiFi#define WIFI_SSID "YOUR_SSID"//Sua senha Wifi#define WIFI_PASS "YOUR_WIFI_PASS"
Apague suas luzes.
Ligue o ESP32, se estiver usando um módulo ESP32 Dev (como eu), a luz azul acenderá para mostrar que está no modo de digitalização.
Acenda suas luzes.
O ESP32 envia uma mensagem “viva” para as luzes, recebe uma resposta delas, envia uma nova chave (que faz cada luz piscar) e elas respondem para dizer que estão configuradas. Eles são então disponibilizados como dispositivos MQTT (devem ser visualizados em seu corretor usando https://github.com/thomasnordquist/MQTT-Explorer).
Você está pronto para ir!
Não consigo testar o código "ColorTemperature" corretamente, pois não é uma função que minhas luzes possuem.
Adicionar luzes ocasionalmente tem sido instável. Testei esse código em um grupo de 7 luzes, para as quais funcionou bem, mas você terá que ver como se sai. Alguns dos tempos de votação para os quadros de publicidade BLE podem precisar de ajustes.
Contribuições são sempre bem-vindas!