10_SOMFY.pm - Somfy RTS (und kompatible)

Begonnen von viegener, 12 Mai 2016, 21:06:46

Vorheriges Thema - Nächstes Thema

viegener

Zitat von: Spanish am 05 Oktober 2020, 11:06:48
Hallo,

hier das List eines der Rolladen. Ich habe es über Handsender 2 Angelernt (funktionierte). Dann wurde es über Handsender 1 bewegt und seid dem ist es der Zustand.

Frage: Sollte ich nur den Handsender nutzen über den ich auch anlerne? Wie kann ich diese Situation in der Zukunft vermeiden?



Bitte benutze Code tags für logs / lists etc - auch das steht in den Artikeln im Anfängerforum, das macht es einfacher für alle die die Beiträge lesen und auch INhalte analysieren - geht auch nachträglich

Lass mich versuchen es mehr im Detail zu erklären:

- Ein Somfy-Device hat eine Adresse (diese muss bei der Definition mit angegeben werden)
- Sowohl Sender als auch Rollo/Rolladen haben einen Zähler, der bei jedem Befehl mitgesendet wird (Device/Handsender) und am Rolladen entsprechend beim Empfang hochgezählt wird.
- Das Anlernen passiert nur am Rolladen - ein angelernter Sender versetzt diesen nur in den Anlernmodus - es ist also egal mit welchem Handsender Du etwas angelernt hast
- Die Adresse in Somfy muss eindeutig sein und darf NICHT von einem Handsender verwendet werden, da dann der Zähler (Rolling Code) unterschiedlich hochzählt

Jetzt nochmal die Frage, ist Deine Adresse wirklich eindeutig, oder hast Du eine Adresse, die ein Signalduino empfangen hat verwendet?
Das Verhalten spricht sehr dafür, dass diese nicht eindeutig sind

Wenn nicht sicher einfach eine andere Adresse verwenden - vielleicht ein Schema ausdenken, damit vermeidest Du das Problem


Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Spanish

Hi,

sorry für den Post ohne "code".
Danke für Deine detaillierten schritte. Die Adresse sollte meines Wissens nach Eindeutig sein, allerdings empfängt der Signalduino eine ganze menge anderer Signale.
Du schreibst, "einfach eine andere Adresse verwenden - vielleicht ein Schema ausdenken, damit vermeidest Du das Problem". Könntest Du es ggf etwas weiter beschreiben? Ich bin mir nicht sicher wie das funktionieren sollte.
Danke

viegener

Zitat von: Spanish am 05 Oktober 2020, 16:34:10
Hi,

sorry für den Post ohne "code".
Danke für Deine detaillierten schritte. Die Adresse sollte meines Wissens nach Eindeutig sein, allerdings empfängt der Signalduino eine ganze menge anderer Signale.
Du schreibst, "einfach eine andere Adresse verwenden - vielleicht ein Schema ausdenken, damit vermeidest Du das Problem". Könntest Du es ggf etwas weiter beschreiben? Ich bin mir nicht sicher wie das funktionieren sollte.
Danke

Ein Schema könnte sein:
2 Stellen - Dein Hauscode --> z.B. 42
2 Stellen - die Etage oder der Raum --> Also z.B. Wohnzimmer = 01 / Arbeitszimmer = 0A / Bad = 0B // oder Erdgeschoss 01 / ...
2 Stellen - die Devices im Raum durchgezählt

Das zusammengesetzt (6 Stellen Hexadezimal) gibt die Adresse - also Arbeitszimmer - Rolladen 2 wäre 420A02

Den Hauscode wählst Du so, das keiner der existierenden Sender (also alles was der Signalduino empfangen hat) - nicht dazu passt

Aber wie gesagt, das ist nur ein Vorschlag


Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Spanish

Hallo,

ok, soweit verstehe ich das mit dem Schema. Fragen:
- wie lerne ich das Rollo dann an heute mache ich es mit
define Puerta_Dormitorio SOMFY 38D606
würde ich dann dort den HEX code mit einem eigenem überschreiben? Laufe ich dann Gefahr das mein Handsender ggf nicht mehr funktioniert?

Ich habe es gerade nochmal versucht. Der Handsender "zerschießt" mir die Config.

Vielen Dank (sorry wenn ich "dumme" Fragen stelle aber ich würde das Problem gerne lösen

viegener

Zitat von: Spanish am 05 Oktober 2020, 20:41:41
Hallo,

ok, soweit verstehe ich das mit dem Schema. Fragen:
- wie lerne ich das Rollo dann an heute mache ich es mit
define Puerta_Dormitorio SOMFY 38D606
würde ich dann dort den HEX code mit einem eigenem überschreiben? Laufe ich dann Gefahr das mein Handsender ggf nicht mehr funktioniert?

Ich habe es gerade nochmal versucht. Der Handsender "zerschießt" mir die Config.

Vielen Dank (sorry wenn ich "dumme" Fragen stelle aber ich würde das Problem gerne lösen


Irgendwie geht hier weiter alles munter durcheinander:

Mit dem define lernst Du gar nichts ein, sondern definierst doch nur den Device in FHEM.
Ja da sollte ein eigener Hexcode stehen, wenn dort die Adresse des Handsenders steht ist dei Gefahr, dass der Handsender nicht mehr funktioniert.

Das Einlernen eines Somfy-Devices in FHEM geht ganz anders und habe ich oben schonmal geschrieben - dazu wird es am Rollo selbst angelernt als eigenständige Fernbedienung  (Also Rollo in Programmiermodus versetzen - z.B. durch einen Handsender - dann Somfy Device in FHEM up / down senden)

Ich versuche es nochmal zu wiederholen: die Handsender und Somfy-Devices müssen unabhängig sein - natürlich funktioniert er dann weiterhin - Nur die Anzahl der Devices die gleichzeitig an einem Rollo angelernt sein können ist beschränkt

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Spanish

#470
Hallo,

danke und ich denke ich habe ggf ein paar Dinge bisher nicht richtig verstanden (genau genug gelesen). Daher auch ein Danke für die Geduld. Ich werde Nachher nochmal versuchen das Rollo neu in FHEM anzubinden und mit einem eigenem Schema.
Ich werde den Status Rückmelden. Vielleicht klappt es ja so endgültig.

Resultat:
Es hat nicht funktioniert hier die Schritte die ich unternommen haben

efine Puerta_Dormitorio SOMFY 15CA01
attr Puerta_Dormitorio IODev Signalduino


Dann den Rolladenin mit dem Handsender in Prog gesetzt (erst ein wenig herunter gefahren, dann den roten Knopf hinten gedrückt bis es ruckt).
set Puerta_Dormitorio prog

Dann
attr Puerta_Dormitorio devStateIcon closed:fts_shutter_100 open:fts_shutter_10 my:fts_shutter_50
attr Puerta_Dormitorio eventMap on:ab off:auf go-my:my on:close off:open
attr Puerta_Dormitorio genericDeviceType blind
attr Puerta_Dormitorio group Persianas
attr Puerta_Dormitorio drive-down-time-to-100 20
attr Puerta_Dormitorio drive-down-time-to-close 23
attr Puerta_Dormitorio drive-up-time-to-100 3
attr Puerta_Dormitorio drive-up-time-to-open 23
attr Puerta_Dormitorio homebridgeMapping clear CurrentPosition=userposition,minValue=0,maxValue=100,minStep=5 TargetPosition=userposition,minValue=0,maxValue=100,minStep=5,cmds=0:close;;50:my;;100:open
attr Puerta_Dormitorio icon fts_shutter_updown
attr Puerta_Dormitorio model somfyshutter
attr Puerta_Dormitorio room Homekit
attr Puerta_Dormitorio siriName Persiana Puerta Dormitorio
attr Puerta_Dormitorio userReadings userposition {(ReadingsVal($NAME,"state","open") eq "open")?100:(ReadingsVal($NAME,"state","open") eq "go-my")?50:0}
attr Puerta_Dormitorio webCmd stop:on:90:80:70:60:50:40:30:20:10:off


es rührt sich aber nix.

Hier das List
Internals:
   ADDRESS    15CA01
   DEF        15CA01
   FUUID      5f7c462f-f33f-fcf3-aa62-e6eb74050c8cf353
   IODev      Signalduino
   NAME       Puerta_Dormitorio
   NR         388
   STATE      open
   TYPE       SOMFY
   move       stop
   CODE:
     1          15CA01
   READINGS:
     2020-10-06 13:17:21   enc_key         A0
     2020-10-06 13:17:26   exact           0
     2020-10-06 13:17:26   position        0
     2020-10-06 13:17:21   rolling_code    0010
     2020-10-06 13:17:26   state           open
     2020-10-06 13:17:26   userposition    100
Attributes:
   IODev      Signalduino
   devStateIcon closed:fts_shutter_100 open:fts_shutter_10 my:fts_shutter_50
   drive-down-time-to-100 21
   drive-down-time-to-close 24
   drive-up-time-to-100 3
   drive-up-time-to-open 23
   eventMap   on:ab off:auf go-my:my on:close off:open
   genericDeviceType blind
   group      Persianas
   homebridgeMapping clear CurrentPosition=userposition,minValue=0,maxValue=100,minStep=5 TargetPosition=userposition,minValue=0,maxValue=100,minStep=5,cmds=0:close;50:my;100:open
   icon       fts_shutter_updown
   model      somfyshutter
   room       Homekit
   siriName   Persiana Puerta Dormitorio
   userReadings userposition {(ReadingsVal($NAME,"state","open") eq "open")?100:(ReadingsVal($NAME,"state","open") eq "go-my")?50:0}
   webCmd     stop:on:90:80:70:60:50:40:30:20:10:off


viegener

Das kommt auf die Empfangslage an - wenn der Signalduino bei Dir regelmässig falsche Adressen empfängt macht das Sinn um Aufwand zu reduzieren - Eskann aber auch ein hinweis darauf sein, die Antene/Position zu verbessern
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Spanish

Hallo,

ich habe meine obigen post aktualisiert. Hast Du ggf noch einen / ein paar Tips? Vielen Dank

viegener

Zitat von: Spanish am 07 Oktober 2020, 08:57:55
Hallo,

ich habe meine obigen post aktualisiert. Hast Du ggf noch einen / ein paar Tips? Vielen Dank

nachdem Du das Rollo in Programmiermodus versetzt hast solltest Du ein normales Kommand senden (nicht prog) - am besten mehrfach

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Spanish

Hallo

habe auch das nochmal probiert
nternals:
   ADDRESS    15CA01
   CFGFN     
   DEF        15CA01
   FUUID      5f804291-f33f-fcf3-aaf6-75f576a63f61db88
   IODev      Signalduino
   NAME       Puerta_Dormitorio
   NR         548
   STATE      open
   TYPE       SOMFY
   move       off
   CODE:
     1          15CA01
   READINGS:
     2020-10-09 17:34:06   enc_key         AA
     2020-10-09 17:34:06   exact           0
     2020-10-09 17:34:06   position        0
     2020-10-09 17:34:06   rolling_code    001A
     2020-10-09 17:34:06   state           open
Attributes:
   IODev      Signalduino
   model      somfyshutter


Es funktioniert gar nicht. Mir scheint das der HEX Code direkt etwas mit dem Shutter zu tun hat denn dort funktionierte es dann ja. Verstehen tue ich es nicht.

viegener

Zitat von: Spanish am 09 Oktober 2020, 17:42:12

Es funktioniert gar nicht. Mir scheint das der HEX Code direkt etwas mit dem Shutter zu tun hat denn dort funktionierte es dann ja. Verstehen tue ich es nicht.

Den Satz mit dem Hexcode verstehe ich nicht - was hat mit was zu tun?
(Generell kann ich nicht sagen welche Adressen erlaubt sind, ich hatte aber noch keine Probleme mit sehr willkürlichen Adressen)

Ich vermute (immer noch) Du hast früher eine Adresse verwendet die bereits angelernt war und damit den Somfy-Device nie eigenständig angelernt.
Ich kenne Dein Rollo und auch Deine Fernbedienung nicht - normalerweise haben die Motoren eine begrenzte Anzahl von Plätzen für Fernbedienungen (sind vielleicht schon viele angelernt ?)

Bist Du sicher, dass Dein Somfy - Device empfangen wird?
Hast Du mehre Kommandos abgesendet nach dem Einstellen des programmiermodus?

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Spanish

Hallo,

vielen Dank erstmal für die Geduld. Ich will mal von oben Anfangen.
Hex Code. Ich habe früher das Rollo mit einem bestimmten HEX Code "38D606" programmiert und sie hat sich damit auch über FHEM bewegt. Wenn ich einen anderen HEX Code zur Programmierung nutze (wie oben) dann hat sie sich nie gerührt, daher meine Annnahme das es etwas damit zu tun haben könnte.

Mein Rollo hat einen RTS Motor und Fernsteuerung ist Somfy RTS Teils (4 Rollos). Ich werde nochmal meine Logs durchsuchen und einfach das Rollo gezielt mit der Fernbedienung bewegen. Vielleicht komme ich ja so dazu.

ZitatBist Du sicher, dass Dein Somfy - Device empfangen wird?
Ja sonst hätte es sich ja nie aus FHEM ansteuern lassen vermute ich mal.
ZitatHast Du mehre Kommandos abgesendet nach dem Einstellen des programmiermodus?
Ja, alles probiert und es hat sich nix getan.

Ich werde nochmal in meinen Logs suchen.., übrigens Logs im FHEM log habe ich diese Einträge
2020.10.12 05:49:56 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :022222264D6198:
2020.10.12 05:49:56 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :022222264D6198:
2020.10.12 05:49:56 3: Signalduino: Unknown code Ys022222264D6198, help me!
2020.10.12 05:50:06 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :022222264D6198:
2020.10.12 05:50:06 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :022222264D6198:
2020.10.12 05:50:06 3: Signalduino: Unknown code Ys022222264D6198, help me!
2020.10.12 06:50:58 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :A0444444C9AC32:
2020.10.12 06:50:58 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :A0444444C9AC32:
2020.10.12 06:50:58 3: Signalduino: Unknown code YsA0444444C9AC32, help me!
2020.10.12 07:51:46 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :022222264D6198:
2020.10.12 07:51:46 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :022222264D6198:
2020.10.12 07:51:46 3: Signalduino: Unknown code Ys022222264D6198, help me!
2020.10.12 08:07:04 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :022222264D6198:
2020.10.12 08:07:04 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :022222264D6198:
2020.10.12 08:07:04 3: Signalduino: Unknown code Ys022222264D6198, help me!
2020.10.12 08:52:42 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :A0444444C9AC32:
2020.10.12 08:52:42 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :A0444444C9AC32:
2020.10.12 08:52:42 3: Signalduino: Unknown code YsA0444444C9AC32, help me!
2020.10.12 09:52:23 1: Signalduino: SOMFY_Parse : Somfy RTS message format error (length must be 14 or 20)! :A81191910B10374:
2020.10.12 09:52:23 3: Signalduino: Unknown code YsA81191910B10374, help me!
2020.10.12 09:58:00 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :023232264D6198:
2020.10.12 09:58:00 1: Signalduino: SOMFY_Parse : Somfy RTS checksum error! :023232264D6198:
2020.10.12 09:58:00 3: Signalduino: Unknown code Ys023232264D6198, help me!

Sollte das etwas besonderes sagen?

viegener

@Spanish:
Das unterstützt die Vermutung,d ass Du Somfy in FHEM nie an den Rolladen angelernt hast, sondern eine vorhandene Adresse quasi weiterverwendet hast - dadurch auch die Problem, dass die rolling codes auseinanderlaufen
Also müsstest Du den FHEM-Device mit einer noch nicht belegten Adresse an Deinem Rollo anlernen sonst wird das weiter Probleme bereiten

Die Fehlermeldungen stammen vom Empfang und deuten darauf hin, dass die Befehle nicht immer korrekt empfangen werden - das ist einigermassen normal, denn Signalduino und SOMFY RTS Format sind zusammen nicht optimal stabil das hängt aber dann auch mit der Entfernung von Handfernbedienungen zum Signalduino zusammen.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Spanish

Hallo,

ich habe einen neuen Versuch gestartet und meinen Signalduino etwas "empfindlicher" gestellt und auch die Sendeleistung erhöht. Das scheint die Magie gewesen zu sein.
Ich habe die Schritte von oben nochmal einzeln abgearbeitet und siehe da es hat funktioniert. Vielen Dank für die Geduld und die Hilfe!

andies

Könnte es sein, dass die Antenne nicht die beste ist? Meine war super, allerdings für die (falsche) Frequenz von 475 MHz...
FHEM 6.1 auf RaspPi3 (Raspbian:  6.1.21-v8+; Perl: v5.32.1)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann