"Keep it simple" blueprint
I created this blueprint for the Philips Hue “Tap Dial Switch” in order to keep automation simple. It allows you to easily configure actions for button presses, long presses, and rotary movements of the dial.
Actions:
- Button 1 short press
- Button 2 short press
- Button 3 short press
- Button 4 short press
- Button 1 long press
- Button 2 long press
- Button 3 long press
- Button 4 long press
- Rotate Left
- Rotate Right
Blueprint:
blueprint:
name: 'Deconz - Philips Hue - Tap Dial Switch'
description: 'Simple Philips Hue "Tap Dial Switch" blueprint incl. rotary events.'
domain: automation
input:
remote:
name: Hue Dial Switch
selector:
device:
integration: deconz
model: RDM002
button1:
name: 1️⃣ Button 1 short press
default: []
selector:
action: {}
button2:
name: 2️⃣ Button 2 short press
default: []
selector:
action: {}
button3:
name: 3️⃣ Button 3 short press
default: []
selector:
action: {}
button4:
name: 4️⃣ Button 4 short press
default: []
selector:
action: {}
button1_long:
name: 1️⃣🕐 Button 1 long press
default: []
selector:
action: {}
button2_long:
name: 2️⃣🕐 Button 2 long press
default: []
selector:
action: {}
button3_long:
name: 3️⃣🕐 Button 3 long press
default: []
selector:
action: {}
button4_long:
name: 4️⃣🕐 Button 4 long press
default: []
selector:
action: {}
rotate_left:
name: ↪️ Rotate Left
description: '(-10% Brightness precentage, no transition -> for smooth hue dimming)'
default: []
selector:
action: {}
rotate_right:
name: ↩️ Rotate Right
description: '(10% Brightness precentage, no transition -> for smooth hue dimming)'
default: []
selector:
action: {}
mode: restart
max_exceeded: silent
trigger:
- platform: event
event_type: deconz_event
event_data:
device_id: !input 'remote'
- platform: event
event_type: deconz_relative_rotary_event
event_data:
device_id: !input 'remote'
action:
- variables:
event: '{{ trigger.event.data.event }}'
rotary_event: '{{ trigger.event.data.rotation }}'
- choose:
- conditions:
- '{{ event == 1002 }}'
sequence: !input 'button1'
- conditions:
- '{{ event == 2002 }}'
sequence: !input 'button2'
- conditions:
- '{{ event == 3002 }}'
sequence: !input 'button3'
- conditions:
- '{{ event == 4002 }}'
sequence: !input 'button4'
- conditions:
- '{{ event == 1001 }}'
sequence: !input 'button1_long'
- conditions:
- '{{ event == 2001 }}'
sequence: !input 'button2_long'
- conditions:
- '{{ event == 3001 }}'
sequence: !input 'button3_long'
- conditions:
- '{{ event == 4001 }}'
sequence: !input 'button4_long'
- conditions:
- '{{ rotary_event <= 0 }}'
sequence: !input 'rotate_left'
- conditions:
- '{{ rotary_event >= 0 }}'
sequence: !input 'rotate_right'
I hope you like it