59_HCS.pm: kein Start nach rereadcfg; angepasste 59_HCS.pm in Beitrag #37

Begonnen von Mr.Heat, 26 Januar 2015, 22:07:25

Vorheriges Thema - Nächstes Thema

stromer-12

#30
Zitat von: Mr.Heat am 04 Februar 2015, 14:58:09
Okay, habe Neuigkeiten....
------------------------------UDPATE
Ich kann den Fehler jetzt wohl reproduzieren:

Ursprungszustand: HCS steht auf Status Initialized, funktioniert nicht.
1. shutdown restart - HCS läuft an und funktioniert. Es werden minütlich die Thermostaten geparst (Einträge im log).
2. fhem.cfg wird mit dem Webeditor geöffnet und wieder gespeichert; fhem läd die fhem.cfg und weiteres neu
3. HCS IST AUSGEFALLEN/startet nicht. Fehler gibt es keine, Regelmäßige Logeinträge auch nicht. HCS macht nichts, und bleibt ewig im Status Initialized.

Ich hatte dich schon weiter oben mal gefragt, ob du die fhem.cfg direkt bearbeitest, da habe ich nehmlich das gleiche Verhalten und das schon seit über einen Jahr.
FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

Mr.Heat

Hallo stromer-12,

das tut mir leid, das habe ich überlesen?
Wenn das seit über einem Jahr so ist, wird HCS dann nicht mehr aktualisiert? Ich denke, viele editieren Kleinigkeiten aus dem Web-Editor heraus und wenn dadurch die Heizung ausfällt, ist das nicht gerade toll. HCS sollte per default meiner Meinung nach angeschaltet sein und nicht aus. Sonst hätte ich das Modul ja nicht in der Config eingetragen.


stromer-12

Ich bin der Meinung als ich HCS bei mir anfing einzurichten, war das nicht so. Es fing etwas später damit an. Ich ändere nur in der Detailansicht, da noch andere Geräte Probleme mit einen  rereadcfg haben.

Gesendet von meinem GT-I9295

FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

The-Holgi

Hm, also bei mir ist das nicht so. Ich kann fhem.cfg nach Lust und Laube speichern, fhem neu starten oder den kompletten Pi neu starten. HCS startet immer automatisch ohne mein Zutun. Status meist demand.
Gruß Holgi
HP T610 Thin Client; Docker Fhem 5.9; 2X CUL V3 868mhz; Max Heizungssteuerung; FS20kse; FS20UWS; FS20S8-3; 2 FS20DI; HM-CFG-LAN,HM-LC-SW1-PL,HM-SEC-SD, HM-SE1PBU-FM;
Harmony Hub;Hue-Bridge mit Iris, E27 Bulb & FLS-PP

Mr.Heat

Also doch ein Bug....
da das wohl doch ncihts mit dem Zwischenstecker zu tun hat, hab ich den Thread-Titel mal angepasst :)

stromer-12

Bei fhem start bzw restart habe ich auch keine Probleme.

Gesendet von meinem GT-I9295

FHEM (SVN) auf RPi1B mit HMser | ESPLink
FHEM (SVN) virtuell mit HMLAN | HMUSB | CUL

Mr.Heat

Hallo,

habe den Code von 59_HCS.pm mal angesehen.
ich halte es für eine Race Condition:
In der Intialisierungs-Funktion HCS_DoInit passiert folgendes:
if($init_done) {
my $ret = HCS_getValues($hash,0);
HCS_setState($hash,$ret);
RemoveInternalTimer($hash);
my $timer = gettimeofday()+($attr{$name}{interval}*60);
InternalTimer($timer, "HCS_checkState", $hash, 0);
$hash->{NEXTCHECK} = FmtTime($timer);
}


Ist FHEM aber zu diesem Zeitpunkt nicht fertig, so wird niemals wieder erneut darauf geprüft; es wird nie ein Timer programmiert, und HCS bleibt einfach stehen. Das kann so nicht richtig sein. Eventuell sollte der interne Timer so oder so gesetzt werden, und in HCS_Checkstate ebenfalls auf $init_done geprüft werden?

Wer kann das einbauen?

Mr.Heat

Hallo, mit der angehängten 59_HCS.pm ist das Problem gelöst: ist fhem noch nicht initialisiert, so wird dennoch ein Timer gesetzt. In HCS_Checkstate wird dafür ebenfalls auf $init_done geprüft.

Damit ist nach einem speichern der fhem.cfg der Status zuerst Initialized, bei get HCS values ist aber bereits der nächste Zeitpunkt zu finden (nicht n/a). Dann läuft HCS an.

vielleicht sollte das jemand einchecken.




Memphiz

Hatte genau das gleiche Problem nachdem ich gestern meine Therme schaltbar gemacht habe. Heute morgen kein warmes Badezimmer (hatte zum schluß die cfg editiert). Mit Deinen Änderungen funktioniert es prima. Wäre schon gut, wenn die Änderung irgendwie den Weg in die Hauptquellen finden könnte.

peterchen89

Sorry dass ich den Post wieder aus der Versenkung hole. Ich denke die Lösung wie hier vorgestellt ist nicht die feinste. Besser wäre wenn HCS selbst auf REREADCFG lauschen würde. Vielleicht kann der Post mal in ein Unterforum mit mehr Bezug zu HCS verschoben werden.
FHEM 5.5 auf HP ProLiant MicroServer G7 N54L 8 GB Ubuntu 14.04 LTS.
1x HM-CFG-LAN, 1x HM-CFG-USB, 7x HM-CC-RT-DN, 5x HM-SEC-SC-2, 1x HM-SEC-SCo, 2x HM-TC-IT-WM-W-EU, 2x HM-LC-Sw1-Pl, 2x HM-ES-PMSw1-Pl, 4x HM-PB-2-WM55-2, 1x HM-PB-6-WM55, 1x HM-WDS10-TH-O, 1x CUL433, 6x Pollin Funksteckdose

Mr.Heat

Schon richtig. War halt meine schnelle Lösung nachdem das irgendwie sonst ignoriert worden ist.
Gibt ja keinen Bugtracker o.Ä. meines Wissens... mehr als schreiben kann ich nicht.

LG