Is there a programmable thermostat that allows a totally custom program?

I am buying my first house soon, and thus will, for the first time in my life, be able to install whatever fixtures and appliances I want. One of the things I’m thinking about getting is a wifi thermostat.

I am wondering if there are any models which allow customization of the program beyond going by day of the week. Based on the reviews I’ve read so far, while many allow more customization than the one in my current apartment (which allows you to define four periods of the day “morning,” “day,” “evening,” and “night,” each by weekday and weekend,) they still are all limited to day-of-the-week schedules. But what if not every week is the same for me? For example, let’s say I’m going to be alternating being in town for 4 days and being out of town for 4 days for a while. Or that I’m going to be at home for a week, then at work for a week, then at home for a week, then at work for a week, etc. Are there any thermostats that allow you to create schedules with that level of complexity?

Some thermostats have a “vacation mode” that runs for a preset length of time or until you manually turn it off (e.g., Honeywell Prestige HD).

At some point any pre-programmed thermostat has its limits- e.g., if you are on a 9-day week maybe the manufacturer did not anticipate that. Maybe it’s a job for the Arduino/Raspberry Pi project thread (program it yourself), certainly cheaper than paying $200 and discovering it does not quite do what you want.

Ours, not wifi capable, had two over-rides you can trigger. One you just set the temp you want and it keeps that one until the next timed period comes along. The second is an “extended over-ride” where you hit that code and set a temp and it maintains that until told otherwise. Its come in handy when we’re sick at home in the winter or called out of town during the week.

(no AC – just heat in our house)

Sounds interesting. Would that be something someone with some old (15+ years) programming experience, but no electronics experience, could do? I am sure that if I took the time, I could learn or re-learn enough of a programming language to create the program, but I have no idea how to build a thermostat.

Yeah, the one in my apartment is like that too, but that’s not adequate for my purposes, because it’s not like I’m just going to be out of town and thus can keep the heat at 50 or the AC at 80 for days until I get back. I’m going to be working on a non-7-day-repeating schedule, so I need 2 different programs. For example, when I’m working, I want the heat to go up in the morning, back down during the day, back up in the evening, and back down at night, but when I’m not working, I want it to go up in the morning and stay there all day, only going back down at night.

The Nest thermostat doesn’t do exactly what you’re looking for in terms of anticipating your widely varying schedule week to week, but unlike most standard modern thermostats, it is trivially easy to reprogram by app.

Changing the schedule for the entire week can be done in like, a minute or two.

Yeah, I was just thinking, the next best thing would be one that allowed me to create and save multiple programs, and just pick one as the active one with a few button presses. Are there any like that?

What you’re looking for is a Nest. You can program it with as many setpoints as you like, but it’ll still repeat from week to week. However, you can also enable a handful of other features that will tell it to shut down (or go to a specific set point) if it doesn’t think anyone is home.
For example, set it to turn the heat up to 70 at 6pm*, but if it doesn’t notice anyone in the house, it’ll shut back down.
Further more, since it’s wifi, you can easily pull up the app on your phone and change things on the fly. Be it making changes to the schedule or just adjusting the temp.
It doesn’t always act like you’d expect it to and they have a habit of updating the firmware without saying anything which results in it acting odd, but I think it’s what you’re looking for.

For what you’re looking for, you’ll probably be best to put it in learning mode and with the ability to sense people in the room turned on. Yes, it might kick on when no one is home, but as soon as it realizes you’re not there, it’ll shut down and stay that way for the rest of the day. I’ve had mine for years and it still catches me off guard when the heat/AC turns on as soon as I walk past it (which, btw, is a downfall, it tends to shut down if you’re just sitting in one room for a long period of time).

*Which, by the way, means it’ll be 70 at 6pm. It learns how long it takes to get to a desired temperature and adjusts how early it turns on.

Also, this might not apply to you since you’re in an apartment, but it syncs up with the Nest smoke/CO detectors. It’ll use them as motion detectors as well. Plus, and this was a selling point for me, if it sense smoke or CO it’ll shut down you’re furnace. Either to stop a potential CO source or to keep smoke from blowing all over your house. Plus, it sends an alert to your phone. If your CO detector is going off when you get home, you have no way to know if it just started or if it’s been going for the last 6 hours. With the nest, I’ll get an alert right away.

The Nest thermostat can determine whether you’re home or away based on your phone’s location and whether it detects any activity in the house, and will set itself to “eco” temperatures when no one’s home. I got mine for similar reason’s to what you describe – I’m at work on some Fridays and home others. So what I do is for Friday, program it how I’d like when I’m home, and if I’m at work that day it wall detect that I’m not home and set itself to a more efficient temperature.

Even though that should be easy, I don’t know of any that have it built in. However, what you could do, is buy two identical t-stats, program one for each schedule and switching the schedules would be as easy as popping one off the wall and putting the other one on. Not exactly an elegant solution, but it would work.

Also, I’d be willing to bet you could replace your t-stat with an arduino and program it to do exactly what you’re looking for.

Since I brought it up, I think there are two aspects to this. One, when you buy an expensive thermostat, it comes with a snazzy touch screen and a decent user interface that allows both quick basic use as well as access to all the (many) advanced features; e.g., look at the manual for one of those Honeywell jobs (disclaimer: chosen as an example; I neither endorse it nor claim it is the best on the market for any purpose). Working from scratch, either you download a ready-made app that does what you want, program your own, or make do without one (eg if you only need to change the settings once a year maybe you would not mind if there were no touchscreen).

Second, building a thermostat from scratch, like out of a raw temperature sensor, humidity sensor, wires, and relays, while certainly doable, might be said to require some basic electronics knowledge, maybe also engineering knowledge of PID control and similar, plus you would want to package/mount the thing so that it looks nice, without loose wires visible everywhere. I actually have a pre-built “smart thermostat” (something like this, not that exact model though, mine is a lot less smart, what it does do is accept a temperature set point (from your program) and turn a heating element on and off to maintain that temperature. I am using it on a little oven, though, not to heat+cool a house; don’t know how complex it would be to tap into your new house’s HVAC system (it may even be easy if the house already has sensors and heating/cooling relays and all you have to do is replace the “brains”).

If all you need to do is swap between two schedules (with the push of a button at worst) it may be more efficient to buy a pre-built unit unless you love and feel comfortable with DIY stuff or can’t find an existing one with that feature.

OK, after doing some more searching, I believe I may have found one with this feature: the Emerson Sensi thermostat. Based on some reviews like this article and this video, it seems to allow the user to create and save multiple schedules and switch between them, though they don’t really go into detail about it. Anyone have experience with this one who could confirm it can do this?

Are there any thermostats out there that can be adjusted in smaller increments than 1°F.? I know it sounds silly, but to me a 1° difference is quite noticeable, and 2° is downright huge. I’d like a thermostat that could be set to, say, 71.5° as well as 71° or 72°, if they make such a thermostat.