Plugin-Daten
AutorMichael Schlenstedt
Logo
StatusSTOPPED
Version1.2.0
Min. LB Version2.0.0
Release Downloadhttps://github.com/mschlenstedt/LoxBerry-Plugin-RCSwitch/archive/RCSwitch-V1.2.0.zip
BeschreibungMit dem RCSwitch Plugin kann der LoxBerry 433 Mhz-Funksteckdosen schalten
SprachenDE
Diskussionhttps://www.loxforum.com/forum/projektforen/loxberry/plugins/67508-loxberry-433-mhz-funksteckdosen-plugin-verf%C3%BCgbar

RCSwitch 433 Mhz Plugin

Version History…

Änderungshistorie


Aufgabe des Plugins

Mit dem RCSwitch Plugin kann der LoxBerry 433 Mhz-Funksteckdosen schalten. Diese Steckdosen sind sehr günstig erhältlich ("Baumarkt Funksteckdosen"). Dabei stellt der LoxBerry eine Schnittstelle zwischen den Funksteckdosen und dem Miniserver bereit, sodass die Steckdosen direkt aus Loxone heraus geschaltet werden können. Der LoxBerry muss dazu mit einem wenige Euro teuren 433 Mhz Funksender ausgestattet werden. 

Download

Hardware: Sendermodul

Damit der LoxBerry die Funksteckdosen ansprechen kann muss er mit einem kostengünstigen 433 Mhz Sender ausgestattet werden. Diese Sendemodule kosten weniger als 5 Euro.

Einkaufsliste:

  • 433 Mhz Sendemodul für den Raspberry, z. B. von Reichelt.de
  • Verbindungskabel (Jumper/Drahtbrücke, Buchse/Buchse) um das 433 Mhz Modul an den RaspBerry anzuschließen, siehe Google
  • Ein Stück Kabelrest (17 cm) für die Antenne, keine Litze.

Sendemodul mit angebauter Antenne (Bild von https://www.einplatinencomputer.com)

Die Module sind meist alle baugleich und verfügen über 3 bzw. 4 Anschlüsse:

  • Pin 1: ATAD (Daten)
  • Pin 2: VCC (Versorgungsspannung)
  • Pin 3: GND (Masse)
  • Pin 4: Ant (Antenne)

Pin 1, 2 und 3 werden mit dem LoxBerry verbunden. An Pin 4 (Ant) kann eine Antenne angeschlossen bzw. angelötet werden um die Reichweite des Sendemoduls zu erhöhen. Für die Antenne genügt ein Stück Draht mit der Länge 17 cm (exakte Länge einhalten - diese ist auf die Wellenlänge von 433 Mhz abgestimmt!). Die Pinbelegung von anderen Modulen kann abweichen, sollte aber dennoch eine ähnliche Struktur aufweisen.

Versorgt wird das Sendermodul mit einer Betriebsspannung von 3,3 Volt bis 5 Volt. Wir verwenden hier eine Betriebsspannung von 5 Volt um eine größere Sendeleistung und damit auch eine größere Reichweite zu erhalten. Der Anschluss des Moduls an den Raspberry im Detail:

  • Pin 2 (VCC) des Moduls mit Pin 2 oder 4 (5V) am Raspberry Pi verbinden
  • Pin 3 (GND) des Moduls mit einem Ground-Pin vom Raspberry verbinden, z. B. Pin 6.
  • Pin 1 (ATAD) des Moduls wird an Pin 11 (GPIO17, Pin 11) am Raspberry angeschlossen. Ein anderer GPIO-Pin ist möglich, muss dann aber nach Installation des Plugins konfiguriert werden.

Die PIN-Belegung des Raspberry Headers findet sich in der Raspberry Dokumentation.

Hardware: Funksteckdosen

Sehr vele Steckdosen können mit dem Plugin geschaltet werden. Ich persönlich verwende die weit verbreiteten Funksteckdosen von Intertechno, oft werden auch die Steckdosen von Elro verwendet. Mittlerweile findet man häufig auch selbst anlernende Steckdosen, die keine DIP-Schalter oder Einstellrädchen mehr haben. Diese Steckdosen können ebenfalls mit dem Plugin verwendet werden - einfach die Steckdose in den Anlern-Modus versetzen und einen entsprechenden EIN-Befehl vom Hilfeassistenten senden. Damit ist die Steckdose auf diesen Code programmiert (Danke an Sven Thierfelder für diesen Tipp).

Kompatibilitätsliste

Brand Typ Einstellungen Einbindung über Modul Protokoll Unterstützung
Brennenstuhl RCS 1000N DIP RCSwitch elro JA
Brennenstuhl RC CE1 4001 - - - NEIN
Düwi DUPIS 1500 Rädchen RCSwitch arctechv1 JA
Elro AB600S Selbstlernend RCSwitch elro JA
Intertechno ITWR-3500 Selbstlernend RCSwitch arctechv2 JA
Intertechno YCR-1000 Rädchen RCSwitch arctechv1 JA
Intertechno PAR-1500 Rädchen RCSwitch arctechv1 JA
Intertechno IT-1500 Selbstlernend RCSwitch arctechv1
arctechv2
JA
Intertechno ITL-3500 Selbstlernend RCSwitch arctechv1
arctechv2
JA

Einrichtung: Erster manueller Test oder unbekannte Steckdosen

Hinweis: Verwende den Hilfsassistenten!

Das Plugin kommt mit einem Assistenten, mit dessen Hilfe Du die Befehle zum Schalten Deiner Funksteckdosen problemlos zusammenstellen kannst! Dieses Kapitel hier erklärt zusätzlich den Hintergrund, wie die Zuordnung und Gruppierung von Steckdosen funktioniert. Ich empfehle aber dringend die Schaltbefehle über den Assistenten zu erzeugen!

Das Plugin bietet zwei Verfahren die Steckdosen anzusprechen: RCSwitch und Pilight. Hierbei handelt es sich um zwei unterschiedliche Softwarelösungen. Wenn Deine Steckdosen unterstützt werden, empfehlen wir RCSwitch zu verwenden. Dieses ist eine sehr stabile Softwarelösung, unterstützt aber nur Elro- und Intertechnosteckdosen sowie kompatible Systeme. Pilight unterstützt eine sehr große Anzahl an weiteren Systemen, ist aber auf Grund des Aufbaus als Serversystem mit einem notwendigen laufenden Daemon eventuell etwas fehleranfälliger.

Modul: RCSWITCH

Bevor man sich daran macht und die Steckdosen in Loxone einbindet, sollte man sie manuell (über den LoxBerry) schalten, um sicherzustellen, dass die Verbindung zwischen LoxBerry und Funksteckdose einwandfrei funktioniert. Je nach Steckdose werden diese etwas unterschiedlich konfiguriert und der Aufruf der Schaltbefehle sieht etwas unterschiedlich aus.

Elro Funksteckdosen und kompatible

Diese Funksteckdosen zeichnen sich dadurch aus, dass sie auf der Rückseite (teilweise unter einem Deckel) einen 10-stelligen DIP-Schalter haben. Dieser ist meist beschriftet mit 12345ABCDEF.

elro-ab440_funkschalter.jpg  

Elro-Funksteckdose (Bild von http://www.fhemwiki.de/)

Auf obiger Abbildung ist ein nach oben umgelegter DIP-Schalter EIN und ein nach unten gelegter DIP-Schalter AUS. Teilweise kann das auch umgekehrt sein (siehe Beschriftung der Schalter). Mit den ersten 5 DIP-Schaltern (Bezeichnung 1-5) wird der Gruppencode (oft auch als Hauscode bezeichnet) eingestellt. Man kann für alle Steckdosen im Haus den gleichen Gruppencode verwenden (man muss es aber nicht, wenn man z. B. viele Steckdosen hat). Wichtig ist, dass dieser Code unterschiedlich zu dem Deines Nachbarn ist, sonst schaltet ihr Euch gegensetig die Steckdosen

In obigem Beispiel ist der DIP-Schalter 1 auf EIN gestellt, die DIP-Schalter 2-5 auf aus. Damit ergibt sich ein Gruppencode von 1. Wäre nur der DIP-Schalter 2 auf EIN, wäre der Gruppencode = 2 usw. Man hängt also den Parameter ?group=1 an die URL zum Schalten der Steckdosen an:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=elro&group=1

Mit dieser Vorgehensweise hat man nur 5 Möglichkeiten für einen Gruppencode. Bei den meisten Steckdosen hat man aber die Möglichkeit hier mehr als einen DIP-Schalter umzulegen und so ein Vielfaches an Möglichkeiten zu erhalten! Beispiel: Es wird DIP-Schalter 1 auf EIN und DIP-Schalter 3 auf EIN gesetzt, die DIP-Schalter 2, 4 und 5 sind auf AUS geschaltet.

Stellt man einen solchen Gruppencode ein, muss man den Gruppencode in DIP-Schalter-Notation angeben. Dabei steht eine 1 für EIN und eine 0 für AUS. Für das eben erwähnte Beispiel ergäbe sich somit ein Gruppencode von 10100. Diesen Code hängt man an obige URL an:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=elro&group=10100

Als nächstes stellt man an der Steckdose den Gerätecode ein. Innerhalb jeder Gruppe hat jede Steckdose wiederum eine eindeutige Gerätenummer. Zum Einstellen dienen die DIP-Schalter A-E. Hier darf immer nur ein DIP-Schalter umgelegt sein, Kombinationen wie bei dem Gruppencode sind hier in aller Regel nicht möglich (es gibt wenige Ausnahmen, wo es ebenfalls geht, das ist aber eher selten). Somit können sich in jeder Gruppe maximal 5 unterschiedliche Steckdosen (A-E) befinden. Für die erste Steckdose in der Gruppe stellt man z. B. DIP-Schalter A auf EIN:

Den verwendeten Gerätecode hängt man wiederum an die URL an (man kann A oder 1 verwenden): &unit=A oder &unit=1:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=elro&group=1&unit=A

Als letzten Parameter muss man nun nur noch das Schaltkommando mit übergeben. Selbsterklärend gibt es 2 Möglichkeiten eine Steckdose zu schalten: ON oder OFF. Der zugehörige URL-Parameter lautet &command=on bzw. &command=off. Die vollständige URL lautet also:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=elro&group=1&unit=A&command=on

Intertechno Funksteckdosen und kompatible - Altes Protokoll

Diese Funksteckdosen zeichnen sich dadurch aus, dass sie auf der Rückseite 2 Einstellrädchen haben, meist beschriftet mit A-P sowie 1-16. Auch selbstlernende Steckdosen können mit den entsprechenden Parametern angelernt werden. Handelt es sich um eine selbstlernende Steckdose und die Fernbedienung hat kein Einstellrädchen oder DIP-Schalter, so handelt es sich um das neue Protokoll von Intertechno (siehe unten)!

  

Intertechno-Funksteckdose (Bild von http://www.fhemwiki.de/)

Mit dem ersten Rädchen (A-P) stellt man den Family-Code der Steckdose ein. Dieser ist vergleichbar zum Gruppen- oder Hauscode der Elro-Steckdosen. Man kann für alle Steckdosen im Haus den gleichen Familycode verwenden (man muss es aber nicht, wenn man z. B. viele Steckdosen hat). Wichtig ist, dass dieser Code unterschiedlich zu dem Deines Nachbarn ist, sonst schaltet ihr Euch gegensetig die Steckdosen 

In obigem Beispiel ist der Familycode "F" eingestellt. Man hängt also den Parameter ?family=F an die URL zum Schalten der Steckdosen an:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=arctechv1&family=F

Mit dem zweiten Rädchen (1-16) stellt man gleichzeitig die Gruppen- und Geräteadresse ein. Man kann pro "Famliy" 16 Steckdosen in insgesamt 4 Gruppen betreiben. Die Einstellung 1-4 steht dabei für die Gruppe 1, Einstellung 5-8 für die Gruppe 2, Einstellung 9-12 für die Gruppe 3 und Einstellung 13-16 für die Gruppe 4. Die Geräte werden wiederum in der jeweiligen Gruppe von 1-4 durchnummeriert.

Beispiel: Das Rädchen steht auf Position 8. Damit ergibt sich die Gruppe 2 (5-8) und die Gerätenummer 4 (4. Gerät in der Gruppe 2). Man hängt also den Parameter &group=2 und &unit=4 an die URL zum Schalten der Steckdosen an:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=arctechv1&family=F&group=2&unit=4

Als letzten Parameter muss man nun nur noch das Schaltkommando mit übergeben. Selbsterklärend gibt es 2 Möglichkeiten eine Steckdose zu schalten: ON oder OFF. Der zugehörige URL-Parameter lautet &command=on bzw. &command=off. Die vollständige URL lautet also:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=arctechv1&family=F&group=2&unit=4&command=on

Intertechno Funksteckdosen und kompatible - Neues Protokoll

Diese Funksteckdosen zeichnen sich dadurch aus, dass sie selbstlernend sind und die zugehörige Fernbedienung kein Einstellrädchen oder DIP-Schalter hat. Bei diesen Steckdosen hat die Fernbedienung eine eindeutige ID, die zur Schaltung der Steckdosen verwendet wird. Damit ist es ausgeschlossen, dass sich benachbarte Installationen gegenseitig beeinflussen. Die ID kann beliebig zwischen 0 und 67108863 gewählt werden. Die ID wird als "group" angegeben.

Pro ID können 16 Steckdosen (Unit 0-15) eingerichtet werden. Wie immer muss man das Kommando (on oder off) mit angeben. Beispiel:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=arctechv2&group=7382733&unit=1&command=on

Wenn man alle Steckdosen einer Gruppe schalten möchte, kann man den Parameter "all" verwenden:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=arctechv2&group=7382733&unit=1&all=1&command=on

Unbekannte, nicht unterstützte Steckdosen

Es besteht eine gewisse Chance diese Steckdosen mit einem der vorhandenen Protokolle schalten zu können. Manchmal wird aber für die Funkübertragung eine andere Pulselänge verwendet als bei den "Standard"-Steckdosen. Man kann also versuchen diese Steckdosen mit den vorhandenen Protokollen zum Laufen zu bringen und die Pulselänge entsprechend zu verändern.  So ist die Pulselänge bei der "Elro 400 Serie" 296. Allerdings ist bei der "Elro 400 Serie" alles invertiert. Dip1 hoch wäre dann 01111 usw., ebenso bei Unit und Command. Bei der "Elro 800 Serie" ist die Pulselänge 300. Die Standardpulselänge ist 350. Wenn man die Parameter seiner Steckdose sucht, hilft oft eine Internetrecherche weiter. Eine gute Anleaufstelle ist auch die Doku des pilight-Projekts.

Die Pulselänge kann über den Parameter "pulselength" an die URL jedes Protokolls angehängt werden:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/rcswitch.cgi?protocol=arctechv2&group=7382733&unit=1&all=1&pulselength=300&command=on

Modul: PILIGHT

Mit dem Pilight exisitert im Plugin eine weitere Möglichkeit Funksteckdosen einzubinden. Diese Softwarelösung ist sehr mächtig und unterstützt sehr viele unterschiedliche Funkprotokolle. Wenn Deine Steckdosen mit dem RCSWITCH-Modul nicht kompatibel sind, besteht eine gute Chance sie per Pilight einbinden zu können.

Bitte schaue zunächst in der Pilight-Dokumentation, mit welchen Einstellungen Deine Steckdosen eingebunden werden können. Nicht jede Steckdose benötigt alle Optionen, so muss z. B. entweder die ID oder aber der Systemcode eingegeben werden - niemals beides. Auch die Möglichkeit alle Steckdosen einer Gruppe zu schalten bieten nicht alle Funkprotokolle an. Wenn für Deine Steckdosen eine Option nicht benötigt wird, gebe sie bitte nicht an.

Die Optionen werden analog zum RCSWITCH-Modul in der URL angegeben. Die URL für das Pilight-Modul lautet:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/pilight.cgi

Folgende Parameter können verwendet werden und an die URL angehängt werden:

  • protocol, z. B. protocol=intertechno_switch
  • all, z. B. all=1 oder all=0
  • id: z. B. id=0815
  • systemcode, z. B. systemcode=0815
  • unit, z. B. unit=1
  • command, z. B. command=on oder command=off

Ein vollständiger Aufruf sieht z. B. so aus:

http://loxberry:PASSWORT@IPLOXBERRY/admin/plugins/rcswitch/pilight.cgi?protocol=intertechno_switch&id=0815&unit=1&all=1&command=on

Einrichtung: LoxoneConfig

Die Funksteckdosen werden über einen Virtuellen Ausgang in LoxoneConfig eingebunden. Dazu klickt man im Peripheriebaum den Miniserver an und fügt einen neuen Virtuellen Ausgang hinzu:

Anschließend editiert man die Eigenschaften des neuen Virtuellen Ausgangs:

  • Bezeichnung: Beliebig, z. B. "Funksteckdosen LoxBerry"
  • Adresse: Hier wird die Adresse des LoxBerrys eingetragen. Am Besten direkt per Copy and Paste aus dem Hilfeassistenten hierhin übertragen. Das Passwort am Anfang der URL muss noch durch das eigene Passwort ersetzt werden! Beispiel: http://loxberry:PASSWORT@192.168.3.66
  • Verbindung nach Senden schließen: Aktivieren

Nun legt man für jede Funksteckdose, die über den LoxBerry gesteuert werden soll, einen Virtuellen Ausgang Befehl an:

Anschließend editiert man die Eigenschaften des neuen Virtuellen Ausgang Befehls:

  • Bezeichnung: Beliebig, z. B. "Funksteckdose 1"
  • Befehl bei EIN: Hier wird der Befehl zum Einschalten der Steckdose eingetragen. Am Besten direkt per Copy and Paste aus dem Hilfeassistenten hierhin übertragen. Beispiel: /admin/plugins/rcswitch/rcswitch.cgi?group=1&unit=1&command=on
  • HTTP Methode bei EIN: GET
  • Befehl bei AUS:Hier wird der Befehl zum Ausschalten der Steckdose eingetragen. Am Besten direkt per Copy and Paste aus dem Hilfeassistenten hierhin übertragen. Beispiel: /admin/plugins/rcswitch/rcswitch.cgi?group=1&unit=1&command=off
  • HTTP Methode bei AUS: GET

Den letzten Schritt wiederholt man für jede Steckdose, die man einbinden möchte. Der neue Ausgangsbefehl kann nun wie jeder andere Ausgang innerhalb von LoxoneConfig angesprochen werden, z. B. mit einem einfachen Taster: