Velux Rollladen mit Somfy und Node-Red steuern

Seit vielen Jahren bietet Velux für seine Dachfensterlösungen die Nachrüstung von Rollläden an. Egal, ob man sich für Solarrollladen oder kabelgebundene Rollläden entscheidet, kann man diese in sein Smart Home einbinden. In vielen Fällen wird hierzu das KLF-200-Interface verwendet. Wer hingegen bereits eine Somfy-Basisstation (Tahoma Switch) besitzt, kann sich den Kauf des KLF 200 sparen. Im folgenden Artikel zeige ich, wie sich die Rollläden mit Somfy und Node-Red einfach in eine Smart-Home-Lösung integrieren lassen.
Rollladen anlernen
Zunächst wird der neue Velux-Rollladen über die Somfy-App angelernt. Hierzu ist keine Zusatzhardware von Velux oder Somfy erforderlich, sofern der Tahoma Switch vorhanden ist.
Dazu wählt man in der Somfy-App das Haussymbol und „Produkt hinzufügen“ aus. Anschließend wählt man „Fenster und Sonnenschutz“ und dann „Außensonnenschutz“ aus. Bei der Art des Außensonnenschutzes wird „Rollläden“ und bei der Fernbedienung „Wandsensor“ ausgewählt. Nun sollte der „Velux-Wandsensor“ erscheinen, den man anklickt.
Nun muss die SET-Taste des Velux-Wandsensors gedrückt werden. Am unteren Gehäuserand befinden sich zwei Öffnungen: Die linke ist mit einem Zahnrad versehen und stellt die SET-Taste dar, die rechte ist mit zwei übereinanderliegenden Fenstern versehen. Mit einem spitzen Gegenstand wird die linke Taste mit dem Zahnradsymbol so lange gedrückt, bis sich der Rollladen zu bewegen beginnt. Anschließend wird in der App auf „Weiter“ gedrückt. Die App sucht im Hintergrund nach dem VELUX-Empfänger und meldet nach kurzer Zeit, dass ein Rollladen gefunden wurde.
Der neue Rollladen ist jetzt in der Tahoma-App angelernt und kann darüber bedient werden. Die Option „Diskret“ reduziert das Geräusch der Rolladenbewegung durch langsameres Rollen. Ich empfehle dringend, dem Rollladen im folgenden Dialog noch einen sprechenden Namen zu geben, da wir diesen in Node-Red noch benötigen werden.
Ich nenne meinen Rollladen „DG Rollladen Mitte“.
Hinweis: In der Tahoma-App wird zwar der Name des Rollladen in der richtigen Länge angezeigt, bei der späteren Nutzung in Node-Red kann es aber sein, dass der Name nur gekürzt wiedergegeben wird.
Mit Node-Red Gerätedaten auslesen
Wie man den Tahoma Switch mit Node-Red ausliest, habe ich bereits im Beitrag Weinor Markisen mit NodeRed und Somfy API steuern beschrieben. Als Ergebnis des Beitrags erhalte ich neben der Adresse für den Switch auch den Token (Passwort), mit dem ich in den folgenden Schritten die Geräte abfragen kann.
Zunächst frage ich alle Geräte auf dem Tahoma Switch ab. Dazu muss ich den Befehl „Get Devices“ mit der Adresse der API des Tahoma Switches an die Zentrale schicken. Dies ist im oben genannten Artikel genau beschrieben. Ich habe mir diese Abfrage in Node-Red so eingerichtet, dass ich jederzeit alle Geräte abfragen kann. Nach dem Absetzen des GET-Befehls über einen „http-request“-Node erhalte ich im Debug-Fenster ein Objekt mit allen auf dem Tahoma Switch registrierten Geräten, deren Status und Befehlen. Bitte daran denken, den Bearer-Token immer neu einzugeben. Durch Aufklappen der Objektdetails kann ich nach meinem Rollladen „DG Rollladen Mitte“ suchen.
Da ich den Namen meines neuen Geräts kenne, fällt es mir nun leicht, es im Objektbaum zu finden. Kurz darunter steht die IO-Adresse, die ich zum Senden von Befehlen brauche. Im Array „Commands“ steht, dass ich die Befehle „up“, „close“ und „stop“ benutzen kann, um den Rollladen zu bewegen.
Nun habe ich alle erforderlichen Details, um das Gerät zu steuern.
Velux Rollladen steuern
Um einen Steuerbefehl absetzen zu können, muss ich Daten als POST-Request an die API-Funktion „exec” schicken.
Die Befehlszeile dazu sieht wie folgt aus:
Diese Befehlszeile, die ich mit einem HTTP-Request-Node absetze, benötigt als Input noch ein Datenobjekt, in dem ich angebe, welches Gerät ich mit welchem Befehl ansprechen möchte. Hier wird dann die IO-Adresse meines „DG Rollladen Mitte” verwendet.
Für das Runterfahren sieht das Datenobjekt wie folgt aus:
Dabei besteht die IO-Adresse immer aus der Adresse des Tahoma Switches, gefolgt von der siebenstelligen Geräteadresse des eigentlichen Geräts. Der Name des Gerätes ist für den Befehl nicht wichtig, da das Gerät eindeutig durch seine IO-Adresse bestimmt wird.
In Node-Red sieht das dann wie folgt aus:
Möchte man hingegen den Status abfragen, erhält man diesen mit einem Get-Befehl, der die API-Funktion /setup/devices/ aufruft. Bei der IO-Adresse muss man im Get- (oder Post-)Befehl daran denken, dass Sonderzeichen in HTML-UTF8-HEX-Zeichen umgewandelt werden müssen (d. h. aus :// wird %3A%2F%2F und aus / wird %2F).
Die Befehlszeile zur Abfrage des Status meines Rollladens lautet dann wie folgt:
Zurück erhalte ich ein Objekt, in dem sich ausschließlich die Daten meines Rollladens befinden. Mithilfe dieses Objekts kann ich beispielsweise feststellen, wie weit der Rollladen heruntergefahren wurde.
Nachtrag vom 14.5.25
Bestimmte Position anfahren
Für das Anfahren einer bestimmten Position findet man in der command-Liste des Gerätes den Befehl "setClosure". Als Parameter wird die Position in Prozent angegeben, wobei 0% eingefahren und 100% ausgefahren bedeutet. Das an den Befehl zu übergebende Datenobjekt sieht wie folgt aus:
Hinterlasse einen Kommentar