Trane Thermostat "Cool" setting not working

1 issue down, 1 to go. So, I have my Trane Zwave thermostat and it paired and shows current temperature. I can set the heat level but cannot set the cool level. I can even move the slider colder and hotter but when I stop pressing the slider, it goes to 3degrees and then resets to the default (what I had the thermostat at when I paired it) 75 degrees. Any thoughts?
Thank you all in advance!

What model number Trane are you using?

Hmmmm, cant think of anything that would help, maybe redo the setup, remove device and add it back?

I had this exact problem and was able to fix it by cloning the SmartThings Z-Wave Thermostat device type and making 2 modifications:

Line 337 I changed:

setHeatingSetpoint(degrees, 1000)

to

setHeatingSetpoint(degrees, 100)

Line 367 I changed:

setCoolingSetpoint(degrees, 1000)

to

setCoolingSetpoint(degrees, 100)

Where do I go to begin that editing of code?

I am having the same problem with this thermostat, but mine is with both heating and cool temps. It used to work in v1 of the hub and the old app. When I change the temp in heat/cool it goes to 2 degrees then back to the default. I tried changing the code you suggested above to 100 for both heat and cool and its still doing the same thing. I also excluded the thermo and then did a factory reset of it. Any suggestions? Ryan- By the way I think the way you do is go into developer account, my device types, add new device, choose from template, pick zwave thermostat then create. After that you can modify those 2 lines of code that Eric has above.

That is strange that changing the code didn’t work for you. I had the exact same issue and the updated code fixed it. Did you ever figure it out?

Im having the same issue. Trying to go in and copy the device type so I can make changes but getting this error when I try to add the new device handler. Its just a direct copy from the Z-wave Thermostat code. Any idea?

Groovy.lang.MissingMethodException: No signature of method: script14548189771431958116485.attribute() is applicable for argument types: (java.lang.String) values: [thermostatFanState] Possible solutions: attribute(java.util.Map), attribute(java.lang.String, java.lang.String), attribute(java.lang.String, java.lang.String, java.util.List), tileAttribute(java.lang.String), attributeState(java.lang.String)

Got a tad further - realized that the template code was missing some important metadata, so I got that going. Now I have a device type started with the template code and made changes, but when I try to save it I get:

groovy.lang.MissingMethodException: No signature of method: script1454819960391254543226.attribute() is applicable for argument types: (java.lang.String) values: [thermostatFanState]
Possible solutions: attribute(java.util.Map), attribute(java.lang.String, java.lang.String), attribute(java.lang.String, java.lang.String, java.util.List), tileAttribute(java.lang.String), attributeState(java.lang.String) @ line 27

It doesnt like the “thermostatFanState” attribute for some reason.

Figured it out. thermostatFanState needs a , “string” declaration after it. Strange as this is missing from the template code.

@jason3fc, are you modifying the ST default device type? Sounds like there’s something else missing perhaps.

You can try my modified device handler if you wish:

https://raw.githubusercontent.com/constjs/SmartThings-Devices/master/thermostat.device.groovy

Thanks for the help, yeah see my last post. thermostatFanState needs , “string” after it. Works now.

1 Like