[Release] Nexia Thermostat Manager (XL850 and XL824)

This is the port of the ST Nexia Thermostat Manager with the added capability of using the American Standard login. It has been tested with XL850 and the XL824 thermostats, but may also support other devices. The solution requires the app:
https://raw.githubusercontent.com/thebearmay/hubitat/main/STPorts/nexiaThermMgr.groovy
and the driver:
https://raw.githubusercontent.com/thebearmay/hubitat/main/STPorts/nexiaThermostat.groovy
These can be imported manually or via HPM.

Related thread:

2 Likes

Thank you! The hold state seems to be working. It even grabs the name of the current scheduled slot (ie sleeping, evening, etc) when you have the thermostat set to follow a schedule.

1 Like

v1.0.3 adds an option to use the American Standard login

You sir are a gentleman and a scholar. When I had this unit put in, I was very disappointed that it would not act as a controllable device. I even reached out to Trane and ask if there was a controller that can still use their proprietary communicating wiring but act as a controllable zwave device- “talk to the local vendor” and when pushed “we don’t have a technical dept that customers can interact with.” And of course the local vendor knows how to install and wire, the smart stuff? Not so much.

Frustrating that it all goes through the clouds, but at least I can build automations now! Thank you!

1 Like

I have a Trane variable speed system and did not know it would lock me into a specific thermostat because of Trane's proprietary communication protocol. I probably would have went with something else because I really hate the XL850. I think the heat the board generates interferes with the thermostat. So I can set it to 76 and the AC runs and runs and runs and the temperature continues to drop and the thermostat will actually start reporting higher temps. It might go up to 77, which means the AC continues to run. The actual air temperature will drop by quite a bit before the thermostat finally registers a drop in temperature and turns off.

Thanks to this driver I am setting up some temperature sensors and am going to basically override the thermostat. I'll leave a local schedule set as a backup in case the cloud link is down or something.

2 Likes

It does interfere. I had to buy an external Z-wave temp sensor and make it the primary sensor. As far as I know, there is no effective way to prevent the thing from overrunning the set temp while it's using the internal Sensor.

I had mine replaced, and then my HVAC company consulted with a regional Trane/American Standard tech, and he told us to use the external sensor.

To get to that point though, took me several months, and a calibrated thermometer.

Frustrating to be sure.

At the end of the day the System is great, but the thermostat is a Steaming POS.

S

I'm trying to extend some rules in rule machine interacting with the thermostat.

I can set the thermostat mode by calling custom commands - even though I expected to be able to leverage the more native "Set thermostat mode" action that drives a drop down. The drop down here is empty though.

Additionally, my new challenge is creating a conditional for what mode the device is in - and there's no command available for getThermostatMode. And I can probably add that in based on my (very, very basic) hubitat development skills..

I'm trying to sharpen those skills a bit more. I'm trying to understand what's missing in this driver so that the native mode values aren't populating or useable.

Any pointers?

(I hate being a leech: Can you fix this for me?)

You probably can't set the modes via the built in set mode because of this change made quite a while back. I have this problem with my water heater too.

Most likely, if you follow those steps you'll get the missing modes, but I think the driver will still need to know what to do with it. I think @thebearmay would need to update it.

I'm trying to get a Thermostat Controller setup and it seems to be missing thermostat mode off and fan mode circulate, but it's confusing because it creates a virtual thermostat and I don't know how to pinpoint where exactly the issue is.

The virtual thermostat created by Thermostat Controller has state variables for the modes.

image

The actual thermostat device does not. It seems to only have the current modes.

image

@thebearmay This doesn't seem to work with Thermostat Controller at all. When you set it up with TC, it creates a virtual thermostat to control the actual thermostat. When I use the virtual thermostat to try and change anything, none of the changes are reflected on the actual thermostat. I have debug logging turned on for the Nexia device and it is not even sending a command to the thermostat.

From the device page for the Nexia thermostat, I tested every command and they all work. So my suspicion is that the virtual thermostat is expecting a function of a specific name or something like that. I'm hoping it will be an easy fix if you wouldn't mind looking at it. I can provide logs, but I'm not sure how helpful it will be. The virtual thermostat will say "setThermostatMode(auto)" and there will be nothing in the logs for the Nexia, even with debug logging on.

I tried what @bravenel said in this post. This actually fixed setting the fan modes via the virtual thermostat, but nothing else still works. I cannot change the thermostat mode, make changes to the setpoints, etc.

@thebearmay < Is the dual stage cooling or heating mode exposed? I know that it is clearly logged in the Trane Home App for the history. But, is it possible to note the actual stage via the app? I'm looking for this info for creating a graph similar to what a ecobee creates.

I don’t remember it being available but I’ll look at it.

I just wanted to thank you for this integration. It works very well so far. With the HomeKit integration on top, this is especially cool.

1 Like

Hi all, I just tried to put my XL850 online ... but I am getting no "Current States" from the device. Any help on what I have missed out would be appreciated. Here is what I have done:

I edited this post to remove erroneous information. The answers (shown below) to my initial question indicated that I was going in the wrong direction ... I should "not connect the XL85" using Z-Wave" and I needed to an app and a Virtual thermostat instead.

It looks like you added it through the built in zwave. That does not expose anything to Hubitat and it cannot be controlled through zwave. The thermostat can act as it's own hub and when joined to Hubitat simply acts as a repeater. A poor one.

You have to connect to the cloud to control it.

Oh ... OK ... Thanks. That's great information ... I'll research how I might do that.

Is there a "link" to an article that anyone can send me to so I could learn to do that? Assume that I am not far off a newbie ... I don't believe that I have connected anything on my Hubitat to the cloud as yet..

You can either use HPM to install the app and driver or import them manually. Then use the Create User App function on the apps tab to instantiate the app; the app will allow you link to the Nexia cloud and create a thermostat device in HE.

thebearmay ... thanks. That wasn't the direction that I was going in ... so I appreciate the post.

So I have a an app instantiated now ... and I entered the login credentials (which I tested in the cloud).

I edited this post to delete erroneous details ...

The Virtual Thermostat is created by the previously installed driver. See Devices, "Nexia Thermostat ..."

I created my own virtual thermometer device and it did not connect to the cloud. I didn't need to do that!

So understanding that I am barely off of newbie ... can I get help on the "final connection" please?

App should be creating its own virtual device using the driver code based onwhat it receives from the cloud. If you go to the settings (cogwheel) on the app down near the bottom should be a list of child devices.

thebearmay ... Thanks again ... Success!!! :confetti_ball: :confetti_ball: Finally!!! I have current states that reflect reality.

So I just didn't "go down a rabbit hole" ... I feel that I am now officially a "Zambian mole rat" ... which digs some of the longest tunnels in nature, ... that can stretch for 2.8 kilometers.

I certainly learned a lot ... :grin:

1 Like

I was trying to check if my Thermostat is in Heat mode. I started to create a condition and select the Thermostat, but the Thermostat mode pulldown selection is not available and the dialog locks up (unrecoverable).

The Current States section of the Nexia Thermostat device page.

image

Bravenel suggested that that thermostat's driver is not right. It is missing the attribute supportedThermostatModes. This attribute is what tells RM what modes are available for the thermostat.

I believe that I am using the most up to date Nexia App/Driver:
Nexia Thermostat Manager App: 2022-10-07 thebearmay Option to use American Standard Login
Nexia Thermostat driver: 2022-10-04 thebearmay Add permanent hold and return to schedule

Is adding supportedThermostatModes to the app/driver an option or does the Thermostat not support this? OR … am I not on the updated software (if not, may I have a link)? OR I am missing something?