Water based floor heating - what is really needed?

For some examples, I have detailed my installation on a thread in this forum (as have some others).

Also search the forum for “heating boilerplate”, it has some code designed for that.

I’ve implemented my logic outside of OH, using NodeRed. That may or may not be what you are after; the heating boilerplate contains 100% OH code.

[Edit:] I should have read mstormi’s answer better… he had already linked to the heating boilerplate thread.

Well, it’s true for most continental (:wink: ) central control units, too.
But regardless of where it’s done, valve-pump-boiler coordination is the key problem, especially if you want to renew parts of the heating system while the others are still implemented ‘the old way’ .
And at least in Germany, it’s the hardest job you can think of because you have to stack up against very conservative vendors and craftsmen that don’t neither want to help you nor even understand why you want that new part.
It’s a paradigm shift in how heating systems are to be built that most of them are totally unwilling to accept.
They still want to do the control in hydropneumatics. Electronics they don’t understand, and that smart stuff is evil.

I guess in my system that coordination job is done by the central unit, which I’ve left in place. Although it’s also possible that the boiler simply detects the pressure change and turns on the pump itself - not sure.

Most of the time, pumps are setup to run 24/7, particularly in floor heating (only) environments.
Boilers have a small reservoir of pre-heated water. If whatever entity retrieves hot water, volume
/temperature of that reservoir drops and the boiler starts heating if below a certain threshold.
However, both of these defaults are suboptimal in terms of energy efficiency, which is why more and more control unit vendors, pump vendors, boiler vendors and ‘integrators’ (craftsmen) and of course the owners all try to provide their own improvements to the system from their local perspective, but that’s complicating things even a lot further.
And I haven’t even started talking about solar plants, fresh water systems etc. or apartment buildings or rented houses where you don’t have access to all but just some of the components.

1 Like

First of all, Markus, what an amazing in depth answer! Users like you is why the internet is still a thing. Well. That and certain picture availability, hrm… :wink:

Anyway - this turned into a really interesting thread. It is also putting context to stuff I’ve read in other threads and other places, helping me to grasp the area better.

I will read up on everything everyone is suggesting and take a longer harder look at how my boiler and actuators actually work when I get home. My gut feeling is still that this is THE area where automation can start giving some money back and provide ease of life. Especially as we have a fairly large house and use some of the rooms very sporadically. There should be some logic to tap into there and improve the situation. Luckily, it’s a modern home and the warm season is finally approaching so all heaters are gonna be pretty much OFF for the next few months = project time for me!

So a real big kudos to all of you.

Thanks a bunch!


I’ve recently implemented some control into my home heating: My Central Heating Solution using Thermal Actuators

Since doing so in December-ish, my heating bills haven’t dropped - they’ve actually gone up! But, the house is definitely at exactly the right temperature all the time and is more comfortable to live in, which to me is more important than any cost saving.

1 Like

The element I keep meaning to add, but haven’t, is to stop the heating coming on in the morning if it’s going to be a sunny day and (even on a cold day) the thermal gain means the place will overheat.

Maybe I’m completely misunderstanding, but that is exactly how any heating system works, and the existing universe of smart thermostats are all you need. The thermostat in the room is just a thermometer and a switch, with logic connecting them (“logic” being anything from a clock-spring to a supercomputer). When the room is too cold, the switch is closed, which tells the central control heat is needed. The central control then turns on a pump or opens a valve, or turns on a fan in a forced-air system, so hot water or steam or air can flow. Independently, if the water or air that is flowing isn’t hot enough, the central control turns on the boiler / heat exchanger / reactor etc. So any off-the-shelf Z-wave or IP-networked thermostat will fill the role of monitoring the temperature in the room, and telling the rest of the system, by closing one or more switches, when more heat is needed.

No that’s too simplistic. You usually have multiple circuits with a valve each, some less thermostats but two controllers (one in the distribution system, one in the heater unit), plus the pumps.
But the inner workings of heaters and control units can vary greatly.
It is therefore mandatory to understand their behavior and interaction to be able to get the programming right.
Remind you that it’s not just about to get it to work somehow but you want it to work maintenance-free, under all conditions, without unwanted side effects.
Overall it’s no rocket science, but a lot of work to ‘reverse engineer’ your building’s setup und definitely quite some effort as well to implement new control in a reliable, error-free manner.
Better start in summer :wink:
For the input, any thermometer like those colocated in ZWave multisensors or other OH-controlled device will do for monitoring, and for output (valve open/close) any OH-controlled on/off switch will do.

Hi All,

I invested some time in thinking about implementing intelligent controlling of my water based floor heating. I came to the conclusion that it makes no practical sense. I want to put the point on “PRACTICAL”. It for sure would make alot of fun to do this for sure.
I would like to point out some facts supporting my staement:

  • WFH is embedded in tons of concrete, When I switch off my WFH (outside -5°) the temperature drops 2°/24h
  • House is outside isolated inside walls not, heat is moving between rooms.
  • If you are able to set a room to temporary lower temperature (guest room?), it will need 2 days to heat it up.
  • If you have rooms for constant different temperature you will need set it permanently through hydraukical-equation on the main valves.

Regulary the WFH is regulated through one internal and one external temperature sensor and thats enough. Evry thing else is just “fun” of implementaion, or “money” for people which want to sell complicated systems.

I am fully on the side people who want to have “fun”


Smart heating is not (only) for fun but it is about comfort.
Personal feeling of ‘comfort’ is highly subjective. 2° make for a major difference for many people. It’s even worse when your house is not as-well insulated, or you have a mix of WFH and radiators (running higher temps, also allowing you in turn to warmup a guest room faster).
And unlike one might believe, room (air) temp is not as important to your comfort feeling as is a warm floor.
For example, I switch on my WFH early in the morning then quickly off again. I feel comfortable when getting up (feet are naked but floor is warm) and have my morning coffee before leaving for work although the room hasn’t really heated up to the target air temperature. This in turn also avoids to overheat the room (thus to waste energy). For old-style control, that happens quite often later that day when you have windows to the sun, particularly in spring and autumn timeframe.

From a comfort point of view, you will want to have different temperatures in different rooms at different times of the day. People tend to believe room temperatures will align with each other but they greatly overestimate the heat transport capacity of air (especially with these small temperature differences and when compared to water).
With a smart setup like this, you don’t have to nor want to do any hydropneumatic levelling. That’s the old fashioned (static and therefore inferior in terms of comfort) way of doing the control in hydropneumatic hardware instead of electronics. Smart is way more flexible since it is dynamic. You can change heat distribution throughout the day, depending on way more input parameters (such as e.g. weather forecast or presence detection).
Think of a room that’s used as an office during the day (you want it to be warm) and as a bedroom during nighttime (you want it to be a lot cooler).
In theory, you would also have to do the cumbersome[costly sometimes, too] effort of re-levelling each time you re-purpose a room or change any of the components to affect heat distribution.
Note that w.r.t. energy savings, this smart control described here is an alternative, but non compatible(!) approach to the low-temp-flow-maximized ‘school’ of classic thermodynamic optimization.
Both are ok, but don’t try to do both at the same time.

I largely concur with what Markus said and yes it is a complicated topic.
I have an floor heating that is some 18 years old that sadly only had one thermostat… in the living room.
Recently I wanted to have a per room regulation.
My heat source is a combined boiler/heater
The pump that pumps water through the floor is not on 24/7, it only pumps water if it has a certain temperature and switches off when too low (in order not to cool down the floor) or when it is too hot (in order not to crack the floor).
Fortunately, each of my rooms was on a different outlet in the manifold (that thing the tubes connect to.
So what I did to get per room regulation is that I added separate valves to each of the outlets of the manifold so I can individually switch the heating off per room.
So now I have a per room thermostat that not only switches on the CV, but also opens the specific valve on the manifold.
Alto the chance that for whatever reason the pump would start pumping with none of the valves open, I have a pressure overload valve (that already was installed in my old setup) to deal with that.
The ‘thermostats’ in each room are basically a DS18b20 plus an ESP8266. switching the specific valves open or shut is done through OpenHAB. That works well, but I am in the process of changing that tohave it all regulated by a dedicated Arduino or Raspberry and use openhab just as interface.
Having a complete DIY solution might not be anybodies portee but the principle stays the same: switch on the burner and pump while restricting flow to areas where it is not necessary

In some ways you are in a niche position. Having individual loop/room temperature control couldn’t be better. Most smart thermostats are ‘whole house’ with a few doing zones because that’ the norm for air or water radiators. So the question I have is how smart is your boiler?

Expensive, modern boilers are optimized for efficiency and often measure return water temperature to allow for the ‘load’. Not too much you can do here without upsetting an optimal design. Someone mentioned weather, room stats will take care of that and the boiler will adjust. I know it might fire up BUT it should throttle back quickly to match demand.

One other issue with UFH is a lag time because of the thermal inertia of the floor. This works for and against you. Letting it cool too much destroys instant heat!

My best suggestion would be to introduce some monitoring so that you know what is going on and can measure the effects of any changes you make.

“If it ain’t broke don’ fix it!”

I forgot to mention another topic:

The UFH leaving water temperature are normally arround 30°C for a target Room temperature of 25°C (at leat in my house)
The Floor is best case 30°, the energy transportation is dependent on temperature difference. The UFH has a selfregulation based on incomming temperature.
If you set you hydraulic system the right way and you setup the right heating curve, things are going to be perfect. Almost perfect, because this inert system is only controllable by looking forward.

Example: If I know that today I have outside temperature of 13°C and tomorrow there is a forcast of 25° I could today already turn down the heating for the predicted target. For the whole system.

Here some of my february values for incommind and outgoing temperatures, the spikes are from charging the hot water tank:

I’ve completed an integration with OpenHab for a radiator system with a heating oil / diesel boiler. I agree with those who say it’s complicated, but not so complicated that you can’t do it. You just need to be aware of the limitations and risks.

Big things for me were:

  • I bought radiator thermostats, and use OpenHab to control the setpoint, but not the open/closed (so the thermostat still directly controls the radiator valves). That means the system can still run when OpenHab isn’t working for whatever reason - the setpoints just stay static or need to be manually adjusted. Something equivalent could be useful for you
  • I do actually directly control my boiler - so my OpenHab works out the total heat demand, and turns the boiler on and off. In particular it controls the boiler cycling - so if the heat demand is at 50/700 then it will run the boiler for 30 minutes, then wait for 60. With an oil boiler if you short cycle it then it’ll soot up, and you’ll have to clean it. So be careful about just running the valves and letting the boiler run itself
  • My DHW works through the same system, so I also have to control when the boiler is running for hot water
  • My system has 3 towel rails in it, and those are always open - so if the boiler cycles for some reason with no heating demand, it’ll still heat the towel rails. It’s nice to have something that will absorb excess heat - and it also means that if the heating runs for only one room, the towel rails also add to the demand. If I ask the boiler to run, but it heats that one heater too fast, then the boiler itself will turn off (short cycle) because the return temp is already too high. I also manage this by always heating the DHW whenever the heating is on - so there’s always a little heat load in the hot water cylinder as well. (As you can tell, my biggest problem is that most of the year the boiler can service all the heat demand in about 20 minutes, but 20 minutes is too short run time)
  • I’ve been told that with underfloor heating, the thermal buffer is high enough that a) it’s not really worth running a nighttime setback, and b) you could run your boiler every 2-3 hours without materially impacting room temps. Probably depends on whether your heating is embedded in cement slab, or more surface layer.

Hi MrPetter,

Maybe my tread about my underfloor heating system could be of interest to you:

The Roth Touchline+ is far from perfect, but at least it is simple enough that it can relatively easy be integrated in to OpenHAB.

Any updates on this topic? I am moving soon to the floor heating apartment powered by air based heat pump, with simple rotating 0-6 thermostats in each room… I don’t know the brand or model of heating system but wonder if it makes sense to try to make it smarter considering insertion of described heating system based on air heat pump?!?
I like Tado solutions for smart heating systems but not sure if it fits in my situation…

Thanks in advance for tips and advices

we have a similar setup and replaced the thermostats with zwave devices on each room/heating loop. Keep meaning to make it properly smart, and e.g. switch off the heat when it’s a sunny day and we’re going to get lots of solar gain. But it works pretty well just as is.

1 Like

Hi Dan, this is pretty interesting - I’ve been considering what I think is the same setup as you, but I haven’t been able to get a definitive answer to the below. Can you help?

I have wet underfloor heating upstairs and down, with 2 manifolds, 2 wiring centres, and 12 thermostats. The thermostats are 230V 3-wire - Live, Neutral, and Switched Live - and I’d like to replace them with z-wave units in order to smarten my heating. My understanding is that each thermostat has a constant 230V, which is flips to the Switched Live whenever it has a demand for heat. The Switched Live then carries 230V back to the wiring centre and allows the wiring centre to handle the actuators. So, at it’s most simple, I could (theoretically - not that I’d actually do this - losing any temperature features) replace the thermostat with a bog-standard z-wave relay? What I’m getting at is: “can the Switched Live accept 230V without blowing up the wiring centre, or is the thermostat sending a down-rated signal or similar?”.

I’ve been looking at z-wave thermostats for UFH, but they’re all specified as for electrical UFH only, i.e. not water. Even the one you’ve linked says electrical-only, yet you use it for water. Do the electrical thermostats work in the same way as mine? I.e. the electricity is either on or off, binary, and not modulated to control the temperature?

My wiring is like this (no groups used; each thermostat has only a 3-wire to the wiring centre, and a floor probe): https://www.johnguest.com/speedfit/wp-content/uploads/sites/2/2014/11/JG-Wiring-Diagram-230V-Z2105-414-0817-WEB.pdf

Does your setup confirm that it really is as simple as I think but have been too afraid to act upon? In the UK at least, notwithstanding the contrary responses about continental wiring. Can I just replace my dumb thermostats with a z-wave thermostat designed for electrical UFH? I have my eye on these, but again they’re electrical-heating only: https://www.heltun.com/z-wave-heating-thermostat


Hi Dan,

How did you get on with updating your heating system? I have almost identical setup as you and need to make it (slightly) smarter. So far I have made a dummy set up with sonoff temp sensors and relays all working with MQTT and have been looking for options on here but some of the rules and waaay over my head.

If you have anything to share i’d really appreciate it.