Stelpro STZW402WB+ line voltage (baseboard) thermostat??

Just saw this little beastie which will make life easier for me. 220v (and 110) line voltage z-wave thermostat. I see from past postings the company Stelpro has been mentioned. On the bottom of their documentation it says compatible with SmartThings, Leviton, Vera.

Anyone try this out on UI7 yet? Yeah its a very plain and simple thermostat, just don’t feel like buying it, hooking it up and only find out that things aren’t perfect z-wave wise.

I have it working fine with Vera 3 / UI7. Nothing special required to make it work. There are some ‘advanced’ features like displaying an outside temp on the panel that don’t do anything since it’s not supported, but from the perspective of being a fully functional thermostat, it does the job nicely.

I am thinking about buying this thermostat, and I liked the advertised feature which displays the outside temperature. You mention it’s not supported, how exactly it’s working / not working? Does it display the outside temperature or not? I have an outside multi-sensor in my z-wave network which reports outside temperature, will I be able to set up the thermostat so it displays the outside temperature from that sensor?

It does not display the outside temperature right now. To enable that particular function would require device support from Vera. Outside of that feature, everything still works as expected as a generic thermostat.

The documentation from the company is vague on how the external temperature is used. Here is what I pulled from their user docs:

When connected to a Z-Wave network, the thermostat may display the outdoor temperature provided by an external sensor. When available, the outdoor temperature is displayed instead of the set point, providing that the outdoor temperature display setting is set to on. If no temperature is received within a 4 hours time frame, the outdoor temperature will disappear and the set point will be displayed. In order to display the outdoor temperature, an external sensor needs to be part of the Z-Wave network. It may be a physical sensor or a weather station app. Refer to your Z-Wave hub controller instructions manual to find how to associate both devices. On some Z-Wave hub controllers, an app may be used to provide the outdoor temperature.

Probably just someone needs to get a hold of some more technical info on the device and put together a plug in. I am sure it wouldn’t take a lot of effort with the right docs and someone that knows what they are doing.

Hi everyone…i am new to this forum and by profession i am a hardware design engineer. As i do not have much experience with this thermostat so i would like to go with that Nothing special required to make it work. There are some ‘advanced’ features like displaying an outside temp on the panel that don’t do anything since it’s not supported, but from the perspective of being a fully functional thermostat, it does the job nicely.

printed circuit board manufacturing

Found this post if someone can make sense of this

The outside temperature seems to be supported in the new Vera firmware, but I have not figured out all the details to make it work properly. I updated my Vera Plus UI7 to the latest 1.7.2044 firmware and installed five Stelpro thermostats in five separate rooms in my house. During the installation, Vera Plus created a new device called “Virtual Outdoor Temperature Sensor”, which displayed temperature from some kind of internal Vera app, not from an actual outdoor Z-Wave sensor that I also have in the network. Four out of five of my Stelpro thermostats displayed the external temperature from that virtual sensor, while one thermostat only displayed a set point.

Now, in about an hour, the temperature reported by the new virtual sensor device changed, and two of the thermostats displayed the new external temperature, while the other two did not update.

Then next morning, only two of the thermostats displayed the external temperature from the virtual sensor, while the other three only displayed the set point.

So I don’t know if I configured something wrong, or I just have to wait for a couple of automatic overnight network heals, or whatever, but as of now, the thermostats are not consistently displaying external temperature. This on and off functionality is useless, so if it continues, I will just delete that virtual sensor and hope the thermostats consistently display the set point. But I hope I can figure it out and make all five thermostats consistently display the external temperature. It just can’t be on and off, this is confusing.

Also, any ideas how to make the thermostats display an external temperature from an actual Z-Wave outdoor sensor, instead of the virtual sensor?

Hi everyone,

Since July 13th, the Stelpro Ki Thermostat (STZW402+) is officialy supported by the Vera platform.

The outdoor temperature displayed by the thermostat comes from the Vera “Virtual Outdoor Sensor” which is the same that appears on top of the UI7 interface.
So all you need to do is to enter your zipcode in the Vera’s settings

The outdoor temperature is then sent from the Vera hub.

On the thermostat side, the outdoor temperature is displayed as soon as it’s received.
If for some reason the thermsotat does not receive a temperature update within 4 hours, the outdoor temperature is declared invalid and it is not shown anymore until a new outdoor temperature is received.

So far, on the Vera hub, there is no way to have the temperature being displayed from an external Z-Wave outdoor sensor. You have to use the virtual sensor.

If your temperature goes on and off, it means that the outdoor temperature is not refreshed before the 4 hours elapse time.

I’m also having the external temperature issue.
I bought 2, installed and was perfect. Now I bought more 4 and only 1 of the news is showing the external temp. Any ideas? I don’t even know who to contact. The manufacturer of Vera support.

Anyone know how to display the outside temperature with the UI5?

I believe there is a way to send the outside temperature to the thermostat using Lua code. If you look at the L_VirtualOutdoorTemperature.lua file you will see how it is programmed with the virtual sensor. Using the same logic it should be possible to create Lua code in a scene. I’ll look into that.

local function SetThermostatOutdoorTemperature (temp, tempFormat) local data = "0x31 0x05 0x01 0x" temp = temp.gsub(temp, "%.", "") local tempHex local first, second local tempSignBit = (string.lower(tempFormat) == "c") and "22" or "2A" tempHex = string.format('%4X', temp) if tonumber(temp) < 0 then first = tempHex:sub(5,6) second = tempHex:sub(7) else tempHex = tempHex.gsub(tempHex, "%s", "0") first = tempHex:sub(1,2) second = tempHex:sub(3,4) end data = data .. tempSignBit .." 0x".. first .." 0x".. second for _, devNum in pairs(g_thermostats) do local node = luup.attr_get("altid", devNum) or "" if node == "" then log("VOTS::SetThermostatOutdoorTemperature> Failed to get altid for device ".. devNum, 1) else log("VOTS::SetThermostatOutdoorTemperature> Sending data ".. data .." to device " .. devNum .. ", node " .. node) luup.call_action(SID.ZWN, "SendData", { Node=node, Data=data }, 1) end end end

I was able to make it work successfully. Here is my code, which I adapted using a part of the code found in L_VirtualOutdoorTemperature.lua:

local temp = luup.variable_get("urn:upnp-org:serviceId:TemperatureSensor1","CurrentTemperature", 128) local tempFormat = "C" local data = "0x31 0x05 0x01 0x" temp = temp.gsub(temp, "%.", "") local tempHex local first, second local tempSignBit = (string.lower(tempFormat) == "c") and "22" or "2A" tempHex = string.format('%4X', temp) if tonumber(temp) < 0 then first = tempHex:sub(5,6) second = tempHex:sub(7) else tempHex = tempHex.gsub(tempHex, "%s", "0") first = tempHex:sub(1,2) second = tempHex:sub(3,4) end data = data .. tempSignBit .." 0x".. first .." 0x".. second luup.call_action("urn:micasaverde-com:serviceId:ZWaveNetwork1", "SendData", { Node="27", Data=data }, 1) luup.call_action("urn:micasaverde-com:serviceId:ZWaveNetwork1", "SendData", { Node="28", Data=data }, 1) luup.call_action("urn:micasaverde-com:serviceId:ZWaveNetwork1", "SendData", { Node="29", Data=data }, 1) luup.call_action("urn:micasaverde-com:serviceId:ZWaveNetwork1", "SendData", { Node="30", Data=data }, 1) luup.call_action("urn:micasaverde-com:serviceId:ZWaveNetwork1", "SendData", { Node="31", Data=data }, 1)

My temp is in C, and I have 5 thermostats. PM me if you need help adapting this code to your situation, but I think it’s pretty straightforward.

Then I created a scene that runs every 30 minutes and executes that code. All 5 thermostats now display correct outdoor temperature from my backyard sensor.

[quote=“tarcizo, post:10, topic:192377”]I’m also having the external temperature issue.
I bought 2, installed and was perfect. Now I bought more 4 and only 1 of the news is showing the external temp. Any ideas? I don’t even know who to contact. The manufacturer of Vera support.[/quote]

There was a bug in the plugin when dealing with more than one thermostat. I fixed it a created a new version: 1.3.
It is set to auto-update, so in less than 24 hours you will have the new version.