Apple Home (HomeKit) – Devolo Geräte mit der Apple App steuern – Homebridge

Kennt ihr das? Aus der Not heraus, weil ein Dritter irgendwelchen Mist verzapft, entsteht eine großartige Idee, die dann auch noch gut umgesetzt wird?

In meinen Fall war der Dritte Devolo, Devolo hat vor ein paar Wochen ihre Home Control iOS-App auf 1.1 geupdatet. Diese hatte ein tolles neues Feature: „iPad-Ansicht: optimierte Darstellung für iPads (Querformat)

Geil Freunde, nur leider wird dieses Querformat erzwungen, eine Nutzung am iPad im Hochformat ist nicht mehr möglich. Prima, wenn das iPad mini zur Haussteuerung im Hochformat an der Wand hängt. (Sarkasmus-Schild)

➡ Auch die Version 1.2 die vor ein paar Tagen erschienen ist, hat das „Problem“ nicht behoben – obwohl ich mich mehrfach beschwert habe. UPDATE_20170407: Das ersehnte Update soll voraussichtlich Ende April / Anfang Mai kommen.

Naja, jedenfalls war ich ziemlich sauer, bin oft im Kopf durchgegangen:

  • wieder zurück zu Homee?
  • andere Alternativen?
  • gedulden bis das Problem behoben ist?

Zwische durch hat Amazon Echo mit Alexa die Blogs bestimmt – Skills, Devolo Skill, IFTTT, HA Bridge, Homebridge. Und irgendwie im Gespräch mit meinem Arbeitskollegen Kevin, den einige von euch bereits von unserem Projekt bidvoy kennen, kam die Idee, da er auch gerade auf das Devolo HomeControl umgestiegen ist, dass eine Steuerung in Apples Home App (HomeKit) eine wirklich feine Sache wäre.

Stichwort Homebridge: Homebridge ist eine Schnittstelle, die offiziell nicht HomeKit kompatible Geräte, teilweise HomeKit kompatibel werden lässt. Dazu benötigt man, wie sollte es anders sein, im besten Fall einen Linux-Server oder Raspberry Pi.

Nun ja, für Homebridge gibt es dann jede Menge Plugins, die oftmals nicht vom Homebridge-Entwickler selber stammen, sondern von der Community rundherum.

Ich persönlich nutze aktuell homebridge-cmdswitch2homebridge-dashhomebridge-devolohomebridge-fritzhomebridge-harmonyhubhomebridge-httphomebridge-huehomebridge-netatmohomebridge-samsungtv-controlhomebridge-serverhomebridge-sonos und homebridge-wunderground.

Nur leider gab es zu diesem Zeitpunkt noch kein Homebridge-Plugin für Devolo Geräte die mit dem Devolo HomeControl verbunden sind – aufgrund der fehlenden offiziellen API auch so gut wie nicht machbar.

Aber nach etlichen Stunden Reverse Engineering der iOS- & Android-Apps hatten wir alles zusammen, was man für ein funktionierendes Plugin benötigt. (… wir kleinen Blackhats!)
Kevin machte sich an die Arbeit und ein paar Tage später, nachdem wir mit Devolo die rechtliche Seite geklärt hatten, haben wir alles auf GitHub hochgeladen, wo es nun jeder SmartHome-Liebhaber mit Homebridge benutzen kann. Nach und nach werden sicher noch ein paar Features dazukommen. :mrgreen:

Homebridge

Vorbereitung

Um Homebridge installieren zu können, benötigt man noch ein paar weitere Debian Pakete, welche wir mit apt-get nachinstallieren.

Da Homebridge für Node.js geschrieben ist, müssen wir natürlich auch Node installieren.

Installation

Homebridge installieren

Jetzt sind alle Vorbereitungen abgeschlossen und Homebridge kann installiert werden.

Homebridge Dienste erstellen

Damit Homebridge ordentlich, wie es auf Linux-Systemen üblich ist, als Dienst (systemd) laufen kann, werden zwei Dateien benötigt. Eine zur Konfiguration …

… und eine für den Dienst selber.

Im Verzeichnis /var/lib/homebridge wird die config.json angelegt, die für die gesamte Konfiguration für Homebridge zuständig ist – diese Datei ist für Homebridge das Herzstück! Erstmal muss allerdings das Verzeichnis angelegt werden.

Um Die Installation abzuschließen, sollten noch die Dienste neugeladen werden und der Homebridge-Dienst aktiviert werden, damit dieser beim (Neu)Start des Betriebsystems automatisch gestartet wird.

Konfiguration

Kommen wir nun zur Konfiguration des, vor ein paar Zeilen erwähnten, Herzstückes von Homebridge. In der nachfolgenden Standardkonfiguration des „nackten“ Homebridges könnt ihr ggf. den Pin anpassen, welchen ihr erst am Ende des Artikels benötigt.

Jetzt starten wir den Dienst „Homebridge“ und prüfen ob dieser erfolgreich war.

Wichtig wäre, dass am Ende der Logdatei „Homebridge is running on port 51826“ erscheint.

Die Warnmeldungen von „Apple Bonjour“ und „Avahi“ können ignoriert werden – laut Homebridge Entwickler wäre es ein großer Aufwand diese zu unterdrücken, dieser steht aber in keiner Relation zum Nutzen.

Homebridge-Devolo

Nachdem wir die Basis für das Devolo Plugin geschaffen haben, kommen wir nun zum Eingemachten.

Installation

Mit der Paketverwaltung für Node.js (npm) installieren wir nun das Devolo Plugin.

Konfiguration

In unserem „Herzstück“ müssen nun im Bereich „platforms“ Anpassungen vorgenommen werden – siehe unten. Achtet hierbei ganz besonders auf die richtige Kommasetzung und die geschweiften Klammern {}, um die Fehlermeldung „There was a problem reading your config.json file“ zu vermeiden.

  • host = lokale IP von eurer Devolo Zentrale (HomeControl)
    • die Kommunikation zwischen Homebridge und der Zentrale findet im lokalen Netzwerk statt, es wird keine aktive Internetverbindung zur Steuerung der Geräte benötigt
  • email = Benutzername mit dem ihr euch bei mydevolo.de anmelden könnt
  • password = das dazugehörige Passwort

Um zu prüfen, ob alles funktioniert hat, muss Homebridge neugestartet werden. Sollte die Fehlermeldung „There was a problem reading your config.json file“ erscheinen, ist mit großer Wahrscheinlichkeit ein Komma zu viel oder eine Klammer zu wenig – da kann ich euch JSONLint empfehlen, hier könnt ihr den Inhalt eurer config.json rein kopieren und prüfen lassen.

Nunja, der nachfolgende Neustart von Homebridge ist für die abschließende Konfiguration sehr wichtig, da wir dann in der Logdatei 3 noch benötigte Zeilen finden werden – UUID, GATEWAY und PASSKEY.

Diese 3 Zeilen mit der UUID, dem GATEWAY und PASSKEY müssen nun noch in die config.json, …

… wenn dies erledigt ist, muss Homebridge ein letztes Mal neugestartet werden.

Wenn wir nun in die Logdatei schauen, werden wir endlich für unsere Mühen belohnt, denn wir sehen, dass jede Menge Devolo Geräte gefunden wurden und diese voraussichtlich auch in der Apple Home App angezeigt werden.

Tipp: Ich starte über /etc/crontab jede Nacht Homebridge einmal neu – sicher ist sicher.

Apple Home (HomeKit)

Zum Abschluss muss nun nur noch unser iOS-Gerät mit der Homebridge verbunden werden – hierzu benötigen wir nun den Pin, den wir am Anfang in der config.json festgelegt haben.

Verbinden

Ein Tipp am Rande: Aktuell werden von der Apple Home App nicht alle Funktionen unterstützt die HomeKit im Stande wäre umzusetzen – dies wird zwar von iOS Release zu iOS Release besser, aber dennoch lohnt es sich in andere Apps zu schauen die HomeKit unterstützen, beispielsweise Hesperus.

Viel Spaß mit euren Devolo Geräten in Apple Home.

Was habt ihr so für SmartHome-Spielereien in eueren vier Wänden? Was begeistert euch?

 

Veröffentlicht von

_nico

Mac-User aus Leidenschaft, Blogger seit Oktober 2009, 88er Baujahr, technikaffin. Ich fühle mich aber nicht nur auf Apple'schen Betriebssystemen zu Hause, alles was eine Shell hat, interessiert mich besonders! Ihr findet mich auch auf Twitter und Google+.

2 Gedanken zu „Apple Home (HomeKit) – Devolo Geräte mit der Apple App steuern – Homebridge“

  1. Hi,

    weisst Du zufälig, ob zukünftig auch noch Szenen und Regeln aus der DHC ausgelesen und im Devolo Plugin verwendet werden können?

    1. Hi Tim,

      ja, das wird zukünftig gehen. Ich nutze auch schon ein Testbuild davon. 🙂

      Allerdings können Regeln nicht aktiviert oder deaktiviert werden – das geht auf dem lokalen DHC nicht (das Plugin geht nicht über die Cloud, sondern bleibt lokal). Die Regeln wären dann also nur eine „Statusanzeige“. Die Szenen können aber „abgespielt“ werden und so auch ggf. die Regeln geschaltet werden. :mrgreen:

      Gruß Nico

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.