BLOT: I’m not sure if this is a bug in webCoRE or a bug in Universal Ecobee Suite.
I have this piston below to let me know if I have any doors or windows open when the HVAC kicks on.
I’m using @storageanarchy’s Universal Ecobee Suite on SmartThings (and on Hubitat, but this piston is still on ST). Right now both of my ecobee3s are turned off as the temperature outside is perfect. So I don’t expect this piston to fire.
However, today it did fire, telling me there were windows open while the tstat was “offline”. I thought I’d just select that as an additional value in the “is not any of”, but I “offline” isn’t an option:
Unfortunately, I started looking into things and lost the logs showing “offline”, but it really was there. I got it three times this evening. But I’ve not been able to reproduce the value again.
The source of the options in that drop down is from this enumeration at line 2540 of webcore.groovy:
thermostatOperatingState : [ n: "operating state", t: "enum", o: ["cooling", "fan only", "heating", "idle", "pending cool", "pending heat", "vent economizer"], ],
The code in Barry’s ES certainly understands “offline” (from ecobee-suite-thermostat.groovy):
standardTile("operatingState", "device.thermostatOperatingState", width: 2, height: 2, decoration: "flat") {
state "idle", icon: "https://raw.githubusercontent.com/SANdood/Ecobee/master/icons/operatingstate_idle.png"
state "fan only", icon: "https://raw.githubusercontent.com/SANdood/Ecobee/master/icons/operatingstate_fan_on_solid.png"
state "heating", icon: "https://raw.githubusercontent.com/SANdood/Ecobee/master/icons/operatingstate_heat.png"
state "cooling", icon: "https://raw.githubusercontent.com/SANdood/Ecobee/master/icons/operatingstate_cool.png"
state "offline", icon: "https://raw.githubusercontent.com/SANdood/Ecobee/master/icons/black_dot_only.png"
state "default", icon: "https://raw.githubusercontent.com/SANdood/Ecobee/master/icons/blank.png", label: '${currentValue}', defaultState: true
}
But at line 1204 in his code is this comment:
// now update thermostatOperatingState - is limited by API to idle, fan only, heating, cooling, pending heat, pending cool, ventilator only
That implies “offline” shouldn’t be a possible value and that webCoRE is correct. But the value “offline” definitely was visible today, so maybe webCoRE should allow it as a selection. I’m not sure if this is a bug in webCoRE or a bug in Universal Ecobee Suite, or both.
To fix this, I considered adding “offline” to enum at line 2540 of webcore.groovy.
Instead I just flipped the logic in the piston: