Homebridge installieren und einrichten

Dieser Artikel beschreibt die Installation und initiale Konfiguration von Homebridge, um nicht zertifizierte Geräte in Homekit nutzen zu können. Darüber hinaus sollen die hier enthaltenen Links einen schnellen Einsteig in das Thema Homekit und Homebridge ermöglichen.

Als ich mich immer stärker mit dem Thema Smarthome beschäftigte merkte ich relativ schnell wie breit das Angebot inzwischen ist. Die Hürden in diesem Markt sind aus meiner Sicht die Hersteller abhängigen Protokolle und Zertifizierungen. Das hat natürlich vor und Nachteile. So hat man zum Beispiel eine begrenzte Auswahl an Produkten, die für Apple Homekit zertifiziert sind. Dafür ist die Integration, wie von Apple Produkten gewohnt sehr einfach und standardisiert. Allerdings wächst das Angebot an Smarthome Produkten sehr rasant. Das bedeutet aber auch, dass viele alternative Produkte nicht Homekit zertifiziert sind. Folglich muss man darauf hoffen, dass neue Anbieter oder Produkte schnellstmöglich Homekit zertifiziert werden. Das kann unter Umständen aber sehr lange dauern. Am Ende ist man eventuell sogar enttäuscht, weil die Zertifizierung nie erfolgt oder zugunsten einer Alexa oder Google Home Zertifizierung verschoben wird. Darüber hinaus sind Homekit zertifizierte Produkte hochpreisig. Diese Umstände können elegant mit Homebridge umgangen werden!

Eine Übersicht Homekit zertifizierter Produkte liefert folgende Übersicht: https://www.apple.com/de/ios/home/accessories/

Homebridge erweitert das Homekit Angebot

Das Angebot an Homekit fähigenProdukten lässt sich über Homebridge aber deutlich erweitern! Homebridge emuliert dabei das Protokoll von Homekit, um Produkte nicht zertifizierter Anbieter in der Home App verfügbar zu machen. Sehr häufig wird der Server auf einem Raspberry Pi installiert. Die Software ist Open Source und wird sehr gut gepflegt und aktualisiert. Kosten entstehen also lediglich für die Hardware des Pi. Den Pi kann man sowohl in einzelnen Teilen kaufen als auch fertig zusammen gebaut. Wie der Raspberry mit einem Betriebssystem für die Homebridge Installation vorbereitet werden kann beschreibe ich hier. Jetzt aber zu den einzelnen Installationsschritten:

Homebridge auf Raspberry Pi installieren

1. Ahavi DNS installieren

sudo apt-get install -y libavahi-compat-libdnssd-dev

2. Node downloaden für Pi Version 3 und 4

wget https://nodejs.org/dist/v10.16.0/node-v10.16.0-linux-armv7l.tar.gz

3. Node entpacken. (Abschluss ohne Terminal Meldung)

tar xf node-v10.16.0-linux-armv7l.tar.gz

4. Node an die richtige Stelle kopieren (Abschluss ohne Terminal Meldung)

sudo cp -R node-v10.16.0-linux-armv7l/* /usr/local/

5. Node-Versionsmanager installieren für spätere Updates

sudo npm install -g n

6. Node auf stabile Version updaten

sudo n lts

7. Homebridge-User einrichten, eine Zeile (Abschluss ohne Terminal Meldung)

sudo useradd -m -c "Homebridge Service" -s /bin/bash -G audio,bluetooth,dialout,gpio,systemd-journal,video homebridge

8. Homebridge Benutzer Rechte setzen (Es öffnet sich der Nano Editor)

sudo visudo -f /etc/sudoers.d/homebridge

Im Editor folgendes eintragen und dann speichern mit ctrl+x, dann J drücken und mit Enter bestätigen. Nano schließt sich

homebridge ALL=(root) SETENV:NOPASSWD: /usr/local/bin/npm, /bin/systemctl restart homebridge, /usr/local/bin/node

9. Dateirechte setzen

sudo chmod 640 /etc/sudoers.d/homebridge

10. Homebridge installieren

sudo npm install -g --unsafe-perm homebridge

11. Homebridge Verzeichnis einrichten

sudo mkdir -p /var/homebridge

12. Homebridge Konfig Datei erstellen

sudo nano /var/homebridge/config.json

Die leere Datei um folgende Zeilen ergänzen:

{
	"bridge": {
		"name": "Homebridge",
		"username": "CC:22:3D:E3:CE:30",
		"port": 51826,
		"pin": "031-45-154"
	},
	"description": "Smarthome",
	"platforms": [],
	"accessories": []
}

13. Homebridge User Berechtigungen setzen ((Abschluss ohne Terminal Meldung)

sudo chown -R homebridge:homebridge /var/homebridge

14. Homebridge Start Script erstellen(Automatischer Start der Bridge bei Pi Neustart), speichern mit ctrl+x, dann J drücken und mit Enter bestätigen

sudo nano /etc/systemd/system/homebridge.service

[Unit]
Description=Node.js HomeKit Server
After=syslog.target network-online.target

[Service]
Type=simple
User=homebridge
EnvironmentFile=/etc/default/homebridge
ExecStart=/usr/local/bin/homebridge $HOMEBRIDGE_OPTS
Restart=on-failure
RestartSec=10
KillMode=process

[Install]
WantedBy=multi-user.target

15. Zweites Script, Speichern mit ctrl+x, dann J drücken und mit Enter bestätigen

sudo nano /etc/default/homebridge
# Defaults / Configuration options for homebridge
# The following settings tells homebridge where to find the config.json file and where to persist the data (i.e. pairing and others)
HOMEBRIDGE_OPTS=-I -U /var/homebridge

# If you uncomment the following line, homebridge will log more
# You can display this via systemd's journalctl: journalctl -f -u homebridge
# DEBUG=*

16. systemd initialisieren

sudo systemctl daemon-reload

17. Auto Neustart Homebridge nach Pi Reboot.

sudo systemctl enable homebridge

Dann sollte diese Meldung zum Abschluss erscheinen:

Created symlink /etc/systemd/system/multi-user.target.wants/homebridge.service → /etc/systemd/system/homebridge.service.

Automatischer Homebridge Homebridge Systemstart eingerichtet.
Homebridge Systemstart

Das sollte es nun soweit gewesen sein. Jetzt kann endlich die Homebridge gestartet werden. Hier eine Übersicht der wichtigsten Befehle:

Homebridge starten:

sudo systemctl start homebridge

Homebridge stoppen:

sudo systemctl stop homebridge

Homebridge Neustart

sudo systemctl restart homebridge

Logfile anzeigen

sudo journalctl -fau homebridge

Sobald die Homebridge läuft erhält man auf NPM einen sehr guten Überblick wie groß inzwischen das Angebot an Plugins ist.

https://www.npmjs.com/search?q=homebridge

Ich habe in der Vergangenheit einige Plugins probiert. Vor der Installation eines Plugins solltet ihr genau lesen, was das Plugin zu bieten hat und welche Anforderungen es benötigt. Manche Plugins sind nur sehr rudimentär. So schnell wie ein Plugin installiert ist, ist es aber auch wieder deinstalliert falls es nicht den eigenen Ansprüchen genügt. Ich achte immer darauf, ob das Plugin aktiv supportet wird. Ein Indikator ist dabei, ob regelmäßig neue Versionen gibt.

Ich hoffe die hier dargestellte Übersicht hat euch gefallen und ihr besucht meine Seite bald wieder. Gerne könnt ihr auch einen Kommentar hinterlassen.

3 Gedanken zu „Homebridge installieren und einrichten

  • April 1, 2020 um 8:34 pm
    Permalink

    Thank you for the auspicious writeup. It in fact was a amusement
    account it. Look advanced to more added agreeable from you!
    However, how can we communicate?

    Antwort
  • Mai 20, 2020 um 10:57 am
    Permalink

    Danke für die Anleitung. Ich habe jetzt aber eine Frage dazu:
    Welches Passwort hat dann der User „homebridge“, welchen wir bei Punkt 7 anlegen?

    Antwort
    • Mai 23, 2020 um 12:31 pm
      Permalink

      Der User hat kein Passwort.

      Antwort

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.