Hi Sailor,
ich habe jetzt mal die Ausgabe aus dem Terminal mitgeschnitten:
CUT
The following Service can be read : /heatingCircuits/hc2/status
The following Service CANNOT be read : /heatingCircuits/hc2/suWiSwitchMode
The following Service CANNOT be read : /heatingCircuits/hc2/suWiThreshold
The following Service can be read and is writeable: /heatingCircuits/hc2/temperatureRoomSetpoint
The following Service CANNOT be read : /heatingCircuits/hc2/temporaryRoomSetpoint
The following Service can be read : /heatSources/actualCHPower
The following Service can be read : /heatSources/actualDHWPower
The following Service can be read : /heatSources/actualPower
The following Service CANNOT be read : /heatSources/actualsupplytemperature
The following Service CANNOT be read : /heatSources/ChimneySweeper
The following Service can be read : /heatSources/CHpumpModulation
The following Service can be read : /heatSources/flameCurrent
The following Service can be read : /heatSources/flameStatus
The following Service can be read : /heatSources/gasAirPressure
The following Service can be read : /heatSources/nominalCHPower
The following Service can be read : /heatSources/nominalDHWPower
The following Service can be read : /heatSources/numberOfStarts
The following Service can be read : /heatSources/powerSetpoint
The following Service can be read : /heatSources/powerSetpoint
The following Service can be read : /heatSources/returnTemperature
The following Service can be read : /heatSources/systemPressure
km200_ParseHttpResponseInit ERROR: connect to http://192.168.178.30:80 timed out
Can't use an undefined value as an ARRAY reference at ./FHEM/73_km200.pm line 1194.
[/code]
Hallo Jens,
Das sieht fast gut aus.
Der Kontakt zum KM200 steht. Werte können gelesen und geparst werden.
Dann dauert der Abruf eines Wertes mehr als 5 Sekunden und das Modul bricht ab.
Aufgrund des Abbruchs wird kein Array mit dem Namen @{$hash->{Secret}{KM200DYNSERVICES}} generiert und somit kommt es vollkommen richtig zu der Fehlermeldung.
Scheinbar hast du noch eine ältere Version, denn die Neue gibt dann die Fehlermeldung
No dynamic values available to be read. Skipping download.
aus und stürzt nicht mehr das fhem ab.
Die Frage ist also, warum dauert plötzlich ein Wert so lange.
Versuchsweise kannst Du mal in der Subroutine
sub km200_GetInitService($)
die Zeile
timeout => 5,
in Folgende ersetzen
timeout => 10,
mal schauen was das bringt.
Hier liegt aber ein Kommunikationsproblem vor welches ich
noch nicht einzuordnen vermag...
Wenn das nichts hilft, dann komentiere in der km200_Define($) für das array "@KM200_AllServices" mal die Zeile
"/heatSources/workingTime",
aus zu
#"/heatSources/workingTime",
Die Neuste Version stelle ich heute Abend nach einem Testlauf in meiner Umgebung ins Netz.
Gruss
Sailor