10_SOMFY.pm - Somfy RTS (und kompatible)

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

Vorheriges Thema - Nächstes Thema

Dia81

Hallo,

seit dem update geht bei mir das set <> go-my nicht mehr.
Ich bekomme die Fehlermeldung:

SOMFY_set: Unknown argument "go-go-my", choose one of off off-for-timer on on-for-timer prog stop z_custom go-my manual pos position wind_only_a wind_sun_9

Auch wenn ich in Fhem auf "go-my" klicke.

Vermute im Modul ist irgendwo ein "go-" zuviel hingerutscht? So leider nicht mehr nutzbar :/

viegener

Zitat von: Dia81 am 10 Mai 2020, 12:29:39
Hallo,

seit dem update geht bei mir das set <> go-my nicht mehr.
Ich bekomme die Fehlermeldung:

SOMFY_set: Unknown argument "go-go-my", choose one of off off-for-timer on on-for-timer prog stop z_custom go-my manual pos position wind_only_a wind_sun_9

Auch wenn ich in Fhem auf "go-my" klicke.

Vermute im Modul ist irgendwo ein "go-" zuviel hingerutscht? So leider nicht mehr nutzbar :/

Das kann ich bei mir nicht nachvollziehen - kannst Du das nochmal explizt überprüfen? Die Fehlermeldung unten wäre auch völlig in Ordnung, denn go-go-my ist kein gültiger set-Befehl. Vielleicht kommt das doppelte go an anderer Stelle rein?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Dia81

Zitat von: viegener am 10 Mai 2020, 13:34:33
Das kann ich bei mir nicht nachvollziehen - kannst Du das nochmal explizt überprüfen? Die Fehlermeldung unten wäre auch völlig in Ordnung, denn go-go-my ist kein gültiger set-Befehl. Vielleicht kommt das doppelte go an anderer Stelle rein?


Verrückt nach dem heutigen Update von mir geht es wieder...

Der Befehl "Set Rollade go-my" hat mir immer gesagt go-go-my sei nicht zulässig, wo auch immer das 2. Go herkam. Von mir nicht, da ich ja z.B. auch über FTUI die Dinger steuer und da kam dann ebenfalls auf einmal die Meldung...  :) Harken wir es als seltsames Problem ab :>

gestein

Hallo,

ich kämpfe gerade mit meinen SOMFY-Rollos und dem AutoShutterControl.
Das ASC erwartet ein Reading für die Position, dass nicht laufend upgedatet wird, sondern erst nach dem Abschluss der Fahrt (und dann möglichst nicht auf 10-er Schritte gerundet).
Es gibt das Internal "move", dass entweder "stop", "off" oder "on" ist.
Siehe dazu auch: https://forum.fhem.de/index.php/topic,110277.msg1058004.html#msg1058004 und die folgenden 8 Beiträge.

Wäre es möglich ein Reading einzubauen, das die Position erst dann ändert, wenn die Fahrt abgeschlossen ist?
Oder das "move" zu einem Reading zu machen? Dann könnte man auch auf Events von "move" triggern.

Danke im Voraus
lg, Gerhard

viegener

Zitat von: gestein am 27 Mai 2020, 16:11:56
Hallo,

ich kämpfe gerade mit meinen SOMFY-Rollos und dem AutoShutterControl.
Das ASC erwartet ein Reading für die Position, dass nicht laufend upgedatet wird, sondern erst nach dem Abschluss der Fahrt (und dann möglichst nicht auf 10-er Schritte gerundet).
Es gibt das Internal "move", dass entweder "stop", "off" oder "on" ist.
Siehe dazu auch: https://forum.fhem.de/index.php/topic,110277.msg1058004.html#msg1058004 und die folgenden 8 Beiträge.

Wäre es möglich ein Reading einzubauen, das die Position erst dann ändert, wenn die Fahrt abgeschlossen ist?
Oder das "move" zu einem Reading zu machen? Dann könnte man auch auf Events von "move" triggern.

Danke im Voraus
lg, Gerhard

Es wäre prinzipiell möglich ein entsprechendes Reading einzubauen. Wäre es denn nicht besser bei ASC nachzufragen, ob hier eine Anpassung an kontinuierliche pos werte über die Zeit möglich wäre?

Prinzipiell kannst Du Dir aber auch mit folgender Konstruktion helfen über ein userreading helfen:

endposition { return ReadingsVal($name,"exact",0) if ( InternalVal($name, "move", "stop" ) eq "stop" ) }

Das das userreading jeweils aktualisiert wird wenn die pos aktualisiert wird sollte das den Wert am Ende anzeigen und zwar erst wenn der ROlladen wirklich stoppt
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

gestein

Hallo,

Prinzipiell könnte man Cooltux natürlich fragen, aber ich denke, dass er bereits jetzt an so vielen Fronten kämpft um das Modul stabil und fehlerfrei zu bekommen.
Da den internen Ablauf zu ändern wäre wahrscheinlich kontraproduktiv.
Anscheinend wird bei vielen (den meisten) Systemen zur Rollladensteuerung die Position erst dann gesetzt, wenn die Endposition erreicht wird.

Ich probiere heute mal Deinen Code gerne aus.
lg, Gerhard

gestein

Hallo,

Es scheint, als würde es mit diesem userreading klappen:
usrPos:position:.* { return ReadingsVal($name,"exact",0) if ( InternalVal($name, "move", "stop" ) eq "stop" ) }

Allerdings wird während der Fahrt, das userreading auf Leer (also ,,") gesetzt, aber bei Ende der Fahrt dann auf den Wert ,,exact".
Momentan scheint es, als ob das reichen könnte.

Ein standardmäßiges Reading im Code wäre natürlich besser 😉
Danke, Lg, Gerhard

viegener

Zitat von: gestein am 29 Mai 2020, 16:15:12
Hallo,

Es scheint, als würde es mit diesem userreading klappen:
usrPos:position:.* { return ReadingsVal($name,"exact",0) if ( InternalVal($name, "move", "stop" ) eq "stop" ) }

Allerdings wird während der Fahrt, das userreading auf Leer (also ,,") gesetzt, aber bei Ende der Fahrt dann auf den Wert ,,exact".
Momentan scheint es, als ob das reichen könnte.

Ein standardmäßiges Reading im Code wäre natürlich besser 😉
Danke, Lg, Gerhard

Ich habe mal in der Version in github ein zusätzliches Attribut eingeführt (finalPosReading). In diesem kann man den Namen eines zusätzlichen Readings angeben, dass nur mit der finalen Position gefüllt wird und nicht während der Fahrt des Rolladens. Ist ein wenig aufwändiger, deshalb bräuchte ich Rückmeldung ob das wirklich funktioniert bevor ich das offiziell freigebe.

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

gestein

#383
Super, danke.
Werde ich probieren.

Ich muss also ein Userreading anlegen und das dann als Attribut finalPosReading. Richtig?

Also:
attr WZ.Rollo.StiegeRechts userReadings usrPos
attr WZ.Rollo.StiegeRechts finalPosReading usrPos


Danke. Lg, Gerhard

viegener

Zitat von: gestein am 31 Mai 2020, 18:11:03
Super, danke.
Werde ich probieren.

Ich muss also ein Userreading anlegen und das dann als Attribut finalPosReading. Richtig?

Also:
attr WZ.Rollo.StiegeRechts userReadings usrPos
attr WZ.Rollo.StiegeRechts finalPosReading usrPos


Danke. Lg, Gerhard

Du brauchst das Reading nicht anzulegen, nur den gewünschten Namen im Attribut angeben. Das Reading wird dann automatisch angelegt.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

gestein

Noch besser ;) Danke.

Leider finde ich die Version zum Testen nicht im Github. Die Version dort ist vom 28.4.
https://github.com/fhem/fhem-mirror/blob/master/fhem/FHEM/10_SOMFY.pm

viegener

Zitat von: gestein am 01 Juni 2020, 09:45:27
Noch besser ;) Danke.

Leider finde ich die Version zum Testen nicht im Github. Die Version dort ist vom 28.4.
https://github.com/fhem/fhem-mirror/blob/master/fhem/FHEM/10_SOMFY.pm

Nein sie ist in meinem Entwicklungsrepository: https://github.com/viegener/Telegram-fhem/tree/master/Somfy

Link zu github findet sich auch im ersten Beitrag

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

gestein

Danke. Da hätte ich auch selber draufkommen können. ;)

Habe es installiert und es läuft erst mal zufriedenstellend.
Grossartig.
Ich werde noch ein bisschen weitertesten und melde mich wieder.

lg, Gerhard

Dia81

Zitat von: viegener am 10 Mai 2020, 13:34:33
Das kann ich bei mir nicht nachvollziehen - kannst Du das nochmal explizt überprüfen? Die Fehlermeldung unten wäre auch völlig in Ordnung, denn go-go-my ist kein gültiger set-Befehl. Vielleicht kommt das doppelte go an anderer Stelle rein?

Ich mal wieder. Der Fehler taucht witzigerweise wieder oder immer noch bei einem der Rollos auf. Habe mich gewundert warum beim Sonnenmodus immer ein Rollo nicht auf SChlitz fährt.
Drück ich bei diesem Rollo in Fhem auf go-my kommt:

SOMFY_set: Unknown argument go-go-my, choose one of off:noArg off-for-timer:textField on:noArg on-for-timer:textField prog:noArg stop:noArg z_custom:textField go-my:noArg manual:200,100,90,80,70,60,50,40,30,20,10,0,on,off pos:100,90,80,70,60,50,40,30,20,10,0 position:100,90,80,70,60,50,40,30,20,10,0 wind_only_a:noArg wind_sun_9:noArg

Aber nur dieses eine Rollo was genauso eingebunden ist wie alle anderen. Was kann das denn nu sein ?? Er denkt hier wieder ich drücke auf go-go-my ?!?

viegener

Zitat von: Dia81 am 02 Juni 2020, 16:30:54
Ich mal wieder. Der Fehler taucht witzigerweise wieder oder immer noch bei einem der Rollos auf. Habe mich gewundert warum beim Sonnenmodus immer ein Rollo nicht auf SChlitz fährt.
Drück ich bei diesem Rollo in Fhem auf go-my kommt:

SOMFY_set: Unknown argument go-go-my, choose one of off:noArg off-for-timer:textField on:noArg on-for-timer:textField prog:noArg stop:noArg z_custom:textField go-my:noArg manual:200,100,90,80,70,60,50,40,30,20,10,0,on,off pos:100,90,80,70,60,50,40,30,20,10,0 position:100,90,80,70,60,50,40,30,20,10,0 wind_only_a:noArg wind_sun_9:noArg

Aber nur dieses eine Rollo was genauso eingebunden ist wie alle anderen. Was kann das denn nu sein ?? Er denkt hier wieder ich drücke auf go-go-my ?!?

Dann ist vermutlich bei dem Rollo etwas anders definiert. Was heisst genau "drück ich bei diesem Rollo in FHEM..." oder "Sonnenmodus". Ein paar zusätzliche Infos sind immer hilfreich.

Also wo: In FHEMWeb in beim set-button oder sonst wo? Fibt es irgendwelche Anpassungen? Generell solltest DU mal schauen, was dieses von anderen unterscheidet. Dabei hilft üblicherweise ein list beider Devices und dann nebeneinander halten. Ein list des devices ist auch relevant, um überhaupt zu helfen.

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