Thermostats & Locks

Apologies for the stupid question. This blog post suggests that there is native Webthing support for certain thermostats and smart locks. I assume these would be added as devices, but how? I don’t see anything in Things / Add or Settings / Addons.

What device are you trying to add, and what do you mean by “native Webthing support”?

A list of hardware known to work can be found here. If you have a Zigbee thermostat you would need to make sure the Zigbee add-on is installed before clicking the “+” button on the Things screen to pair it. A Z-Wave thermostat would require the Z-Wave add-on, and so on.

The term “native web thing” is usually used here to mean a device which directly exposes a Thing Description itself, which is unlikely to be the case unless you built the thermostat yourself?

I did say it was a dumb question. :slight_smile: Of course I would need to activate the Zwave or ZigBee adapter first. Have those on order and should be able to work on that later this week. Will try to be more accurate on language in the future!

I should have clarified there are no stupid questions :wink:

That’s not your fault, it’s just jargon. (That I made up, actually…)

1 Like

OK - documenting my adventures in adding a Kwikset door lock, just in case some future schlub needs help.

Received Aeotec Z-Stick Gen5 sooner than expected. Spent an hour or so trying to figure out why it wasn’t pairing. Eventually discovered that although it was on the approved hardware list, it apparently has a USB interface issue that causes it not be be seen by a Pi 4. Fortunately, using a USB hub inbetween the Zstick and the Pi 4 gets around that problem.

The Aeotec Zstick does a very pretty Red/Yellow/Blue pattern on it’s LED. After much research, discover that this in no way indicates anything. It’s just there to be pretty. Must be making progress. The “missing ZWave adapter” error message on the WebThings console went away.

After many unsuccessful attempts to pair Kwikset lock with Webthings, I recall that latest Z-Wave spec puts security devices in a low power pairing mode. Pi needs to be within three feet of lock to pair, not 30 feet down hallway. Get extention cord and try again.

Locks pairs! Device shows up on things page. Life is good! No? No? Although lock is paired, it does not respond to Lock or Unlock commands. Red light on lock blinks when command is sent, but nothing happens. Eventually Webthings device status says “Jammed.”

Lock is not jammed. It works perfectly well when I press button on lock. What could this mean? Signal jammed? Oh wait - I did not define a network key. Maybe security devices won’t work without a network key. Add a key that could be guessed by primary school child, unpair and re-pair Kwikset.

Kwikset lock is not as smart as a primary school child. Still reports status as jammed after a few seconds.

OK, that’s probably as far as I’m going today. Will leave Pi near lock just in case key exchange magically happens overnight and things start working.

Oh, and these are log entries…

2020-04-20 19:44:37.985 INFO : DeviceProxy: requestAction: lock for: zwave-e823ebb1-7
2020-04-20 19:44:37.995 INFO : zwave-adapter: node7 Performing action ‘lock’
2020-04-20 19:44:37.996 INFO : zwave-adapter: setProperty property: _lockedInternal for: zwave-e823ebb1-7-DoorLock valueId: 7-98-1-0 value: true
2020-04-20 19:44:37.997 INFO : zwave-adapter: node7 setPropertyValue: locked = unknown
2020-04-20 19:44:38.991 INFO : zwave-adapter: node7: timeout
2020-04-20 19:44:39.991 INFO : zwave-adapter: node7: timeout

@dhylands not sure if you’re around, but if so, any thoughts here?

I’m wondering if this has something to do with secure join? I didn’t see any option to specify secure join (s2) when I added the Kwikset lock. Is that supposed to happen automatically?

Hey friend, Did you end up making any progress on this? Having similar difficulties now, myself.

Unfortunately, no. Continues to report a status of “jammed” whenever I send a command to the lock.

Thanks for the update. If I find anything out myself, I’ll report back.

Ok, I’ll document what I discovered over the last couple days, and where I’m headed. I have a ton of old Lowe’s Iris stuff, which happens to be Zwave. After leaving it in my drawer for a year in utter disgust that Lowe’s abandoned the brand, I decided to try to get it to work on a PI.
Most of the minor things (light switches, thermostat) paired and worked without much issue.
I did discover that, since they were previously paired, I had to remove the Aeotec USB stick from the Pi, hold the button down until orange, and then put the automation tool into pairing mode to have it ‘forget’ the old Iris network. Once that was done, then I could pair by either pressing the Aeotec Zwave once for blue, pairing and then plugging in and rebooting the Pi, or pairing it via the UI.
However, it seems that some Zwave devices (looking at you, door locks) require the network key. However, the only way to pair with the network key is to have it in the Pi with webthings running, and the 16bit network key (which cannot be elementary school, and is case sensitive - lower alpha chars only) set up and running. Once I did that, I was able to get more information from the door lock (battery level) but I was still getting the jammed error. The log reported a timeout, but I suspect it was due to the fact that the device wasn’t a fan of the key for some reason - possibly due to it being a branded Iris device, and only wanting the specific Iris key? That’s a guess.
While researching the issue, I discovered the blog post saying that Mozilla is essentially shutting down the roadmap for webthings. Bummer.
Given all that, I’m going to postpone my experiments with webthings and check out Home Assistant for a while. Hope this helps someone. Good luck!

That sounds very similar to my experience.

re: Mozilla no longer interested in Webthings. I wish this had been mentioned by the Webthings workshop lead at IoTFuse. I spent a fair amount of time and money trying to bring this system up. It would have been good to know that there wasn’t going to be any further support.

to be clear, I don’t think they’re uninterested. You’ll have to read the blog post, but the long and short of it is, there’s no 2020 roadmap.

I just tried to add a Kwikset 910 Z-Wave Plus compatible lock to my Webthings Gateway. I’m using a Raspberry Pi 3 with a Aeotec Z-Stick Gen5 and I could not get it to see the Kwikset lock.

Kwikset’s included instructions are useless but after some googling found actual troubleshooting guides on their website. They said that during pairing the lock has to be within 12 inches of the gateway. They recommended dismantling the lock and taking it to your gateway. I wasn’t about to do that so I got a long Ethernet cable and brought the gateway to the lock. Unfortunately they still wouldn’t see each other.

I was reading up on the Z-Stick to ensure it was compatible with the lock and came across the part where it has a battery and can be put into pairing mode using the button while unplugged. I decided to give this a try so I unplugged the Z-Stick, pushed the button and it paired with the lock on the first try! When I plugged it back into the Webthings Gateway and clicked the add button it immediately showed the lock as an addable thing.

Unfortunately once the lock was added it showed the State wrong, unlocked when the lock was actually locked. Unlocking the lock via the Gateway did nothing, but locking it resulted in the Webthings Gateway reporting the state as “jammed” but nothing happened with the lock itself.

AIUI, the 1 foot low power pairing is required as a part of the latest Z-Wave protocol for security devices. I don’t recall how I got pairing to work, but ended up in the same place. The Gateway shows the lock, but the lock doesn’t respond to commands and reports a status of jammed.

Hi there,

I very much like the idea to use Mozilla IoT for regulating my radiators when I am not at home and if possible also with some input from thermostats and weather information.
For some time now I have been following the project and looking whether there would be any support for thermostatic radiator valves. I do live in a rented property and cannot easily change a major thermostat and additionally it also feels less invasive and saver not to manipulate the central heating device.
My question is therefore: Is there any support for thermostatic radiator valves and if so which models are currently supported.

Many thanks for your help!
Joe

I’ve attached logs below showing basically the same results as @ wrldtvlr.

FWIW I also tried HomeAssistant and OpenHab and they can see the lock but are unable to control it or correctly report it’s lock status.

2020-10-27 08:15:06.033 INFO   : DeviceProxy: requestAction: unlock for: zwave-d4bfdd89-11
2020-10-27 08:15:06.041 INFO   : zwave-adapter: node11 Performing action 'unlock'
2020-10-27 08:15:06.044 INFO   : zwave-adapter: setProperty property: _lockedInternal for: zwave-d4bfdd89-11-DoorLock valueId: 11-98-1-0 value: false
2020-10-27 08:15:06.045 INFO   : zwave-adapter: node11 setPropertyValue: locked = unknown
2020-10-27 08:15:16.043 INFO   : zwave-adapter: node11: timeout
2020-10-27 08:15:16.045 INFO   : zwave-adapter: node11 setPropertyValue: locked = jammed
2020-10-27 08:15:17.442 INFO   : DeviceProxy: requestAction: unlock for: zwave-d4bfdd89-11
2020-10-27 08:15:17.447 INFO   : zwave-adapter: node11 Performing action 'unlock'
2020-10-27 08:15:17.449 INFO   : zwave-adapter: setProperty property: _lockedInternal for: zwave-d4bfdd89-11-DoorLock valueId: 11-98-1-0 value: false
2020-10-27 08:15:17.455 INFO   : zwave-adapter: node11 setPropertyValue: locked = unknown
2020-10-27 08:15:26.045 INFO   : zwave-adapter: node11: timeout
2020-10-27 08:15:27.452 INFO   : zwave-adapter: node11 setPropertyValue: locked = jammed
2020-10-27 08:15:36.047 INFO   : zwave-adapter: node11: timeout
2020-10-27 08:15:36.587 INFO   : DeviceProxy: requestAction: unlock for: zwave-d4bfdd89-11
2020-10-27 08:15:36.592 INFO   : zwave-adapter: node11 Performing action 'unlock'
2020-10-27 08:15:36.594 INFO   : zwave-adapter: setProperty property: _lockedInternal for: zwave-d4bfdd89-11-DoorLock valueId: 11-98-1-0 value: false
2020-10-27 08:15:36.599 INFO   : zwave-adapter: node11 setPropertyValue: locked = unknown
2020-10-27 08:15:46.048 INFO   : zwave-adapter: node11: timeout
2020-10-27 08:15:46.597 INFO   : zwave-adapter: node11 setPropertyValue: locked = jammed
2020-10-27 08:16:00.302 INFO   : zwave-adapter: node11: timeout
2020-10-27 08:16:10.303 INFO   : zwave-adapter: node11: timeout