DCH-Z110 Z-Wave NOTIFICATION_REPORT Issue

I was playing with DCH-Z110 sensors and I noticed that when sensor is configured to use “Notification Report” as Notofication type things don’t work as it should. Instead of triggering sensor_door, general_alarm is activated.

I’m running OH2 (openhab-binding-zwave 2.0.0)

Here is the log snippet when opening door sensor: event=22, status=255, ACCESS_CONTROL (0)

[DEBUG] [dclass.ZWaveMultiCommandCommandClass] - NODE 2: Incoming command class ALARM
[DEBUG] [dclass.ZWaveMultiCommandCommandClass] - NODE 2: Calling handleApplicationCommandRequest.
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: Received ALARM command V4
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: Process NOTIFICATION_REPORT V4
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: NOTIFICATION report - 0 = 0, event=22, status=255
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: Alarm Type = ACCESS_CONTROL (0)
[DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveAlarmValueEvent
[DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Got an event from Z-Wave network: ZWaveAlarmValueEvent
[DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Got a value event from Z-Wave network, endpoint = 0, command class = ALARM, value = 255
[DEBUG] [ternal.converter.ZWaveAlarmConverter] - Alarm converter processing NOTIFICATION
[DEBUG] [ternal.converter.ZWaveAlarmConverter] - Alarm converter NOTIFICATION event is 22, type OnOffType
[DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Updating channel state zwave:device:dda20e96:node2:alarm_general to ON [OnOffType]

The result is: Updating channel state zwave:device:dda20e96:node2:alarm_genera to ON [OnOffType]
This should trigger zwave:device:dda20e96:node2:sensor_door

Similarly when closing the door: event=23, status=255, ACCESS_CONTROL (0)

[DEBUG] [dclass.ZWaveMultiCommandCommandClass] - NODE 2: Incoming command class ALARM
[DEBUG] [dclass.ZWaveMultiCommandCommandClass] - NODE 2: Calling handleApplicationCommandRequest.
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: Received ALARM command V4
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: Process NOTIFICATION_REPORT V4
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: NOTIFICATION report - 0 = 0, event=23, status=255
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: Alarm Type = ACCESS_CONTROL (0)
[DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveAlarmValueEvent
[DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Got an event from Z-Wave network: ZWaveAlarmValueEvent
[DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Got a value event from Z-Wave network, endpoint = 0, command class = ALARM, value = 255
[DEBUG] [ternal.converter.ZWaveAlarmConverter] - Alarm converter processing NOTIFICATION
[DEBUG] [ternal.converter.ZWaveAlarmConverter] - Alarm converter NOTIFICATION event is 23, type OnOffType
[DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Updating channel state zwave:device:dda20e96:node2:alarm_general to ON [OnOffType]

The result is also: Updating channel state zwave:device:dda20e96:node2:alarm_genera to ON [OnOffType] instead of zwave:device:dda20e96:node2:sensor_door

When triggering tamper switch I get: event=3, status=255, BURGLAR (0)

[DEBUG] [ssage.ApplicationCommandMessageClass] - NODE 2: Incoming command class MULTI_CMD
[DEBUG] [dclass.ZWaveMultiCommandCommandClass] - NODE 2: Received Multi-Command Request
[DEBUG] [dclass.ZWaveMultiCommandCommandClass] - NODE 2: Incoming command class ALARM
[DEBUG] [dclass.ZWaveMultiCommandCommandClass] - NODE 2: Calling handleApplicationCommandRequest.
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: Received ALARM command V4
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: Process NOTIFICATION_REPORT V4
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: NOTIFICATION report - 0 = 0, event=3, status=255
[DEBUG] [.commandclass.ZWaveAlarmCommandClass] - NODE 2: Alarm Type = BURGLAR (0)
[DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveAlarmValueEvent
[DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Got an event from Z-Wave network: ZWaveAlarmValueEvent
[DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Got a value event from Z-Wave network, endpoint = 0, command class = ALARM, value = 255
[DEBUG] [ternal.converter.ZWaveAlarmConverter] - Alarm converter processing NOTIFICATION
[DEBUG] [ternal.converter.ZWaveAlarmConverter] - Alarm converter NOTIFICATION event is 3, type OnOffType
[DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Updating channel state zwave:device:dda20e96:node2:alarm_general to ON [OnOffType]

This triggers NODE 2: Updating channel state zwave:device:dda20e96:node2:alarm_general to ON [OnOffType] which is fine.

Am I missing some configuration or this is just not working right?
If I switch to “Sensor Binary Report” than door sensor is working fine but general alarm (tamper switch) is also triggering door_sensor.

Thanks

The notifications are being worked on at the moment. There are some changes in the snapshot that improve this, but you probably also need to look at the channel configuration.

See also this thread -:

Hi Chris.

Thanks for the info. Looking from the log above, it seams that notifications are generally working ok, only alarm converter is updating wrong channel.

Is this user configurable somewhere, can I manually specify which channel update to trigger when “event=23, ACCESS_CONTROL” event is received?

Yes - you can set this in the database for the channel configuration. You can add the type and event (eg type=BURGLAR, event=23).

There’s another thread on these devices here -:

1 Like

I’ll take a look. Thanks for the help.

Hi Chris.

I browsed through the tread you recommended and indeed it seams that part of the device configuration for Z110 is missing in the database. Currently all alarms are mapped to the alarm_general channel. The solution would be to map Alarm Type = ACCESS_CONTROL to channel “sensor_door” and Alarm Type = BURGLAR to the “alarm_general” channel.

Below is the configuration I think should solve the problem.

"endpoints": [
{
        "commandclasses": [
            {
                "id": "71",
                "name": "ALARM",
                "version": "3",
                "nif": true,
                "basic": false,
                "secure": false,
                "nonsecure": true,
                "config": "",
                "channels": [
                    {
                        "type": "alarm_general",
                        "label": "Alarm",
                        "config": [
                            "type": "BURGLAR"

                        ]
                    },
                    {
                        "type": "sensor_door",
                        "label": "Door Sensor",
                        "config": [
                            "type": "ACCESS_CONTROL"
                        ]
                    }
                ]
            }
}

Do you have any recommendation how to manually test this on my installation. Is it possible to change local device database or I need to change online database and wait for the new snapshot?
Can you provide the edit rights for the device database?

Thanks