Drücke „Enter”, um zum Inhalt zu springen.

HomeKit integration von unserem deCONZ ZigBee Gateway

Marcel 0

In dem Beitrag “Alternatives ZigBee Gateway” haben wir unser Gateway eingerichtet und die Sensoren und Aktoren aus “ZigBee Geräte so viel Auswahl” verbunden. Jetzt wollen wir die Geräte zusammen mit den anderen HomeKit Geräten steuern können. Doch von haus aus unterstützt das deCONZ Gateway diese Funktion nicht. Dafür brauchen wir homebridge. Das ist ein npm Packet welches ein HomeKit Server simuliert und damit nicht Zertifizierte HomeKit Geräte trotzdem verfügbar macht.

Es gibt für viele verschieden Geräte sogenannte Plugins (Zusatzmodule), die diese in Homebridge integrieren. Z.B. homebridge-hue, welches wir hier für die deCONZ/Hue Integration nutzen oder homebridge-camera-ffmpeg zum einbinden einer Überwachungskamera.

Abhängigkeiten überprüfen und insstallieren

Als erstes verbinden wir uns mit unserem Pi, wie das geht könnt ihr noch einmal hier nachlesen. Wenn ihr den Pi mit meiner Anleitung eingerichtet habt, dann ist noch kein npm installiert. dies könnt ihr überprüfen indem ihr mit dem Kommando die Version auslest:

sudo npm -v

sudo npm -v nicht gefunden

Dann müssen wir also npm erst noch installieren. Das geht mit dem folgenden Befehl:

sudo apt-get install npm

NPM version überprüfen & installieren

Das dauert jetzt eine Weile und danach prüfen wir erneut welche Version installiert wurde.

NPM Version überprüfen

Hier sehen wir allerdings das die Version 1.4.21 installiert wurde, aktuell sind wir bei der Version 6.9.0 also aktualisieren wir das ganze mit dem Befehl:

sudo npm i -g npm

“i” bedeutet “install” also installiere, “-g” steht für Global und im anschluss welches Packet installiert werden soll.

NPM updaten

Nun haben wir also npm installiert und aktualisiert. Jetzt können wir endlich mit Homebridge beginnen.

Hierfür nehmen wir wieder den npm install Befehl:

sudo npm i -g homebridge

installieren von homebridge

Und für das Hue Plugin:

sudo npm i -g homebridge-hue

installieren von homebridge-hue

Konfiguration von Homebridge

Homebridge ist installiert, muss aber nun noch konfiguriert werden. Dafür kopieren wir als erstes die Beispielconfiguration von”/usr/lib/node_modules/homebridge/config-sample.json” nach “/home/pi/.homebridge/config.json” mit folgendem Befehl:

cp /usr/lib/node_modules/homebridge/config-sample.json /home/pi/.homebridge/config.json

Dann öffnen wir sie mit dem Texteditor nano:

sudo nano /home/pi/.homebridge/config.json

kopieren der Konfiguration

Das sieht jetzt eventuell erst einmal verwirrend aus, aber ist wenn man es erst einmal verstanden hat recht einfach. Die Konfiguration ist als JSON-Datei gespeichert. Das steht für JavaScript Object Notation. Kurz das wichtigste: Ein Objekt beginnt mit “{” und endet mit “}”, ein Array mit “[” und “]”. Attribute eines Objekts werden mit ‘ ” ‘ umschlossen und deren Inhalt steht hinter dem “:”. Dieser kann entweder ein string (text), “Homebridge”, eine number (Zahl), 51826, ein boolean (Boolescher Wert), true/false, ein Array oder ein weiteres Objekt sein. Hier empfehle ich den https://jsoneditoronline.org/ zum Anschauen/Überprüfen oder bearbeiten eines JSONs.

So viel zu JSON, kommen wir zurück zum bearbeiten der Konfigurations-Datei.

Beispielkonfiguration

Als erstes löschen wir das “accessory”-Beispielobjekt und ändern die platform von “PhilipsHue” auf einfach nur “Hue” sonst erkennt er das nicht. Die Konfig sieht dann so aus:

Eigene Konfiguration

Wir benden das nun mit der Tastenkonfiguration “Strg”+”X”anschließend ein “J”, ja wir wollen die änderungen speichern und die “Enter” Taste zum bestätigen des Dateinamens.

Jetzt starten wir das erste mal Homebridge mit

homebridge

Das sucht jetzt nach einem Gateway im Netzwerk und versucht sich zu verbinden. Damit das klappt müssen wir jetzt auf die Weboberfläche des Gateways. Die Verbindung zum Pi einfach minimieren, wir brauchen diese noch. Auf den Menübutton oben links klicken

Einstellungen vom deCONZ Gateway

Hier dann auf Gateay gehen, auf erweitert und app Verbinden anklicken.

App verbinden zu deCONZ Gateway

Damit erstellen wir einen neuen Nutzer mit dem sich unsere homebridge dann beim Gateway anmelden kann. Diesen neuen Nutzer sehen wir jetzt im Log der homebridge anwendung auf dem Pi:

Username & Password auslesen

Den müssen wir jetzt im anschluss in die Konfiguration eintragen. Dazu beenden wir homebridge mit der Tastenkombination “Strg”+”C” und öffnen den editor.

sudo nano /home/pi/.homebridge/config.json

Jetzt tragen wir den user bei der Platform “Hue” ein sodass es dann so aussieht:

Username & Passwort in Konfiguration schreiben

Vergesst nicht das Komma “,” hinter “name”: “Hue”, und die Klammer zu “}” hinter dem users Objekt.

Jetzt einmal homebridge starten mit:

homebridge

Homebridge gestartet

Einrichten von HomeKit im Handy

Wenn ihr den QR-Code angezeigt bekommt hat alles geklappt und ihr könnt nun euer Handy rausholen und die Home App Öffnen. Falls ihr sie noch nicht herunter geladen habt dann könnt ihr diese im AppStore downloaden.

Apple Home Gerät hinzufügen Teil 1 Apple Home Gerät hinzufügen Teil 2

Hier könnt ihr nun den QR-Code oder den Zahlen Code abfotografieren oder ihr clickt auf “Code fehlt bzw. kann nicht gescannt werden?” und kommt zu folgender Ansicht. Klickt dort auf Homebridge bestätigt dass ihr es trotzdem Hinzufügen wollt und gebt den Code per Hand ein.

Apple Home Gerät hinzufügen Teil 3 Apple Home Gerät hinzufügen Teil 4

Anschließend werden euch alle Geräte angezeigt die mit der Hue Bridge gekoppelt sind.

Homebridge automatisch starten

Damit ihr nicht die Konsole die ganze Zeit offen haben müsst lassen wir nun Homebridge nach dem Hochfahren automatisch starten.

Dies geht mit den folgenen vier Befehlen:

sudo npm install -g pm2

sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u pi –hp /home/pi

pm2 start homebridge

pm2 save

homebridge autostart über pm2

Nun ist alles eingerichtet und Homebridge startet automatisch.

Mehrere Homebridges

Wenn ihr mehrere Homebridges in euer HomeKit integrieren wollt, dann solltet ihr bei jedem andere name, username, port und pin vergeben

“bridge”: {
    “name”: “Homebridge”,
    “username”: “CC:21:3D:E3:CE:31”,
    “port”: 51826,
    “pin”: “031-45-155”
},

Wann brauche ich mehr als eine Homebridge? => HomeKit hat ein Limit auf 100 Geräte pro Bridge.

Schreibe einen Kommentar

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

*

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.