I tried it just then on the Upstairs unit which I had intentionally left alone - it was showing "heat" in the Dashboard etc but was in fan only mode: It changed via the driver as commanded:
[dev:879](http://192.168.1.170/logs#)2022-12-01 10:39:03.658 AM[debug](http://192.168.1.170/logs#)getThermostatRunningModeResult:4
[dev:879](http://192.168.1.170/logs#)2022-12-01 10:39:03.655 AM[debug](http://192.168.1.170/logs#)descMap: [raw:BF91010201081E003004, dni:BF91, endpoint:01, cluster:0201, size:08, attrId:001E, encoding:30, command:0A, value:04, clusterInt:513, attrInt:30]
[dev:879](http://192.168.1.170/logs#)2022-12-01 10:39:03.333 AM[info](http://192.168.1.170/logs#)Upstairs thermostatMode is heat
[dev:879](http://192.168.1.170/logs#)2022-12-01 10:39:03.332 AM[debug](http://192.168.1.170/logs#)getThermostatModeResult:4
[dev:879](http://192.168.1.170/logs#)2022-12-01 10:39:03.330 AM[debug](http://192.168.1.170/logs#)descMap: [raw:BF91010201081C003004, dni:BF91, endpoint:01, cluster:0201, size:08, attrId:001C, encoding:30, command:0A, value:04, clusterInt:513, attrInt:28]
[dev:879](http://192.168.1.170/logs#)2022-12-01 10:39:02.910 AM[trace](http://192.168.1.170/logs#)heat()
[dev:879](http://192.168.1.170/logs#)2022-12-01 10:38:48.379 AM[warn](http://192.168.1.170/logs#)description logging is: true
[dev:879](http://192.168.1.170/logs#)2022-12-01 10:38:48.378 AM[warn](http://192.168.1.170/logs#)debug logging is: true
[dev:879](http://192.168.1.170/logs#)2022-12-01 10:38:48.376 AM[info](http://192.168.1.170/logs#)updated...
[dev:879](http://192.168.1.170/logs#)2022-12-01 08:58:20.882 AM[info](http://192.168.1.170/logs#)Upstairs thermostatOperatingState is fan only
[dev:879](http://192.168.1.170/logs#)2022-12-01 08:58:17.009 AM[info](http://192.168.1.170/logs#)Upstairs thermostatFanMode is on
[dev:879](http://192.168.1.170/logs#)2022-12-01 07:36:32.374 AM[info](http://192.168.1.170/logs#)Upstairs battery is 100%
Im not sure if this is related to my rules being triggered multiple times?
EDIT: I do have a rule that turns them off as a way to reset them at 6am. I've never had this issue in the past and it seems like because the Zen's aren't reporting back correctly, the 2 rules are overlapping?
A side issue I've been having with the Zen, is when I am running fan only (on) thermostat mode (off) and use the dashboard to turn the fan off (auto) it seems to put also put the thermostat mode to (auto) as well when I want it to stay off. I have also noticed this occurring from selecting fan (auto) on the device page itself turning the thermostat mode to (auto) when it was previously set to off.
I do use a mix of virtual devices on one hub that has the dashboard connecting to the zigbee hub via node red, haven't spent much time investigating but it used to work fine as intended a few updates back but has been acting this way for a few update cycles now.
Have been making due with adding more "refresh" and "thermostat off" nodes to my flow to keep from going to auto mode.
interesting, this isn't a driver issue, the device itself is doing this.
you can see the 4th line from last in the log where the thermostat is returning a value of 01 which is auto...
This is a device firmware bug.
Thread from ST forum - there was an update in 2019, at least, doesn't sound like it would address the issues discussed here.
Instructions to update (assuming you have access to a ST hub). I had these in some notes I'd saved, no idea if below works or not...
Aha! Discovered the instructions were from @dJOS - so we know he's already applied the update. His post here:
Take your Zen off the wall, wake up the screen if it isnt already on.
Press the network button 10 times to remove it from your HE Zigbee network - this is only done on the device, your HE device won't be removed unless you run that process on the HE (so dont).
On your SmartThings app, select add a device and pick the Zen Thermostat
Press the network button 5 times to add it to your SmartThings
follow the instruction HERE to check your Device FW version
a. Take your Zen off the mount
b. Select "prefs"
c. Scroll right to "info" and the first item when you scroll down is your current FW version.
pull the batteries out of your Zen for a minute
Wait for up to 10 mins and it should auto-update - you'll know it's doing this as a symbol will start randomly flashing around the screen. It's done when the display goes back to showing "prefs".
make sure the Zen is responding in the ST app then power down your ST HUB
Press the network button 10 times to remove it from SmartThings
On your Hubitat Hub, go to discover Zigbee new device and start the discovery process
Press the network button 5 times to re-add it to your Hubitat - you'll see it say something along the lines of "found an existing device". This means you succeeded!