ZD2102 Not working

Hi

I have a z-wave network and all my switches work just fine, but the sensor ZD2102 doesnt work in OpenHab. Its picked up when I search for items, but comes up as “Unknown Device” with no channels. I have tried to remove it and re-include it, but no luck so far…

I have two z-wave controllers running in parallel and the other controller picks it up fine. Both controllers are set as primary at the moment as I havent been able to transfer the primary role to OpenHAB… The other controller is a Razberry Z-Way device.

Nothing shows in the Z-Wave debug log when the sensor is triggered…

You need to solve this first. If nothing is received when you wake up the device, then openHAB can’t do anything to configure the device, and it can’t find out what the device is (hence it is UNKNOWN).

Make sure the device is with range and then wake it up and check the debug logs to see what is shown. If there’s really nothing received, then I would guess the sensor is out of range of the controller.

Thanks for quick reply. After turning off the other z-wave controller and repeadeatly doing the inclusion procedure, clicking the Aeon z-wave stick button and “find new items” in Paper UI it finally did show up as a Z-Wave Node 4: ZD2102 Door Window Sensor with 3 channels:

Tamper Alarm
zwave:device:0d062c9b:node4:alarm_burglar
Indicates if the burglar alarm is triggered
radio_button_checked
Door Sensor
zwave:device:0d062c9b:node4:sensor_door
Indicates if the door/window is open or closed
radio_button_checked
Battery Level
zwave:device:0d062c9b:node4:battery-level

However, I only receive burglar/tamper on (not off), and the door/window sensor never goes off at all…

When I mount it back the burglar/tamper alarm does not go off. When I close the door the z-wave log shows this:

3:58:43.256 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 04 03 20 01 00 D4 
13:58:43.259 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
13:58:43.259 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 04 00 04 03 20 01 00 D4 
13:58:43.259 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 04 00 04 03 20 01 00 D4 
13:58:43.259 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 04 03 20 01 00 
13:58:43.259 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Application Command Request (ALIVE:DONE)
13:58:43.259 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 4: Starting initialisation from DONE
13:58:43.259 [DEBUG] [ve.internal.protocol.ZWaveController] - Event Listener org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeInitStageAdvancer@3da41d16 already registered
13:58:43.259 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Incoming command class BASIC
13:58:43.259 [DEBUG] [.commandclass.ZWaveBasicCommandClass] - NODE 4: Received Basic Request
13:58:43.259 [DEBUG] [.commandclass.ZWaveBasicCommandClass] - NODE 4: Basic Set sent to the controller will be processed as Basic Report
13:58:43.259 [DEBUG] [.commandclass.ZWaveBasicCommandClass] - NODE 4: Basic report, value = 0x00
13:58:43.259 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveCommandClassValueEvent
13:58:43.259 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 4: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
13:58:43.259 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 4: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 0
13:58:43.259 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Checking transaction complete: Sent Message: class=SendData[0x13], type=Request[0x00], priority=Immediate, dest=4, callback=142, payload=04 02 84 08 
13:58:43.259 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Checking transaction complete: Recv Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 04 03 20 01 00 
13:58:43.259 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Checking transaction complete: class=ApplicationCommandHandler, callback id=142, expected=SendData, cancelled=false      MISMATCH

When I open the door it shows this:

13:59:51.710 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 04 03 20 01 FF 2B 
13:59:51.712 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
13:59:51.712 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 04 00 04 03 20 01 FF 2B 
13:59:51.712 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 04 00 04 03 20 01 FF 2B 
13:59:51.712 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 04 03 20 01 FF 
13:59:51.712 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Application Command Request (ALIVE:DONE)
13:59:51.712 [DEBUG] [alization.ZWaveNodeInitStageAdvancer] - NODE 4: Starting initialisation from DONE
13:59:51.712 [DEBUG] [ve.internal.protocol.ZWaveController] - Event Listener org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeInitStageAdvancer@3da41d16 already registered
13:59:51.712 [DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 4: Incoming command class BASIC
13:59:51.712 [DEBUG] [.commandclass.ZWaveBasicCommandClass] - NODE 4: Received Basic Request
13:59:51.712 [DEBUG] [.commandclass.ZWaveBasicCommandClass] - NODE 4: Basic Set sent to the controller will be processed as Basic Report
13:59:51.712 [DEBUG] [.commandclass.ZWaveBasicCommandClass] - NODE 4: Basic report, value = 0xFF
13:59:51.712 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveCommandClassValueEvent
13:59:51.712 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 4: Got an event from Z-Wave network: ZWaveCommandClassValueEvent
13:59:51.712 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 4: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 255
13:59:51.712 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Checking transaction complete: Sent Message: class=SendData[0x13], type=Request[0x00], priority=Immediate, dest=4, callback=142, payload=04 02 84 08 
13:59:51.712 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Checking transaction complete: Recv Message: class=ApplicationCommandHandler[0x04], type=Request[0x00], priority=High, dest=255, callback=0, payload=00 04 03 20 01 FF 
13:59:51.712 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Checking transaction complete: class=ApplicationCommandHandler, callback id=142, expected=SendData, cancelled=false      MISMATCH

I am in fact testing one of these right now so I’ll take a look at this. Firstly I note that it’s using the BASIC class, and this isn’t registered in the database so that will need changing. I’m also surprised that it works for you as I found a bug this morning which should prevent the device completing its initialisation at the STATIC stage…

Anyway, let me take a further look at this device over the next day or two and hopefully we’ll have it fully working.

Great! Looking forward to it.

Hi Chris, did you have a chance to look at this?

Sorry - the bug was fixed, but I’ve not had the chance to retest and I’ve not updated the database. I will look over this probably tomorrow if I don’t get to it tonight (getting HABmin imported into the openhab system took a lot longer than I expected :frowning: ).