[Resurrected] Advanced Honeywell T6 Pro Z-Wave Thermostat Driver

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.

1 Like

That's my bad, I missed a change in a copy/paste - please pull down 1.2.7 which should fix that.

1 Like

Ah. I used HPM and it showed there so I thought it was active.
I'll look at the Github version. Thanks

HPM should reflect 1.2.7 now also.

Thanks for the quick work.

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.


1 Like

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?

HPM thinks it's installed:

Not in Drivers Code:
image

Just me? (As it usually is...) :wink:

I installed from URL and it worked.

https://raw.githubusercontent.com/thebearmay/hubitat/main/bcopeland/Advanced-Honeywell-T6-Pro-Thermostat.groovy

Yeah, that worked fine previously for me as well. Just wanted it set up via HPM so I'd get auto updates.

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.

Edit: HPM should be fixed now.

1 Like

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.

Never mind, temperature units problem finally resolved itself. Took a little longer than expected.

But "power source" state finally showed up at the same time...and it's messed up again.

1 Like

Yup yup yup! :smiley:

image

1 Like

There is a parse error in the 1.2.7 code:

12:48:49.930 debug parse:zw device: 0C, command: 7006, payload: 28 01 01 , isMulticast: false
12:48:49.627 error groovy.lang.GroovyRuntimeException: Ambiguous method overloading for method java.lang.Long#minus.
Cannot resolve which method to invoke for [null] due to overlapping prototypes between:
[class java.lang.Character]
[class java.lang.Number] on line 313 (method parse)
12:48:49.531 debug parse:zw device: 0C, command: 7006, payload: 27 01 05 , isMulticast: false

Ok. Now that HPM is fixed I'm trying it again.
Dashboard displays a bit wonky on 1/2 degrees changes

image
image

Try changing line 312 to:

    if(forceTimeSync != null && preActivity ! null && forceTimeSync > 0){

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):

eventProcess(name: "temperature", isStateChange: (sendAllTemps ? true : false), ...
eventProcess(name: "humidity", isStateChange: (sendAllTemps ? true : false), ...
1 Like

Looks like we're getting a null value, let me see if I can track it down.

1 Like

fun...fun...fun. Bet you didn't think you were signing up for all this. :smiley:

1 Like

Kind of knew it was going to get interesting, but also wanted to force myself to dig into zwave drivers some more so...

2 Likes