Personally, I like my drivers to be lean and restricted to the capabilities/attributes that are essential for my automation using that device's primary function. I also feel that for something like a thermostat, installation settings should be restricted to being accessed at the physical device.
While I haven't used this driver, I have had a similar experience with a different device where a driver that did all kinds of things seemed like a good idea, until the extensive communication it had with the device started affecting the stability of my mesh. Reverting back to a built-in driver fixed the issue. In some situations, simpler might be better. Indeed, it is this experience that has formed the opinion in the preceding paragraph.
Installed the corrected driver and the states were still messed up, hadn't had time yet to correct themselves. I went ahead and cleared the states again using the "device" driver and rebooting the hub, then "configure" on the updated driver. Looks good now,although I'm not seeing a power source state as of yet. I imagine that will show up sometime in the next few hours.
Decided to clear things out and re-install from HPM. Removed the 1.2.5 version I had installed via import.
Install from HPM says it's successful, but the driver doesn't appear in my Driver Code list, and while it's on the drop-down Driver list on the Device page, selecting it results in a 404. The HPM install seems to complete very quickly - maybe the package isn't actually getting installed?
Looking at the manifest it doesn't appear to have been properly constructed from the app. Give me a minute and I'll manually correct. Until then please use the github URL.
I think I'm only seeing temperatures being reported in Centigrade from the driver now. I tried changing the setting to C and back again to F to see if that would fix problem, but no luck so far.
Also something wrong with the temperature change increment as used in the HE dashboard. I tried adjusting thermostat setting and I get a "Nan" error. Doing it on all 3 of my T6 stats.
You changed eventProcess() to add logic for exceptions for temperature and humidity, and that logic has to run for all events. May I propose an alternate implementation that only changes the two eventProcess() calls for temperature and humidity and leaves eventProcess() untouched, something like this (I'm not a Groovy programmer; the syntax may be wrong):