CUL - Entwicklung > Wunschliste

Erweiterung CULFW um Somfy/Simu

(1/163) > >>

thdankert:
Hallo zusammen,

ich habe den Vatertag genutzt, und der CULFW das Senden von Befehlen für Somfy/Simu Rolladenmotoren beigebracht.
Der Code ist noch sehr rudimentär, funktioniert aber bereits bei mir :-)

Biser kann man die Befehle nur über den raw-Modus absenden, ich entwickele noch ein FHEM-Modul dazu.
Somfy verwendet einen rollierenden Code und "Verschlüsselung" (XOR), um sich vor Angriffen zu schützen.
Der Code ist ein linearer Counter, und jeder Kanal einer Fernbedienung hat seinen eigenen.

Wenn ich also über den CUL Somfy-Befehle absende, und dabei den Counter erhöhe,
kommt irgendwann meine normale Fernbedienung aus dem Tritt.
Da muss man dann solange auf der FB drücken, bis deren rolling code dort angekommen ist, wo der Empfänger ihn erwartet.

Die Lösung ist simpel, und so plane ich auch mein FHEM-Modul: ich definiere einen neuen (virtuellen) Fernbedienungskanal,
lerne den Empfänger an diesen an, und FHEM kann dann selbst den rolling code verwalten.
Damit komme ich meiner bisherigen Fernbedienung nicht in die Quere.

Den Code fürs Senden habe ich analog zu Intertechno gehalten, und auf das "Y" gelegt, das war noch frei.
Code ist getrennt über "#ifdef HAS_SOMFY".

Da ich selbst nur 2 SCC zum testen habe, ist auch nur dort der Code zum Aufruf bei "Y" enthalten.
Wer mutig ist, kann das aber gern zu seiner Board-Definition hinzufügen.

Im Anhang ist der Patch basierend auf der letzten SVN-Version (Revision 416).
Commandref & CHANGED sind ebenfalls aktualisiert und im patch.

War das Vorgehen hier richtig, oder sollte ich sowas lieber auf der CUL-Fans Mailingliste posten?

Viele Grüße,
 Thomas

PS: Ich würde mich sehr freuen, wenn jemand mit Somy oder Simu Rolladenmotoren das mal testen könnte.
Dimmer und Schalter müssten schon funktioneren, eventuell muss man noch ein extra Kommando implementieren.
Sobald mein FHEM-Modul dazu fertig ist, poste ich im entsprechenden Board.

postman:
Hallo thdankert,

Ich bin derzeit dabei, mit Hilfe einiger Elektronikbastelleien, mir eine Lösung für die Ansteuerung von Somfy RTS Rollläden zu bauen.
Ich will dafür eine IO-platine für den Raspberry verwenden, an die, über Optokoppler getrennt, die Somfy-Handsender angeschlossen werden.

Deshalb folgende Frage:
Kann ich damit jetzt, ohne den Umweg über Bastelleien mit Originalhandsendern zumachen, Somfyrollläden direkt ansteuern? oder habe ich das jetzt falsch verstanden?
Würde das so funktionieren, könnte ich mir die oben beschriebene Bastelei sparen  ;)

Gruß
Uwe

Ich verwende für den FHEM einen Raspberry pi V2 mit einem CUL V3 und einer 32 Port IP-Platine

thdankert:
Hallo Uwe,

diese Idee hatte ich auch zuerst - da mir die zusätzlichen Handsender aber zu teuer sind, und ich ja schon den 433MHz SCC habe, habe ich versucht, das Funkprotokoll zu verstehen und nachzubauen.

Um deine Frage zu beantworten: ja, genau das ist hiermit möglich.
Aber (!): bisher geht das nur über den RAW-Modus des CUL, ich habe noch kein FHEM-Modul dazu geschrieben.

Wenn das fertig ist, kannst du die Somfy-Rolläden als neue Geräte hinzufügen und über FHEM steuern.
Im aktuellen Zustand ist das aber noch nicht sehr komfortabel geschweige denn WAF-kompatibel :-)

Aktuell geht es so: du drückst auf deiner Fernbedienung die Programmiertaste für einen Rolladen,
und sendest danach vom CUL einen Funkbefehl, der dem Rolladen eine neue Fernbedienung vorspielt.
Danach sind die gekoppelt, und du kannst direkt vom CUL aus den Rolladen steuern.
Leider musst du dir den Rolling Code merken, der wird noch nicht gespeichert :-)

Wenn du also an einer schnellen Lösung interessiert bist, ist deine "Bastelei" vermutlich der bessere Weg.

Wenn ich das FHEM-Modul fertig habe, ist das (hoffentlich) die elegantere Lösung.

Grüße,
 Thomas

postman:
Hallo Thomas,
DANKE für die schnelle Antwort :-)
ja, genau so etwas stelle ich mir vor. Ich scheue mich auch davor, Handsender zu kaufen und dann an denen rumzubraten (selbst wenn es in der bucht welche für ca. 20 € gibt, ist das bei meinen 6 Rollläden schon recht teuer). Das Risiko, dass die SMD-Bauteile auf den Handsendern den Hitzetot sterben ist relativ hoch.
Leider habe ich mir den 868 ziger Cul gekauft; aber der lässt sich ja für die Versuche mal zeitweilig umprogramieren. Ich habe auch schon versucht mit hilfe von Hyperterm unter Windows Somfysender auszulesen. War leider nicht erfolgreich, ich konnte nur damit eine steigende bzw. fallende Flanke auslesen. Daten wurden leider nicht angezeigt. Daher habe ich mich dann erst mal mit der Bastellösung beschäftigt. Werde das wohl auch erst einmal weiter verfolgen. Parallel werde ich aber auch Dein Modul ausprobieren, auch wenn ich nicht so fit in Perl bin (kann man ja lernen, ist sicherlich auch nicht viel schlimmer als VB.Net).

Gruß
Uwe

thdankert:
Ja, mit einem CUL 868 geht es auch, es wird wie bei Intertechno kurzzeitig umgeschaltet.
Einziges Problem könnte dabei die Reichweite sein, aber das muss man einfach ausprobieren.

Aktuell gibt es noch kein FHEM Modul dazu, d.h. es gibt noch kein "define XXXX somfy", es geht halt nur per "set CUL raw Y......".

Zum Auslesen: entweder du nutzt den Monitor-Mode vom CUL, der die steigende/fallende Flanke anzeigt, oder du nimmst einen Logic Analyzer mit billigem 433MHz Empfänger (ich habe einen Buspirate mit einem 5€ Funkmodul von eBay).

Unter http://pushstack.wordpress.com/somfy-rts-protocol/ findest du eine sehr gute Übersicht, die mir auch beim Implementieren des Protokolls geholfen hat. Es gibt auch noch ein Patent, welches den Aufbau eines Somfy-Frames beschreibt.

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln