blueprint: name: Multi-Tap Scene Controller (Zooz & HomeSeer) description: > Control lights or switches based on single, double, or triple tap up/down events from a Z-Wave switch (e.g., Zooz or HomeSeer). domain: automation input: master_device: name: Master Device(s) selector: device: multiple: true slave_entities: name: Slave Lights or Switches selector: target: entity: domain: - light - switch tap_types: name: Tap Type(s) selector: select: multiple: true options: - KeyPressed - KeyPressed2x - KeyPressed3x tap_up: name: Trigger on Tap Up? default: true selector: boolean: {} tap_down: name: Trigger on Tap Down? default: true selector: boolean: {} trigger: - platform: event event_type: zwave_js_value_notification variables: tap_types: !input tap_types tap_up: !input tap_up tap_down: !input tap_down master_device_ids: !input master_device condition: - condition: template value_template: > {% set evt = trigger.event.data %} {{ evt.command_class_name == 'Central Scene' and evt.value in tap_types and ( (tap_up and evt.property_key == 0) or (tap_down and evt.property_key == 1) ) and evt.device_id in master_device_ids }} action: - choose: - conditions: - condition: template value_template: "{{ trigger.event.data.property_key == 0 }}" sequence: - service: homeassistant.turn_on target: !input slave_entities - conditions: - condition: template value_template: "{{ trigger.event.data.property_key == 1 }}" sequence: - service: homeassistant.turn_off target: !input slave_entities # Optional: Log the event data for troubleshooting - service: system_log.write data: message: > Multi-Tap Triggered: {{ trigger.event.data }} level: info mode: single