Ecobee Integration incorrect thermostatOperatingState with 2 ecobee thermostats


I have the built in Ecobee Integration app installed and configured to poll my two ecobee thermostats that are on my single ecobee account.

The two hubitat devices show the correct temperatures, humidities and set points for their respective ecobee thermostats. However, both hubitat devices always have equal values for "thermostatOperatingState" (i.e. they are always both "idle", "cooling" or "heating" even though the two units operate independently and cycle on and off at different times).

I think there might be a bug in the driver code where the value for thermostatOperatingState is not independently set.

I looked at the hubitat logs and Ecobee Integration doesn't write any logs when it polls. I also looked at the installed app status and here is the output of the "thermostats" field which doesn't have an operating state so I'm stuck and not sure how to debug further to confirm that there is a bug in the code that assigns the value of thermostatOperatingState:

{3.411952425256={polled=true, data={coolMode=true, deviceAlive=true, autoMode=true, heatMode=true, minCoolingSetpoint=65, minHeatingSetpoint=45, auxHeatMode=false, heatingSetpoint=70, coolingSetpoint=74.7, pollMinutes=1, deviceTemperatureUnit=F, name=Downstairs, temperature=75.3, humidity=47, thermostatFanMode=auto, thermostatMode=auto, maxCoolingSetpoint=92, maxHeatingSetpoint=79}, pollAttempts=0}, 3.411952515292={polled=true, data={coolMode=true, deviceAlive=true, autoMode=true, heatMode=true, minCoolingSetpoint=65, minHeatingSetpoint=45, auxHeatMode=false, heatingSetpoint=70, coolingSetpoint=74, pollMinutes=1, deviceTemperatureUnit=F, name=Upstairs, temperature=76.5, humidity=52, thermostatFanMode=auto, thermostatMode=auto, maxCoolingSetpoint=92, maxHeatingSetpoint=79}, pollAttempts=0}}

We will look into this. Thanks.

1 Like

@bravenel while looking at the built-in Ecobee app can you see if the heating and cooling stage value is available for use via the api? I'm interested in it for information purposes only.

FYI in the meantime I've switched over to use [RELEASE] Universal Ecobee Suite, Version 1.8.01 and the correct thermostatOperatingState values are set in hubitat with those devices.

I am unblocked but now more confident that there is a bug in the first party ecobee app.

While looking at the first party code, it would also be great to pull in the 'fan' state from ecobee. The third party driver linked above shows ecobee status as either 'idle', 'fan', 'cooling', 'heating' but the first party app treats 'fan' as 'idle'.

I see the issue here and will be updating this integration for 2.3.3


Bump @bravenel, now that it's time think about heating, it would be helpful to get notifications related to heating and cooling stage.

You can make a rule triggered by Custom Attribute for the attribute the thermostat is reporting, If the thermostat isn't reporting an attribute change for these, it won't work.

I think that is the issue. The built-in Ecobee app is not retrieving that attribute and was hoping it could be added.

I was running the much more feature rich 3rd party ecobee app to get this 1 value but it is overkill for my needs and can present hub overload issues.

As more people switch to heat pumps with 2-stage and multi-stage pumps and dual fuel systems, this single reporting piece will be as important as the existing items in the built-in app.

Possibly this is the missing value.