I have a HVAC that I need to set to āhighā on some occasions and donāt want to send the command when it is already in that state. Being able to detect this would avoid me hearing the acknowledge beep every time the rule runs and sends the command.
If HE is the only thing that changes the fan speed could you use a variable to independently track it in the mean time? Not as handy as being able to read it directly from the thermostat, but it might work temporarily.
Does your thermostat expose the speed as the thermostatFanMode attribute? If so, I assume this should be possible (for the app, not you...) by leveraging the supportedThermostatFanModes attribute, but I don't think any love has been given to that attribute until recently, and lots of apps just ignore it and assume the "standard" set you see above. Alternatively, I suppose it's possible it exposes the speed via the FanControl capability with the fanSpeed attribute, which has a similar supportedFanSpeeds attribute that can be used (but, again, I'm not sure it has ever been paid much attention).
I think RM and other apps have started to pay more attention to attributes like these recently (and it's why some have noticed what turned out to be problems with their thermostat drivers--though again, "problems" that didn't matter much before). Maybe Bruce will decide to leverage the additional information for the above attributes in the future as well, which could address your issue--assuming your thermostat exposes this information via standard attributes. [EDIT: I guess it already does and uses this default set if the driver doesn't supply any; see below.]
In the meantime, regardless, you should still be able to get this information by using "Custom Attribute" instead of any of the standard capabilities, assuming it's exposed via some attribute (standard or not), without the need for variables or any awkward workarounds.
Rule pulls supportedThermostatFanModes from the driver. If that's missing, it has a default list that it uses. You've got the default list, so you probably have a defective driver.
@Sebastien show the Current States from the device page for this thermostat.
And, BTW, it's pretty easy to fix this once you show us what you've got.
I can do Groovy cut and paste pretty well, but adding something totally new is apparently not my strong point⦠I thought I could just add the line, but there must be some syntax Iām missingā¦
Say what? The type field of the device isn't locked when it's a child device of an app. Show a screenshot of the device page where the Device Information is displayed.