Ansteuerung einer Xiaomi Monitor Light Bar über MQTT und Home Assistant
Erik Borowski
Ich habe in den letzten Monaten viel Zeit (und Geld) darein investiert, meinen Schreibtisch weiter zu optimieren. So habe ich beispielsweise hinter meinen Monitoren Lampen angebracht, um die Belastung der Augen zu reduzieren.
Zu einem smarten Smart Home gehört es natürlich dazu, dass sich der Farbton dieser Lampen dann automatisch an den Sonnenstand und die Tageszeit anpasst. Auch geht das Licht beispielsweise aus, wenn ich den Rechner sperre. Meine Light Bar oberhalb meines Bildschirms musste ich dann jedoch immer manuell anpassen. Denn die Light Bar kommuniziert zwar im 2,4 GHz-Bereich, lässt sich aber nicht so ohne weiteres in Home Assistant einbinden.
Doch dann bin ich auf zwei coole Repositories gestoßen: lamperez/xiaomi-lightbar-nrf24 und benallen-dev/xiaomi-lightbar. Plötzlich schien es sehr greifbar, die Light Bar doch automatisch ansteuern zu können. Beide konnte ich jedoch nicht so wirklich out-of-the-box einsetzten. Ersteres ist zwar sehr weit entwickelt, allerdings in Python geschrieben und für einen Raspberry Pi entwickelt. Für diese minimale Convenience-Steigerung will ich jedoch nicht 24/7 einen Raspberry Pi laufen lassen. Zweiteres ist zwar für Arduinos entwickelt, jedoch sehr gering vom Funktionsumfang und es fehlt beispielsweise völlig die Ansteuerung aus dem Netzwerk über MQTT.
Also habe ich mich entschlossen, mein bisschen Wissen über Arduinos und C++ zusammenzukratzen und eine eigene Version zu schreiben. Dank der hervorragenden Arbeit von lamperez musste ich selbst kein Reverse Engineering betreiben, sondern effektiv nur programmieren. Dafür habe ich dem Projekt aber noch eine automatische Erkennung in Home Assistant spendiert und an vielen Stellen bereits (sehr) weit in die Zukunft geplant.