Skip to content

Instantly share code, notes, and snippets.

@GoliathLabs
Last active August 16, 2024 19:57
Show Gist options
  • Save GoliathLabs/bd9315849536e6b3606861984a68b299 to your computer and use it in GitHub Desktop.
Save GoliathLabs/bd9315849536e6b3606861984a68b299 to your computer and use it in GitHub Desktop.
Tuya 2 button scene switch - TS0042 - Zigbee2MQTT
blueprint:
name: Zigbee2MQTT - Tuya 2-Button Scene Switch
description: Automate your Tuya 2-Button Scene Switch via Zigbee2MQTT - Credits Tweeterhub
domain: automation
input:
switch:
name: Tuya 2-Button Scene Switch
description: Tuya 2-Button Scene Switch to use
selector:
entity:
integration: mqtt
domain: sensor
button_one_short_press:
name: Single Press - Button 1
description: Action to run on button 1 (lower-left) single press
default: []
selector:
action: {}
button_one_double_press:
name: Double Press - Button 1
description: Action to run on button 1 (lower-left) double press
default: []
selector:
action: {}
button_one_long_press:
name: Long Press - Button 1
description: Action to run on button 1 (lower-left) long press
default: []
selector:
action: {}
button_two_short_press:
name: Single Press - Button 2
description: Action to run on button 2 (lower-right) single press
default: []
selector:
action: {}
button_two_double_press:
name: Double Press - Button 2
description: Action to run on button 2 (lower-right) double press
default: []
selector:
action: {}
button_two_long_press:
name: Long Press - Button 2
description: Action to run on button 2 (lower-right) long press
default: []
selector:
action: {}
mode: restart
max_exceeded: silent
trigger:
- platform: state
entity_id: !input 'switch'
action:
- variables:
command: '{{ trigger.to_state.state }}'
- choose:
- conditions:
- '{{ command == ''1_single'' }}'
sequence: !input 'button_one_short_press'
- conditions:
- '{{ command == ''2_single'' }}'
sequence: !input 'button_two_short_press'
- conditions:
- '{{ command == ''1_double'' }}'
sequence: !input 'button_one_double_press'
- conditions:
- '{{ command == ''2_double'' }}'
sequence: !input 'button_two_double_press'
- conditions:
- '{{ command == ''1_hold'' }}'
sequence: !input 'button_one_long_press'
- conditions:
- '{{ command == ''2_hold'' }}'
sequence: !input 'button_two_long_press'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment