Steuerung von Rollläden mit Velux KIG 300 Gateway ohne Velux Cloud

Begonnen von phys1, 20 April 2026, 19:49:23

Vorheriges Thema - Nächstes Thema

phys1

Die Steuerung über einen Cloud Dienst ist immer mit Risiken verbunden, z.B. Internet fällt aus oder die Cloud wird abgeschaltet oder gehackt. Es gibt zwar eine Lösung mit fhem, aber die nutzt ebenfalls die Velux Cloud: https://forum.fhem.de/index.php?topic=134795.15 Daher möchte ich hier eine Lösung vorstellen, wie das mit fhem nur im lokalen Netzwerk möglich ist.

Voraussetzungen:
a. Velux KIG 300 Gateway
b. Zum Gateway kompatible Rollläden und/oder el. Fenster (io-homecontrol)
c. fhem läuft auf einem Debian basierten System, z.B. Raspberry Pi

Folgende Schritte sind erforderlich:
1.a KIG 300 ins WLAN einbinden
1.b KIG 300 mit den zu steuernden Produkten koppeln
2. homekit_python auf dem Debian System installieren
3. homekit_python mit dem KIG 300 paaren
4. fhem einrichten, um die Velux Produkte zu steuern

Für 1.a ist einmalig die Velux Active App und ein Velux Konto erforderlich. Danach kann man beides löschen oder auch parallel weiterbetreiben. Die Steuerung über fhem erfolgt später nur über das lokale Netzwerk. Wenn KIG 300 bereits eingerichtet und mit den Produkten gekoppelt ist, kann man entweder mit Schritt 2 weitermachen oder alternativ KIG 300 aus der App entfernen (das entfernt auch die Kopplung zu den Produkten) und mit Schritt 1.a neu beginnen.

1.a Velux Active App auf Smartphone installieren. KIG 300 mit Steckdose verbinden: LED blinkt beim Booten grün und danach weiß, um Konfigurationsbereitschaft anzuzeigen. App starten und mit Velux Konto anmelden. Alle Schritte zum Einbinden des Gateways ins WLAN befolgen, bis die Meldung "Gut gemacht" erscheint. Die LED am Gateway muss erlöschen. Danach die App schließen.
1.b. Gateway mit Produkten koppeln. Dazu benötigt man eine mit dem Produkt zuvor gekoppelte Fernbedienung. Die Prozedur ist hier ab Punkt 2 beschrieben: https://info.velux.de/velux-active-support/homekit

Die anderen Schritte erkläre ich später. Wer Interesse hat und das ganze auch testen möchte, kann sich gerne hier melden.

JoWiemann

Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

phys1

Schritt 2. homekit_python (jlusiardi) auf Raspberry Pi OS (oder anderen Debian basierten Systemen) installieren:

Auf aktuellen Systemen (Trixie/Bookworm) sollte man das relativ alte Paket in einer virtuellen Umgebung installieren, um nicht mit anderen Python Bibliotheken oder Programmen in Konflikt zu kommen.
Ich verwende hier pyenv. Benötigte Bibliotheken systemweit installieren:
sudo apt update
sudo apt install make build-essential libssl-dev zlib1g-dev \
libbz2-dev libreadline-dev libsqlite3-dev curl git libncursesw5-dev \
xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev
Damit der user fhem mit einer Shell arbeiten kann, muss in der Datei /etc/passwd mit einem (mit sudo aufgerufenem) Editor der Eintrag für fhem von /bin/false in /bin/bash geändert werden.
Dann als user fhem weiterarbeiten:
sudo su - fhemDer Prompt ändert sich z.B. in fhem@raspberrypi.
Nun pyenv für user fhem installieren:
curl -fsSL https://pyenv.run | bash
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.profile
echo '[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.profile
echo 'eval "$(pyenv init - bash)"' >> ~/.profile
Shell verlassen und wieder aufrufen, damit die Änderungen wirksam werden
exit
sudo su - fhem
Ein mit homekit_python kompatibles Python installieren, d.h. eine Version zwischen 3.7.0 und 3.11.99.
Die verfügbaren Versionen auflisten:
pyenv install --list | grep -E ' 3\.+'Ich verwende 3.11.15:
pyenv install 3.11.15Das Installieren dauert etwas, da es aus dem Quellcode erfolgt.
Virtuelle Umgebung mit der installierten Python Version erstellen. Der Name (hier homekit) kann frei gewählt werden:
pyenv virtualenv 3.11.15 homekit
pyenv activate homekit
Der Prompt ändert sich erneut. Nun das Paket homekit installieren, z.B. meine gepatchte Version.
/Pfad/zu/ an den aktuellen Ort des Pakets anpassen, user fhem muss mindestens Lesezugriff haben. [IP] ohne Leerzeichen anfügen:
pip3 install /Pfad/zu/homekit-0.19.2.tar.gz[IP]Alternativ kann man die letzte vom Autor freigegebene Version installieren und danach mit meinem get_events.diff selber patchen:
pip3 install homekit[IP]Nun wird's spannend. Prüfen, ob das Velux KIG 300 gefunden wird:
python3 -m homekit.discoverNach einigen Sekunden beendet sich das Programm und zeigt die gefundenen homekit devices an.
Sollte Python meckern, dass homekit nicht gefunden wird, stimmt etwas mit der Installation nicht. Sollte das KIG 300 nicht gefunden werden, prüft man zunächst, ob es mit ping auf seine IP von der Shell aus erreichbar ist (die IP muss im Router sichtbar sein).

Demnächst gehts weiter...