Diese Anleitung ist eine Zusammenfassung von anderen Anleitungen, die teilweise nicht funktioniert haben. Es geht hier um die Installation von Homebridge auf einem Raspberry Pi.
Folgende Voraussetzungen sollten gegeben sein:
Ich empfehle das Homebridge Raspberry Pi Image zu verwenden. Hier sind bereits alle wichtigen Komponenten eingerichtet (z.B. SSH aktiviert) und ist über einen Webbrowser bedienbar.
Die Installation mit dem Image über wie auf der Seite von Homebridge - Get Started beschrieben funktioniert sehr gut. Nach der Installation ist der Raspberry Pi über den Hostnamen homebridge.local zu erreichen. Ab jetzt kann alles über die Weboberfläche erledigt werden.
Sollte der Name homebridge im Netzwerk bereits anderweitig vergeben sein, so ist der vom neu installieren Raspberry Pi der Name wie folgt zu ändern:
ssh pi@<IP-Adresse> sudo raspi-config 2 Network Options auswählen N1 Hostname auswählen Neues Hostnamen vergeben, z.B. raspberrypi Finish wählen Raspberry PI neu starten
Danach kann mit ssh pi@raspberrypi.local Verbindung aufgenommen werden.
Nach der Installation ist eine Anmeldung im Browser über homebridge.local möglich. Für Homebridge und Raspberry Pi sind nach der Installation die folgenden Standardzugangsdaten vergeben:
User | Passwort | |
---|---|---|
Homebridge | admin | admin |
Raspberry Pi | pi | raspberry |
Homebridge biete die Möglichkeit auf Terminalebene des Raspberry Pi mit dem Browser zu kommen. Somit ist kein zusätzliches Terminal Programm (z.B. Putty) notwendig.
Aus Sicherheitsgründen empfiehlt es sich die Standardpassworte zu ändern. Entweder jetzt gleich, oder später nach fertiger Installation.
Bevor irgendwie weitergemacht wird sollte die aktuelle Konfiguration auf den letzten Stand gebracht werden. Im Terminal die folgenden Befehle eingeben:
# Nach Updates suchen sudo apt-get update # Upgrade durchführen sudo apt-get upgrade # Bei Bedarf wenn angegeben: sudo apt-get autoremove # Wenn viele Änderungen waren kann der Raspberry Pi zur Sicherheit neu gestartet werden: sudo reboot now
Auch Homebridge verträgt hin und wieder mal ein Update:
Im Konfigurations-Editor sind alle Einstellungen und Plugins gespeichert. Um später im Apple HomeKit keinen kryptischen Namen zu haben, können im Bereich „bridge“, „name“ die 5 Zeichen nach Homebridge entfernt werden.
"name": "Homebridge",
Sonst ist hier weiter eigentlich nichts zu ändern, ausser ein Plugin wird hier nicht ordentlich eingetragen.
Wer keinen KNX Bus hat ist eigentlich schon fertig und kann mit Homebridge loslegen.
Um mit dem KNX Bus zu kommunizieren wird ein Daemon (Service) benötigt. Die Installationsbeschreibung findet man prinzipiell hier.
Die Verwendung des Terminals wird für die folgenden Befehle NICHT empfohlen. Aufgrund der teilweise sehr langen Laufzeiten kann es zu Timeouts und dadurch zu Unterbrechungen kommen.
# Notwendige Pakete installieren sudo apt-get install git # get the source code git clone -b debian https://github.com/knxd/knxd.git # now build+install knxd sh knxd/install-debian.sh # ACHTUNG: Dieser Befehl dauert sehr lange, je nach Raspberry Pi Modell mehrere Stunden. # Der Computer sollte in dieser Zeit daher nicht in einen Ruhezustand gehen und das # Terminalprogramm die Verbindung verlieren.
Um zu testen, ob KNXD nun installiert ist einfach knxd aufrufen, dann sollte die Verwendung beschrieben werden.
Die Konfigurationsdatei befindet sich unter /etc/knxd.conf.
sudo nano /etc/knxd.conf
Hier sind oben die KNXD Optionen eingetragen. Bei mir funktioniert das:
KNXD_OPTS="-e 7.0.1 -E 7.0.100:100 -u /tmp/eib -b ipt:<IP Adresse des KNX/IP Gateways>"
Nach erfolgter Änderung ist der Service neu zu starten:
sudo systemctl restart knxd.service
Ob alles richtig funktioniert kann mit dem Tool knxtool getestet werden. (hier am Beispiel einer Lampe zum Einschalten):
knxtool groupswrite local: 0/1/2 1
Für die Anbindung an den KNX Bus muss jetzt ein Plugin installiert werden:
In der Datei knx_config.json (Aufruf über nano knx_config.json) werden die Geräte für HomeKit konfiguriert. Ein komplette Dokumentation ist hier zu finden.
Hier ist ein Beispiel mit einer Lampe zum Testen:
{ "knxd_ip": "127.0.0.1", "knxd_port": 6720, "AllowWebserver": true, "AllowKillHomebridge": false, "Devices": [ { "DeviceName": "Lampe", "Services": [ { "ServiceType": "Lightbulb", "ServiceName": "Lampe", "Characteristics": [ { "Type": "On", "Set": [ "0/1/2" ], "Listen": [ "0/1/2" ] } ], "KNXReadRequests": [ "0/1/2" ] } ] } ] }
Damit Homebridge über KNXD mit dem KNX Bus kommunizieren kann ist in der Homebridge Konfiguration noch eine Änderung durchzuführen. Normalerweise erledigen das Plugins bei der Installation. Das Homebridge-KNX Plugin macht das nicht. Möglicherweise will man durch einen fehlenden KNXD ein dauerndes Neustarten der Homebridge verhindern. Wenn für KNX alles sauber eingerichtet ist KNXD und die knx_config.json), dann kann dies durchgeführt werden:
{ "name": "KNX", "platform": "KNX" }
Wie die Konfiguration nun genau erfolgt ist hier gut beschrieben.
Es empfiehlt sich von allen wichtigen Daten eine Sicherung anzulegen.
Homebridge bietet eine einfache Möglichkeit über die Weboberfläche an:
Zusätzlich sollte auch die Datei /etc/knxd.conf oder zumindest deren Inhalt gesichert werden.
Es empfiehlt sich auch von der SD Karte regelmäßig ein Image zu ziehen. Dann erspart man sich im die komplette Einrichtung und muss nur Systemupdates und eventuell Konfigurationsänderungen nachtragen, bzw. aus dem Homebridge Backup von oben wiederherstellen.