FHT watchdog ändert Datum und Stunde

Begonnen von fadi1, 14 Januar 2013, 20:07:40

Vorheriges Thema - Nächstes Thema

fadi1

Hallo
Ich habe das Problem das der Watchdog für die FHTs manchmal die Stunde oder / und den Tag verstellt.
meine Vermutung ist dass, wenn der Watchdog kurz vorm Stundenwechsel oder Tageswechsel ausgelöst wird, und der Funkbefehl erst nach dem Tages- Stundenwechsel gesendet wird.

wie kann man erreichen dass der Watchdog erst nach dem Stundenwechsel den "set time" Befehl sendet?

der derzeitige Eintrag sieht so aus.

"HzR_Bad_EG:measured-temp.* 01:00 SAME set HzR_Bad_EG time; trigger wd_HzR_Bad_EG ."  

Ich betreibe 10 FHTs und innerhalb einer Woche ist sicher bei 2 FHT das Datum und die Zeit falsch.
kann man die FHTs mit einen anderen set Befehl aufwecken? zb. mit "set FHTxxx windowopen-temp 8.0" das währe eine einfache Lösung

lg
fadi1

 

 

Puschel74

Hallo,

Ich jag meinen 11 FHT´s um 02:00:00 das um die Ohren

fht_setdate {
  if ( $year gt 2010 ) {
    my @@fhts=devspec2array("TYPE=FHT");
    foreach(@@fhts) {
      my $cmd="set ".$_." date time";
      fhem $cmd;
      Log 4, "sent cmd ".$cmd;
    }
  } else {
      Log 1, "Fehler beim setzen von Uhrzeit und Datum: Jahr <= 2010 - Datum ungueltig?!"
  }
}


Das klappt soweit ganz gut aber ich bin auch auf der Suche nach was kürzerem das aber meine FHT´s zuverlässig wach hält.
In der Group hab ich ein paar gute Beiträge dazu gelesen, werd mal die Suche bemühen.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

fadi1

Hallo

kann man im Watchdog auch ein Perlskript ausführen lassen?
wenn ja dann sollte eigentlich
 
HzR_Bad_EG:measured-temp.* 01:00 SAME {if ($min > 1 and $min < 45) {fhem("set HzR_Bad_EG date time");}}; trigger wd_HzR_Bad_EG .

funktionieren.

damit wird der date- time- Befehl nur zwischen der 1. und 45. Minute jeder Stunde ausgeführt. und der fs20befehl hat 15 minuten zeit um auf Sendung zu gehen ich hoffe das das reicht.

borsti67

Zitat von: fadi1 schrieb am Mo, 14 Januar 2013 20:07Ich habe das Problem das der Watchdog für die FHTs manchmal die Stunde oder / und den Tag verstellt.
meine Vermutung ist dass, wenn der Watchdog kurz vorm Stundenwechsel oder Tageswechsel ausgelöst wird, und der Funkbefehl erst nach dem Tages- Stundenwechsel gesendet wird.
Genau. FHEM zieht zwar die Minute nach, aber nicht die Stunde. Ich habe das mit einem Watchdog realisiert, kann jetzt aber gerade nicht nachgucken. %-)
Schreib' mir mal 'ne PM, wenn ich mich nicht melde...
cu/2
Borsti
---
FHEM 5.8 auf Synology DS211j (bis 11/17) | FHEM 6.0 auf Raspi Zero W (bis 11/20) | FHEM 6.2 als VM in Synology DS1815+ (ab 11/20)

borsti67

so, habe tatsächlich dran gedacht...
Eigentlich ganz simpel - ich gehe davon aus, dass das Pattern "hour:" nur bei Antworten von FHTs kommt (wenn es noch andere Devices gibt, muss man die RegEx entsprechend verfeinern!), und das auch nur, wenn man die Zeit explizit gestellt hat:

define n_Uhrvergleich notify .*:hour:.* { \
  my $zeit="%EVTPART1";; \
  if($zeit==$hour) { \
    Log(3,"Uhrzeit für @ erfolgreich nachgestellt.") \
  } else { \
    Log(2,"Uhr stellen bei @ fehlgeschlagen!");; \
    fhem("set @ time") \
  } \
}
cu/2
Borsti
---
FHEM 5.8 auf Synology DS211j (bis 11/17) | FHEM 6.0 auf Raspi Zero W (bis 11/20) | FHEM 6.2 als VM in Synology DS1815+ (ab 11/20)

fadi1

Hallo

Danke Puschel74 ich werde dein Skript zusätzlich einbauen zur zusätzlichen Überwachung des Datums/Zeit

Derzeit lauft meine Erweiterung ohne Fehler die 15 Minuten Sendeverbot für den Watchdog verhindert derzeit zuverlässig die Zeitverstellung und die FHTs bleiben online
zusätzlich habe ich das ATTR: "retrycount" auf "1" gesetzt um wiederholtes senden zu unterbinden.