[SOLVED] Zwave devices not updating item states after upgrade to OH 3

I had the same problem, my light switches and outlets failed to generate any events in OH. Flipping things from any UI worked without issue (and things worked in the 2.x series).

I created everything in the new UI and imported my zwave items in the Dev tools; where I believe I went wrong was by not setting a profile on the link item page. After this all the outlets and light switches worked like before.
What I can’t figure out is that all of my door sensors continued to work the same and didn’t have the issue, which makes me think its something with my hardware.
Outlets - Leviton DZR15
Light switches - GE / Jasco 12722 (couple of other models for dimmers, but mainly those)

1 Like

I also converted my text files to OH 3, but all of them have profiles.

Even created new items directly in OH 3 and even they don’t work

Many devices work flawless (door sensors, motions sensors, Neo Coolcam plugs, some Neo light switches…), but not the mentioned hardware.

E.g. node 33 works just fine, sending a switch value (on/off). Node 70, one of my problematic devices, does not work)

1 Like

An update/commit from digitaldan solved the issue.
I updated to the latest snapshot version of the Zwave binding and the switches are working again:

2 Likes

Well this is good news, I also went ahead and updated to the same zwave snapshot will do some testing after work.

For anyone else looking to grab the new snapshot I ran this command from Karaf:

update org.openhab.binding.zwave https://ci.openhab.org/job/openHAB-ZWave/31/artifact/target/org.openhab.binding.zwave-3.1.0-SNAPSHOT.jar

1 Like

I am having a similar issue with Fibaro FGD212 Dimmer 2 modules not updating when pressing the physical switch on the wall. I am running the latest zwave snapshot as suggested. The normal switches work fine, only dimmers seem to be affected.

openhab> bundle:list -s | grep zwave
263 x Active x  80 x 3.1.0.202101180339      x org.openhab.binding.zwave

When an unsolicited “SWITCH_MULTILEVEL_REPORT” is received from pressing the dimmer switch there is no “STATE UPDATE” for the “switch_dimmer1” channel. Other channels like “sensor_power” are being updated as expected.

When the Dimmer module is polled the “switch_dimmer1” channel is updated.


Any advice would be hugely appreciated.

Just for grins, remove your FGD212 items from the UI and create them in a .items file. I ended up putting all of my zwave into OH this way and haven’t had a problem since.

Last I was aware, there is an issue with items linking to channels done through the GUI.

Just remember that you cannot configure devices if you do this. You will need to use other software in this case (sorry).

No - this has never been a problem. The issue was related to channel linking and it makes no difference if it is done through the UI or files (the binding has no knowledge of how an item is configured).

This is the definition for the Dimmer channel and a Switch channel in my .items file.

Switch Study_Nook "Study Nook Light" <light> (Dining_Room) ["Control","Light"] {channel="zwave:device:85a23c30:node10:switch_binary1"}
Dimmer Dining_Room_Light "Dining Room Light" <light> (Dining_Room) ["Control","Light"] {channel="zwave:device:85a23c30:node12:switch_dimmer1"}

@chris, do you think this is a bug in the zwave code? When receiving an unsolicited “SWITCH_MULTILEVEL_REPORT” a “STATE UPDATE” is not being called.

I think that’s pretty unlikely to be honest.

That’s because the command is not encapsulated for the correct endpoint.

Thanks for your response.

I see what you mean about the unsolicited command sent from the Fibaro FGD212 dimmer device not containing the EP-1 context.

Unsolicited command from FGD212 dimmer device


vs this for the polled response

I noticed the sensor power unsolicited command from the dimmer also does not contain the EP-1 context (guess it’s related to the device itself), but the STATE_UPDATE is still called.

I did some more testing with other devices and the Fibaro Switch FGS223 devices do send the EP-1 (or EP-2) context in unsolicited commands


The Fibaro Switch devices contain two individual switches, the EP context would be required to distinguish between EP-1 and EP-2.

Given the Fibaro FGD212 dimmer device only has one physical dimmer, would the dimmer device be required to send the EP context? or should the zwave binding use a default of EP-1 if there is no context in the received command?

This was working with my previous OH2.5 installation.

I get a 404 error with that URL…should it still be working?

Nevermind, figured out it should be https://ci.openhab.org/job/openHAB-ZWave/lastSuccessfulBuild/artifact/target/org.openhab.binding.zwave-3.1.0-SNAPSHOT.jar

I had a similar problem with OH 3.0.1 - Release Build
I could only turn on the Z-Wave plug from UI, but not off.
The log showed events for on, but dead silent for off.
Upgrading to 3.1.0-SNAPSHOT - Build #2308 solved it.
Unfortunately I don’t have the log any more.

Do you use the web based UI for configuration? Once I updated to 3.1.0 using openhab-cli, openhab-cli will show the binding at 3.1.0 but the web based UI still shows 3.0.1 (even after reboot).

I used openhabian-config to switch to the latest version, not the console.
I try to use the UI for as much as possible.

And my UI - About looks like this:
image

Same problem here. My environment is OpenHab 3.0.1 (docker), installed on intel nuc with aeotec Z-Stick Gen5. With openhab 2.X (docker) works fine. I noticed the problem is related only to fibaro Z-Wave devices. I have three devices (FGS211 Relay Switch 1x3kW) that control lights and after OH upgrade I no longer receive status updates when I switch device manually.

I tried to change some related thing “Configuration Parameters” (ex. Polling Period) with no success. I tried also 3.1.0 milestone and snapshot docker version but situation doesn’t change.

So far I’ve only tested one Z-Wave module. I have several running on a RPi3 with OH2. Now I’d like to see that I can get one working on a RPi4 with OH3, to understand how OH3 works before moving and rebuilding everything. In my old system I fiddled with just about every setting. Now I’d like to avoid that.
My plug is a: TZWP-102 Telldus socket and energy meter (Swedish).

Old system had a controller from UZB – Z-Wave.Me
New system has Z-Stick Gen5 (not the PLUS, but the one needing a USB HUB to work :frowning: )

It doesn’t sound too promising if a lot of people experience problems.

Hi,
I have the same problem on two different setups, one using openhabian (latest, ie snapshot version of openhab) and one using docker using 3.1.M5. I can update z-wave devices through the ui but when updating devices manually, the ui isn’t updated.

This is really strange and I think it might have something to do with the Z-wave hw. I used to have a zwave.me gpio board, version 2. The board crashed a week ago and I replaced it with the latest model (ZMMERAZ2).

The old board worked fine with (at least) openhabian and M4 but the new board doesn’t (or rather works as above)

Have no clue right now what to try next. Plan for trying out the z-way just for reference.

br

Hi,

I add below zwave log with the hope that someone could find out the problem. This log is related to a manual switch (OFF and ON). As you can see item status is sent to the Z-Wave network but the OH can’t update the fibaro switch item status.

2021-06-22 16:43:39.726 [DEBUG] [nal.protocol.ZWaveTransactionManager] - Received msg (0): Message: class=ApplicationCommandHandler[4], type=Request[0], dest=10, callback=0, payload=00 0A 03 25 03 00 
2021-06-22 16:43:39.726 [DEBUG] [nal.protocol.ZWaveTransactionManager] - lastTransaction null
2021-06-22 16:43:39.726 [DEBUG] [nal.protocol.ZWaveTransactionManager] - NODE 10: Application Command Request (ALIVE:DONE)
2021-06-22 16:43:39.726 [DEBUG] [ng.zwave.internal.protocol.ZWaveNode] - NODE 10: resetResendCount initComplete=true isDead=false
2021-06-22 16:43:39.726 [DEBUG] [ng.zwave.internal.protocol.ZWaveNode] - NODE 10: Incoming command class COMMAND_CLASS_SWITCH_BINARY, endpoint 0
2021-06-22 16:43:39.726 [DEBUG] [ng.zwave.internal.protocol.ZWaveNode] - NODE 10: SECURITY not supported
2021-06-22 16:43:39.726 [DEBUG] [tocol.commandclass.ZWaveCommandClass] - NODE 10: Received COMMAND_CLASS_SWITCH_BINARY V1 SWITCH_BINARY_REPORT
2021-06-22 16:43:39.727 [DEBUG] [dclass.ZWaveBinarySwitchCommandClass] - NODE 10: Switch Binary report, value = 0
2021-06-22 16:43:39.727 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 10: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
2021-06-22 16:43:39.727 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 10: Got a value event from Z-Wave network, endpoint=0, command class=COMMAND_CLASS_SWITCH_BINARY, value=0
2021-06-22 16:43:39.727 [DEBUG] [nal.protocol.ZWaveTransactionManager] - NODE 10: Commands processed 1.
2021-06-22 16:43:39.727 [DEBUG] [nal.protocol.ZWaveTransactionManager] - NODE 10: Checking command org.openhab.binding.zwave.internal.protocol.ZWaveCommandClassPayload@52446df.
2021-06-22 16:43:39.727 [DEBUG] [nal.protocol.ZWaveTransactionManager] - Transaction completed - outstandingTransactions 0
2021-06-22 16:43:39.727 [DEBUG] [nal.protocol.ZWaveTransactionManager] - Transaction completed - outstandingTransactions 0
2021-06-22 16:43:39.727 [DEBUG] [nal.protocol.ZWaveTransactionManager] - ZWaveReceiveThread queue empty
2021-06-22 16:43:39.727 [DEBUG] [nal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 0 out at start. Holdoff false.

2021-06-22 16:43:41.095 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 0A 03 25 03 FF 22 
2021-06-22 16:43:41.096 [DEBUG] [nal.protocol.ZWaveTransactionManager] - processReceiveMessage input 0<>128 : Message: class=ApplicationCommandHandler[4], type=Request[0], dest=10, callback=0, payload=00 0A 03 25 03 FF 
2021-06-22 16:43:41.096 [DEBUG] [nal.protocol.ZWaveTransactionManager] - Received msg (0): Message: class=ApplicationCommandHandler[4], type=Request[0], dest=10, callback=0, payload=00 0A 03 25 03 FF 
2021-06-22 16:43:41.096 [DEBUG] [nal.protocol.ZWaveTransactionManager] - lastTransaction null
2021-06-22 16:43:41.096 [DEBUG] [nal.protocol.ZWaveTransactionManager] - NODE 10: Application Command Request (ALIVE:DONE)
2021-06-22 16:43:41.096 [DEBUG] [ng.zwave.internal.protocol.ZWaveNode] - NODE 10: resetResendCount initComplete=true isDead=false
2021-06-22 16:43:41.097 [DEBUG] [ng.zwave.internal.protocol.ZWaveNode] - NODE 10: Incoming command class COMMAND_CLASS_SWITCH_BINARY, endpoint 0
2021-06-22 16:43:41.097 [DEBUG] [ng.zwave.internal.protocol.ZWaveNode] - NODE 10: SECURITY not supported
2021-06-22 16:43:41.097 [DEBUG] [tocol.commandclass.ZWaveCommandClass] - NODE 10: Received COMMAND_CLASS_SWITCH_BINARY V1 SWITCH_BINARY_REPORT
2021-06-22 16:43:41.097 [DEBUG] [dclass.ZWaveBinarySwitchCommandClass] - NODE 10: Switch Binary report, value = 255
2021-06-22 16:43:41.097 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 10: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
2021-06-22 16:43:41.097 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 10: Got a value event from Z-Wave network, endpoint=0, command class=COMMAND_CLASS_SWITCH_BINARY, value=255
2021-06-22 16:43:41.097 [DEBUG] [nal.protocol.ZWaveTransactionManager] - NODE 10: Commands processed 1.
2021-06-22 16:43:41.097 [DEBUG] [nal.protocol.ZWaveTransactionManager] - NODE 10: Checking command org.openhab.binding.zwave.internal.protocol.ZWaveCommandClassPayload@e485292.
2021-06-22 16:43:41.097 [DEBUG] [nal.protocol.ZWaveTransactionManager] - Transaction completed - outstandingTransactions 0
2021-06-22 16:43:41.098 [DEBUG] [nal.protocol.ZWaveTransactionManager] - Transaction completed - outstandingTransactions 0
2021-06-22 16:43:41.098 [DEBUG] [nal.protocol.ZWaveTransactionManager] - ZWaveReceiveThread queue empty
2021-06-22 16:43:41.098 [DEBUG] [nal.protocol.ZWaveTransactionManager] - Transaction SendNextMessage 0 out at start. Holdoff false.