Installation
Die Software für die HomeKit Brücke für KNX ist als Binärdatei verfügbar und kann auf allen gängigen Betriebssystemen installiert werden. Die Installation erfolgt entweder über ein vorgefertiges Raspberry Pi Disk Image oder über die Kommandozeile.
Herunterladen
Die Software steht für macOS, Linux und Raspberry Pi OS unter GitHub → Releases als Download zur Verfügung.
Plattform | Download |
---|---|
Mac 64-bit | hkknx-x.x.x_darwin_amd64 |
M1 Mac 64-bit | hkknx-x.x.x_darwin_arm64 |
Linux 64-bit | hkknx-x.x.x_linux_amd64 |
Linux 32-bit | hkknx-x.x.x_linux_386 |
Raspberry Pi 32-bit | hkknx-x.x.x_linux_arm |
Raspberry Pi Image
In dieser Anleitung wird ein vorgefertiges Raspberry Pi OS Image installiert. Dieses Disk Image beinhaltet eine vorkonfigurierte Installation der Brücke. Es muss nur noch auf eine SD-Karte kopiert, der Raspberry Pi damit gestartet und über Ethernet mit dem Netzwerk verbunden werden.
Das Kopieren eines Disk Images auf eine SD-Karte kann über verschiedene Programme und der Kommandozeile erfolgen. In dieser Anleitung wird der Raspberry Pi Imager verwendet.
Raspberry Pi Imager
Führe folgende Schritte aus um das Disk Image auf die SD-Karte zu kopieren.
- Aktuelles Disk Image
2023-02-27-raspio-lite_hkknx-2.7.1_linux_arm.img.gz
von der Projektseite unter Releases herunterladen. - Raspberry Pi Imager starten
- Gerät auswählen (Choose Device)
- Betriebssystem auswählen
- Choose OS
- Use Custom
- Disk Image auswählen
- SD-Karte auswählen (Choose Storage)
- Kopieren starten (Weiter)
Wenn das Kopieren abgeschloßen wurde, kannst du den Raspberry Pi mit der SD-Karte starten.
Internetverbindung
Es wird empfohlen den Raspberry Pi vor dem Start über Ethernet mit dem Heimnetzerk zu verbinden. Es sollte auch eine aktive Internetverbindung bestehen, damit Datum und Uhrzeit automatisch aktualisiert werden können.
WLAN ist standardmäßig deaktiviert. Um den Raspberry Pi dennoch mit dem WLAN zu verbinden, müssen folgende Schritte durchgeführt werden.
- Den Eintrag
dtoverlay=disable-wifi
aus der Dateiconfig.txt
in der boot Partition entfernen. - Die WLAN-SSID und das Passwort in der Datei
/etc/wpa_supplicant/wpa_supplicant.conf
angeben.
1# /etc/wpa_supplicant/wpa_supplicant.conf
2ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
3update_config=1
4
5network={
6ssid="<SSID>"
7psk="<Passwort>"
8}
Sobald der Raspberry Pi über Ethernet (oder WLAN) mit dem Netzwerk verbunden ist, kannst du die Weboberfläche über die URL http://hkknx.local:8080 aufrufen.
Auf diesem Disk Image ist das Betriebsytem Raspberry Pi OS installiert. Aus Sicherheitsgründen wurden folgende Änderungen an dem System vorgenommen.
- Der User
pi
wurde gelöscht. - Ein neuer User
admin
wurde erstellt. Das Passwort für diesen User lautethomekitbridgeforknx
. - SSH ist für den User
admin
aktiviert. - Der Hostname wurde auf
hkknx
geändert. - WLAN wurde mittels Eintrag
dtoverlay=disable-wifi
in/boot/config.txt
deaktiviert. Quelle
Kommandozeile
Bei der Installation über die Kommandozeile, werden die benötigten Dateien manuell heruntergeladen und installiert.
Zuerst wird eine Verbindung zu dem Raspberry Pi via SSH aufgebaut. Raspbian verwendet als Standardpassword raspberry
.
1ssh pi@raspberrypi.local
2# pi@raspberrypi.local's password: raspberry
Lade die aktuellste Version von der Projektseite unter Releases herunter. Im Falle des Raspberry Pi’s wird das Archiv mit der Endung ..._linux_arm.tar.gz
heruntergeladen und entpackt.
1wget https://github.com/brutella/hkknx-public/releases/download/2.6.0/hkknx-2.6.0_linux_arm.tar.gz
2tar -xzf hkknx-2.6.0_linux_arm.tar.gz
3ls
4# INSTALLATION.md hkknx hkknx-2.6.0_linux_arm.tar.gz
Installation
Nach dem Herunterladen und Entpacken des Archives wird die Datei hkknx
mit der Option --db=./database
ausgeführt. Die Option db
gibt an, in welchem Ordern die Daten gespeichert werden. Zum Testen nehmen wird den Ordern database
im aktuellen Arbeitsverzeichnis.
1./hkknx --db=./database
Weitere nützliche Optionen sind
--port
gibt den Port der Weboberfläche an (standardmäßig 8080)-–verbose
aktiviert die Debug-Ausgaben im Systemprotokoll
Daemon-Konfiguration
Die Software muss als Service/Daemon konfiguriert werden, damit bei einem Neustart die Binärdatei automatisch ausgeführt wird. Dafür erstellen wir einen systemd Service, wie hier beschrieben.
Dieser Service führt das Kommando /home/pi/hkknx --db=/home/pi/database
automatisch bei einem Neustart des Betriebssystems aus.
1. Datei mittels vim
erstellen
1$ vim /etc/systemd/system/hkknxd.service
2. Inhalt einfügen
Du kannst folgenden Inhalt für die hkknx.service
Datei verwenden.
1[Unit]
2Description=HomeKit Bridge for KNX
3After=network.target
4
5[Service]
6ExecStart=/home/pi/hkknx --db=/home/pi/database
7WorkingDirectory=/home/pi
8StandardOutput=inherit
9StandardError=inherit
10Restart=always
11User=pi
12
13[Install]
14WantedBy=multi-user.target
Wichtig ist der richtige Pfad zu der hkknx
Binärdatei und dem Datenbank-Ordner.
In diesem Beispiel befindet sich die Binärdatei unter /home/pi/hkknx
und der Datenbank-Ordner unter /home/pi/database
.
3. Service starten und stoppen
Der Service kann mit dem Befehl
1$ systemctl start hkknxd.service
gestartet und mit
1$ systemctl stop hkknxd.service
gestoppt werden.
Die Log-Ausgaben werden mit dem Befehl
1$ systemctl status hkknxd.service
angzeigt.
Updates
Neuere Versionen der Software können bequem über die Weboberfläche installiert werden. Klicke dazu in der Fußzeile auf die Versionsnummer und wähle “Nach Updates suchen”. Wähle dann eine Version aus und klicke auf “Installieren”.
Kommandozeile
Neben der Weboberfläche können Updates auch über die Kommandozeile heruntergeladen und installiert werden. Welche Version du für dein Betriebssystem benötigst, findest du unter Download.
Die aktuellste Version findest du unter GitHub → Releases.
Im folgenden Beispiel wird eine Version heruntergeladen und entpackt.
1wget https://github.com/brutella/hkknx-public/releases/download/2.6.0/hkknx-2.6.0_linux_arm.tar.gz
2tar -xzf hkknx-2.6.0_linux_arm.tar.gz
3ls
4# INSTALLATION.md hkknx hkknx-2.6.0_linux_arm.tar.gz
Nun muss die alte Binärdatei mit der neuen ersetzt werden.
Wenn du nicht weisst, wo sich auf deinem System die alte Binärdatei befindet, dass kannst du das mit dem Befehl which hkknx
herausfinden.
Im vorgefertigem Disk Image befindet sich die Binärdatei unter /usr/bin/hkknx
.
1# Service stoppen
2sv stop hkknx
3
4# Binärdatei ersetzen
5mv ./hkknx /usr/bin
6
7# Service starten
8sv start hkknx
Vorabveröffentlichungen
Neben den getesteten Updates, kannst du auch Vorabveröffentlichungen installieren. Diese Versionen enthalten die neuesten Änderungen und Funktionen.