This page is also available in the other languages: English Deutsch

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
Bei der Verwendung der Software ohne Lizenz sind alle Funktionen verfügbar. Jedoch können nur 15 HomeKit Geräte verwendet werden. Eine Lizenz kann über die Weboberfläche erworben werden. Mehr erfahren

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.

  1. Aktuelles Disk Image 2023-02-27-raspio-lite_hkknx-2.7.1_linux_arm.img.gz von der Projektseite unter Releases herunterladen.
  2. Raspberry Pi Imager starten
  3. Gerät auswählen (Choose Device)
  4. Betriebssystem auswählen
    • Choose OS
    • Use Custom
    • Disk Image auswählen
  5. SD-Karte auswählen (Choose Storage)
  6. Kopieren starten (Weiter)

Wenn das Kopieren abgeschloßen wurde, kannst du den Raspberry Pi mit der SD-Karte starten.

Die SD-Karte muss mindestens eine Kapazität von 16GB haben.

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.

Das vorgefertige Raspberry Pi Image basiert auf dem Raspberry Pi OS Betriebssystem. Zum Aktualisieren von Datum und Uhrzeit wird hier standardmäßig timesyncd verwendet.

WLAN ist standardmäßig deaktiviert. Um den Raspberry Pi dennoch mit dem WLAN zu verbinden, müssen folgende Schritte durchgeführt werden.

  1. Den Eintrag dtoverlay=disable-wifi aus der Datei config.txt in der boot Partition entfernen.
  2. 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}

raspberrypi.org →

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 lautet homekitbridgeforknx.
  • 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
Die Software besteht nur aus der Binärdatei hkknx. Es gibt keine Abhängigkeit zu anderen Projekten. knxd wird nicht benötigt.

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.

Achtung: Vorabveröffentlichungen sind noch nicht vollständig getestet und können zu unvorhergesehenem Verhalten führen.

© Matthias Hochgatterer – MastodonGithubRésumé