ZWaveJS - request to include device name in zwave_js_event

When using ZWave1.4 the zwave events including the name of the device in the entity_id field. This made it easier to use with node-red etc, since you could filter the events using the name on that field. I used this to handle double-click events from ZWave devices which are relayed through the usb device via group 3.
After switching to ZWaveJS (using the ZWaveJStoMQTT addon) the new zwave_js_event no longer provides an value in the entity_id field of the event payload, and instead I have to use the payload.event.node_id field, which is the numeric node_id of the zwave device.
While this works it’s far less readable, and means that you have to remember or lookup the node_id of the zwave device, rather than just using the node name (which if you’ve used a good naming scheme is far easier to remember or work-out).
Could I request including the node-name in the entity_id field of the payload again, or a new field if that’s easier?
Thanks for your consideration. This would really make setting up automations, whether using node-red or other systems, much easier.

I 100% second this request. Node-Red loses a lot of basic filtering capabilities without an entity ID. For example, I have light switches in my kitchen and in my living room that can fire off scenes, and node red needs to be able to filter on the name to differentiate kitchen events from living room events in order to perform the associated action. Going by nodeID will be a major pain. In Zwave 1.6, this field was populated by the zwave entity, which no longer exists in ZwaveJS implementations.

2 Likes

Hi Lee,

I’m trying to trigger on double-click events from ZWave devices, specifically a Inovelli Red light switch, using ZWaveJStoMQTT. I can’t figure out how to detect the zwave_js_event.

I realize you’re using Node Red but do you know how to detect the event using yaml?

I can see the event logged in my home-assistant.log file. However, I tried using the Developer Tools to listen for zwave_js_event.value_notification and got nothing.

I also tried the automation below but it doesn’t trigger.

- alias: "Garage Light Double Up"
  trigger:
    - platform: event
      event_type: zwave_js_event.value_notification
  action:
    - service: light.turn_off
      entity_id: light.garage_light_current_value

I think I got it. Details on my earlier post.

I am also having trouble due to the missing entity_id so +1 on this feature request.

+1

I am using @tsukraw 's Zen32 node and it requires a filter by Node ID. It would be preferable to use the device name if it were available in zwave_js.value_notification