Modul-Entwicklung: Somfy RTS

Begonnen von thdankert, 12 Juli 2014, 21:04:31

Vorheriges Thema - Nächstes Thema

Bensen9

Hallo Electrolurch,

Danke für die Tipps konnte aber keine Lösung finden. Habe / hatte alle vier Zeiten angegeben gehabt und mehrfach getestet. Unten ein Beispiel. Habe für open-to-100 und close-to-100 jeweils 25 sec vergeben und für die anderen beiden jeweils 27. dann habe ich aus geöffnetem Zustand auf pos 100 bewegt. Alles gut soweit 25 sec. Dann habe ich auf pos 20 bewegt und nur 1.6 sec drive Time bekommen (siehe log Auszug unten).

2014.09.16 23:35:54 3: somfy_set: cmd on newpos 100 drivetime 25
2014.09.16 23:35:54 2: SOMFY set RolloSchlaZi on 100: YsA3400013111004
2014.09.16 23:35:54 2: SOMFY IODev device didn't answer Ys command correctly:   raw => Yr:2
2014.09.16 23:35:54 0: ERROR: Cannot autoload SOMFY
2014.09.16 23:35:54 3: CUL_Ben: Unknown code YsA3E9E9FAFEEEFF, help me!
2014.09.16 23:35:54 0: ERROR: Cannot autoload SOMFY
2014.09.16 23:35:54 3: CUL_Ben: Unknown code Yr:6, help me!
2014.09.16 23:36:19 2: SOMFY set RolloSchlaZi stop: YsA4110014111004
2014.09.16 23:36:19 2: SOMFY IODev device didn't answer Ys command correctly:   raw => Yr:2
2014.09.16 23:36:19 0: ERROR: Cannot autoload SOMFY
2014.09.16 23:36:19 3: CUL_Ben: Unknown code YsA4BBBBAFABBBAA, help me!
2014.09.16 23:36:19 0: ERROR: Cannot autoload SOMFY
2014.09.16 23:36:19 3: CUL_Ben: Unknown code Yr:6, help me!
2014.09.16 23:36:36 3: somfy_set: cmd off newpos 20 drivetime 1.6
2014.09.16 23:36:36 2: SOMFY set RolloSchlaZi off 20: YsA5200015111004
2014.09.16 23:36:36 2: SOMFY IODev device didn't answer Ys command correctly:   raw => Yr:2
2014.09.16 23:36:36 0: ERROR: Cannot autoload SOMFY
2014.09.16 23:36:36 3: CUL_Ben: Unknown code YsA589899C988899, help me!
2014.09.16 23:36:36 0: ERROR: Cannot autoload SOMFY
2014.09.16 23:36:36 3: CUL_Ben: Unknown code Yr:6, help me!
2014.09.16 23:36:37 2: SOMFY set RolloSchlaZi stop: YsA6110016111004
2014.09.16 23:36:38 2: SOMFY IODev device didn't answer Ys command correctly:   raw => Yr:2
2014.09.16 23:36:38 0: ERROR: Cannot autoload SOMFY
2014.09.16 23:36:38 3: CUL_Ben: Unknown code YsA6B9B9AFABBBAA, help me!
2014.09.16 23:36:38 0: ERROR: Cannot autoload SOMFY


Irgendwas scheint da falsch zu rechnen, zumindest bei mir. Mir ist zudem aufgefallen, wenn ich das Attribut down-to-100 setze, das das Attribut für down-to-close automatisch auf die gleiche Zeit gesetzt wird. Das passiert aber nur wenn down-to-close noch nicht gesetzt ist und scheint mir logisch. Bei up-to-100 und up-to-open ist das nicht so. Ist das normal?

Grüsse Ben

thdankert

Zitat von: Bensen9 am 16 September 2014, 23:49:14
Hallo Electrolurch,

Danke für die Tipps konnte aber keine Lösung finden. Habe / hatte alle vier Zeiten angegeben gehabt und mehrfach getestet. Unten ein Beispiel. Habe für open-to-100 und close-to-100 jeweils 25 sec vergeben und für die anderen beiden jeweils 27. dann habe ich aus geöffnetem Zustand auf pos 100 bewegt. Alles gut soweit 25 sec. Dann habe ich auf pos 20 bewegt und nur 1.6 sec drive Time bekommen (siehe log Auszug unten).

2014.09.16 23:35:54 3: somfy_set: cmd on newpos 100 drivetime 25
2014.09.16 23:35:54 2: SOMFY set RolloSchlaZi on 100: YsA3400013111004
2014.09.16 23:35:54 2: SOMFY IODev device didn't answer Ys command correctly:   raw => Yr:2
2014.09.16 23:35:54 0: ERROR: Cannot autoload SOMFY

Grüsse Ben

Hallo Ben,

ich habe den Code von Elektrolurch leider noch nicht selbst im Einsatz, kann dazu also nicht viel sagen.
Aber das oben sieht so aus, als kommt die "repetition" dazwischen (Yr = setze repetition).

Wenn ein Kommando gesendet wird, wird zuerst geprüft, ob die repetition gesetzt werden muss.
Das passiert, aber der Code erwartet zu diesem Zeitpunkt bereits eine Antwort auf sein Ys (= Bewegungskommando), bekommt aber nur Yr.

Lösch mal testweise das Attribut repetition (ich weiß, dann bewegen sich die Läden nicht mehr richtig, ist nur zum Test).

Grüße,
Thomas
RPI mit FHEM, 2x Stackable CC (868 und 433MHz)

Bensen9

Hi Thomas,

Das passiert wenn ich erst mit repetition 2 auf "off" und dann "stopp" gehen und als drittes nach gelöschtem repetition einmal "on" mache.

Komisch die ganzen Meldungen sind dann weg. Kannst du das vielleicht mal im Detail erklären.

2014.09.18 00:57:42 3: SOMFY_set: RolloSchlaZi -> state update in 26.97 sec
2014.09.18 00:57:42 2: SOMFY set RolloSchlaZi off: YsA5200025111004
2014.09.18 00:57:42 2: SOMFY IODev device didn't answer Ys command correctly:   raw => Yr:2
2014.09.18 00:57:43 0: ERROR: Cannot autoload SOMFY
2014.09.18 00:57:43 3: CUL_Ben: Unknown code YsA58A8AAFABBBAA, help me!
2014.09.18 00:57:43 0: ERROR: Cannot autoload SOMFY
2014.09.18 00:57:43 3: CUL_Ben: Unknown code Yr:6, help me!
2014.09.18 00:57:51 1: SOMFY_set: go-my/stop not correct implemented for correct positioning! Use set device pos <value> instead
2014.09.18 00:57:51 1: SOMFY_set: Error - drivetime and updatetime = 0
2014.09.18 00:57:51 2: SOMFY set RolloSchlaZi stop: YsA6110026111004
2014.09.18 00:57:51 2: SOMFY IODev device didn't answer Ys command correctly:   raw => Yr:2
2014.09.18 00:57:52 0: ERROR: Cannot autoload SOMFY
2014.09.18 00:57:52 3: CUL_Ben: Unknown code YsA6BABA9C988899, help me!
2014.09.18 00:57:52 0: ERROR: Cannot autoload SOMFY
2014.09.18 00:57:52 3: CUL_Ben: Unknown code Yr:6, help me!
2014.09.18 00:58:09 1: SOMFY_CalcNewPos: RolloSchlaZi move wrong stop
2014.09.18 00:59:44 3: SOMFY_set: RolloSchlaZi -> state update in 2 sec
2014.09.18 00:59:44 2: SOMFY set RolloSchlaZi on: YsA7400027111004

Danke und viele Grüsse Ben

Elektrolurch

Hallo Bensen9,

schau Dir mal oben mein Zahlenbeispiel für die Fahrzeiten an, Dein dritter Wert (drive-time-up-to-100) ist falsch.
Nochmal zur Messung der Fahrzeiten:
1. Man nehme eine Stopuhr mit Zwischenzeiten
2. Der Rolladen ist oben.
3. Man drücke down und starte die Stopuhr.
4. Wenn der Rolladen gerade die untere Fensterkante berührt, nimmt man die erste Zwishenzeit (drive-down-time-to-100).
5. Ist das Rollo ganz geschlossen, stoppt man (drive-down-time-to-close)
5. Stopuhr zurücksetzen.
6. Up am Rollo starten und stoppuhr starten.
7. Wenn das Rollo gerade die untere Fensterkante nicht mehr beührt, also alle Lamellen gespreizt sind, nimmt man die Zwischenzeit (drive-up-time-to-100). Das können nur wenige Sekunden sein und nicht wie bei Dir mehr als 15 Sekunden.
8. Wenn der Rolo die obere Endposition erreicht hat, drückt man Stop auf der Stoppuhr. (drive-up-time-to-open).

Will man es nicht so genau haben, mit dem Grad der Verschattung des Fensters, so kann man:

drive-down-time-to-100 = drive down-time-to-close und
drive-up-time-to-100 = 0 setzen.

drive-down-time-to-close und drive-up-time-to-open werden sich trotzdem etwas unterscheiden, da das Rollo etwas länger braucht, um hoch zu fahren.

Gruß

Elektrolurch
configDB und Windows befreite Zone!

Elektrolurch

Hallo,

habe heute nach ca. 14 Tagen ein Update von fhem gemacht, 10_SOMFY war aber schon vorher aktuell.
Nun bekomme ich folgende Fehlermeldungen im log:

2014.10.17 19:00:54 2: SOMFY set Wz_FRolladen on: sAD40010D202101
2014.10.17 19:00:54 2: SOMFY set Wz_TRolladen on: sA2400122202100
2014.10.17 19:00:54 0: ERROR: Cannot autoload SOMFY
2014.10.17 19:00:55 0: ERROR: Cannot autoload SOMFY
2014.10.17 19:00:56 0: ERROR: Cannot autoload SOMFY
2014.10.17 19:00:57 0: ERROR: Cannot autoload SOMFY
2014.10.17 19:00:58 0: ERROR: Cannot autoload SOMFY
2014.10.17 19:00:59 0: ERROR: Cannot autoload SOMFY
2014.10.17 19:01:00 0: ERROR: Cannot autoload SOMFY
2014.10.17 19:01:01 0: ERROR: Cannot autoload SOMFY
2014.10.17 19:01:02 0: ERROR: Cannot autoload SOMFY


Ich habe dann auch noch eine Meldung bekommen, dass der Sendebuffer des CUL_433 etwas unbekanntes enthielt:

2014.10.17 18:49:16 1: CUL_433 UNKNOWNCODE YsA81D0128003420 Inhalt des CUL_0 Sendebuffers: CUL_433 raw => 540F:4128
2014.10.17 18:49:18 1: >CUL_433 buffer 540F:4128
2014.10.17 18:49:18 1: culreset: t 540F:4128 code 540F
2014.10.17 18:49:18 0: Server shutdown


Die Meldung: Cannot Autoload Somfy läßt sich derzeit reproduzieren.
(Bei jedem Verfahren der Rolladen)

Das einzige, was ich derzeit im 10_SOMFY.pm - Modul abgeändert habe, ist das ich die ParseFN auskomentiert habe, da sie mir den Status von Positionierten Rolladen überschreibt und ich schon intensiv Gebrauch von Zwischenpositionen für Sonnenschutz oder "sanftes Wecken" mache und den Status auch abfrage und auswerte, bzw. die entsprechenden Icons für die Anzeige verwende.

Auf was ist die Meldung "cannot Autoload..." zurückzuführen?

Gruß

Elektrolurch
configDB und Windows befreite Zone!

Merlin1

Hallo zusammen,

ich habe gestern das SOMFY Modul ausprobiert...

1. Bei den Rolläden klappt es super gut! Das Paring hat geklappt und das anfahren der Position nach den Angaben der Zeiten.
Allerdings wenn ich zwei Stück gleichzeitig anfahren lassen will, werden sie versetzt angesteuert, also mit "set roll1,roll2 pos 50".
Dann fährt erst roll1 los, eine kurze Zeit später, 1 Sekunde oder so roll2.
Mit der Original Remote Kontroll fahren sie exakt syncron.

2. Die Raffstores konnte ich pairen, aber die Ansteuerung funktioniert gar nicht.
Um sie rauf und runter zu fahren, muß der Knopf bei den Funkschaltern >2 Sekunden gedrückt bleiben.
Wie bekommt man das angesteurt? on-for-timer klappt nicht (habe die aktuellste SOMFY Version mit update).

Um die Lamellen zu bewegen, muß man exakt kurz rauf oder runter drücken.
Das normale on oder off ist dafür schon fast zu lang.

Habt ihr da Tips?

3. Ich habe auch noch SOMFY Funksteckdosen. Die bekomme ich aktuell noch nicht gepairt.
Da wollte ich aber nochmal ein wenig rumprobieren.
Hat das schon jemand hinbekommen?

Viele Grüße!

Elektrolurch

Hallo,

Zitat:
Allerdings wenn ich zwei Stück gleichzeitig anfahren lassen will, werden sie versetzt angesteuert, also mit "set roll1,roll2 pos 50".
Dann fährt erst roll1 los, eine kurze Zeit später, 1 Sekunde oder so roll2.

Das liegt in der Natur der Sache: Zwei devices heißt auch zweimal einen Funkbefehl senden und dazwischen wird jas jeweils auch etwas gerechnet....

Das mit den Lamellen ist bekannt, da findest Du etwas im Thema:

"Erweiterung CULF um SOMFY..."

Gruß

Elektrolurch
configDB und Windows befreite Zone!

thdankert

Hallo Merlin,

Elektrolurch hat ja gerade schon geantwortet.
Ich hätte nur eine Bitte: da deine Fragen nichts direkt mit der Entwicklung des Moduls zu tun haben,
stell sie dann bitte im User-Thread http://forum.fhem.de/index.php?topic=24158 - damit bleibt dieser Entwickler-Thread hier sauber.

Zitat von: Merlin1 am 07 November 2014, 11:51:20
2. Die Raffstores konnte ich pairen, aber die Ansteuerung funktioniert gar nicht.
Um sie rauf und runter zu fahren, muß der Knopf bei den Funkschaltern >2 Sekunden gedrückt bleiben.
Wie bekommt man das angesteurt? on-for-timer klappt nicht (habe die aktuellste SOMFY Version mit update).

Um die Lamellen zu bewegen, muß man exakt kurz rauf oder runter drücken.
Das normale on oder off ist dafür schon fast zu lang.

Habt ihr da Tips?
Versuch mal die "repetition" (als Attribut des Device in FHEM) zu setzen - Standard ist 6x,
aber für "kurz rauf/runter" kannst du es mal mit 2 versuchen. Damit waren einige Nutzer erfolgreich!

Andersrum funktioniert es nicht so einfach, der lange Tastendruck lässt sich noch nicht richtig nachstellen.
Du kannst es gern mal mit repetition=12 oder sogar mehr versuchen.

Zitat
3. Ich habe auch noch SOMFY Funksteckdosen. Die bekomme ich aktuell noch nicht gepairt.
Da wollte ich aber nochmal ein wenig rumprobieren.
Hat das schon jemand hinbekommen?

Leider habe ich zuhause nur Rollos und keine Funksteckdosen, und kann da nichts testen.
Wie werden die normalerweise gepaired mit einer echten Fernbedienung?

Grüße,
Thomas
RPI mit FHEM, 2x Stackable CC (868 und 433MHz)

thdankert

Es gibt Neuigkeiten: ein paar Leute haben das Protokoll weiter entschlüsselt und dabei die Bedeutung der zusätzlichen Codes rausgefunden:

Folgende Codes gibt es laut dieser Liste: http://pushstack.wordpress.com/somfy-rts-protocol/


Value Button(s) Description
0x1 My Stop or move to favourite position
0x2 Up Move up
0x3 My + Up Set upper motor limit in initial programming mode
0x4 Down Move down
0x5 My + Down Set lower motor limit in initial programming mode
0x6 Up + Down Change motor limit and initial programming mode
0x8 Prog Used for (de-)registering remotes, see below
0x9 Sun + Flag Enable sun and wind detector (SUN and FLAG symbol on the Telis Soliris RC)
0xA Flag Disable sun detector (FLAG symbol on the Telis Soliris RC)
RPI mit FHEM, 2x Stackable CC (868 und 433MHz)

Merlin1

Zitat von: thdankert am 07 November 2014, 12:15:37
Leider habe ich zuhause nur Rollos und keine Funksteckdosen, und kann da nichts testen.
Wie werden die normalerweise gepaired mit einer echten Fernbedienung?

Erstmal vielen Dank, probiere ich später aus und den Thread halte ich gern sauber, wenn so tolle Sachen entwickelt werden   :)

Die Funksteckdosen werden ganz normal gepaired wie alle SOMFY RTS Geräte. Haben einen PROG Knopf und dann mit "up" und "down" ein und ausgeschaltet. "my" hat keine Funktion.

Niko_K

Wow... ein SOMFY Modul in FHEM klingt einfach super.
Damit könnte ich auf einen Schlag alle meine Rollos steuern.

Jetzt habe ich dazu aber eine kleine Frage.
Ich verwendet derzeit ein Brematic Gateway, das auf 433 Mhz kommuniziert, um Intertechno Steckdosen anzusteuern.
Der Grund, weshalb ich mich gerade für dieses Gateway und für keine CUL entschieden habe, ist dass mein FHEM-Server sendetechnisch sehr ungut (im Keller) steht und es mir damit nicht möglich wäre, meine Steckdosen im OG zu schalten.
Mit dem Gateway (welches über LAN mit dem Server verbunden ist), geht das aber super, da es einfach im OG aufgestellt ist :-)

Ist es denn derzeit möglich, mit dem Brematic GW die SOMFY-Rollos anzusprechen?
Wenn nein, wie könnte ich denn mein Sendeproblem lösen (mir fällt derzeit nur ein USB-LAN Extender ein).


thdankert

Zitat von: Niko_K am 31 Dezember 2014, 18:13:32
Jetzt habe ich dazu aber eine kleine Frage.
Ich verwendet derzeit ein Brematic Gateway, das auf 433 Mhz kommuniziert, um Intertechno Steckdosen anzusteuern.

Ist es denn derzeit möglich, mit dem Brematic GW die SOMFY-Rollos anzusprechen?
Wenn nein, wie könnte ich denn mein Sendeproblem lösen (mir fällt derzeit nur ein USB-LAN Extender ein).

Hallo Niko_K,

vorab: deine Frage ist im Anwender-Thread besser aufgehoben http://forum.fhem.de/index.php/topic,24158.420.html, hier geht es rein um die Weiterentwicklung des Moduls.

Deshalb hier ganz kurz: nein, das wird nicht funktionieren, das Gateway ist für Funktsteckdosen ausgelegt, und ich sehe anhand der Produktbeschreibung keine Möglichkeit, eigene Funktelegramme abzusenden.
Somfy verwendet zwar die gleiche Frequenz, aber ein völlig anderes Protokoll.

Mögliche Lösungen: CUNO (von Busware), oder langes USB-Kabel, oder 2. Raspberry PI mit FHEM+CUL an günstigerer Stelle im Haus.

Grüße,
Thomas
RPI mit FHEM, 2x Stackable CC (868 und 433MHz)

realkeule

Hallo,

Experimentiere mit meiner Raffstore Steuerung die bekanntermaßen immer nur eine Sekunde fährt.
Änderung von Repetition, egal in welche Richtung, bringt nichts.

Das Problem liegt in der Länge des gesendeten Signals. Wenn ich kurz auf meiner Fernbedienung drücke fährt er in die gewünschte Richtung. Bei langem Druck, solange wie gedruckt.

M.M.n. muss das Signal kurzer gesendet werden. Ob/wie das geht müsst ihr wissen :)

Ich hoffe das hilft weiter.
Somfy
Ebus

thdankert

Hallo Realkeule,

Zitat von: realkeule am 26 Februar 2015, 18:42:04
Das Problem liegt in der Länge des gesendeten Signals. Wenn ich kurz auf meiner Fernbedienung drücke fährt er in die gewünschte Richtung. Bei langem Druck, solange wie gedruckt.
M.M.n. muss das Signal kurzer gesendet werden.

soweit waren wir ja schon (siehe der Beitrag etwas weiter oben) - bei manchen Nutzern hat es mit "repetition" auf 1 oder 2 funktioniert, den kurzen Tastendruck nachzuahmen.
Leider habe ich keine Raffstore, nur normale Rolläden, und bisher konnte mir noch keiner das Signal seiner Fernbedienung aufzeichnen...

Grüße,
Thomas
RPI mit FHEM, 2x Stackable CC (868 und 433MHz)

realkeule

#29
Stimmt, ich hatte das von Merlin irgendwie andersherum verstanden. Egal:


Sag mir wie ich das Signal aufzeichne und ich zeichne es dir auf :)


//edit

alles ist gut. heute nochmal in ruhe damit gearbeitet und eine lösung (die hier beschrieben ist) gefunden!
repitition 3 ist der maximale (und auch sicherster!) wert. damit lässt sich alles steuern. habe 14 raffstores die einzeln angelernt sind und eine große gruppe mit allen raffstores und alle funktionieren besser als mit der original fernbedienug.

ich bin erstmal glücklich und stürze mich jetzt auch den automatismus!

vielen dank :)
Somfy
Ebus