This blueprint allows a second on/up tap to make dimmer switches go to full brightness. If you have simple Zigbee dimmers like Jasco Enbrighten 48030 In-Wall Dimmer, these don’t support double-tap to trigger a scene or other function. This script solves that globally for all Zigbee dimmers.
FEATURES
- The dimmers go full bright (100%) when you turn it on a second time within a couple seconds (configurable).
- The default on-level is preserved so the next time you turn it on, the light goes to whatever brightness you had set.
- Applies to all Zigbee devices with a light entity that send a zha_event with command “on”, it’s not necessary to create an automation for individual lights.
- Enbrighten Dimmers require a short pause before the second “on” tap, otherwise it treats it as a rapid tap which is used to modify some hardware settings (probably why they don’t support double-tap commands).
- You can modify the trigger event_data filter to only apply to your specific device_id or a certain model of devices.
BLUEPRINT
blueprint:
source_url: https://community.home-assistant.io/t/zha-all-dimmer-switches-tap-on-again-for-full-brightness/627404
domain: automation
name: Zigbee Dimmer Tap To Full Bright
description: 'Tap "on" a second time to go to full brightness. Applies to all ZHA devices with a light entity.'
input:
second_tap_within:
name: 'Second "On" Must Occur Within'
selector:
duration:
default:
seconds: 2
trigger:
- platform: event
event_type: zha_event
event_data:
command: 'on'
variables:
light_device: '{{ trigger.event.data.device_id }}'
light_entity: >
{% set lfind = device_entities(light_device) | select("match", "light\.") | list %}
{{ lfind | first if lfind | length > 0 else '' }}
condition:
- condition: template
value_template: "{{ light_entity != '' }}"
action:
- wait_for_trigger:
- platform: event
event_type: zha_event
event_data:
device_id: '{{ light_device }}'
command: 'on'
- platform: template
value_template: "{{ is_state(light_entity, 'off') }}"
timeout: !input second_tap_within
continue_on_timeout: false
- condition: template
value_template: '{{ is_state(light_entity, "on") }}'
- service: light.turn_on
data:
brightness: 255
target:
device_id: '{{ light_device }}'
mode: single
max_exceeded: silent