[Release] Lennox iComfort Thermostat App and Driver

Do you have any plans on adding the ability of changing programs?

Thanks so much for you work on this!

I have it installed and it is working great for my main thermostat... but it does not identify the additional zones. Any advice on how to get the app to find the additional zones?

Thanks for this app and driver. Though I'm unable to get it to authenticate.

(links are not allowed so I changed "http" to "h.t.t.p" below)

errorgroovyx.net.http.HttpResponseException: Unauthorized on line 270 (prefListDevice)

You might have to enable OAuth on the application code.

Thanks. I enabled OAUTH with no additional settings. I then attempt to add the app again, enter my login creds, but the log still says unauthorized.

Are you sure your using the correct username and password?

Can you login with the mobile app?

I rechecked that my login is correct by going to the icomfort website. I still get the same error.

app:302020-02-17 07:12:23.872 pm debugapiParams: [uri:https://services.myicomfort.com, path:/DBAcessService.svc/ValidateUser, headers:[Authorization:Basic *****], query:[UserName:****, lang_nbr:1]]

Sorry.. not much to go on.

I think there are two different icomfort portals.

Does your app look like this?


Mine is the first one. Installed maybe 2 years ago. It is an S30.

Hmm, not sure

Ok.. thanks anyway though. I might try to test out my login using postman.

S30 won’t work. This project is based on copyninja’s project from the ST community and he mentions the S30 is a completely different API:

Ah. Ok thanks. Hopefully S30 integration will happen at some point.

Further checking.. it looks like there is no API to be found for the S30. bmenchaca has created a python web scraper though.

The post I quoted from ST was back in 2017 so not likely an integration will be created.

Like Dan2A, I'm getting the same Unauthorized on line 270 error for M30. Hopefully that will also be integrated as well.

1 Like

My vote as well, I have the S30 and would love for it to be a part of the Hubitat

1 Like

NOTE: This fix is only for the Wifi iComfort Thermostat. It does NOT make the app work for the S30

I know this thread is really old, but with other SmartThings users like me switching over to HE I thought I would share this since I could not find it anywhere else.

After installing the app and driver, when you open the app for the first time and authenticate you are presented with a list of thermostats that you can include. I have 2 thermostats, but only one would show in the list so I could not add both thermostats.

It looks like this is caused by a minor bug in the app code.

To easily fix it, in the app code look for this line and remove the "[" and the "]" around thermostatList at the end of the line where it is passed into options. I think it is or is around line 60.

So this line of code:
return dynamicPage(name: "prefListDevice", title: "Thermostats", install:true, uninstall:true) {
section("Select which thermostat/zones to use"){
input(name: "thermostat", type: "enum", required:false, multiple:true, options:[thermostatList])

Should be changed to:
return dynamicPage(name: "prefListDevice", title: "Thermostats", install:true, uninstall:true) {
section("Select which thermostat/zones to use"){
input(name: "thermostat", type: "enum", required:false, multiple:true, options:thermostatList)

Then all thermostats in the array can be selected in the app when you go through the options.

For anyone looking, I hope this helps. It is bad enough we are stuck with this crappy thermostat and SmartThings is now trash, so hopefully this helps make your migration a little better. Cheers!

2 Likes

Nice! Good catch. I too am able to see both zones now.

Anyone hear anymore about this? I have the E30.

It's still not allowing the authentication, so I'm considering IFTTT but I don't really know what to build. Here's my goal, if anyone would be kind enough to help:

I have a zooz 4 in 1 in my bedroom. I want to set a move (night mode) to have the temp reading off of that rather than the thermostat itself. Is that possible?

What does this mean? How do you apply it?