by epsilonaurigae | 2025-04-22 13:56:48+00:00
OP removed their comment section, but if you’re here:

I haven’t done this since 2014 but the google nest API used to (hopefully still does?) let you see and or set the thermostats status with curl commands.

My use case was to run one shell script that got my burglar alarms status, and if it was “armed/away” to simply set my nest thermostat as away, too.

But it can also be hooked up to a dummy load or a relay and just used as an indoor temperature sensor.

And the curl commands OP is relying on can be tied in to indoor and outdoor temperatures , such as scraping local weather with curl/wget and based on that integer, turning the boiler to a minimum when it’s a certain temperature outside.

Or turning it completely off when it’s warm outside.

I’m about to revisit this again just because I have an ancient gas pig of a furnace that uses microvolt and is too cold when it’s cold outside, and too hot when it’s warm outside.

So I need one thermostat in place to turn it on no matter what at 40F, but then some conditional logic to kick that thing on and off on different cycles based on outdoor temps. The whole systems too crude to implement one off the shelf without adding a zone controller, so I just want a Linux box at home to be the zone controller….

where I differ is that I’m not sending an RF signal to the boiler, I just have to close an NO contact to engage mine (and I’m lazily going to use the nest for that.)

If anyone knows of a better thermostat that has its own API I can set, read sensors, turn hvac on and off without using google/nest account or having a dependency on the goodwill of their API existing forever , I’ll come back and glean any responses thanks in advance.

As an afterthought, hm I can just attach temperature probes and a GPIO for a relay and indoor/outdoor temps and do away with google/nest altogether…. Thanks for jogging my brain a bit I might do exactly that.

(The nest was cool , and educational, I guess, 12 years ago when I didn’t know how to really do anything but run and fire off curl commands on someone else’s hardware for temp sense and closing a relay and I don’t have anything bad to say about it as a starting point.)

Where I was going with this , though, was that , you could use an off the shelf nest , and run

1) one command against API to get thermostat status (system thinks it’s on or off , even though it’s factually not directly controlling anything) and then based on that,

2) another command to your RF board to transmit a matching signal.

…

(However you could also do the same with a temperature probe that can be read on board or over WiFi , and then manage your setpoints in the script and or by other means: eg scraping a weather site for the local outdoor temp in your case where the landlord probably wouldn’t let you attach or connect an outdoor probe.)

Bonus with the nest approach is you get a dial, can mount it on anything , doesn’t have to be the wall of your unit… and it “sort of works” like a normal thermostat as well, as soon as the shell script reconciles the two states manually.

Long winded rant but the original use case was an apartment where the thermostat was proprietary and serialized data and I didn’t have any option to integrate a smart thermostat other than turning it to its maximum set point and then using the nest with a massive 220V/50A HVAC relay to just chunk the AC power line on and off on demand.