Stelpro releases the first Z-Wave Plus Line-Voltage thermostat: the STZW402+ Stelpro Ki Thermostat

I had the same issue and here are the steps I used to get it working…mostly.
1: Exclude the Thermostat via the SmartThings app
2: Disable the Z-Wave at the Thermostat
3: Make you lave the latest Device Handler for the Thermostat. if not delete the old one and add the new handler to your Smarthings Hub.
4: Reboot the Smartthings Hub
5: Pair the Thermostat again

At this point everything is working even with Alexa with minor discrepancies which I will post next.

I’m have the same issues when I ask Alexa to increase the temperature or give it a temperature set point. The Good news the thermostat is getting the correct Heat Set Point but Alexa is reporting the Thermostat Set Point.

If I go and change the Heating Set Point manually on the thermostat’s, ST API reports the Thermostat Set Point I manually inputted and Alexa as well.

The annoying thing at the point regardless of what you ask Alexa to change the temperature to. Alexa will always respond to what was manually inputted on the Thermostat. So at this point its just an annoyance since everything is working. Hope this info helps.

I concur with Scott thanks for the work being put into the Device Handler for this thermostat.

I was experiencing the exact same issue. As a few people mentioned further up in the thread, Alexa is pulling the “thermostatSetpoint” attribute from the thermostat ST device. The Stelpro device handler is actually written to update both the “thermostatSetpoint” and the “heatingSetpoint” attributes when it receives a set point report from the thermostat via z-wave (see the parse implementation).

I observed these attribute values going out of sync with each other, despite the parse code linked above trying to keep them in sync. This happens when you change the set point using the ST app or Alexa, which both result in a call to “setHeatingSetpoint”. The setHeatingSetpoint function tries to short-circuit the device update by immediately sending an event to update the “heatingSetpoint” attribute. It appears that this causes the attributes to become out of sync, which then causes Alexa to respond with an out-of-date value.

I tested a quick change to setHeatingSetpoint which adds a sendEvent call for the “thermostatSetpoint” as well, and this seems to resolve the issue with Alexa. I now get the correct value back when changing the set point through Alexa, and also see updates in the Alexa app after making changes in the ST app. I created a fork to illustrate the change, find it here.

Hope that helps, I’m still new to Groovy/ST so hopefully I’m not missing something obvious.

There appears to be another issue. I was curious why the code in the parse function wasn’t updating the second attribute correctly, so I took another look. The parse function is written to only update the second attribute when “isStateChange” is true on the original z-wave event (for heatingSetpoint"). The zwaveEvent overload for “ThermostatSetpointReport” (which is the type the Stelpro reports with) never seems to set the isStateChange flag at all. This means the parse function always skips updating the second attribute.

I’m not really sure why this flag needs to be checked. Removing “isStateChange” from that conditional causes the parse function to update the second attribute any time it updates the first.


Hi, I’m really new to ST. I just bought the STW402+ and it won’t pair with my ST. Any help you could offer would be appreciated. I am a complete newbie…


I added this DH and it’s now working again! Thanks buckeye!

Hello everyone, I have replaced my two Aube TH106-U 240V/4000W by two STZW402+ and love them!! But now I need to replace a third thermostat which is a AUBE TH140A-28 (low voltage, low power) driving a Stelpro RE253T (low voltage electronic relay) driving the 240V/5000W baseboards. Keeping in the spirit of the functionnalities offered by the STZW402+, I would appreciate suggestions.

How does the Outdoor Temperature work with the newest device handler?

I do not have any sensor on my network but I did install the AccuWeather App and set it up for my zip code. I also put my zip-code into the device settings. The thermostat only seems to update the outdoor temperature when a change is made.

Is this normal or did I miss part of the setup?

@calash, I don’t know. I also recently setup AccuWeather and noticed the same thing. Before I was using the Weather Virtual Tile and that seemed to work no problem. I haven’t switched back though, so I can’t say where the issue lies, either the weather source or the new DH.

I switched over but I am still having the same issue. Unless I send a set point change via the app it never checks the outdoor temperature.

Not critical, but it would be nice if it worked.

@calash, same behavior here. I checked and updated my DH and then looked at the 3 I have currently and they were all different for exterior temp.

Hi so I am new to this, what do i do when I click on the link thanks

Hi Alan,

Here is a step-by-step procedure to ensure a smooth integration.

  1. Go to the following link:

  2. Select all the text (CTRL+A)

  3. Copy the selected text (CTRL+C)

  4. Go to the following address:

  5. Click on Log in

  6. Enter the e-mail address used for your SmartThings account and click on “Next”

  7. Enter your password and click on “Sign in”

  8. Click on “My Device Handlers”

  9. Click on “+ Create New Device Handler”

  10. Click on the “From Code” tab

  11. Click in the blank space and paste the copied text in it (CTRL+V), you should see the copied text from the github page. If not, start over again.

  12. Click on “Create”

  13. Click on “Save”

  14. Click on “Publish” and then click on “For Me”

  15. Click on “My Device Handlers”

  16. You should see a device handler named “Stelpro Ki Thermostat”, in that case, the device handler was properly created. If not, start over again.

  17. Once the device handler is created, all new Stelpro Ki Z-Wave thermostat will be recognized properly.

  18. If you already connected some Stelpro Ki Thermostat to your account prior to this procedure, you may need to update the device handler for these ones. In that case, follow the following steps. Otherwise, you are good to go.

  19. Click on “My Devices”

  20. Click on the device that was already connected (Might show up as a “Thing”)

  21. Click on Edit at the bottom of the page

  22. Change the “Type” field for “Stelpro Ki Thermostat” located at the very end of the drop down list

  23. Click on “Update”

  24. All your thermostats should now be displayed properly in the SmartThings app.

Here are some general tips to ensure proper connectivity:

Make sure your SmartThings Hub is in inclusion mode
Make sure your Stelpro thermostat is within range of the SmartThings hub and powered on
Make sure you have created the device handler with the Stelpro code as described above.
On your thermostat, in menu #1, select the “On” setting to include your thermostat to the network

Have a good day!

Hi @calash,

Going through the ST documentation, the conclusion is ST itself is suppose to call the poll command every 5 minutes or so. The outdoor temperature is then supposed to be updated each 5 minutes. That being said, ST showed difficulty to make an update every 5 minutes and in some case it may take up to some days (yeah that’s bad).

An update on the thermostat or on the application trigger the poll command. A change in the temperature of the room is considered a change made on the thermostat.

Can you tell me if you still have the problem? I’ll continue to investigate the problem.

Have a good day

1 Like

You pretty much described my current issues. Outdoor temperature updates when a change is made, or at what seems to be random times. I got about a 50% success rate of it having the outdoor temp when I wake up in the morning.

However…in the Smarthings app I can check the activity under “Recently” and it does show a lot of automatic checking, with accurate temperatures. Right now I am seeing events spaced 6-8 minutes apart.

Can you make sure you have a Z-Wave Ki Thermostat and not a ZigBee Ki Thermostat? The problem you describe looks more like a problem spoted on the ZigBee Ki Thermostat.

1 Like

100% sure it is Z-Wave. Even checked the SmartThings IDE and it has a Z-Wave ID in the Device Network ID.

Dumb question:

Is there an actual efficiency difference when changing to eco mode? For example, if I have eco mode set at 17C, is there a difference in the amount of energy used vs just setting the heating setpoint to 17C in comfort mode?

Thank you

Hi @texasnick,

No, there is efficiency difference. 17C is 17C, no matter the mode.
The intent was to have a quick way to easily change the setpoint between a comfort setting and an economy setting.

It also enables a hub to set the whole house to ECO and each thermostats will react to the mode according to its own ECO setpoint. So, a single command can switch the whole house from a comfort focus to an economy one.

Thank you!

Hi all,

Stelpro made an update for the Z-Wave Ki Thermostat (STZW402) device handler.

Please note that the SmartApp to retrieve the outdoor temperature has been updated as well.

1 Like