Somfy RTS / Signaldunio / Startprobleme nach Reboot

Begonnen von LastOne, 20 September 2020, 17:39:39

Vorheriges Thema - Nächstes Thema

viegener

Zitat von: LastOne am 23 September 2020, 13:01:29
Aber: ziehe ich ohne Warnung den Stromstecker, verhält er sich trotzdem anders. Das Problem mit Rolling Code veraltet habe ich via Screenshot verifiziert. Vorm Stecker zIehen Code abgeknippst. Nach dem Neustart steht dort ein anderer, derzeit eins ,tiefer'

Das mit dem Screenshot hilft nicht, denn wenn Du "autoStoreRollingCode" gesetzt hast (wie oben gesagt) - dann wird zwar der Wert in uniqueID gespeichert aber erst bei der ersten Betätigung aus der uniqueID gelesen - im Reading steht aber nach dem Neustart der Wert aus fhem.save und der ist vermutlich veraltet

Aber ich habe mir die ganze Logik nochmal angeschaut, ich denke ich habe eine Erklärung gefunden was beim Neustart ohne Runterfahren passiert und ich vermute es erfordert doch etwas Umbau um das zu verhindern
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

LastOne

@andies Soweit ich das versteh in der uniqueID durch den autorollingcode

@viegener, ah ok. Ich dachte nur weil sie beim ersten betätigen nur im Web aber nicht real fährt issue nicht synchron und zählt hoch und passt dann wieder. Und was wäre da an Umbau zu tun? Erklärt das auch den Einfluss des Conbee?

viegener

Zitat von: LastOne am 23 September 2020, 16:35:26
@andies Soweit ich das versteh in der uniqueID durch den autorollingcode

@viegener, ah ok. Ich dachte nur weil sie beim ersten betätigen nur im Web aber nicht real fährt issue nicht synchron und zählt hoch und passt dann wieder. Und was wäre da an Umbau zu tun? Erklärt das auch den Einfluss des Conbee?

Nein das sollte keinen Einfluss bzgl conbee haben - heir ist einfach ein Fehler in der Logi, denn im historischen Teil des Moduls wird die aktuelle Definition des Devices immer angepasst und das muss ich ändern, das hebelt den Mechanismus über die uniqueID aus. Hätte mir vorher auffallen müssen.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

viegener

Ich habe eine Testversion in github bereitgestellt:

https://github.com/viegener/Telegram-fhem/blob/master/Somfy/10_SOMFY.pm

Zum Ausprobieren die Datei (raw) herunterladen und ins FHEM-Verzeichnis (vorher existierende Date sichern) - Danach FHEM neustarten

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

LastOne

Super, teste ich morgen direkt und gebe dir Feedback   :)

LastOne

Ich brauche dabei doch leider noch mal deine Hilfe. Ich habe zwar schon Dateien auf dem editiert, aber ich bekomme die Datei via ftp über den pi User nicht ausgetauscht. Er sagt ich habe nicht die nötigen Rechte. Wie geht man hier normal vor?

andies

Zitat von: LastOne am 24 September 2020, 19:04:38
Wie geht man hier normal vor?
ssh zum Pi und dann
sudo chmod 666 <Dateiname>
oder, was vermutlich harmloser ist
sudo chown fhem:dialout <Dateiname>
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

LastOne

So, Datei getestet. Am Verhalten hat sich leider nichts geändert.

viegener

Heisst das DU musstest wieder zweimal betätigen oder hast Du überprüft, dass der Rollingcode nicht übernommen wurde?
Nur zur Sicherheit - Raspbi neugestartet und vor dem Stecker ziehen den Device auch mind einmal betätigt?

Kannst Du mir ein list des Somfydevices machen?

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

LastOne

Ich habe das ganze heut zur Sicherheit nocheinmal gemacht. Keine Veränderung.

Zur Klarstellung: Ivh musste zwei mal betätigen. Den Rollingcode hatte ich nicht überprüft. Bevor ich das nun zu, auf welcher weise soll ich ihn prüfen? Damit ich nicht wieder halbe Infos liefere

Zum List

Internals:
   ADDRESS    FF4A04
   DEF        FF4A04
   FUUID      5f3432ac-f33f-ac26-ba75-05d3361d94641392
   IODev      dunio
   NAME       Rollo_Kueche
   NR         21
   STATE      open
   TYPE       SOMFY
   move       off
   CODE:
     1          FF4A04
   READINGS:
     2020-09-25 20:08:39   enc_key         AA
     2020-09-25 20:08:39   exact           0
     2020-09-25 20:08:39   position        0
     2020-09-25 20:08:39   rolling_code    010F
     2020-09-25 20:08:39   state           open
     2020-09-25 20:08:39   userposition    100
Attributes:
   IODev      dunio
   alias      Küche
   autoStoreRollingCode 1
   devStateIcon closed:fts_shutter_100 open:fts_shutter_10 my:fts_shutter_50
   eventMap   on:ab off:auf go-my:my on:close off:open
   genericDeviceType blind
   group      Rolladen,
   homebridgeMapping clear CurrentPosition=userposition,minValue=0,maxValue=100,minStep=50 TargetPosition=userposition,minValue=0,maxValue=100,minStep=50,cmds=0:close;;50:my;;100:open
   model      somfyshutter
   positionInverse 1
   room       Küche,Alexa,Homekit,Somfy
   userReadings userposition {(ReadingsVal($NAME,"state","open") eq "open")?100:(ReadingsVal($NAME,"state","open") eq "go-my")?50:0}
   webCmd     auf:my:ab

LastOne

Und hier noch mal der List nach Stecker ziehen am Pi. Ohne irgendwas gedrückt zu haben.

Internals:
   ADDRESS    FF4A04
   DEF        FF4A04
   FUUID      5f3432ac-f33f-ac26-ba75-05d3361d94641392
   IODev      dunio
   NAME       Rollo_Kueche
   NR         21
   STATE      open
   TYPE       SOMFY
   move       stop
   CODE:
     1          FF4A04
   READINGS:
     2020-09-25 07:01:01   enc_key         A8
     2020-09-25 07:01:01   exact           0
     2020-09-25 07:01:01   position        0
     2020-09-25 07:01:01   rolling_code    010D
     2020-09-25 07:01:01   state           open
     2020-09-25 07:01:01   userposition    100
Attributes:
   IODev      dunio
   alias      Küche
   autoStoreRollingCode 1
   devStateIcon closed:fts_shutter_100 open:fts_shutter_10 my:fts_shutter_50
   eventMap   on:ab off:auf go-my:my on:close off:open
   genericDeviceType blind
   group      Rolladen,
   homebridgeMapping clear CurrentPosition=userposition,minValue=0,maxValue=100,minStep=50 TargetPosition=userposition,minValue=0,maxValue=100,minStep=50,cmds=0:close;;50:my;;100:open
   model      somfyshutter
   positionInverse 1
   room       Küche,Alexa,Homekit,Somfy
   userReadings userposition {(ReadingsVal($NAME,"state","open") eq "open")?100:(ReadingsVal($NAME,"state","open") eq "go-my")?50:0}
   webCmd     auf:my:ab

andies

um 07:01 ist rolling code 10D und dann drückst du zweimal und er wechselt auf 10F. Das ist dann der Stand um 20:08. Passt perfekt zur Beschreibung.
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

LastOne

Gut das du auf die Uhrzeit hinweist. Die hab ich vorhin nicht beachtet. 7:01 kann das erste öffnen am Morgen gewesen sein. Danachhab ich das mit Stecker ziehen zwei oder drei mal getestet. Er ist also immer auf die Daten zurück gesprungen.

viegener

OK - ich habe jetzt das bei mir Nachstellen können (per "kill -9"). Ich habe wieder in github eine neue Testversion bereitgestellt. Diese sollte zumindest die korrekten rollingcodes beim Senden nach Neustart verwenden.

Es gibt aber weiterhin eine Einschränkung: Das Reading wird nach dem Neustart immer noch zuerst auf dem alten Wert stehen, das wird dann automatisch bei der ersten Betätigung korrigiert.

Hintergrund; Das Setzen des Readings aus dem Statefile (fhem.save) kann ich nicht abfangen und im statefile steht zu diesem Zeitpunkt ja der falsche Wert und eine verzögerte Korrektur würde nur ein weiteres Problem eröffnen, wenn direkt nach dem Neustart ein Kommando abgesetzt werden soll

Also es wäre toll, wenn Du nochmal bei Dir testen könntest
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

LastOne

Aber natürlich, sehr gern sogar. Mache ich heut Abend noch  :)