You want home assistant, as other comments have noted.
I have a reasonably complex set of behavior set up. I live in Bend, Oregon at 4000 feet. This is somewhere with hot sunny days, cold nights, and sometimes a lot of smoke. The effect on the interior of the house based on upcoming weather is highly predictable.
My rules look something like this:
If tomorrow's high temperature is above 85, then as today as soon as outdoor temperature drops below indoor temperature, open all the windows and turn on the attic fan until either interior temp is below 62 or outdoor temp rises above indoor, whichever comes first. Unless the AQI outside goes over 100 for more than 2 minutes, in which case close all the windows and turn on the fan/AC to clean the air. All the while, if the house rises above temperature X, cool it to temperature Y.
Additionally, the upstairs heatpump is located in an uninsulated attic, which in winter means that heating is somewhat inefficient and we want to run it a minimal count of times to avoid warmup periods. So we program in our own hysteresis, so that there's a 6-degree difference between when the heat kicks on, and when it turns off.
No one is going to make a dream thermostat that meets your needs out of the box for you, because no one else has your local needs. The best you can do is give yourself the tools to make your reality how you want it.
You could easily make that. Thermostats are very simple concepts. Basic A/C systems are 4 wires. Power, heat, cool, fan. If you want to cool the house, you connect power to "cool" and "fan". For heat, connect "heat" and "fan". If you just want to move air, then just connect the fan. Throw in some hysteresis so you don't short-cycle the compressor. With a raspberry pi, temp sensor, screen, and a relay block (the voltages are too high for a pi), you can probably build this in an afternoon/weekend.
If you have heat pumps or a multiple zone system, or a few other things they can get more complex, but they still aren't super complicated.
Yes! On my long list of things to do when I get the elusive "round tuit" is to build an open-source touchscreen thermostat using cheap ubiquitous off-the-shelf parts. Probably something like a CYD (cheap yellow display, as they are known), an ESP32 or RP3020, a good temp sensor, and some relays. The goal is to make it 100% compatible with Home Assistant as well as offer its own API and web interface to the local network. 3D print your case of choice.
I have run across a few open source thermostats, but either they are some hobbyist's one-off project, or they are geared toward very different systems from the common North American forced-air furnace and whole-house AC unit combo.
Before the but-what-about-ers start brigading in, yes it is possible to make this system safe against engineering or software defects. They make analog non-adjustable temperature sensors that "trip" below a certain temperature, you wire one in parallel with your heat wires near the furnace and you house will never go below freezing. (Very common in rentals.) If you're concerned about over-heating, add another temp sensor and relay and put it in series. Put time-out timers on every function. Have alerts sent to your phone. Add a SIM card and modem if you don't trust your wifi. And so on, tastefully adjusted to your own personal level of paranoia.
Personally my dream thermostat would be Amazon’s smart thermostat, but with a firmware that allows for local control by home assistant.
Here’s why I think the hardware is so great:
- Simple, high-contrast temperature display (7-segment led)
- Just a few buttons to override temp/mode manually
- Reliable sensor (it’s made by Honeywell)
- Nice industrial design (doesn’t get in the way)
- Low price point (got it for $49)
I really wish someone would find a way to unlock their firmware. I tried to mess with it and figured it did MQTT (yay!) but it does certificate pinning :-/ I even opened one up but couldn’t find an easy way to dump the firmware off of its i.MX chip.
I just want a thermostat that gives me the option to specify that I want it to maintain a target temperature, and have it automatically switch between cooling and heating.
The one I have in the apartment I’m renting only gives Cool vs Heat. With Texas being as finicky as it is this time of year, the temperature swings from frigidly cold to swelteringly hot day to day, and with my ADHD and lack of connection to my body, I find myself wondering why I’m feeling run down and mentally foggy, and then I realize it’s because I had to switch to Heat yesterday (because the house dropped down to 60F) and today the apartment is now at 85F, and I’ve been progressively overheating for the past 5 hours or so.
The key to making a functional automatic switch between heating and cooling is an outdoor air temp sensor. You could whip up something with a controller, a few relays, and two temp sensors, one for inside and one for outside.
A thermostat is dead simple, 24VAC and 4 wires: heat, cool, fan, power. You’d need to experiment and figure out where the point will be best to switch from heating to cooling based on the outdoor air temp, the controller would control this.
There might be commercial products available that do this already, but if they don’t have an outdoor air temp sensor, it won’t work.
FWIW I bid and run commercial building automation installations.
nest thermostats (and probably many others) can do this. You set an acceptable temperature range; the heat will activate if it falls below that range, and the cooling will activate if it rises above that range.
What I want is a thermostat has basic controls on the device such that it can do the basics (heat, cool, circulate air, hold temperature at setpoint), but also passes on all the wire states over either wifi, zigbee, or one of the other home automation standards so that I can make arbitrarily complex control boards and routines through homeassistant.
This probably exists for the really basic 4 wire versions, but I have a more complicated 8-wire Lennox thermostat and I haven't been able to find something like this.
This right here is why I bought the slightly lower-end two-speed system instead of the variable-speed system (it's a Trane, I believe). I'm just not interested in getting tied into their proprietary ecosystem.
I have a relatively simple Honeywell Z-Wave thermostat, and it works great with Home Assistant.
Agreed. I really like the hardware (and price point) of Amazon’s smart thermostat. Unfortunately it’s all proprietary and locked to Alexa. I really hope someone unlocks them at some point.
I think this is already the "standard" interface for physical thermostats in the UK - the house where I was growing up in the UK, 4 timers (that can be selected based on "day of week"), a "1 hour boost" button, and a whole system "on/off".
This was at latest mid-90s, so not exactly "high tech". I don't think it's uncommon, as both random rented student house and the first place I rented while working had pretty much the same thing (though I think the student house only had 2 timers and no "day" functionality?). They didn't have air conditioning though, as that's not common residentially. And unless the allowed variance is also really wide (probably too wide for comfort in some situations), I don't really want the "same" temperature to be used for heat and cooling.
I'm surprised how many people I know IRL in the states that think this sort of thing is some fundamental tech limitation - like you need the latest fancy "smart" thermostat when 99% of what you will actually use it for is just "not the cheapest-possible" dumb one.
My house came with a Nest installed and I think it looks cool so I left it in but never gave it the wifi password and turned off absolutely all the crazy "smart" features it had. Now it's a really neat looking dumb thermostat and I want nothing else.
My house also came with a nest, and I also never connected it to my network, but for me nest was a terrible dumb thermostat.
It constantly tried to infer schedules and change the temperature on its own. I would set the temperature, come back an hour later to find that it changed itself back to what it thought it should be.
Also, there was no way to just activate the fan. I live in a very temperate climate and I generally like to keep a few windows open but run the fan to circulate air through the house.
I sold the nest and now a $15 dumb thermostat from the local hardware store now lets me set a temperature and it won't randomly change it when it feels like it. And it has a switch to turn on the fan.
I don't see anything about relative humidity (RH).
While temperature is important, if you have a well-seal and well-insulated house (i.e., up to modern code), your AC won't be running that much, and so the incidental dehumidification you get with it won't happen, which will lead to an RH that creeps up.
A stand-alone whole house dehumidifier is thus often needed to deal with RH.
I want the UI of an old Honeywell mercury switch thermostat. Heat/Cool mode switch and dial to set the desired temperature. That’s it. Absolutely simple to understand and operate.
They still make (mercury free) versions of these. The Heat/Cool version is CT87N1001 and the Heat-Only version is CT87K1004.
The last apartment I lived in installed new "smart" thermostats throughout the building. It always seemed to change the target temperature at random and I got so frustrated that I swapped it out with a dumb Honeywell one (and swapped it back when I moved out). I never found having to make the occasional manual adjustment to be an issue.
I think you want Home Assistant. Now we ask, which thermostats let Home Assistant program them without cloud connectivity? I have no idea, but last time I looked, it was a rabbit hole.
GoControl has a zwave thermostat that works well. Has no smarts of it's own (behaves like a pretty standard thermostat with heat, cool, and fan settings) but can be changed via home assistant so I've written a pretty extensive algorithm to meet my needs.
The iPhone does that, when you have a sleep schedule set it will show you the alarm for the coming day and when you go turn it off it turns it off for the next day only (it prompts you to confirm you want to just skip the next one rather than edit the schedule).
They've got that one figured out, works really well for me.
If you happen to be an iOS user you can setup a bedtime. Then there are controls to change your sleep/wake times for "next wake up only". Or to skip for a day.
If you have any familiarity with basic electronics at all, I strongly recommend building your own thermostat. It's very easy to connect a few relays and a temperature sensor to an off-the-shelf microcontroller. Give it any interface you want. Mine is an ESP-32 with a simple API that I control from a little web app or some basic push buttons on the thermostat itself in case the network is down.
Do you by any chance have your documented anywhere? I want to build my own. (Eventually. One of these days. When I get some spare time, of course. Perhaps in retirement...)
You can get something like that, though not that precise layout. I had one like that for years with a better interface than your sketch (until I forgot to take it with me from an apartment). It wasn't even "smart" (in the current internet-connected sense, I think it was still labeled as "smart" at the time since it was programmable).
Since we're dreaming about appliances: could someone please design a simple computer-controlled valve that shuts off the water and drains the pipes when the house temperature drops below a certain point? We very nearly had a $100,000+ home repair when a burst pipe shorted out our furnace this winter. This cannot be a very hard device to build?
It’s easy to control a valve actuator based on a space temperature sensor reading, monitor the space temp and when it hits setpoint, send a signal to the valve actuator to open up. Add in a flowmeter on your drain pipe and you can even close the valve when the water is done draining. Probably there is a fitting with a valve and flowmeter in one.
The difficult part is opening up all of the plumbing fixtures and taps automatically, I haven’t tried draining water out of a home’s plumbing system without opening all of the taps and am unsure if it works.
If you have a well, you’ll need to drain the expansion tank and turn off the water pump, the latter can be achieved with a relay that breaks power to the pump but I’m unsure of how to handle the former.
You’ll also need to automate filling the traps with antifreeze, unless you’re cool with replacing sink traps and toilets after a freeze event.
The controllable shutoff valves are already a thing, on the market. They even measure flow rates and look for slow leaks and notify you in an app.
Draining the pipes isn't that simple, and even if you did, you still have things like a water heater, toilets, softeners, filters, and expansion tanks. You also wouldn't get the water sitting in drain traps; winterizing a house or RV involves pouring a little RV antifreeze down each drain.
I live in the Netherlands, all our central furnaces speak OpenTherm, and still the best option is a Nest v3, it’s depressing (the device is beautiful but it should just have a local API).
Perhaps next time I’ll make something like that, using home assistant you can easily turn any switch with any temp sensor into a thermostat.
> OpenTherm (OT) is a standard communications protocol used in central heating systems for the communication between central heating appliances and a thermostatic controllers.[1] As a standard, OpenTherm is independent of any single manufacturer. A controller from one manufacturer can in principle be used to control a boiler from another. However, OpenTherm controllers and boilers do not always work properly together. The OpenTherm standard comprises a number of optional features and some devices may include manufacturer-specific features. The presence or absence of such features may impair compatibility with other OpenTherm devices.
The post isn't about what Nest doesn't do - it's about smart-thermostats like Nest having straightforward UIs and excessive amounts of IoT bollocks and seemingly arbitrary user-restrictions (e.g. Nest won't let you get raw access to temperature history data directly from the device: you can only get it via flashy GUIs in Google's apps (no API or CSV access) and even crazier: only for 10 days. Google is meant to be the king of Big Data but storing historical thermostat temperature data is too much for google, it seems...).
Engineering: Part count is too high, redo this with max one screen and three buttons. You know 7 screens costs almost 7 times as much as one screen right?
Industrial Design: [Drops a brick with a photo of Dieter Rams' original Braun radio taped to it onto your head from 3 storeys up]
Edit: non-joke feedback- this is great from a techie perspective but it's too much actual hardware complexity and visual presence for a task that will be done maybe twice per season. You have added about 50% to the cost of goods sold to do this - is it worth it? Will people buy it? Yes I understand this isn't a totally serious device proposal, but I would love people to try to understand why things end up looking like they do!
I want to specify heat, cool, or auto. I don't want to cool in the winter under any circumstances. I can simply open a window. Vise versa for the summer.
The schedule editor in the Nest App is “way too cumbersome”? I found it one of the most intuitive and just flexible enough editors of the various ones I tried (a relative judgment, and it was well past good enough in absolute terms).
Everyone looking at this beautiful simple UI that does only what everyone actually wants and commenting that what you actually want is some over complicated smart device is totally missing the point.
biotinker|10 months ago
I have a reasonably complex set of behavior set up. I live in Bend, Oregon at 4000 feet. This is somewhere with hot sunny days, cold nights, and sometimes a lot of smoke. The effect on the interior of the house based on upcoming weather is highly predictable.
My rules look something like this:
If tomorrow's high temperature is above 85, then as today as soon as outdoor temperature drops below indoor temperature, open all the windows and turn on the attic fan until either interior temp is below 62 or outdoor temp rises above indoor, whichever comes first. Unless the AQI outside goes over 100 for more than 2 minutes, in which case close all the windows and turn on the fan/AC to clean the air. All the while, if the house rises above temperature X, cool it to temperature Y.
Additionally, the upstairs heatpump is located in an uninsulated attic, which in winter means that heating is somewhat inefficient and we want to run it a minimal count of times to avoid warmup periods. So we program in our own hysteresis, so that there's a 6-degree difference between when the heat kicks on, and when it turns off.
No one is going to make a dream thermostat that meets your needs out of the box for you, because no one else has your local needs. The best you can do is give yourself the tools to make your reality how you want it.
barnas2|10 months ago
If you have heat pumps or a multiple zone system, or a few other things they can get more complex, but they still aren't super complicated.
bityard|10 months ago
I have run across a few open source thermostats, but either they are some hobbyist's one-off project, or they are geared toward very different systems from the common North American forced-air furnace and whole-house AC unit combo.
Before the but-what-about-ers start brigading in, yes it is possible to make this system safe against engineering or software defects. They make analog non-adjustable temperature sensors that "trip" below a certain temperature, you wire one in parallel with your heat wires near the furnace and you house will never go below freezing. (Very common in rentals.) If you're concerned about over-heating, add another temp sensor and relay and put it in series. Put time-out timers on every function. Have alerts sent to your phone. Add a SIM card and modem if you don't trust your wifi. And so on, tastefully adjusted to your own personal level of paranoia.
behnamoh|10 months ago
hex4def6|10 months ago
https://claude.ai/public/artifacts/4d0ddccc-e7fa-4589-94ca-f...
ignorantguy|10 months ago
Ecco|10 months ago
Here’s why I think the hardware is so great:
- Simple, high-contrast temperature display (7-segment led)
- Just a few buttons to override temp/mode manually
- Reliable sensor (it’s made by Honeywell)
- Nice industrial design (doesn’t get in the way)
- Low price point (got it for $49)
I really wish someone would find a way to unlock their firmware. I tried to mess with it and figured it did MQTT (yay!) but it does certificate pinning :-/ I even opened one up but couldn’t find an easy way to dump the firmware off of its i.MX chip.
cstrahan|10 months ago
The one I have in the apartment I’m renting only gives Cool vs Heat. With Texas being as finicky as it is this time of year, the temperature swings from frigidly cold to swelteringly hot day to day, and with my ADHD and lack of connection to my body, I find myself wondering why I’m feeling run down and mentally foggy, and then I realize it’s because I had to switch to Heat yesterday (because the house dropped down to 60F) and today the apartment is now at 85F, and I’ve been progressively overheating for the past 5 hours or so.
quickthrowman|10 months ago
A thermostat is dead simple, 24VAC and 4 wires: heat, cool, fan, power. You’d need to experiment and figure out where the point will be best to switch from heating to cooling based on the outdoor air temp, the controller would control this.
There might be commercial products available that do this already, but if they don’t have an outdoor air temp sensor, it won’t work.
FWIW I bid and run commercial building automation installations.
lantry|10 months ago
MostlyStable|10 months ago
This probably exists for the really basic 4 wire versions, but I have a more complicated 8-wire Lennox thermostat and I haven't been able to find something like this.
floating-io|10 months ago
I have a relatively simple Honeywell Z-Wave thermostat, and it works great with Home Assistant.
asielen|10 months ago
https://support.ecobee.com/s/articles/What-do-my-thermostat-...
Ecco|10 months ago
kimixa|10 months ago
This was at latest mid-90s, so not exactly "high tech". I don't think it's uncommon, as both random rented student house and the first place I rented while working had pretty much the same thing (though I think the student house only had 2 timers and no "day" functionality?). They didn't have air conditioning though, as that's not common residentially. And unless the allowed variance is also really wide (probably too wide for comfort in some situations), I don't really want the "same" temperature to be used for heat and cooling.
I'm surprised how many people I know IRL in the states that think this sort of thing is some fundamental tech limitation - like you need the latest fancy "smart" thermostat when 99% of what you will actually use it for is just "not the cheapest-possible" dumb one.
herpdyderp|10 months ago
418tpot|10 months ago
It constantly tried to infer schedules and change the temperature on its own. I would set the temperature, come back an hour later to find that it changed itself back to what it thought it should be.
Also, there was no way to just activate the fan. I live in a very temperate climate and I generally like to keep a few windows open but run the fan to circulate air through the house.
I sold the nest and now a $15 dumb thermostat from the local hardware store now lets me set a temperature and it won't randomly change it when it feels like it. And it has a switch to turn on the fan.
throw0101b|9 months ago
While temperature is important, if you have a well-seal and well-insulated house (i.e., up to modern code), your AC won't be running that much, and so the incidental dehumidification you get with it won't happen, which will lead to an RH that creeps up.
A stand-alone whole house dehumidifier is thus often needed to deal with RH.
* https://en.wikipedia.org/wiki/Hygrometer
SoftTalker|10 months ago
mreome|10 months ago
The last apartment I lived in installed new "smart" thermostats throughout the building. It always seemed to change the target temperature at random and I got so frustrated that I swapped it out with a dumb Honeywell one (and swapped it back when I moved out). I never found having to make the occasional manual adjustment to be an issue.
vessenes|10 months ago
jhot|10 months ago
broknbottle|10 months ago
https://www.amazon.com/Honeywell-Intrusion-TH6320ZW2003/dp/B...
amadeusw|10 months ago
bironran|10 months ago
Apparently that’s touch to ask in 2025.
__jonas|10 months ago
gregschlom|10 months ago
brianpan|10 months ago
bhaney|10 months ago
bhaney|10 months ago
bityard|10 months ago
Jtsummers|10 months ago
matthewdgreen|10 months ago
quickthrowman|10 months ago
The difficult part is opening up all of the plumbing fixtures and taps automatically, I haven’t tried draining water out of a home’s plumbing system without opening all of the taps and am unsure if it works.
If you have a well, you’ll need to drain the expansion tank and turn off the water pump, the latter can be achieved with a relay that breaks power to the pump but I’m unsure of how to handle the former.
You’ll also need to automate filling the traps with antifreeze, unless you’re cool with replacing sink traps and toilets after a freeze event.
jyoung8607|10 months ago
Draining the pipes isn't that simple, and even if you did, you still have things like a water heater, toilets, softeners, filters, and expansion tanks. You also wouldn't get the water sitting in drain traps; winterizing a house or RV involves pouring a little RV antifreeze down each drain.
LastTrain|10 months ago
teekert|10 months ago
Perhaps next time I’ll make something like that, using home assistant you can easily turn any switch with any temp sensor into a thermostat.
throw0101b|9 months ago
> OpenTherm (OT) is a standard communications protocol used in central heating systems for the communication between central heating appliances and a thermostatic controllers.[1] As a standard, OpenTherm is independent of any single manufacturer. A controller from one manufacturer can in principle be used to control a boiler from another. However, OpenTherm controllers and boilers do not always work properly together. The OpenTherm standard comprises a number of optional features and some devices may include manufacturer-specific features. The presence or absence of such features may impair compatibility with other OpenTherm devices.
* https://en.wikipedia.org/wiki/OpenTherm
* 2.2 spec PDF: http://files.domoticaforum.eu/uploads/Manuals/Opentherm/Open...
* https://www.opentherm.eu
burnte|10 months ago
DaiPlusPlus|10 months ago
0_____0|10 months ago
Industrial Design: [Drops a brick with a photo of Dieter Rams' original Braun radio taped to it onto your head from 3 storeys up]
Edit: non-joke feedback- this is great from a techie perspective but it's too much actual hardware complexity and visual presence for a task that will be done maybe twice per season. You have added about 50% to the cost of goods sold to do this - is it worth it? Will people buy it? Yes I understand this isn't a totally serious device proposal, but I would love people to try to understand why things end up looking like they do!
degamad|10 months ago
Raed667|10 months ago
- I want a button to make it a little colder for a period of 30-45 minutes
- I want a toggle to alternate for days where I WFH
- I want a 3rd time range: noon to 2PM
unknown|10 months ago
[deleted]
vortico|10 months ago
GaggiX|10 months ago
bob1029|10 months ago
https://www.honeywellhome.com/us/en/products/air/thermostats...
sigmaisaletter|10 months ago
atonse|10 months ago
I feel that while Nest changed the whole scene, it never lived up to its “smart” thermostat promise.
And the schedule editor is way too cumbersome. Something like the above is what most people would use.
sokoloff|10 months ago
ipunchghosts|10 months ago
Animats|10 months ago
wpm|10 months ago
Either this or some awful tap tap tap modal interface.
pphysch|10 months ago
singpolyma3|10 months ago
unknown|10 months ago
[deleted]
unknown|10 months ago
[deleted]