Generic Thermostat Driver + HoneyWell TH8329Z shows Humidity capability where there is none

@mike.maxwell

I'm using the subject driver / hardware combination. This thermostat has no humidity capability.

However when I run the below listed Humidity averaging app from BRevenel this thermostat is allowed to be selected for a Humidity calculation.

Is it the Thermostat or the driver?

For ease of copying if needed:

Device Data:

  • deviceType: 17
  • inClusters: 0x85,0x43,0x40,0x20,0x45,0x42,0x44,0x27,0x31,0x72,0x86
  • deviceId: 1
  • manufacturer: 57

I'm using BRevenel's Humidity Averaging app from here code for code, no changes. As you can see I can select the "Thermostat, Living Room" as a humidity sensor. There is not Humidity capability on this thermostat. When I run bruce's code I get an exception at line 44, I believe this occurs because the thermostat humidity is "null"

driver capabilities aren't dynamic, so in this case Hubitat sees the thermostat as having humidity since it's part of this specific driver, however as you pointed out the thermostat doesn't provide humidity readings, so there are no humidity events shown in the driver details.

OK but I was under the impression that the fingerprint of the device would take care of that. In this case it exposes a bogus capability.
Am I missing something?

John

in this case whatever the fingerprint of the device that you're using happens to match the generic driver which includes humidity, even though your device doesn't produce that attribute.

Although annoying perhaps, there isn't a specific problem with this, you know your thermostat doesn't produce humidity, so you're not going to try to build any automations using non existent humidity readings from this device...

Thanks. It is annoying... especially since the App crashes and doesn't show an immediate (recoverable error). Perhaps I can figure a way for the App to "filter" bad entries.

Here I'll assume here the offending entry is 0x031 Multilevel Sensor.

John