Somfy via SIGNALduino

Aus FHEMWiki

Einleitung

Dieser Beitrag bezieht sich auf das SOMFY-RTS Protokoll. Weitere SOMFY Protokolle wurden in diesem Zusammenhang bisher nicht beschrieben bzw. getestet.


SIGNALduino

Der SIGNALduino hat gegenüber anderen Lösungen (z.B. CUL, FHEMduino) den Vorteil, dass SOMFY Protokolle empfangen und gesendet werden können. Alternative Hardware Lösungen (Stand Januar 2017) können entweder senden (z.B. CUL) oder empfangen (z.B. FHEMduino) Weitergehende Informationen zur Variante mit Standard Transmitter und Receiver sind in der SIGNALduino Wiki dokumentiert. Für das SOMFY-RTS System ist wichtig, dass die passende HW Variante gewählt wird:


HW-Variante mit Standard 433,92Mhz Transmitter und Receiver (z.B. STX882 und RXB6)

SOMFY-RTS Systeme senden auf 433,42Mhz. SIGNALduino Aufbauten mit den billig Transmitter/Receivern sind fest auf 433,92Mhz eingestellt und nicht wirklich geeignet um SOMFY-RTS Systeme mit 433,42 Mhz zu steuern. Grundsätzlich kann die Funkverbindung funktionieren, als Ergebnis werden sich jedoch drastische Reichweitenprobleme ergeben (je nach Streuung der Bauteile)

Fazit: diese HW Variante sollte für das SOMFY-RTS System nicht genutzt werden


HW-Variante mit CC1101 Transceiver

Eine SIGNALduino Hardware kann auch mit CC1101 Transceiver aufgebaut werden (wird von der Firmware erkannt und unterstützt). Der CC1101 ist bzgl. Sende- und Empfangsfrequenz programmierbar und kann also z.b. zwischen 433,92Mhz (beliebte Frequenz bei z.B. Funkthermometer) und anderen Frequenzen (z.B. 433,42Mhz bei SOMFY-RTS Anlagen) umgeschaltet werden. Deshalb ist diese Hardware die erste Wahl. Die Hardware selbst ist identisch zum NanoCUL. Der Aufbau und die Inbetriebnahme ist im SIGNALduino Wiki erklärt.


Erstinbetriebnahme mit Arduino IDE

Sollte auf einem Steckboard erfolgen (siehe "Bekannte Probleme")

Beitrag wird noch vervollständigt


Bekannte Probleme bei der Inbetriebnahme des SIGNALduino mit CC1101

Lässt sich der SIGNALduino mit verbautem CC1101 in FHEM nicht initialisieren, dann die MOSI Leitung von D11 des Adruino Nano abtrennen (nicht den kompletten CC1101 entfernen, sonst wird der CC1101 nicht erkannt und der Befehl unten nicht akzeptiert). Danach sollte sich der SIGNALduino initialisieren lassen. Danach in FHEM beim SIGNALduino Device den Befehl:

get sduino raw e

eingeben und die MOSI Leitung wieder verbinden.


Tipps und Tricks

An dieser Stelle sollen noch Tipps und Tricks bzgl. Inbetriebnahme des SINGALduino-CC1101 entstehen. Noch besser wäre die Tipps und Tricks werden in der SINGALduino Wiki direkt dokumentiert, ich werde das bei gegebener Zeit mit dem Author klären.

SOMFY via SIGNALduino

Installation unter FHEM

Damit SOMFY-RTS via SIGNALduino in FHEM unterstützt wird muss FHEM die neueste SIGNALduiono FW und SW Module unterstützen. Dazu in die FHEM Kommandozeile folgende Befehle eingeben:

update add https://raw.githubusercontent.com/RFD-FHEM/RFFHEM/dev-r33/controls_signalduino.txt

Damit werden bei einem FHEM Updates künftig auch die aktuellen SIGNALduino Module geladen

update

Startet einen FHEM Update Vorgang

shutdown restart

Neustart von FHEM damit die aktuellen SIGNALduino Module aktiv werden


Definition des SIGNALduino Devices

  • SIGNALduino an FHEM Server (im Beipiel hier Raspberry PI) anschliessen
  • USB ID des SIGNALduino Devices ermitteln
 ls -l /dev/serial/by-id 

Ergebnis: lrwxrwxrwx 1 root root 13 Jan 31 00:02 usb-1a86_USB2.0-Serial-if00-port0 -> ../../ttyUSB0

  • In FHEM damit z.B. das Device "sduino" definieren
define sduino SIGNALduino /dev/serial/by-id/usb-1a86_USB2.0-Serial-if00-port0@57600 
attr sduino flashCommand avrdude -c arduino -b 57600 -P [PORT] -p atmega328p -vv -U flash:w:[HEXFILE] 2>[LOGFILE] 
attr sduino hardware nanoCC1101 


Definition des SOMFY Devices (z.B. Rolladen) sowie setzten der Attribute

define RolloOben SOMFY 12345F

Definition des Rolladen in FHEM. der 6 stellige Hex Code darf nicht von einem anderen Sender (z.B. SOMFY Sender) belegt sein, ist darüber hinaus beliebig wählbar und spezifisch für einen Rolladen

attr RolloOben IODev sduino

Hiermit wird die Sendehardware zugewiesen (diese sendet/empfängt die SOMFY Kommandos, s.o.)

attr RolloOben devStateIcon open:fts_shutter_10 10:fts_shutter_10 20:fts_shutter_20 30:fts_shutter_30 40:fts_shutter_40 50:fts_shutter_50 60:fts_shutter_60 70:fts_shutter_70 80:fts_shutter_80 90:fts_shutter_90 down:fts_shutter_100 closed:fts_shutter_100

mit diesem Attribut werden die ICONs zugewiesen, die in FHEM während des Öffnen/Schliessen des Rolladens angezeigt werden

attr RolloOben drive-down-time-to-100 23

Die Zeit [sec] die der Rolladen benötigt um von ganz oben bis zum "aufliegen" benötigt (die Lamellen sind noch offen; diese Zeit muss ausgemessen werden)

attr RolloOben drive-down-time-to-close 27

Die Zeit [sec] die der Rolladen benötigt um von ganz oben bis zum völligen Schliessen benötigt (diese Zeit muss ausgemessen werden)

attr RolloOben drive-up-time-to-100 4

Die Zeit [sec] die der Rolladen benötigt um vom komplett geschlossenen Zustand bis zu geöffneten Lamellen benötigt (der Rollo liegt noch auf; diese Zeit muss ausgemessen werden)

attr RolloOben drive-up-time-to-open 28

Die Zeit [sec] die der Rolladen benötigt um vom komplett geschlossenen Zustand bis zum vollständig geöffneten Zustand benötigt (diese Zeit muss ausgemessen werden)

attr RolloOben eventMap on:down stop:stop off:up

mapping der zu sendenden Befehle auf logische Kommandos

attr RolloOben room Rolladen

Die Rolladensteuerung wird im FHEM Raum "Rolladen" erscheinen

attr RolloOben webCmd down:stop:up

Diese Kommandos werden in der Web Oberfläche angeboten

Im FHEM Raum "Rolladen" sieht das ganze dann wie folgt aus: SomfyRolladen 01.jpg


Anlernen des Rollos an FHEM

Als nächser Schritt muss der "FHEM Sender" and den Rolladen angelernt werden. Dazu wird ein SOMFY Sender (z.B. Handsender) benötigt. Auf der Rückseite des Senders befindet sich in der Regel eine kleine Vertiefung (Loch) mit einem Taster, der z.B. über ein Streichholzende für 0,5 sec gedrückt werden muss. Danach fährt der Rolladen zur Quittierung kurz nach unten und wieder zurück (ruckt). Unmittelbar danach ist in FHEM das Kommando

set RolloOben prog

abzusetzen. Zur Quittierung "ruckt" der Rolladen wieder. Danach kann der Rolladen über die Kommandos "up" "stop" "down" aus der FHEM Oberfläche gesteuert werden


Update der SIGNALduino Firmware via FHEM

Beim sduino Device (Raum Rolladen -> RolladenOben -> sduino) den Befehl

set sduino flash

absetzen (weitere Parameter sind nicht nötig)