Testing Z-Wave binding on openHAB-2

Polling in the OH2 binding can’t be completely disabled as it is used to check on the health of a device. If you were to only rely on notifications, then you don’t know if the device is dead - it might be dead, or it might just not be used.

This is why the binding defaults to 1800 seconds (30 minutes - you can set it longer although I forget how high it can go - I think 7200).

Absolutely - I would recommend a much longer period. As above, the default is 1800 seconds.

Yes, the binding won’t allow such a small number so it only lets you set it as low as 15 seconds.

@chris:

Ok, maybe I should have been clearer :wink:. I know it uses the notification class, but the only event it is reporting is the power management “power has been applied” event. So, my question really should have been why do you think it is using the notification class for the actual doorbell press?

Maybe this notification is the doorbell press and the device is just using a slightly strange event? If so, maybe you can comment on what happens with the latest binding which has this?

I have found a couple of mostly small issues with the notification class so will likely do an update tonight as well…

Well, the logs you originally commented on for it using the notification class were from when I pushed the button, so I think it’s safe to assume that it uses that for the doorbell press. The follow up log that I posted (Testing Z-Wave binding on openHAB-2 - #1450 by feens) are also of a button press, but with the binding updates.

I wonder if they use the “power has been applied” event due to the way the whole device works: when someone pushes a doorbell, it sends the current to the doorbell, and this devise is inserting it to that chain (it’s attached to the bell part of the doorbell and capturing the current), thus it essentially sends a notification when power is applied to it. Probably not the best decision for end users, but not much I can do about that.

When I first added the device to your db and got it going, I actually had it working by using “received update” in my rules (and then I use Pushover to send me notifications…very handy). Somewhere along the line of updates, the OH item started firing off that event randomly (I’m guessing when the device wakes up and reports), so I started getting random notifications. Now it doesn’t seem to trigger that event/rule at all though.

Ok - thanks. I wasn’t sure that this was from a button press, and I can’t go back looking for old logs - the forum is just not easy for tracing this sort of thing.

I will push another update later this evening that fixes a small bug - it might solve the issue.

Is there anything sent when you remove the button press, or is this the only thing sent, and it’s sent at the time the button is pressed?

@chris - it looks like there are two events (press/release). The first shows as event=1, and the second as event=0. I’m guessing for powers has been applied/removed. Here’s the full log output for a press/release (obviously they happen quickly with a doorbell):

12:13:43.278 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 7092 to 7093
12:13:43.278 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 01 00 00 6D 
12:13:43.291 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
12:13:43.296 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 01 00 00 6D 
12:13:43.300 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 01 00 00 6D 
12:13:43.305 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 0A 71 05 00 00 00 FF 08 01 00 00 
12:13:43.307 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DONE)
12:13:43.308 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 14: Starting initialisation from DONE
12:13:43.310 [DEBUG] [ve.internal.protocol.ZWaveController] - Event Listener org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeInitStageAdvancer@122fff already registered
12:13:43.314 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class ALARM
12:13:43.316 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Received ALARM command V3
12:13:43.317 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Process Alarm Report, V3, length 13
12:13:43.319 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: NOTIFICATION report - 8 = 0, sensor=0, event=1, status=255
12:13:43.320 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Alarm Type = POWER_MANAGEMENT (8)
12:13:43.322 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveAlarmValueEvent
12:13:43.324 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveAlarmValueEvent
12:13:43.325 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = ALARM, value = 0
12:13:43.328 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 2: Transaction not completed: node address inconsistent.  lastSent=2, incoming=255
12:13:43.739 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 0E 03 80 03 21 5D 
12:13:43.742 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 7093 to 7094
12:13:43.746 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
12:13:43.749 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 04 00 0E 03 80 03 21 5D 
12:13:43.751 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 04 00 0E 03 80 03 21 5D 
12:13:43.754 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 03 80 03 21 
12:13:43.755 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DONE)
12:13:43.757 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 14: Starting initialisation from DONE
12:13:43.758 [DEBUG] [ve.internal.protocol.ZWaveController] - Event Listener org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeInitStageAdvancer@122fff already registered
12:13:43.760 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class BATTERY
12:13:43.761 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Received Battery Request
12:13:43.762 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Battery report value = 33
12:13:43.763 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveCommandClassValueEvent
12:13:43.764 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
12:13:43.766 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = BATTERY, value = 33
12:13:43.767 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Updating channel state zwave:device:home:node14:battery-level to 33 [DecimalType]
12:13:43.775 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 2: Transaction not completed: node address inconsistent.  lastSent=2, incoming=255
12:13:43.776 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_device_home_node14_battery_level changed from 28 to 33
12:13:44.445 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 7094 to 7095
12:13:44.450 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 00 00 00 6C 
12:13:44.457 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
12:13:44.462 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 00 00 00 6C 
12:13:44.470 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 00 00 00 6C 
12:13:44.476 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 0A 71 05 00 00 00 FF 08 00 00 00 
12:13:44.481 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DONE)
12:13:44.485 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 14: Starting initialisation from DONE
12:13:44.490 [DEBUG] [ve.internal.protocol.ZWaveController] - Event Listener org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeInitStageAdvancer@122fff already registered
12:13:44.492 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class ALARM
12:13:44.495 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Received ALARM command V3
12:13:44.497 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Process Alarm Report, V3, length 13
12:13:44.499 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: NOTIFICATION report - 8 = 0, sensor=0, event=0, status=255
12:13:44.502 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Alarm Type = POWER_MANAGEMENT (8)
12:13:44.504 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveAlarmValueEvent
12:13:44.505 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveAlarmValueEvent
12:13:44.507 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = ALARM, value = 0
12:13:44.510 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 2: Transaction not completed: node address inconsistent.  lastSent=2, incoming=255
12:13:44.911 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 0E 03 80 03 21 5D 
12:13:44.915 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 7095 to 7096
12:13:44.919 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
12:13:44.923 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 04 00 0E 03 80 03 21 5D 
12:13:44.934 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 04 00 0E 03 80 03 21 5D 
12:13:44.938 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 03 80 03 21 
12:13:44.941 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DONE)
12:13:44.943 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 14: Starting initialisation from DONE
12:13:44.946 [DEBUG] [ve.internal.protocol.ZWaveController] - Event Listener org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeInitStageAdvancer@122fff already registered
12:13:44.949 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class BATTERY
12:13:44.952 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Received Battery Request
12:13:44.954 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Battery report value = 33
12:13:44.956 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveCommandClassValueEvent
12:13:44.959 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
12:13:44.961 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = BATTERY, value = 33
12:13:44.964 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Updating channel state zwave:device:home:node14:battery-level to 33 [DecimalType]

Thanks. Not quite what I was hoping for - I read in the spec that the value is meant to be 0 for off, and ff for off, so I was hoping for the same notification event, but with different value…

It will need a small translation somehow but I should provide an update later tonight…

@chris
I’ve set the polling to 1800, for my Fibaro Wall Plug FGWP101. I also set parameters in the FGWP101 to report immediate when power changes with 10%.
What I get in the logs is the following:

2016-09-20 21:19:49.977 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
2016-09-20 21:19:49.979 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 0D 00 04 00 05 07 60 0D 00 00 20 01 FF 47 
2016-09-20 21:19:49.981 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 0D 00 04 00 05 07 60 0D 00 00 20 01 FF 47 
2016-09-20 21:19:49.983 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 05 07 60 0D 00 00 20 01 FF 
2016-09-20 21:19:49.984 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 5: Application Command Request (ALIVE:DONE)
2016-09-20 21:19:49.984 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 5: Starting initialisation from DONE
2016-09-20 21:19:49.985 [DEBUG] [ve.internal.protocol.ZWaveController] - Event Listener org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeInitStageAdvancer@3f1538 already registered
2016-09-20 21:19:49.986 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 5: Incoming command class MULTI_INSTANCE
2016-09-20 21:19:49.988 [DEBUG] [class.ZWaveMultiInstanceCommandClass] - NODE 5: Received MULTI_INSTANCE command V0
2016-09-20 21:19:49.990 [DEBUG] [class.ZWaveMultiInstanceCommandClass] - NODE 5: Requested Command Class = BASIC (0x20)
2016-09-20 21:19:49.992 [ERROR] [class.ZWaveMultiInstanceCommandClass] - NODE 5: Endpoint 0 not found. Cannot set command classes.

Am I missing something or is this something that will be implemented in the future?

Regards, S

@chris here’s the latest logs (for a press/release)…it’s throwing an error in there:

08:56:12.444 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 01 00 00 6D 
08:56:12.455 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
08:56:12.460 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 01 00 00 6D 
08:56:12.465 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 01 00 00 6D 
08:56:12.470 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 0A 71 05 00 00 00 FF 08 01 00 00 
08:56:12.472 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DETAILS)
08:56:12.473 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class ALARM
08:56:12.475 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Received ALARM command V3
08:56:12.476 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Process NOTIFICATION_REPORT V3
08:56:12.478 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: NOTIFICATION report - 0 = 0, event=1, status=255
08:56:12.479 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Alarm Type = POWER_MANAGEMENT (0)
08:56:12.480 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveAlarmValueEvent
08:56:12.482 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveAlarmValueEvent
08:56:12.483 [ERROR] [ve.internal.protocol.ZWaveController] - Exception during ZWave thread: Input 2. {}
java.lang.ClassCastException: org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass$Alarm cannot be cast to java.lang.Integer
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass$ZWaveAlarmValueEvent.getValue(ZWaveAlarmCommandClass.java:587)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass$ZWaveAlarmValueEvent.getValue(ZWaveAlarmCommandClass.java:1)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.handler.ZWaveThingHandler.ZWaveIncomingEvent(ZWaveThingHandler.java:926)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.notifyEventListeners(ZWaveController.java:546)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.processNotificationReport(ZWaveAlarmCommandClass.java:196)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.handleApplicationCommandRequest(ZWaveAlarmCommandClass.java:123)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.serialmessage.ApplicationCommandMessageClass.handleRequest(ApplicationCommandMessageClass.java:119)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingRequestMessage(ZWaveController.java:247)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingMessage(ZWaveController.java:213)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.access$7(ZWaveController.java:207)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController$ZWaveInputThread.run(ZWaveController.java:1303)[200:org.openhab.binding.zwave:2.0.0.201609212035]
08:56:12.900 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 0E 03 80 03 21 5D 
08:56:12.905 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 453 to 454
08:56:12.917 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
08:56:12.921 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 04 00 0E 03 80 03 21 5D 
08:56:12.924 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 04 00 0E 03 80 03 21 5D 
08:56:12.927 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 03 80 03 21 
08:56:12.929 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DETAILS)
08:56:12.930 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class BATTERY
08:56:12.932 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Received Battery Request
08:56:12.933 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Battery report value = 33
08:56:12.934 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveCommandClassValueEvent
08:56:12.935 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
08:56:12.937 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = BATTERY, value = 33
08:56:12.939 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Updating channel state zwave:device:home:node14:battery-level to 33 [DecimalType]
08:56:12.943 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Transaction not completed: node address inconsistent.  lastSent=4, incoming=255
08:56:13.495 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 454 to 455
08:56:13.500 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 00 00 00 6C 
08:56:13.510 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
08:56:13.515 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 00 00 00 6C 
08:56:13.520 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 00 00 00 6C 
08:56:13.525 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 0A 71 05 00 00 00 FF 08 00 00 00 
08:56:13.526 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DETAILS)
08:56:13.528 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class ALARM
08:56:13.529 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Received ALARM command V3
08:56:13.530 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Process NOTIFICATION_REPORT V3
08:56:13.531 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: NOTIFICATION report - 0 = 0, event=0, status=255
08:56:13.533 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Alarm Type = POWER_MANAGEMENT (0)
08:56:13.534 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveAlarmValueEvent
08:56:13.535 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveAlarmValueEvent
08:56:13.537 [ERROR] [ve.internal.protocol.ZWaveController] - Exception during ZWave thread: Input 2. {}
java.lang.ClassCastException: org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass$Alarm cannot be cast to java.lang.Integer
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass$ZWaveAlarmValueEvent.getValue(ZWaveAlarmCommandClass.java:587)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass$ZWaveAlarmValueEvent.getValue(ZWaveAlarmCommandClass.java:1)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.handler.ZWaveThingHandler.ZWaveIncomingEvent(ZWaveThingHandler.java:926)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.notifyEventListeners(ZWaveController.java:546)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.processNotificationReport(ZWaveAlarmCommandClass.java:196)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveAlarmCommandClass.handleApplicationCommandRequest(ZWaveAlarmCommandClass.java:123)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.serialmessage.ApplicationCommandMessageClass.handleRequest(ApplicationCommandMessageClass.java:119)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingRequestMessage(ZWaveController.java:247)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingMessage(ZWaveController.java:213)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.access$7(ZWaveController.java:207)[200:org.openhab.binding.zwave:2.0.0.201609212035]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController$ZWaveInputThread.run(ZWaveController.java:1303)[200:org.openhab.binding.zwave:2.0.0.201609212035]
08:56:13.957 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 0E 03 80 03 21 5D 
08:56:13.962 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 455 to 456
08:56:13.967 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
08:56:13.970 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 04 00 0E 03 80 03 21 5D 
08:56:13.972 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 04 00 0E 03 80 03 21 5D 
08:56:13.975 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 03 80 03 21 
08:56:13.976 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DETAILS)
08:56:13.977 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class BATTERY
08:56:13.979 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Received Battery Request
08:56:13.980 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Battery report value = 33
08:56:13.981 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveCommandClassValueEvent
08:56:13.982 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
08:56:13.983 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = BATTERY, value = 33
08:56:13.985 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Updating channel state zwave:device:home:node14:battery-level to 33 [DecimalType]
08:56:13.988 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Transaction not completed: node address inconsistent.  lastSent=4, incoming=255

This looks like the same issue as raised earlier today and I already know the problem so it will be fixed tonight.

Great. I’ll give it go again tomorrow and post the results.

@chris so the error message is definitely gone now, but I still don’t receive any updates to the channel/item. I have it set up as a Switch/Alarm, and have it logging if it receives and update or changes…is there something I may be missing?

I’m not sure - it looks ok and I have a test running which I believe simulates the doorbell. Can you provide a log again please so I can check what’s happening with the changes made recently.

@chris here ya go:

15:14:47.345 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 01 00 00 6D 
15:14:47.358 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
15:14:47.364 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 01 00 00 6D 
15:14:47.371 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 01 00 00 6D 
15:14:47.376 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 0A 71 05 00 00 00 FF 08 01 00 00 
15:14:47.379 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DETAILS)
15:14:47.383 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class ALARM
15:14:47.387 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Received ALARM command V3
15:14:47.391 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Process NOTIFICATION_REPORT V3
15:14:47.396 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: NOTIFICATION report - 0 = 0, event=1, status=255
15:14:47.400 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Alarm Type = POWER_MANAGEMENT (0)
15:14:47.404 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveAlarmValueEvent
15:14:47.408 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveAlarmValueEvent
15:14:47.411 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = ALARM, value = 255
15:14:47.417 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Transaction not completed: node address inconsistent.  lastSent=4, incoming=255
15:14:47.886 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 0E 03 80 03 21 5D 
15:14:47.889 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 1656 to 1657
15:14:47.896 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
15:14:47.900 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 04 00 0E 03 80 03 21 5D 
15:14:47.905 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 04 00 0E 03 80 03 21 5D 
15:14:47.909 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 03 80 03 21 
15:14:47.912 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DETAILS)
15:14:47.914 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class BATTERY
15:14:47.915 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Received Battery Request
15:14:47.916 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Battery report value = 33
15:14:47.918 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveCommandClassValueEvent
15:14:47.919 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
15:14:47.921 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = BATTERY, value = 33
15:14:47.924 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Updating channel state zwave:device:home:node14:battery-level to 33 [DecimalType]
15:14:47.929 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Transaction not completed: node address inconsistent.  lastSent=4, incoming=255
15:14:48.601 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 00 00 00 6C 
15:14:48.603 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 1657 to 1658
15:14:48.613 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
15:14:48.619 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 00 00 00 6C 
15:14:48.624 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 10 00 04 00 0E 0A 71 05 00 00 00 FF 08 00 00 00 6C 
15:14:48.629 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 0A 71 05 00 00 00 FF 08 00 00 00 
15:14:48.631 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DETAILS)
15:14:48.633 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class ALARM
15:14:48.634 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Received ALARM command V3
15:14:48.636 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Process NOTIFICATION_REPORT V3
15:14:48.638 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: NOTIFICATION report - 0 = 0, event=0, status=255
15:14:48.640 [DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 14: Alarm Type = POWER_MANAGEMENT (0)
15:14:48.641 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveAlarmValueEvent
15:14:48.643 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveAlarmValueEvent
15:14:48.644 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = ALARM, value = 255
15:14:48.647 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Transaction not completed: node address inconsistent.  lastSent=4, incoming=255
15:14:49.145 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 0E 03 80 03 21 5D 
15:14:49.151 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
15:14:49.158 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 04 00 0E 03 80 03 21 5D 
15:14:49.158 [INFO ] [marthome.event.ItemStateChangedEvent] - zwave_serial_zstick_home_serial_sof changed from 1658 to 1659
15:14:49.164 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 04 00 0E 03 80 03 21 5D 
15:14:49.168 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 0E 03 80 03 21 
15:14:49.170 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Application Command Request (ALIVE:DETAILS)
15:14:49.171 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 14: Incoming command class BATTERY
15:14:49.173 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Received Battery Request
15:14:49.174 [DEBUG] [ommandclass.ZWaveBatteryCommandClass] - NODE 14: Battery report value = 33
15:14:49.176 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveCommandClassValueEvent
15:14:49.178 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
15:14:49.179 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Got a value event from Z-Wave network, endpoint = 0, command class = BATTERY, value = 33
15:14:49.181 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 14: Updating channel state zwave:device:home:node14:battery-level to 33 [DecimalType]
15:14:49.186 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Transaction not completed: node address inconsistent.  lastSent=4, incoming=255

As a matter of interest, since the configuration changed have you deleted the thing and re-added it to get the updated configuration?

@chris Well, I did after the original notifications update. I also noticed there’s now the Power Level Timeout setting, but it doesn’t seem to stick when I change it. I’ll try removing and re-adding again.

@chris Success! Finally. I had to: delete/re-add, which changed the channel to Power Management. The default was a Number type, and it didn’t set a category, so it wasn’t originally working. I noticed that it was at least saying that it was updating the channel, but the item still showed null. I changed the item to Switch/Alarm and that did the trick. I also added the controller as the association group, but not sure if that was needed or not. I don’t know if there’s a way for you to set the defaults for category/type for others, as that may be helpful.

Thanks for your help in sorting this out…I really appreciate it!

Good stuff - glad it’s working.

Would it be possible to add a few “delete” buttons to the database editor? I have accidentally added a few configuration options to the wrong configuration parameter for the Nodon ASP-3-1 device. Ultimately, I think it would be good to have a delete button for all items where there is an add (+) button, but right now I only need it for the configuration item options.

In any way, I think the database tool is really great!

I’ve currently avoided adding delete buttons for users as I want to avoid mishaps ;). I’ll have a think about this, but for now you can change the label of anything you want to delete to DELETE ME or something, and then let me know the device and I’ll go through and delete them…

Ok, so I did. I have marked a few options with DELETE ME on the Nodon ASP-3-1 Smart Plug device. Also note that the alarm with type “system” has to be removed, since it cannot be mapped to a channel.

I have another question: I was a little surprised when I pulled new changes from the main repository and the Nodon device had already been included in the Z-Wave binding source code, even though I had requested a review for it. Was that intentional?

On the review question-not everyone requests the review, but they still expect their changes to be added. So, I normally go through the list of changes and if there’s a device with updates, and it looks ok, then I normally add it…