Problem mit [at] und sunrise/sunset

Begonnen von Manfi, 23 Juni 2019, 17:11:00

Vorheriges Thema - Nächstes Thema

Manfi

Hi,

Seit einiger Zeit steuere ich das Hochfahren meiner Markise mit
defmod MarkiseAbendsRein at *{sunset_abs(-9000)} set STOBAG open
Das funktioniert auch, nur fiel mir bei Durchsicht des Logs auf, daß der Befehl ein zweites mal ausgeführt wird und zwar nur dann, wenn sunset_abs des folgenden Tages später ist, als am aktuellen Tag. Dies trifft praktisch auf alle Tage vor der Sommersonnenwende zu.
Umgekehrt verhält es sich bei sunrise: Das Problem mit der Wiederholung des Befehls zum Zeitpunkt des Sonnenaufgang des Folgetages beginnt nach der Sommersonnenwende, weil ja dann der Sonnenaufgang des folgenden Tages später ist.
Meine Jalousien schließe ich abends mit
defmod Jalousie1AbendsRunter at *{sunset_abs} set Jalousie1 closed
was auch gut funktioniert.
Morgens stelle ich die Lamellen waagrecht mit
defmod Jalousie1MorgensAuf at *{sunrise_abs+9000} set Jalousie1 drive up 2
Bis zur Sonnenwende vor einigen Tagen funktionierte das ganz normal, danach sieht es jedoch so aus:
Zitat2019.06.23 06:41:53 3: ROLLO (Jalousie1) DRIVE Command drive up for 2 seconds.
2019.06.23 06:42:08 3: ROLLO (Jalousie1) DRIVE Command drive up for 2 seconds.
Der Befehl drive up 2 wird ein zweites mal ausgeführt und führt zu einem ungewollten Hochfahren der Jalousie für 2 Sekunden.
Gibt es dafür eine Lösung?

Gruß-
manfi
Hardware: Raspberry Pi2, SignalDuino 433, Sonoff/Tasmota, NodeMCU/ESPEasy, FS10

rudolfkoenig

Gibt es dafür eine Lösung?Ja, das Problem ist seit etwa 10 Jahren bekannt, und auch im commandref (https://fhem.de/commandref_modular.html#SUNRISE_EL) beschrieben:
Zitatsunrise() and sunset() return the absolute time of the next sunrise/sunset, adding 24 hours if the next event is tomorrow, to use it in the timespec of an at device or for the on-till command for FS20 devices.