Why is my thermostat scheduler not working?

This is for my water heater. I would go into details about the driver it's using and everything, but I don't think that is even coming in to play yet. I set it up a while back, and because I have ADHD I promptly forgot about it. Now I've noticed it's not following the schedule at all and there is nothing in the logs. I'd assume if the app tried to do something, even if the driver for the device wasn't working, that the app would log when it did.

This is actually a new setup using the new version of the Thermostat Scheduler app. It was using the older version before 4/11 and the driver was out of date and I could not open the Thermostat Scheduler app because of it. This was actually not impacting it from actually working. Here is a log snippet from the last few days before I nuked it (I had wanted to just pause it but I couldn't get into the app to do so).


Someone took over the Rheem interation and had updated the driver, so I decided to fix my issue. Here is the entire log since 4/11

I'm pretty sure the initialize on 4/18 was from updating the hub firmware and rebooting. The errors (pinging @klinquist in case he wants to know about them) are generated when you click "mode" to change the Thermostat Mode for a time period. But I'm pretty sure his driver is not the issue because it looks like the Thermostat Scheduler is just not doing anything. I first noticed it really this morning when my wife said something about having to use more hot water (relative to the amount of cold) than usual, so I checked the temp and it was set to 110 and it should have changed to 120 at 3am today (Sunday morning).

I don't understand why it's not working because when I look at the scheduled jobs, it looks like something is scheduled.

If I go to the events page though, there is only a single event and it's me manually changing the temperature to 120. If you look at my very first screenshot, you can see it's still actually set to 120 but it should have changed to 110 at 10:00pm.

Your thermostat driver is not updated as it should have been.

See this post

Bruce, you're talking just about the error generated when clicking the "Mode" button right? Changing to the virtual driver and changing the supported modes to include quotes around them fixed that issue.

But, at the top of the thermostat scheduler where it says control manually, I can click the current temperature and change it with no errors and the change is immediately reflected in the Rheem app, so I know it's actually changing. It's just not following the schedule.

That would have been because of the issue with the driver. It errored out on each attempt.

If I had "Enable logging" checked in Thermostat Scheduler, shouldn't those attempts have been logged?

The device for the water heater has the correct thermostat modes now.


After doing that, I opened the Thermostat Scheduler app and clicked okay to re-initialize it just in case. Since then it still has not adjusted the temperature.

I manually adjusted it from within Thermostat Scheduler and watched the temperature update on the Rheem app, so I know the app can set the temperature.

Under scheduled jobs, I still see where the temperatures should change at 7am and 10pm. It shows the previous run time as blank.

Do you have logs for 7 am this morning? Did it run as scheduled?

It did not run at 7am. Nothing in the log for Thermostat Scheduler. Last entry is still for 5/3 at 12:49am. Nothing in Events either.

However... the scheduled jobs says it did.

Nothing in the log for the water heater either. It's possible since the temperature wouldn't have changed, nothing happened. But I'd think there'd still be a log entry that said something. I'll check again tonight to see if it changes at 10pm.

Please post a screenshot of a portion of Application State from App Status page, the portion where the state variables that begins with "heat" are. Looks like this:

Except yours would have names heatDay.1, heatDay.2, etc...


While looking in there I did notice this...

Which is not correct. The current period should be Day. On the main screen where it shows the schedule, Wed and Day are both purple, indicating that's what the current day and period should be.

Instead of waiting until 10 pm, just edit the time to a couple of minutes in the future, hit Update or Done, and see what happens.

It could be that you may need to remove this instance, and re-create it. It's really hard for me to know what's happening from afar. I use Thermostat Scheduler in my own house, have for a long time, and never see a problem with it.

All that happened is this

Changed to this

Nothing in the log at all. The temperature didn't change.

I think I will do that.

After completely re-creating it, I am still experiencing the same thing. The schedule isn't being followed. Still nothing in the logs.

So at this point I am assuming it's the device driver somehow. I just don't understand why it would work when manually controlling it, even inside of Thermostat Scheduler.

Export this instance with Export/Import/Clone on the App Status page, and email it to me. See PM.

Thermostat Scheduler should be commanding the thermostat, unless, like before, it's throwing an error for some reason. But that would show in the logs.

1 Like

I imported that onto a hub, and it works as expected when I plugged in two times:

And I notice that hitting update wipes out Previous Run Time in the Scheduled Jobs (the app unschedules it, then reschedules it, so that makes sense).

I'm a bit at a loss to understand what is not working in your setup. Were it me, I'd be testing this aggressively with made up times until I got to the bottom of it. Try using a virtual thermostat also, instead of the real one, to try to discover where it isn't working.

Are you sure that it isn't restricted? You have that restriction switch, perhaps that's why it doesn't work.

Hello bravanel,

First of all many thanks for your great work and support in relation to the development of Thermostat Scheduler but not limited. Your app in conjunction with Hubitat reduced my heating bills with about 35% during the winter.

On the day by day operation , I’ve started to have the same issues as waterboysh.

As a background information I am using 6 of Zigbee Sprit Eurotronic TRV’s. There is not a dedicated driver for this device. Hence best on testing I found that the Hubitat driver for Sinope TH11300ZB is the most reliable one ( although not allowing to use some features of the TRV).

Time wise, these issues started after migrating to C8 and upgrading to Thermostat Scheduler 2.0.

In essence some of the TRV’’s appear to disregard the command from the Scheduler to change the heating point quite frequently but will not have any issues if I am sending the same command from a rule machine.

To make it more puzzling this is happening randomly I time and not to specific thermostat. Hence not looking to be a Zigbee mesh issue.

After checking and replacing ( just in case batteries) I’ve run the test that you’ve recommended by creating some “witnesses” virtual thermostats. Indeed these virtual thermostats are obeying all the commands received from the Thermostat Scheduler.

Not blaming the Scheduler or new C8 and only trying to see how can I get my thermostats back in control rather than changing them for a newer generation if possible.

As interim situation, I’ve developed some rules in RM to switch ON/OFF( i.e. set to 5C and back) and that appeared to help up a a point because sometime I need to go back an manually ( via dashboard buttons) I have to repeat the cycle ON/OFF a couple of times more for more stubborn TRV’s.

Apart of the above everything thing else is working great and it will be fantastic if we can find what is happening to fully utilise your great app without any manual intervention as before.

Please let me know if I can help in any way and I would appreciate any suggestion.


First thing to know, is do the logs for Thermostat Scheduler show the command being issued or not. You can see what that looks like in my post just above, where it says "Heating Setpoint xxx from Time Schedule". If those log entries for the app appear, but the thermostat does not respond, then it is a device or Zigbee issue. If those log entries for the app are missing, we need to dig deeper into the app setup.

Please let me know....

There is a distinct possibility that this might be a Zigbee issue, so don't rule that out yet.

Hi bravanel,

Many thanks for your quick reply.

I’ll gather all the information and send it to you fior further analysis.
Aditionally, I’ll install a couple of additional Zigbee repeaters (just in case) but to be honest I have the feeling that the new C8 greatly improved my Zigbee mesh because even the worst “offenders” such as Xiaomi sensors are dropping very rare now.

Secondly, as a feature wish but not essential for future Thermostat Schedulere vesrsion. Would it be possible/feasible to have a second Eco in the Scheduler. This will help me to create a Boost option for TRV (but not limited) in addition to existing Eco that is mainly used for savings. Thank you

Wishing you a great weekend

I made sure the switch was in the correct position. I tested it with a virtual thermostat and changed nothing else and it also worked.


It's still weird to me that Thermostat Scheduler doesn't spit anything out into the log, but all signs point to it being the driver.

If it isn't logging those commands, then there is nothing pointing to the driver, as the app should attempt to control the device irrespective of the driver. What you're posting is so limited in scope that it's impossible to understand the full scope of what is going on with your system and your logging. "I made sure" isn't comforting compared to logs that are definitive. I'm tempted to add more logging for when it is restricted. Meanwhile, remove the restriction completely and see if it works or not.

Download the Hubitat app