THZ Tecalor (LWZ Stiebel Eltron) module support and code improvement.

Begonnen von immi, 02 Februar 2015, 11:42:16

Vorheriges Thema - Nächstes Thema

willybauss

304 cooling functionality is realized by inverting the heating cycle: keep cold inhouse, move heat out using the exhaust ventilator. This is a mechanically built in function (software support as well of course), which the 303 doesn't have.
FHEM auf Raspberry Pi B und 2B; THZ (THZ-303SOL), CUL_HM, TCM-EnOcean, SamsungTV, JSONMETER, SYSMON, OBIS, STATISTICS

Heiner

Hi,
may be a total silly question but I just think of making use of HZ2 as second Heatingcircle when I detected that my THZ 403SOL have no possibility to connect such Heatcircle 2.

Am I mad, I have the config Parameter but no physical Connection option. Their are at the TopLeft just 4 Tupes, 2 for Hotwater and 2 for Heating. On the bottom right there are 2 more for SOL.

Sorry for asking this here as it has nothing todo with FHEM nor with code improvement, but here are the experts.

Heiner
--------------------------------
fhem auf Pi3+
CUL 868MHz, Signalduino 434MHz, HM-CFG-USB
HM, THZ, Kostal, Somfy, Conbee, Pytonbinding, FritzBox, FTUI, MQTT2

immi

Hi Heiner
My question is why do you need a second HC?

Sorry for the late answer,
I wanted to give you a qualified one, but I do not know anyone with 2 HC installed.
As you see on the manuals SOL and ECO are the same in this point.
http://www.tecalor.de/dam/jcr:8c31554d-ecb0-4e05-a951-4a6bbea4e9e1/bedienung---installation-luftungsgerat-thz-303-403-sol.pdf
http://www.tecalor.de/dam/jcr:e3453746-0903-43a0-847d-9c78fee1804d/312700-38495-9030_THZ_304-404_Integral_eco_Installation_de.pdf

in both cases, if you want a second HC, you have to install a second pump.
I would reformulate your question in: where I PUT the second pump, inside the box or outside?
Outside: Look at page 24 of this http://www.stiebel-eltron.cz/imperia/md/content/mba/166459_33599_7939_lwz_303_und_sol.pdf

I would try also to search here www.haustechnikdialog.de

p.s. If you want, you can also keep on the discussion in german here
http://forum.fhem.de/index.php/topic,33452.0.html
immi

Heiner

Thanks Immi, I overlooked this page 24, it is a little more than just another pump outside in order to be able to deal with all parameter around a heating circle you need to measure some temps as well, however I understand it now.

Reason for asking is that I have a Pool at home and thought of using this second circle to Heat it especially in spring and autumn when weather is nice but the water temp still is a little cold.

But here and now it is clear what would need to happen, Thanks again.
Heiner
--------------------------------
fhem auf Pi3+
CUL 868MHz, Signalduino 434MHz, HM-CFG-USB
HM, THZ, Kostal, Somfy, Conbee, Pytonbinding, FritzBox, FTUI, MQTT2

immi

Hi Heiner,
Actually for your application, you can connect the pool to HC1 with 2 valves controlling when do you want to heat the pool.

---
Moreover, in summer,  you could circulate HC1 in the pool and without any effort (1 pipe, 2 valves and 1 thermometer) you can cool down your living room in summer!!
Assume you have 26°C in your living room and 22 in the pool, you just have to circulate to cool down your livingroom.

immi

immi

back to the module
what do you think about the following interfece potential change of backend: see picture.
Front-end can still be configured as you like.
I would be happy for some feedback, before rolling out
immi

willybauss

I realized it similarly in my dashboard months ago, see screenshot. Disadvantage of sliders is that it's not so easy to find exactly the right value; might work better in case you limit the possible range to a very narrow one.

opmode is t.b. changed very rarely. Curently I'm thinking about an automatic change of opmode in a way like this, executed every night at e.g. 3 am: (code is just roughly written down so far, no syntax check etc. done)
if (Mythz.inside_temp < Mythz.p01RoomTempNightHC1) AND (Mythz.pOpMode = "DHWmode") then
set Mythz pOpMode automatic
endif

if (Mythz.inside_temp > (Mythz.p01RoomTempNightHC1 + 1)) AND Mythz.outsidetemp > 4 AND (Mythz.pOpMode = "automatic") then
set Mythz pOpMode DHWmode
endif


My intention is not on avoiding manual setting of opmode, but on saving energy: this could avoid useless heating cycles at approx. 4 am, when the house is still warm enough, warmed up by sunshine of previous day. Currently the heating cycle starts anyway, just caused by low outside temperature. I don't want to set room influence to more than the current 70%, therefore I need such an alternative solution.
FHEM auf Raspberry Pi B und 2B; THZ (THZ-303SOL), CUL_HM, TCM-EnOcean, SamsungTV, JSONMETER, SYSMON, OBIS, STATISTICS

immi

Zitat von: willybauss am 22 April 2015, 21:26:59
Disadvantage of sliders ...
I agree completely; moreover you have no indication of the unit with a slider.....so I am not sure I will upload it to the repository.
The only advantage is that you cannot type a wrong value in the backend
have a look....

p.s. If you have a front-end like willy, you will not see any difference.
p.s.2 I also added a firmware "4.39technician" to enable  manual control: "zPumpHC", "zPumpDHW"


immi

willybauss

#218
Meanwhile I had a bit of success in automatic THZ mode switching between automatic and DHW mode. Looks like it works; at least it doesn't end up in error messages when I save the 99_myUtils.pl. But testing is not so easy, since there's a very limited number of chances when temperatures fit required values.

@immi:
For that reason I would like you to have a look on the code, since I'm not really familiar with perl coding.
BR
Willy

Code in 99_myUtils.pm:
######## ThzSummerWinterMode ############################################
## Aufruf   { ThzSummerWinterMode() }
sub ThzSummerWinterMode () {
if(fhem( "Mythz.inside_temp" ) lt fhem( "Mythz.p01RoomTempNightHC1" ) and ( fhem( "Mythz.pOpMode" ) eq "DHWmode")) {
   fhem( "set Mythz pOpMode automatic" );
    }
if(fhem( "Mythz.inside_temp" ) gt ( fhem( "Mythz.p01RoomTempNightHC1" ) + 1 ) and ( fhem( "Mythz.outsidetemp") gt 4 ) and (fhem( "Mythz.pOpMode" ) eq "automatic")) {
   fhem( "set Mythz pOpMode DHWmode ");
    }
}


Code in fhem.cfg:

define CheckThzMode at *02:00:00  { ThzSummerWinterMode() }
FHEM auf Raspberry Pi B und 2B; THZ (THZ-303SOL), CUL_HM, TCM-EnOcean, SamsungTV, JSONMETER, SYSMON, OBIS, STATISTICS

houseowner123

I agree with willy, the slider can be almost as nerve racking as the stupid jog dial on the LWZ itself. OpMode I change once in a while, especially pur setback when I am gone for just 1 or 2 days. Therefore, I like your option 2, immi. Vacation cools the house to uncomfortable temp. In the summer it is no problem. Willy: Why do you play around with automatic and DHW toggle options ? When May is here, just setting OpMode to DHW until End of Sept. seems easier? So, where is the (energy-saving?) advantage of your option?

immi

Hi Willy
no need for perl coding
try something like this

define opmodechange DOIF (([Mythz:sHC1:[insideTempRC. (\d+)]] < [Mythz:p01RoomTempNightHC1:d]) and ([Mythz:sHC1:pOpMode] eq "DHWmode")) (set Mythz pOpMode automatic)
attr opmodechange cmdpause 7200
attr opmodechange room heatpump


[Mythz:sHC1:[insideTempRC. (\d+)]] means look in sHC1 and take the valuee after insideTempRC
[Mythz:p01RoomTempNightHC1:d] means take the reading and disgard the °C
the attribute is over there in case the temperature is dancing up and down. It says do not trigger again before 7200s.

I have not tested it. Improve it with an else.... just look in commandref
define di_threshold DOIF ([sensor:temperature]<([sensor:default]-[sensor:hysteresis])) (set heating on) DOELSEIF ([sensor:temperature]>[sensor:default]) (set heating off)

p.s. If you implement the else you can skip checking opmode
immi

willybauss

Zitat von: houseowner123 am 27 April 2015, 00:09:15
... When May is here, just setting OpMode to DHW until End of Sept. seems easier? So, where is the (energy-saving?) advantage of your option?
Zitat von: willybauss am 22 April 2015, 21:26:59
... Curently I'm thinking about an automatic change of opmode ..., executed every night at e.g. 3 am...
My intention is not on avoiding manual setting of opmode, but on saving energy: this could avoid useless heating cycles at approx. 4 am, when the house is still warm enough, warmed up by sunshine of previous day. Currently the heating cycle starts anyway, just caused by low outside temperature. I don't want to set room influence to more than the current 70%, therefore I need such an alternative solution.
These unnecessary nightly heating cycles happen in spring time and most probably im autumn as well over a period of ~ 2 months. Savind 2 hours * 1.5kW every night will save a lot of energy.

@immi:
Thanks a lot. I'll have a look into your suggestion in next few days.
FHEM auf Raspberry Pi B und 2B; THZ (THZ-303SOL), CUL_HM, TCM-EnOcean, SamsungTV, JSONMETER, SYSMON, OBIS, STATISTICS

houseowner123


Heiner

Hi since 3 days I habe issues with the THZ module. I do not get ans data anymore and my log keeps empty.
If I do a manual GET i do geht this mesage: msg2 closed connection

Ans clue what vor why this is?

I use V 141
If i define a new device i geht the readings for some minutes, thereafter same effect. Somit can exclude wrong setting of attributes vor a impact of DBLog.
Last thing before was that i define  SYSMON Device to See my BananPi, but reemoved it again.

Log is silent, no Entry about THZ

Thanks for your hell.
Heiner
--------------------------------
fhem auf Pi3+
CUL 868MHz, Signalduino 434MHz, HM-CFG-USB
HM, THZ, Kostal, Somfy, Conbee, Pytonbinding, FritzBox, FTUI, MQTT2

immi

v 0142 uploaded
- firmware 4.39technician added to enable  manual control: zPumpHC, zPumpDHW
- dropbox for opmode added (backend only)
- multiple select buttons for simple parameters like fanstage  (backend only)

immi