Hallo,
vieleicht versuch ich es nochmals kurz anders zu erklären:
Der ntpclient fragt immer die UTC Zeit ab (z.B. 14:20). Durch die
Einstellung im Webinterface von DD-WRT wird dieser Zeit eine Stunde
hinzugerechnet (dann sind es 15:20). Dadurch erhalte ich die Zeit für
meine Zeitzone. Mit dieser Zeit arbeitet auch fhem.
Jedoch liefert mir date und auch date -u immer 15:20 UTC zurück, somit
gibt es auch keinen Unterschied zwischen time und localtime in perl.
Ich habe jedoch eine Lösung gefunden:
Der Router macht über ntpclient die Zeitsycronistation steht aber auf
UTC.
Das Modul 99_SUNRISE_EL.pm wurde um folgende Dinge ergänzt.
Es wird zusätzlich das Module Time::Zone mit use Time..Zone; geladen.
Im sub sr habe ich dann die Befehle
$ENV{TZ} = "CET-1CEST,M3.5.0,M10.5.0/3";
tzset;
Nun wird die absolute Sonnenaufgangs und -untergangszeit nach CET (bei
mir 7:44) angezeigt. Da in der Variable TZ nun auch die Änderung von
CET auf CEST und umgekehrt definiert wird, habe ich mal testweise den
Beginn der Sommerzeit auf den 1. Wochenende im Januar gelegt. Und
dadurch wurde mir der Sonnenaufgang um eine Stunde geändert (8:44).
Jetzt muss ich nur mal abwarten, was passiert, wenn die Uhr vom Router
umestellt ist. Leider steht im FHEM jetzt natürlich die UTC Zeit. Aber
da arbeite ich noch dran.