If you’ve looked at the rest of my blog you’ll see that I’m a bit of a control freak. I like to gather data and use that to monitor and control my environment; specifically our cabin. When we first bought our cabin and put in the new furnace, I also bought an RCS TR60 thermostat with an RS-485 interface. I wrote some python scripts to monitor it (and put data into a Mysql DB) as well as control it with the primary goal of setting the temperature before we leave home so the house would be at a comfortable temperature when we arrive. As a side effect, I also used the Heat setpoint as an occupancy signal to HomeAssistant. Unfortunately, before buying the TR60, I also bought a Radio Thermostat CT80. A month or so after installing the CT80, we arrived at the cabin to find the inside temperature was over 90F and the buttons on the CT80 were unresponsive. The unit failed in the ON position. This is only slightly better than failing in the OFF position (frozen pipes anyone?).
Well, after 8 years, the RS485 interface on our TR60 has stopped responding. The thermostat still works but I just can’t communicate with it through the serial interface so it’s time to buy another one. Anyone whose tried to do the same will be disappointed that the vast majority of thermostats out there require cloud access. Ignoring the sheer stupidity of handing over control of your house to a third party with unknown security and coding practices, it also assumes an active internet connection and finally, assumes the company isn’t going to decide one day that its business model can no longer sustain its cloud service. In the latter case, you end up with nothing more than an old fashioned smart thermostat.
It looks like there are a few options for us out there:
- Radio Thermostat
- see above for why this is a bad idea
- RCS TW45
- tried to get someone to even give me a price on this and failed
- Venstar ColorTouch
- These guys have a developer site and nicely document the API for you!
Another option is to build your own using an Arduino or Raspberry Pi. I’m very much not in favor of this approach. There are a lot of edge cases that I can think of and, as someone who does embedded firmware for a living, think that my time is better spent elsewhere. My furnace is not a hobby; it’s something I want to “just work”.
Having learned from my RadioThermostat days, I’m going to buy myself a couple of the old-style mechanical thermostats. One I will wire in series with the heat wire to prevent the inside temperature from getting too high and the other I will wire in parallel with the heat wire to prevent the inside temperature from getting too low. This way I can ensure that any failure of my smart thermostat will not end up with frozen pipes or excessive gas/electricity usage.
I’ll report back on how the Venstar ColorTouch experience goes.