Ich habe, wie die Meisten hier im Forum, so einige Geräte über eine Homebridge in HomeKit gebracht und bin mit der Funktion im Allgemeinen sehr zufrieden.
Jedoch brauche ich an dieser Stelle wohl nicht die Vorteile eines nativen HomeKit Devices aufzählen. Kürzere Aktualisierung- und Reaktionszeiten sowie Unabhängigkeit von einer Bridge und einem Raspberry sind zumindest zwei davon.
Daher habe ich mich in den letzten Tagen damit auseinander gesetzt, das ein oder andere Gerät meiner "Sammlung" auf anderen Wegen in HomeKit zu bringen.
Wie in meiner zuletzt hochgeladenen Anleitung: Nativer HomeKit Zwischenstecker mit Sonoff Basic bereits beschrieben, bin ich hier auf RavenSystem gestoßen. Eine alternative Firmware für Geräte, die auf dem ESP8266 basieren, um diesen eine direkte Einbindung in HomeKit zu ermöglichen.
Nachdem ich in der vorangegangenen Anleitung erfolgreich einen nativen HomeKit Zwischenstecker zum Laufen brachte, war mein nächstes Ziel nun, meine LED-Strips, die beispielsweise eine Hintergrundbeleuchtung für meinen Fernseher bilden, ohne eine Homebridge in HomeKit zu integrieren.
Bisher habe ich für LED-Strips die MagicHome Controller verwendet und diese über das homebridge-magichome Plugin in HomeKit gebracht.
Im Folgenden zeige ich die benötigen Schritte, um einen MagicHome RGBW Controller nativ HomeKit fähig zu machen.
Genutzte Hardware:
Raspberry 3B+ mit Raspbian Buster
FT232RL FTDI TTL zu USB Adapter
Mini USB Kabel
3x Jumper Kabel male<->female
4x Jumper Kabel male<->male
Breadboard
Lötkolben
Wichtig: Vor Punkt 4 wird das Netzteil des Controllers nicht angeschlossen. Wir arbeiten hier mit 12V, gefährden mit zwei linken Händen also anders als bei der vorherigen Anleitung nicht unser Leben. Bei falscher Reihenfolge oder Nichtbeachtung von Schritten gefährden wir jedoch das Leben des Controllers sowie unseres Adapters!
Wir gehen in der Anleitung davon aus, dass der genutzte Adapter bei Anschluss an den Raspberry die Bezeichnung ttyUSB0 hat. Mit dem Befehl
schaut ihr nach, ob dies bei euch ebenfalls so ist.
Vorbereitungen:
Zuerst laden wir aus dem Wiki die Datei fullhaaboot.bin herunter und legen sie auf unserem Raspberry im Standard-Nutzer Verzeichnis /home/pi ab.
Außerdem benötigen wir noch das esptool auf unserem Raspberry und installieren dieses über:
Als Nächstes müssen wir unseren MagicHome Controller mit dem FTDI Adapter verbinden. Dazu löten wir uns einfach vier Jumper Kabel an die folgenden Punkte:
Zur Übersicht nutze ich hier farbige Kabel.
Nach Schritt 11 können die Jumper Kabel jederzeit wieder vom Controller entfernt werden.
Als Nächstes leiten wir GND, RX & TX unseres FTDI Adapters mit weiteren Jumper Kabeln auf ein Breadboard (Man könnte theoretisch auch ohne Breadboard arbeiten und den Controller direkt mit dem Adapter verbinden, so ist es aber deutlich einfacher, wie man gleich sehen wird)
und verbinden den Adapter über das Mini USB Kabel mit dem Raspberry (die LED des Adapters leuchtet nun).
Los gehts:
Es ist nun ganz wichtig, die folgenden Schritte nacheinander und exakt in dieser Reihenfolge zu machen!
1. GND von Controller an GND von FTDI Adapter
2. RX von Controller an TX von FTDI Adapter und TX von Controller an RX von FTDI Adapter
3. GPIO00 von Controller an GND von FTDI Adapter
4. Das 12V Netzteil des Controllers anschließen
5. Nach 2-3 Sekunden GPIO00 wieder von FTDI Adapter trennen
Der Controller befindet sich nun im "Flash-Mode" und kann von uns angesprochen werden.
6. Löschen des Flash Speichers
7. Das 12V Netzteil trennen und den Controller erneut in den "Flash-Mode" bringen, dazu einfach wieder bei Punkt 3 starten
8. Nun die neue Firmware auf den Controller flashen
esptool.py -p /dev/ttyUSB0 --baud 115200 write_flash -fs 1MB -fm dout -ff 40m 0x0 fullhaaboot.bin
9. 12V Netzteil trennen
10. RX & TX von Controller vom FTDI Adapter trennen
11. GND von Controller vom FTDI Adapter trennen (GND wird zuletzt getrennt)
12. Nun können wir den Adapter bei Seite legen, er wird nicht mehr benötigt. Den Controller verbinden wir erneut mit dem 12V Netzteil. Er baut nun einen Hotspot "HAA-..." auf, mit dem wir uns von unserem iPhone aus verbinden.
13. In der, sich öffnenden Weboberfläche tragen wir in das Feld "JSON Config" folgenden String ein:
Der Haken bei „Auto OTA Updates“ ist optional und ermöglicht dem Controller, Updates von den Github Servern zu laden.
14. Haben wir alle Eingaben gemacht, können wir danach unser WLAN auswählen und den Vorgang durch Eingabe des Kennwortes und anschließende Auswahl der „Save“ Schaltfläche abschließen.
15. Der MagicHome RGBW Controller ist nun nativ HomeKit-fähig und kann über den Code 021-82-017 in HomeKit hinzugefügt werden.