Hallo,
ich habe Probleme mit WeekdayTimer und dem Verhalten nach dem Reboot.
Zur Lage:
Es existieren pro Rollladen zwei WeekdayTimer (Arbeit/Urlaub):
dm.duo.eg.Arbeitszimmer 1234560|{sunset_abs("Civil",ReadingsVal("dm.duo.eg.Arbeitszimmer","state",0)*60)}|dusk 12345|06:00|dawn 60|09:00|dawn (ReadingsVal("sc.Urlaub.zuhause","state","") eq "off") or (ReadingsVal("sc.Arbeit.Micha","state","") eq "on")
commandTemplate setreading $NAME setpoint $EVENT
switchInThePast 1
und
dm.duo.eg.Arbeitszimmer 1234560|{sunset_abs("Civil",ReadingsVal("dm.duo.eg.Arbeitszimmer","state",0)*60)}|dusk 1234560|09:00|dawn (ReadingsVal("sc.Urlaub.zuhause", "state", "") eq "on" or ReadingsVal("sc.Krank.zuhause", "state", "") eq "on")
commandTemplate setreading $NAME setpoint $EVENT
switchInThePast 1
Der Dummy dm.duo.eg.Arbeitszimmer hat im State ein Offset zum sunset_abs("Civil"), hier z.B. "-15". Daraus ergibt sich die effektive Zeit zum Herunterfahren von "19:58:45", die durch ein DOIF an anderer Stelle genutzt wird.
Das ganze funktioniert i.d.R. auch, allerdings ergibt sich ein Problem nach dem Reboot. Danach steht im WeekdayTimer für nextUpdate "20:13:45", also die Zeit von sunset_abs("Civil") ohne das Offset.
Ein "{WeekdayTimer_SetAllParms()}" korrigiert dies manchmal, aber nicht zuverlässig.
Lediglich ein MODIFY der DEF erzwingt eine Korrektur.
Was habe ich übersehen?