One of the problems in our apartment was this:
A really dumb thermostat. Since we have floor heating, this little thing created tons of problems. Floor heating behaves like a big cargo ship. You cannot quickly move it around. The floor needs time to heat up, and if the desired temperature is reached, you cannot simply shut it down. It will continue to radiate heat to the room. With this dial, a accurate temperature was just not possible. Also we didn’t want to heat the rooms at night and wanted them to cool down. And ideally to warm up just before we wake up.
The solution: get rid of this stupid thing and install something smarter. Something that has ZigBee and can be added to Home Assistant. Something like the MOES ZigBee Smart Thermostat.
First, I had to get rid of the old thermostat and install the new one. Luckily, this was relatively easy. Pull out the dial and you will find a little screw.
After that, you will find that the guts of the device is rather empty.
Get rid of it.
Luckily, they left some nice schematics for us.
Install the new thermostat following the schematics printed on it.
Success.
The next step is to add it to your Home Assistant and add some rules. Since this is an unsupported ZigBee device, you will need to add a custom quirk to Home Assistant. This file works fine with my device. The Readme of the file explains how to add the quirk to Home Assistant.
The rules I have are something like “if the forecasted outside temperature today is below 15 degrees Celsius, activate the heating at 6 o’clock for 5 hours with a target temperature of 21 degrees Celsius”. Nothing too fancy (yet).
I also added a rule that activates the heater for 5 minutes per week in warmer months. That way I can work around the problem that the heating valve gets stuck, and I have to fix it each winter.
If you see that the temperature of the device does not match the room temperature, you can tweak the offset a bit. Simply call the temperature_calibration
function via ZigBee and set it to a new offset. After a few seconds, the device will update the temperature to the new value.