Improve heating algorithm to wind down heating power earlier, to prevent temperature overshooting

In using tado radiator valves and thermostat, I notice they almost always overshoot their intended temperature. That's usually because the heating power will remain at full strength almost until the temperature is reached. It would be better if the algorithm supports earlier wind down of the heating delivered so the temperature will be reached and not overshot so much. So far I don't think the algorithm is learning this on its own.

32 votes

Active · Last Updated


  • After some thinking, it could also be another setting. A comfort setting would overshoot in order to keep the temperature comfortable longer. Eco mode would wind down earlier.

  • Yes, I find it annoying when it goes over and then you have to micromanage to ensure it goes off and then gets to the temperature you set.

    Also if I set my temperature a couple of decimal points below the reached temperature the heating does not go off and it sometimes seems you have very little control.

  • It look like it is an on/off control and not basically smart. By measuring the change of temperature in time the control of temperature can be adjusted. This is a feature we would aspect from a smart controlled thermostat. When will this be implemented.
  • In addition to not winding down soon enough and then overshooting the target, in my case I also find that Tado "starts too slowly" (as if undershooting) when the radiators are at room temperature (e.g. the boiler was idle for more than an hour) and then I request a temperature increase. For the first half an hour or so, Tado turns on the boiler for just brief periods of time that hardly make any difference to the radiators' temperature. Eventually Tado runs the boiler for a longer period of time, and then overshoots the target. I suspect that this may be related to radiator size and "thermal inertia" not being properly learned by Tado for my house. The best behavior for my house would be for Tado to "start heavy" (run the boiler continuously for a good 10 minutes or so) and then "take it easy" (stand back, watch the room temperature increase, don't overshoot), but Tado is doing the opposite, starting too easy (wasting time without heating) and then going too heavy (overshooting the target). It feels like some constants that needed adjusting in the algorithm. Perhaps the Tado app should allow the user to tweak settings related to the radiator size. Larger rads require starting heavy and then taking it easy. Also, perhaps Tado is not taking into account the initial temperature of the rads (separately from room temperature) when a temperature increase is requested, which is relevant for very large rads. Rad temperature could be inferred by how long ago the boiler was last turned on by Tado. If it's been an hour or longer, assume cold rads and start heavy. If it's been less than half an hour, assume that the rads are still warm and go easy, wait for the heat to transfer from the rads to the room. You'd think that Tado would learn all that automatically, but it's either not happening or not happening well enough.

  • Yeh the nest was definitely better at this
  • hugbilly
    hugbilly ✭✭
    edited February 2

    Careful what you wish for, I had Hive TRVs previously and the effort to avoid overshoot has resulted in a product which heats rooms slowly (TRVs open at a snail's pace) whilst at the same time running the boiler for extended periods . . .