Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> I just want my thermostat to hold whatever temperature I set it at, until I set it at another temperature.

If it only takes one of heating or cooling to do this, not both, a standard "dumb" thermostat can of course do this just fine. Just set it to "cool" or "heat" mode and set a temperature. But of course you will need to change modes as the season changes (unless you live somewhere where only one mode is ever needed).

If you want to not have to change modes when the season changes, it gets more complicated, because the simple control system in the standard thermostat is too dumb for that. For example, suppose you set your temperature to 75. The actual temperature rises to 76, above the setpoint, so your A/C comes on. It cools the house to 74 and then the thermostat shuts it off (you have to have some buffer so the A/C doesn't come on again almost immediately). Now the temperature is below the setpoint, so your heat comes on. It heats the house to 76 and then shuts off. Now the temperature is above the setpoint... You can see what's going on.

From a pure design perspective, the right way to solve this problem is an outside temperature sensor (and probably a sun sensor as well since sunlight is a significant heat input to your house), so the system can predict what will happen when both cooling and heating are off. Given reliable sensors, the control algorithm is fairly simple (automatic climate control systems in cars already do it). I have never seen this in a house, though. I'm not sure why.



This is solved in thermostats with hysteresis and even many DIY or close to it solutions like esphome[0] implement it. I know on my Nest when heat and cool mode is on the set heat and cool temperatures have to be two degrees away from one another, which is fine with me because for whatever reasons 67 in the summer feels great but I want close to 69/70/71 in the winter.

The linked esphome docs are actually great whether you care about esphome or not - they explain all of this very well and you can tell from the configuration values and samples what kind of logic goes into all of this.

[0] - https://esphome.io/components/climate/thermostat.html


Your summer and winter preferences may vary due to humidity levels. It makes a world of difference it how humans perceive temperature because of it.


I really wish I could have my thermostat's set point use "heat index" (a straightforward function of temperature and humidity) instead of just temperature.

I am perfectly comfortable (and therefore want my system to turn off) after my AC has been running long enough to drop the humidity a bit, even if the temp has only dropped a fraction of a degree. As humid air leaks in, I want the AC back on even if the temp has barely increased a degree. Basically the heat index in my house swings enough to change my comfort and therefore could be a useful trigger, even if the temperature doesn't swing nearly enough to be a useful trigger.

The Nest even has a humidity sensor, but it only gets used in very specific (hardly useful) situations.

I considered writing a Works With Nest app for this. Then that platform disappeared in favor of Works With Google, but I never found the time for either...


If you’re willing to spend the money, I’d recommend getting a ZigBee or z wave thermostat(or an EcoBee, as it has local control through HomeKit) and then you can combine the temperature readings with your own humidity/temperature sensors - as mentioned above, ESPHome/Home Assistant may be overkill, but would work great for this kind of setup


> I really wish I could have my thermostat's set point use "heat index" (a straightforward function of temperature and humidity) instead of just temperature.

You could try wrapping your thermostat in a wet sock.


I'm not sure my wife would love that, and I'm not sure how to keep it wet at all times (apply water of a known temperature??) but I am intrigued: how does it work? The temperature of the sock will somehow correlate with the heat index of the ambient air?


It's mostly just a joke about wet-bulb thermometers: https://en.wikipedia.org/wiki/Wet-bulb_temperature

Actual web-bulb thermometers would either require manually adding water when you want to make a measurement, or have a large tank of water that gets continuously wicked onto a cloth which is wrapped around the thermometer. The general idea is that, if the surrounding air is dry, the water in the cloth will evaporate and cool the thermometer below the temperature of the air itself (the "dry-bulb temperate"). This is just the same evaporative cooling effect that makes sweating and swamp coolers work. If the surrounding air is very wet (humid), very little evaporate cooling will occur, and the wet-bulb temperature will be very close to the dry-bulb temperature.

I'm not sure how well a thermostat that only used the wet-bulb temperature would work. To actually calculate relative humidity, you would need at least a wet-bulb and dry-bulb measurement. But given that relative humidity in most places probably doesn't swing that wildly, I imagine that just finding a comfortable wet-bulb temperate for your thermostat might work okay in practice.


This is brilliant, thanks. I do see how additional calculations between wet and dry (or just a hygrometer, which the Nest does have already) would be ideal, but as you say, using just a wet-bulb does seem a bit better than using just a dry-bulb in terms of approaching my goal, even if it's not quite all the way there.

Rigging a wet sock (with constant wicking from a water source) onto my actual wall-mounted Nest Thermostat would never fly, as I said, but I have no qualms about doing this experiment with my Nest Temperature Sensor, being a small and relatively cheap thing that I can easily steal for a while...

According to a psychrometric chart [0] it looks like if the dry-bulb temperature stays locked at 70F, while the RH drops from 60% to 40%, the wet-bulb temperature will drop from 62F to 56F. Or if the dry-bulb temperature stays locked at 80F while the RH drops as before, the wet-bulb temperature will drop from 70F to 64F. That's linear enough for my purposes.

Therefore if my conventional (dry-bulb) set point is 75F in the summer, and I'm most comfortable around 50% RH combined with that 75F, then I'll try a set point of 63F with my Nest using the remote Sensor wrapped in wet cloth!

Apparently I also need continuous airflow over this wet-bulb thermometer. I wonder how much.

[0] https://hvacologist.com/2022/02/21/wet-bulb-temperature-vs-d...


Humidity definitely plays a part in my preferences but where I live there are 100 degree temperature swings and interacting with the elements outside leads to (for me) more extremes inside.

When I get back from a run in August at near heatstroke levels I will almost never cool down if it's not set on the "chilly" side. Conversely, in winter when heatstroke is replaced with near frostbite I am chilled to the core and need much higher heat to ever warm up.


Surely a basic PID controller with reasonable tuning could mostly mitigate the problem you describe, which isn’t really a different problem than a thermostat that would attempt to turn the furnace on and off multiple times per second if the thermometer was fluctuating between 74 and 75 multiple times per second. Granted, tuning the PID controller implies loosening the “maintain the exact target temperature at all costs” spec.


> tuning the PID controller implies loosening the “maintain the exact target temperature at all costs” spec.

And if you loosen that spec, then, as others have already pointed out, just having two setpoints, a lower one for heating and a higher one for cooling, will be sufficient as long as the difference between them is large enough (probably 2 degrees or more would be enough for many use cases). That would be simpler than adding a PID controller.


You'd just set a low point and a high point far enough away from each other that the thermostat wouldn't cycle back and forth between heat and AC. You could also add a timeout so that the heat cannot turn on for at least two hours after the AC cycle just finished. During November, we always seem to get crazy temperature swings where we run the heat one day but need to run AC the next. I'd love a dumb thermostat that didn't require me to manually switch over to heat or AC mode.


> If it only takes one of heating or cooling to do this, not both, a standard "dumb" thermostat can of course do this just fine. Just set it to "cool" or "heat" mode and set a temperature. But of course you will need to change modes as the season changes (unless you live somewhere where only one mode is ever needed).

Why ? What would be so hard in detecting "every time I don't do anything temperature goes up therefore summer and I need to use AC" ?

> If you want to not have to change modes when the season changes, it gets more complicated, because the simple control system in the standard thermostat is too dumb for that. For example, suppose you set your temperature to 75. The actual temperature rises to 76, above the setpoint, so your A/C comes on. It cools the house to 74 and then the thermostat shuts it off (you have to have some buffer so the A/C doesn't come on again almost immediately). Now the temperature is below the setpoint, so your heat comes on. It heats the house to 76 and then shuts off. Now the temperature is above the setpoint... You can see what's going on.

All would it take is to put a gate "if I used cooling to correct temperature last time, don't use heating for few hours or until it drops to higher difference and vice versa". You're trying to portray it in way more complicated way that it is.

> From a pure design perspective, the right way to solve this problem is an outside temperature sensor (and probably a sun sensor as well since sunlight is a significant heat input to your house), so the system can predict what will happen when both cooling and heating are off. Given reliable sensors, the control algorithm is fairly simple (automatic climate control systems in cars already do it). I have never seen this in a house, though. I'm not sure why.

Too simplistic. Which side of house you monitor, is it in shade or does it show temperature when sun heats up the wall ? Which room is closest to "hot" wall/window?. It would be a lot of work for very little improvement


> If you want to not have to change modes when the season changes, it gets more complicated

There's an additional complication for multi-story houses that I didn't mention before. In multi-story houses, when you're cooling, you want most of the ducted airflow to be directed to the upstairs outlets, to take advantage of natural convection (cooler air sinks); similarly, when you're heating, you want most of the ducted airflow to be directed to the downstairs outlets (warmer air rises). That requires adjusting dampers in the ducts, usually just downstream of the output of your HVAC unit. Unless that adjustment can be automated (which would require automatically controlled motors on the dampers, something I haven't seen marketed, though again I'm not sure why), your airflow will be suboptimal for either heating or cooling if the system automatically switches between modes.


Switch controlled open/close dampers are common enough.

A typical suggested application is controlling the airflow to a room using a thermostat to open or close the damper, but they can be hooked up to anything with a switched output.


Can these dampers stop somewhere short of full open/close? Typically one wants full open for one season and mostly closed but not fully closed for the other.


Apparently? I'm not an HVAC guy, just poking away at understanding my current system and thinking about what I might change.

As an example, this damper has an adjustable bleed rate, with a 2 wire input for switching the state:

https://www.resideo.com/us/en/pro/products/air/forced-air-zo...

(Click the "Install" tab to access installation guides)


Is it not possible to forecast temperature changes rather than installing a bunch of extra sensors? If the device knows its location and has an internet connection, it can examine the day's weather forecast, know where the sun will shine, and know how cloudy it will be.


You'd still need correction for how sunny/shady house walls are


Good point. I wonder if the temperature sensor in the thermostat would be able to help correct that error.

E.g., if the thermostat expected a temperature of 75 F at 12 PM but it was actually 78 F, then you know the house received a lot of sunlight and can correct accordingly.


The rate at which your house warms while the heat is on is an indirect measure of the effect of both the temperature of the outside of your walls and the amount of solar radiation coming through your windows.

As others have indirectly pointed out, for the range of circumstances a given house is going to encounter, the linearizing assumptions in a standard PID controller are probably sufficient. If tuned properly, the "differential" portion of the PID controller will shut down the heater earlier when it's warmer out and/or there's more solar energy coming through your windows.


I wonder if the quote is referring to balancing 2 systems. I don't have AC, but I use my heat to maintain a minimum acceptable temperature, not to maintain the temperature I find ideal. I don't want it to go a lot lower than the setting.


This is solved with two set points, 68° for heat and 78° for cold, and appropriate clothing.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: