Honeywell T6 Zwave Thermostat

Would love support for this device. The Generic Zwave thermostat device handler has some issues with this thermostat. It is easily one of the best looking zwave thermostats around and not to expensive.TH6320ZW200363ff4ac1298f9781Large
There is a smartthings driver, but alas I am no computer programmer.


I don't have this thermostat, so I can't modify the code an test it.

However even with NO programmer experience you might be able to port it to Hubitat.

You should try:

  1. download the Smartthings code
    1a) On github press the "raw" button in the upper right.
    1b) Copy the code then paste it into Notepad or whatever you use for text
  2. with any text editor replace physicalgraph with hubitat
    When I tried it the change occured in 47 places.
  3. Copy this code into your hub drivers code section
  4. Save
  5. assign it to your thermostat and give it a go.

I can't give you exact numbers but this process works over 90% of the time.


Hi, First post in the forums.

I just picked up a Hubitat and the T6 Pro Z-Wave. Haven't added anything to the Hubitat yet, but planning to migrate everything that way once I get comfortable on the best overall Hub architecture plan and migration without having to do everything N-Times as I mess it up, and was thinking I might add the T6 Pro as one of he first devices on this system. I have 100+ devices on an ST hub that is working OK, but I'd like to move to all local processing. I had used Rule Machine in ST in it's original releases there a long time ago, then migrated to WC once Rule Machine development stopped for ST, but now would need to come full circle to get things working on Hubitat.

Anyway, I saw in another post from you back in April, where you indicated that you had gotten the T6 Pro to work with the native Thermostat Scheduler app:
Thermostat App and Or Device is Acting Odd

And from your original post here, it looks like you got the T6 Pro working with the Generic Zwave thermostat device handler (although it appears as if you might be having some issues).

If you did get this working reasonably well this way, I'm just wondering what you are hoping to improve by getting the T6 Pro Z-Wave supported natively?

Looks like @jtmpush18 is also hot on hoping for this development as well from the posts in this topic, and the vote requested in the link below, that I happily voted for:

So what got updated Bobby?

Also, have you tried the T6 Pro Z-Wave device handler from ST that you linked to? It looks like @Ryan780 did a quick and dirty port of that ST device handler to a basic Hubitat format in this post:

Odd log entries

Just trying to understand a little bit more about the T6 Pro device and its integration from those here with experience before I get in too deep, and mess up my new thermostat or Hub that is now working fine with a relatively high WAF as a regular programmable thermostat without connecting to Z-Wave yet. I also need to get a 2nd thermostat for the house, and am waiting just a bit to get comfortable with the first one and its Hub related capabilities before picking up the second...

For whatever its worth; I'm currently using (for about a year now) a Honeywell TH8320Z with the Hubitat Generic Z-Wave Driver. I've had only one issue (occurred only one time). The HE commanded change in temperature seemed to overflow the thermostat input causing the heating system to be set at 40 °F. I've since made a rule to "watch" for such a mis-setting oft the temperature. It has not happened again.
Keep in mind during this time period Hubitat went from firmware version "" to the now "V2.1.6.105" with many steps in between.

1 Like

I have what I think is a working version of the SmartThings driver. You can see if it works for you. GitHub - beckrd/hubitat-honeywell_lyric_t6_z-wave: Hubitat Driver for Honeywell Lyric T6 Pro Z-wave

I have a bug in the code from the original.

I get the following error:

error groovy.lang.MissingMethodException: No signature of method: user_driver_prjct92eh2_Honeywell_T6_Pro_353.convertTemperatureIfNeeded() is applicable for argument types: (java.math.BigDecimal, java.lang.String) values: [76.0, F] on line 702 (parse)

Anyone familiar with this sort of error?

The offending line is

def scaledTemp = convertTemperatureIfNeeded(temp.toBigDecimal(), scale).toDouble()

I have been using this thermostat for around 8 months, since I first purchased my hub. It was by far the most difficult device to integrate into HE (my Schlage zigbee door lock coming in second place). It is now working fairly reliably, but from HE I cannot set the temperature in non-integer values (Both from Thermostat Scheduler and the Device Page). If I try, the thermostat will set the temperature to the lowest set-point it allows (4 degrees Celsius). The interesting thing about this problem is it does not exist if both the thermostat and the hub are set to Fahrenheit. Only when both the hub and thermostat are set to Celsius does this become a problem. I cannot set my thermostat to 21.5 degrees for example.

Note: I can set the thermostat in half degree increments from the thermostat screen itself, so it is a capability of the thermostat, just not a capability with the thermostat's integration with HE.

I also have lots of zwave plus repeaters in close proximity to the thermostat, so strength of mesh is not a concern. Having said this, there are still times (rarely) where the thermostat doesn't update the setpoint. For example when my home goes into "Away" mode the thermostat heating setpoint is decreased by 3 degrees, this sometimes happens as soon as my system goes into away mode (within a minute), at other times it takes longer.

Driver I am using = Generic Zwave Thermostat

I have tried the various ports from ST, if I ever hear of one not having problems I will try it again. Considering how few zwave thermostats are on the market, and considering this is one from a big manufacturer (Honeywell), I am surprised HE does not have a native driver for it.

I just switched to the Generic Z-Wave Thermostat, and it seems to be working. :grinning:

I'm not doing any more work on the driver.

Hopefully, I'll get my Schlage Z-wave lock to work, It's not installed yet.

Besides those few strange items with the Generic Z-Wave Thermostat dealing with half degrees C, and an occasional set-point miss/delay, is there any capability that is missing that you think (or know) it should have that is available on ST with the ST driver vs what the Generic Z-Wave Thermostat offers on Hubitat?

Nope. There is not much to a device driver, either you can communicate with the device or your can't (I have around 100 devices on my HE, and this is the only one that has some issues, not even sure it has anything to do with HE, although I believe another user confirmed the Celsius problem).

I have never used ST so I have no idea about that platform. But the difference between ST and HE is not found in the device drivers. I am no coder, but many ST device drivers are virtually identical to HE device drivers with some very simple changes.

The real difference is in the apps that control all the devices. HE has a built in app called Thermostat Scheduler and all of the Thermostat's settings along with the Thermostat scheduler are available in Rule Machine. I feel that HE allows me to do anything I want with my thermostat, but this is more through the HE app called "Thermostat Scheduler" and "Rule Machine", as opposed to through the device driver. So far my thermostat automations include:

  1. Changing the Heating and Cooling Set Points based on Mode. (My modes are: Morning, Day, Evening, Night, and Away)
  2. Immediately shut-off the furnace/air conditioner/furnace fan, as soon as a smoke/CO alarm goes off.
  3. Changing heating set-points based on outdoor temperature. ( I live in Canada, so when it hits -40, I want my heating set-points to be a little higher regardless of mode).
  4. Send an alert to my phone if the temperature in the house ever falls below a certain threshold (good when your away on winter vacation down south and the temperature back home is -30, if your furnace goes down, you come home to a house with a lot of broken water pipes).

Again, I have no idea what you can or can't do in ST, but I couldn't imagine that ST could do something with the Thermostat the HE can't. Everything I ever wanted to do with my thermostat was fairly straightforward on HE. I did have some difficulty with writing the logic in rule machine for adjusting Set-point based on outdoor temperature, but in the end it took a matter of a few hours for another member (thanks @napalmcsr) on this forum to walk me through it.


Ok thanks for the info. Helpful.

I was also thinking of doing something like your number 3, as the temperature at the thermostat isn't always the best way to set the temperature in the house overall, and the amount of setpoint differential needed to get the house where I want it depends on the delta of the temperature outside compared to the desired temperature inside (the colder the temp is outside, the likely higher the setpoint needs to be and vice/versa). Was also planning to do some alerts like your number 4.

Honeywell send me one of these for functional verification.
Can someone clue me in on what isn't working or is missing with the generic driver?
This might save me a little time when I start working on this device.

Thanks for the confirmation the T6 Zwave integrates well with the HE device driver. I just ordered two from eBay, will be implementing similar rules.

With the Thermostat set to Celsius and HE set to Celsius, I cannot change the set-point to half degree (i.e. 20.5 degrees, 21.5 degrees, etc...). If you try to set this temperature from the device page the thermostat will quickly set itself to 4.5 degrees. On the following screen shot I have inputted "22.5" into the "Set Heating Setpoint" command box and about 1 second later the device page shows this:

Notice the heatingSetpoint is now 4.5 degrees (honeywell documentation states that 4.5 degrees is the lowest setpoint the thermostat can have).

This behavior does not happen if both the thermostat and HE are set to Fahrenheit. The other odd behavior, is that I am able to set the thermostat in half degree increments on the thermostat and it is then reported correctly in the device page. Here is a screen shot after I set the temperature to 22.5 degrees at the thermostat.

Since one degree Celsius is almost two degrees Fahrenheit, it would be nice to have half degree resolution to use in thermostat scheduler. This problem also makes the thermostat tile on dashboard simply a display device and not a place where you want to try to adjust, when you try to adjust on a dashboard tile, it increases/decreases the setpoint temp in half degree implements, if you stop on a half degree, the tstat will go to 4.5.

In the past, I did not realize it was the half degree setpoints that were causing the problem so at times I thought the Tstat was working fine in Celsius. Eventually I realized the problem was the half-degree setpoints that would set the tstat to 4.5 degrees. Here is a link to an older post where I wrongly believed it was working fine in Celsius and was pointing out some odd behavior in the Thermostat Scheduler app: Thermostat Scheduler won't operate properly in Celsius

Thank-you so much for looking at this problem, it is very much appreciated.

1 Like

Based on comments above about fractional degrees, maybe the thermostat’s “Advanced Z-Wave Temperature Reporting” could be the issue? Screenshot from page 10 of the Professional Install Guide:

I installed two of these about a week ago. Good quality hardware, easy to install and configure for my A/C-furnace and A/C-heat pump systems. I configured one of them (Downstairs) for "Advanced Z-Wave Temperature Reporting" - 0.5 deg F resolution reporting - and the other thermostat (Upstairs) I left configured in the default 1 deg F resolution reporting.

The Upstairs thermostat and Generic Z-Wave Thermostat device driver have been working fine; all events and commands with the Hubitat generic driver work perfectly. However, the Downstairs thermostat is occasionally sending a temperature that is bogus. Here's a screenshot depicting the erroneous reporting:

And here's the debug log around that same time (device 1880):

I have changed the Downstairs T6 Pro device configuration back to the "Standard" temperature reporting resolution - 1 deg F - and still I get these occasional bogus temperature values. Next I will try a zwave exclude, T6 factory reset, and zwave include to see if the thermostat/device driver then behaves correctly, as the Upstairs one does.

From the logs, the reported temperature of 720 deg preceded by a reported 72 deg would indicate some kind of scaling anomaly.

@mike.maxwell, hoping you can shed some light on this one.

From the manual: "The default temperature reporting resolution is 1 °F or 0.5 °C. When configured to ADVANCED, the temperature reporting resolution will be 0.5 °F or 0.25 °C. To change default temperature reporting to a higher resolution, go to thermostat MENU/Z-WAVE

Regardless of the above settings, the problem I described above still exists.

1 Like

@mike.maxwell, I've had two in place for several days now. Here are some log snippets from both. Some problems with zwave command parsing, and sometimes the same message logs many times in a short time interval.

Also still seeing the occasional bogus temperature (e.g., 720 deg F, ...) in the logs and in the device event history.