Eine ESP32 MQTT Home Assistant-Implementierung der BRmesh-App zur Steuerung von Lichtern.
Fügt Lichter automatisch hinzu und stellt sie über einen MQTT-Broker zur Verfügung.
Die großartigen bestehenden Projekte, auf denen diese Arbeit basiert:
BRMesh_homeassistant von @millskyle
brMeshMQTT von @ArcadeMachinist
Es basiert auf PlatformIO und wurde über VSCode erstellt. Laden Sie die Quelle herunter und flashen Sie sie mit PlatformIO auf ein ESP32-Gerät.
Standardmäßig sind die ESP32-Partitionen zu klein, daher habe ich auch das Partitionstabellenlayout eingefügt, das auch mit PlatformIO geflasht werden kann.
Legen Sie vor dem Flashen Ihre WLAN-Details und den MQTT-Broker in main.cpp fest.
//IP-Adresse Ihres MQTT-Brokers (wahrscheinlich Ihres Home Assistant-Hosts)#define MQTT_BROKER_ADDR IPAddress(192,168,0,1)//Ihre WLAN-SSID#define WIFI_SSID „YOUR_SSID“//Ihr WLAN-Passwort#define WIFI_PASS „YOUR_WIFI_PASS“
Schalten Sie Ihr Licht aus.
Schalten Sie den ESP32 ein. Wenn Sie ein ESP32-Entwicklungsmodul verwenden (wie ich), leuchtet das blaue Licht auf, um anzuzeigen, dass es sich im Scanmodus befindet.
Schalten Sie Ihr Licht ein.
Der ESP32 sendet eine „lebendige“ Nachricht an die Lichter, erhält eine Antwort von ihnen, sendet einen neuen Schlüssel (der jedes Licht blinken lässt) und sie antworten mit der Meldung, dass sie eingestellt sind. Diese werden dann als MQTT-Geräte zur Verfügung gestellt (sollten auf Ihrem Broker unter https://github.com/thomasnordquist/MQTT-Explorer sichtbar sein).
Es kann losgehen!
Ich kann den „ColorTemperature“-Code nicht richtig testen, da es sich bei meinen Lichtern nicht um eine Funktion handelt.
Das Hinzufügen von Lichtern war gelegentlich flockig. Ich habe diesen Code an einer Gruppe von 7 Lichtern getestet, bei denen er gut funktioniert hat, aber Sie müssen sehen, wie Sie zurechtkommen. Einige der Abfragezeiten für die BLE-Werberahmen müssen möglicherweise angepasst werden.
Beiträge sind jederzeit willkommen!