THZ / LWZ Tecalor Stiebel Eltron Heizung

Begonnen von Heiner, 02 Juni 2013, 11:39:13

Vorheriges Thema - Nächstes Thema

micomat

Hi immi,

i have a lot of such log in my fhem log:
2014.02.21 19:36:00 1: 192.168.178.50:2003 disconnected, waiting to reappear
2014.02.21 19:36:00 1: 192.168.178.50:2003 reappeared (Mythz)
2014.02.21 19:36:00 1: 192.168.178.50:2003 disconnected, waiting to reappear
2014.02.21 19:36:00 1: 192.168.178.50:2003 reappeared (Mythz)
2014.02.21 19:36:00 1: 192.168.178.50:2003 disconnected, waiting to reappear
2014.02.21 19:36:00 1: 192.168.178.50:2003 reappeared (Mythz)
2014.02.21 19:36:00 1: 192.168.178.50:2003 disconnected, waiting to reappear
2014.02.21 19:36:00 1: 192.168.178.50:2003 reappeared (Mythz)
2014.02.21 19:36:00 1: 192.168.178.50:2003 disconnected, waiting to reappear
2014.02.21 19:36:00 1: 192.168.178.50:2003 reappeared (Mythz)
2014.02.21 21:25:00 1: 192.168.178.50:2003 disconnected, waiting to reappear
2014.02.21 21:25:00 1: 192.168.178.50:2003 reappeared (Mythz)


is there maybe some kind of timeout problem?
the system with .50 is always reachable.

thanks,
markus
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

willybauss

Zitat von: micomat am 22 Februar 2014, 00:08:07
fhem schreibt die Daten in Text Logs. wo diese liegen ist frei definierbar.

markus
o.k., das könnte man ja wahrscheinlich leicht in ein csv-Format ändern, womit recht einfach der Zugriff auf irgendwelche alte Daten möglich wird.
FHEM auf Raspberry Pi B und 2B; THZ (THZ-303SOL), CUL_HM, TCM-EnOcean, SamsungTV, JSONMETER, SYSMON, OBIS, STATISTICS

immi

Hi Markus
I am aware of the log-garbage: connect/disconnect/conect...
very annoying, I noticed it 3 weeks ago.
I hope that it is sporadic also for you and not connected with the last version.
The THZ module is loosing contact to ser2net and tries to reconnect too fast.
In 1 second you get 50 retries; and each retry is logged; look at the timestamp.
I have to find a way to delay the reconnect, without affecting overall fhem performance.
Maybe some fhem expert developers can help me, but I cannot post on the developer-subforum.

I will try to fix it in 1 or 2 weeks.

Immi

michaelk68

Hi,

it seems to work :-)

2014-02-22_18:44:48 Mythz programHC1_Mo-So_1: 00:00--24:00
2014-02-22_18:44:49 Mythz party-time: 26:15--05:45
2014-02-22_18:44:49 Mythz firmware: version: 5.39
2014-02-22_18:44:49 Mythz holidayEnd_year: 0
2014-02-22_18:44:49 Mythz allFB: outside_temp: 4.8 flow_temp: 50.6 return_temp: 45.2 hot_gas_temp: 91.6 dhw_temp: 41.8 flow_temp_HC2: 22.4 evaporator_temp: 5.1 condenser_temp: 46.8 Mixer_open: 1 Mixer_closed: 0 HeatPipeValve: 0 DiverterValve: 0 DHW_Pump: 0 HeatingCircuit_Pump: 0 Solar_Pump: 0 Compressor: 0 BoosterStage3: 0 BoosterStage2: 0 BoosterStage1: 0 HighPressureSensor: 1 LowPressureSensor: 0 EvaporatorIceMonitor: 0 SignalAnode: 0 EVU_release: 1 OvenFireplace: 0 STB: 0 OutputVentilatorPower: 38 InputVentilatorPower: 38 MainVentilatorPower: 70 OutputVentilatorSpeed: 22 InputVentilatorSpeed: 32 MainVentilatorSpeed: 22 Outside_tempFiltered: 3.7 Rel_humidity: 0 DEW_point: 390 P_Nd: 3.9 P_Hd: 20.95 Actual_power_Qc: -9442 Actual_power_Pel: 16397 collector_temp: -60

how can I get a plot of these values?

br
Michael

micomat

@immi
okay, thanks for the info. i don't know when it start, but as long as it's no problem for the system i can live with that.

@michael
great job! so it's proved to work with the 404, too =)
i recently posted a version of one of my plot files. mybe this helps you creating your own.
here is a start config, just add to the fhem.cfg where the thz is defined
define plotname SVG FileLog_Mythz:thz:CURRENT
attr plotname room wherever


then cklick on the plotname in the room and you can edit the plot details
plot title, labels and so on.
for the data you have to count the output on the bottom of the config page.
you can see the Aussen Temp in my example is on the 5th position in the output, so it is #5 in the plot config. and so on... just follow the picture added and it should work.

Markus
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

immi

great michael
happy that it THZ is working with a LWZ404 with firmware 5.39

2 small hints

  • please tell me if you notice something strange like
    Mythz party-time: 26:15--05:45
    26h makes no real sense
  • please pay attention when writing back to the heatpump "set command"

immi

micomat

Immi,
by the way i translated the THZ commandref to German.
I translated some other modules before and now i did this to the THZ.  I think it should be online the next days.

Best
Markus
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

michaelk68

Hi immi,

I think, not all values are correct, for example compressor is allway 0.
I attached one record as sample, temperature values seems to be right.

outside_temp: 1.9 flow_temp: 33.4 return_temp: 27.4 hot_gas_temp: 74.7 dhw_temp: 44.5 flow_temp_HC2: 29.5 evaporator_temp: 0.1 condenser_temp: 30.1 Mixer_open: 0 Mixer_closed: 1 HeatPipeValve: 1 DiverterValve: 0 DHW_Pump: 0 HeatingCircuit_Pump: 0 Solar_Pump: 0 Compressor: 0 BoosterStage3: 0 BoosterStage2: 0 BoosterStage1: 0 HighPressureSensor: 1 LowPressureSensor: 0 EvaporatorIceMonitor: 0 SignalAnode: 0 EVU_release: 1 OvenFireplace: 0 STB: 0 OutputVentilatorPower: 38 InputVentilatorPower: 38 MainVentilatorPower: 70 OutputVentilatorSpeed: 21 InputVentilatorSpeed: 31 MainVentilatorSpeed: 22 Outside_tempFiltered: 2.6 Rel_humidity: 0 DEW_point: 333 P_Nd: 3.33 P_Hd: 13.73 Actual_power_Qc: 27851 Actual_power_Pel: 16343 collector_temp: -60

br
Michael

xyz_fhem

Hi michaelk68.

I have the same "issue".

2014-02-24 21:19:59 THZ Mythz allFB: outside_temp: 6.4 flow_temp: 28.8 return_temp: 24.2 hot_gas_temp: 65.4 dhw_temp: 43.6 flow_temp_HC2: -60 evaporator_temp: -2.4 condenser_temp: 29.8 Mixer_open: 0 Mixer_closed: 1 HeatPipeValve: 0 DiverterValve: 0 DHW_Pump: 0 HeatingCircuit_Pump: 0 Solar_Pump: 0 Compressor: 0 BoosterStage3: 0 BoosterStage2: 0 BoosterStage1: 0 HighPressureSensor: 1 LowPressureSensor: 0 EvaporatorIceMonitor: 0 SignalAnode: 0 EVU_release: 1 OvenFireplace: 0 STB: 0 OutputVentilatorPower: 44 InputVentilatorPower: 44 MainVentilatorPower: 60 OutputVentilatorSpeed: 17 InputVentilatorSpeed: 45 MainVentilatorSpeed: 17 Outside_tempFiltered: 6.9 Rel_humidity: 0 DEW_point: 373 P_Nd: 3.73 P_Hd: 12.43 Actual_power_Qc: -29770 Actual_power_Pel: 16279 collector_temp: 7.1

I have a SE LWZ303Sol with Firmware 4.19. What machine do you have?
Maybe the pattern differs between brands/Versions/firmwares like described in the heapumpmonitor protocolVersions ini files.
http://bazaar.launchpad.net/~robert-penz-name/heatpumpmonitor/trunk/files/head:/protocolVersions/


xyz_fhem

michaelk68

Hi xyz_fhem,

I have a 404 with 5.39.

Michael

micomat

Some values are mostly 0. Thats correct :)
But they should change once the state changes, for example the solar pump or the compressor switches on.
So did you check the compressor state while the compressor is surely running?

Best
Markus
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

michaelk68

Hi Markus,

deshalb habe ich es ja geschrieben. Ich habe die Werte zwischen fhem und den Werten im Display verglichen und gesehen, das laut Log der Compressor state nie an war, obwohl die Anzahl compressor Stunden hoch gegangen ist!
Auch die Werte für Drücke sind entweder 0 oder 1, zeigen aber keinen Druck an, wie in deinem Plot.


Grüße
Michael

micomat

Hm... in der Tat, da stimmt dann wohl etwas nicht :)
Synology DS218+ with fhem+iobroker in docker, 2x RasPi w. ser2net, CUL433+868, IT, EGPM2LAN, THZ/LWZ, FB_Callmonitor, HMS100TF, Homematic, 2x TX3-TH, Pushover, USB-IR-SML-Head, SONOS, GHoma, MBus, KLF200

immi

dear all
version 0069 has been uploaded, tomorrow you can use "update"

changelog
- added command_ref in german, thanks Markus
- added debug command "get Mythz debug_read_raw_register_slow"; it reads raw registers and writes them in data.txt, which each time will be overwritten; path of data.txt is depending how you start of fhem: for me it is /data.txt.


If you are interested in improving the module, please write lots of nice emails to Tecalor/StiebelEltron asking for an open documentation of their funny comunication protocol  :o

If you are able to make some reverse engineering of the heatpump, please focus on register FB.
FB-99FBFDA8007700CD00CD00C5010FFDA8FDA800AB00D0200011000000000000000000000000008400000000034F03430000000000000000
And now the code I use to parse FB, it is quite self-explaining.
To help to count consider that  substr($message, 8,4) is 0077, the value  starts at char 8 and is 4 char long;;;    substr($message, 12,4) is 00CD, the value  starts at char 12 and is 4 char long.......


$message =
"outside_temp: "               . hex2int(substr($message, 8,4))/10 . " " .
"flow_temp: "                  . hex2int(substr($message,12,4))/10 . " " .  #Vorlauf Temperatur
"return_temp: "                . hex2int(substr($message,16,4))/10 . " " .  #Rücklauf Temperatur
"hot_gas_temp: "               . hex2int(substr($message,20,4))/10 . " " .  #Heißgas Temperatur       
"dhw_temp: "                   . hex2int(substr($message,24,4))/10 . " " .  #Speicher Temperatur current cilinder water temperature
"flow_temp_HC2: "              . hex2int(substr($message,28,4))/10 . " " .  #Vorlauf TemperaturHK2
"evaporator_temp: "            . hex2int(substr($message,36,4))/10 . " " .  #Speicher Temperatur   
"condenser_temp: "             . hex2int(substr($message,40,4))/10 . " " .
"Mixer_open: "                 . ((hex(substr($message,44,1)) &  0b0001) / 0b0001) . " " .    #status bit
"Mixer_closed: "              . ((hex(substr($message,44,1)) &  0b0010) / 0b0010) . " " .    #status bit
"HeatPipeValve: "             . ((hex(substr($message,44,1)) &  0b0100) / 0b0100) . " " .    #status bit
"DiverterValve: "              . ((hex(substr($message,44,1)) &  0b1000) / 0b1000) . " " .    #status bit
"DHW_Pump: "                  . ((hex(substr($message,45,1)) &  0b0001) / 0b0001) . " " .    #status bit
"HeatingCircuit_Pump: "       . ((hex(substr($message,45,1)) &  0b0010) / 0b0010) . " " .    #status bit
"Solar_Pump: "                  . ((hex(substr($message,45,1)) &  0b1000) / 0b1000) . " " .    #status bit
"Compressor: "                  . ((hex(substr($message,46,1)) &  0b1000) / 0b1000) . " " .    #status bit
"BoosterStage3: "              . ((hex(substr($message,47,1)) &  0b0001) / 0b0001) . " " .    #status bit
"BoosterStage2: "              . ((hex(substr($message,47,1)) &  0b0010) / 0b0010) . " " .    #status bit
"BoosterStage1: "              . ((hex(substr($message,47,1)) &  0b0100) / 0b0100). " " .    #status bit
"HighPressureSensor: "         . ((hex(substr($message,48,1)) &  0b0001) / 0b0001). " " .    #status bit  #P1     inverterd?
"LowPressureSensor: "          . ((hex(substr($message,48,1)) &  0b0010) / 0b0010). " " .    #status bit  #P3  inverterd?
"EvaporatorIceMonitor: "       . ((hex(substr($message,48,1)) &  0b0100) / 0b0100). " " .    #status bit  #N3
"SignalAnode: "                  . ((hex(substr($message,48,1)) &  0b1000) / 0b1000). " " .    #status bit  #S1
"EVU_release: "                  . ((hex(substr($message,49,1)) &  0b0001) / 0b0001). " " .     #status bit
"OvenFireplace: "                . ((hex(substr($message,49,1)) &  0b0010) / 0b0010). " " .      #status bit
"STB: "                          . ((hex(substr($message,49,1)) &  0b0100) / 0b0100). " " .    #status bit     
"OutputVentilatorPower: "      . hex(substr($message,50,4))/10      . " " .
"InputVentilatorPower: "       . hex(substr($message,54,4))/10      . " " .
"MainVentilatorPower: "        . hex(substr($message,58,4))/10      . " " .
"OutputVentilatorSpeed: "      . hex(substr($message,62,4))/1       . " " .  # m3/h
"InputVentilatorSpeed: "       . hex(substr($message,66,4))/1       . " " .  # m3/h
"MainVentilatorSpeed: "        . hex(substr($message,70,4))/1       . " " .  # m3/h
"Outside_tempFiltered: "       . hex2int(substr($message,74,4))/10     . " " .
"Rel_humidity: "               . hex2int(substr($message,78,4))/10    . " " .
"DEW_point: "                  . hex2int(substr($message,86,4))/1    . " " .
"P_Nd: "                        . hex2int(substr($message,86,4))/100    . " " .    #bar
"P_Hd: "                        . hex2int(substr($message,90,4))/100    . " " .  #bar
"Actual_power_Qc: "            . hex2int(substr($message,94,8))/1      . " " .    #kw
"Actual_power_Pel: "           . hex2int(substr($message,102,4))/1     . " " .    #kw
"collector_temp: "             . hex2int(substr($message, 4,4))/10 ;
}


@Markus & Michaelk68: from char44 to 49, we have only status-bits, therefore "HighPressureSensor" or "compressor" can only be 1 or 0
I did not test the status bits, because I have no real interest in them. They are still on my opl.

I am gratefull for any hint or improvement
best regards
immi


Gassi

#59
Ich habe noch eine ältere Version am laufen.
Wir funktioniert das "Update"?
Bitte um eine kurze Anleitung.


@micomat
Bitte schicke mir noch die Plotdateien ( 03.02.2014)
thz1.gplot bis thz4.gplot
Danke