EMS-ESP32 icon indicating copy to clipboard operation
EMS-ESP32 copied to clipboard

Multizone heating

Open michalk-k opened this issue 4 years ago • 5 comments

Question As next part of home automation I'm looking for options of extending heating features beyond my current installation offers. There is wide range of ideas available on net, from completely custom automations (Home Assistant yaml), through ready to use components simulating thermostats (python, NodeRed) ending with dedicated solutions from NEST, Tado etc

In most cases however proposed solutions are focusing on single thermostat controlling the boiler. It's really hard to find serious, described with details solution for multizone heating. My main goal is ability to control temperatures for each room separately. Incl. heating single room up on demand. I can limit heating with use of smart TRVs (few zigbee currently installed). But I have no way to send heating demand to the boiler. Heating is still controlled by central thermostat.

For obvious reasons I would like to leave such a complex thing like modulating the boiler to specialized hardware. This is why using ie NodeRed I consider only for learning/experimenting purposes, not for production.

I have Junkers ZWC24 and FR100. I just found that EMS protocol allows communication between more devices. I can imagine I'm somehow ask my thermostat to turn heating on letting it to modulate the boiler. In addition I would get high reliability of the system (it's basic features) in case my home automation outage. So idea is:

  1. let main thermostat to control main room (and automatically the rest of the house, depending on TRV open state)
  2. let Home Assistant to collect data from TRVs and send demand to the thermostat through EMS bus when needed.
  3. modulate boiler by main thermostat only

Is it right way to go? or maybe I should send demand to boiler and he will modulate itself? Have you any suggestions? What should I avoid?

PS. I know that my FR100 must not accept commands thus potentially might be considered to be replaced with newer model. I have to check it's production date. Edit: now I know it's FD881.

Thanks in advance

i

michalk-k avatar Oct 25 '21 15:10 michalk-k

Normally the modulation is handled by boiler and not thermostat. The thermostat only sends the desired flow temperature to the boiler and the boiler manages burner starts and modulation to achieve this temperature. Afaik the FR100 is a room thermostat only and can not use weather control. Also with this production code it is not writable. A room thermostat should be placed in the room with the highest heat demand and the TRV fully open in this room. Then the thermostat calculates a flow temp that is high enough for all other rooms and the TRVs in the other rooms can reduce flow. If you want to calculate the desired flow temperature yourself and send it to boiler, this is possible, but the thermostat has to be disconnected, or it will overwrite the boiler settings. But thermostat is also the UI for all setting parameters and it manages the timer functions. You have to rebuild this in your system too (most settings can be done from emsesp-webinterface). Also keep in mind that your home automation is not as stable as a dedicated thermostat and if something hang, it's getting cold (not directly, boiler will keep the last flow-temp setting)

MichaelDvP avatar Oct 26 '21 13:10 MichaelDvP

Thank you for your answer. With 'modulation' term I'm a bit confused since people do use it differently. For example often in context of OpenTherm I can read that thermostat modulates boiler with use of this protocol.

Using dedicated thermostat was/is my primary idea. At least in order to have fallback in case of home automation failure. However leaving 100% open TRV next to main thermostat will lead to overheating this area when other TRVs request additional heating. I though I could use smart TRV near to thermostat. It might be however inefficient or confuse its regulation algorithms.

I was looking around for heating gateways/thermostats which can collect data from smart TRVs and demand heating from a boiler accordingly (and efficiently), but found nothing close to what I need. Most commercial products are focusing on single zone solutions. Multizone usually takes district heating into account (not boiler).

At this point I'm still in doubt: should I invest into EMS protocol or convert it to OpenTherm potentially getting more range of compatible devices. From DIY point seems the same. Maybe except of that note in HomeAssistant docs: Please make sure no other device or application is connected to the OpenTherm Gateway at the same time as Home Assistant. This is not a supported scenario and may lead to unexpected results. - something which might be a limiting at some point. Anyway at this point neither one provides me the ultimate way to make what I imagined.

michalk-k avatar Nov 02 '21 16:11 michalk-k

Modulation is confusing, because there are different types. Gasboilers can modulate the burner power in a large range, resulting in a steady small flame. Oilburners have mostly unmodulated flame (or smaller range) and modulate heatingpower by start/stoping the flame. But both are done by boiler logic. The thermostat only tells the boiler the required flow-temperature and the boiler starts/modulates to keep this temperature.

For multizone the best solution is always to have a seperate heating circuits and mixers for each zone, handled by a dedicated thermostat. Each heatingcircuit mixes the the flowtemp for it's zone, only the header can be hotter, but there is low loss. Using TRVs creats loss in the pipes.

For a simple multizone look at #174, this is done with a Tado room thermostat and TRVs. The thermostat function is really simple and only sends the required flow temperature to the boiler. I think this can easily done by a homeautomation script if you have already the smart TRVs.

MichaelDvP avatar Nov 03 '21 17:11 MichaelDvP

@michalk-k

A tip that might be useful:

I installed the Tado system and fitted all radiators with TRV's. Because flow must be guaranteed, if all radiators are closed or because only one radiator minimally open, I installed a differential pressure bypass. (200 mbar)

First I mounted the bypass directly underneath the boiler. Resulting if only 1 or 2 radiators requires heat, the flow partially flows over the bypass. The return temperature then becomes too high, the boiler starts to toggle and does not reach its required temperature.

I'm still experimenting for a solution, but it has already helped to move the bypass halfway through the circuit. There is then more water volume to circulate.

Ruben9477 avatar Nov 03 '21 22:11 Ruben9477

Related to a ticket I will soon open; but it's somehow related. I opted for the commercial variant and have the Bosch Easy Control which can support multiple 'Bosch Smart Thermostats', which are basically Zigbee controller thermostats on each radiator. The whole system works out of the box, but I would like stats from EMS. Using a central thermostat setting called "Weersafhankelijke regeling" (weather-dependent control), it measures the in and out temperature of the water, and in that way decides if the boiler should turn on. If all valves are closed, and water comes directly from the bypass, it notices it does not need to burn, as the water has not cooled down enough.

axello avatar Nov 18 '21 22:11 axello