Tuya 4 Gang Portable Remote

Blueprint to control anything using a Tuya 4 Gang Portable Remote and ZHA.

Screen

Blueprint

Click the badge to import this Blueprint: (needs Home Assistant Core 2021.3 or higher)

Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

Or import this Blueprint by using the forum topic URL:

blueprint:
  name: ZHA - Tuya 4 Gang Portable Remote
  description: 'Control anything with a Tuya 4 Gang Portable Remote.

    You can set functions for a single press, double press and long press of each of the four buttons. This allows you to assign, 
    e.g., a scene or anything else.'

  domain: automation
  input:
    remote:
      name: Remote
      description: Tuya 4 Gang Portable Remote to use
      selector:
        device:
          integration: zha
          manufacturer: _TZ3000_ee8nrt2l
          model: TS0044
    single_press_1:
      name: Single press button 1
      description: Action to run on single press of button 1
      default: []
      selector:
        action: {}
    single_press_2:
      name: Single press button 2
      description: Action to run on single press of button 2
      default: []
      selector:
        action: {}
    single_press_3:
      name: Single press button 3
      description: Action to run on single press of button 3
      default: []
      selector:
        action: {}
    single_press_4:
      name: Single press button 4
      description: Action to run on single press of button 4
      default: []
      selector:
        action: {}
    double_press_1:
      name: Double press button 1
      description: Action to run on double press of button 1
      default: []
      selector:
        action: {}
    double_press_2:
      name: Double press button 2
      description: Action to run on double press of button 2
      default: []
      selector:
        action: {}
    double_press_3:
      name: Double press button 3
      description: Action to run on double press of button 3
      default: []
      selector:
        action: {}
    double_press_4:
      name: Double press button 4
      description: Action to run on double press of button 4
      default: []
      selector:
        action: {}
    long_press_1:
      name: Long press button 1
      description: Action to run on long press of button 1
      default: []
      selector:
        action: {}
    long_press_2:
      name: Long press button 2
      description: Action to run on long press of button 2
      default: []
      selector:
        action: {}
    long_press_3:
      name: Long press button 3
      description: Action to run on long press of button 3
      default: []
      selector:
        action: {}
    long_press_4:
      name: Long press button 4
      description: Action to run on long press of button 4
      default: []
      selector:
        action: {}
  source_url: https://gist.github.com/seamus65/5d83a8d3f890db9fc9033123b9c8d19e
mode: restart
max_exceeded: silent
trigger:
- platform: event
  event_type: zha_event
  event_data:
    device_id: !input 'remote'
action:
- variables:
    command: '{{ trigger.event.data.command }}'
    cluster_id: '{{ trigger.event.data.cluster_id }}'
    endpoint_id: '{{ trigger.event.data.endpoint_id }}'
- choose:
  - conditions:
    - '{{ command == ''remote_button_short_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 1 }}'
    sequence: !input 'single_press_1'
  - conditions:
    - '{{ command == ''remote_button_short_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 2 }}'
    sequence: !input 'single_press_2'
  - conditions:
    - '{{ command == ''remote_button_short_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 3 }}'
    sequence: !input 'single_press_3'
  - conditions:
    - '{{ command == ''remote_button_short_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 4 }}'
    sequence: !input 'single_press_4'
  - conditions:
    - '{{ command == ''remote_button_double_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 1 }}'
    sequence: !input 'double_press_1'
  - conditions:
    - '{{ command == ''remote_button_double_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 2 }}'
    sequence: !input 'double_press_2'
  - conditions:
    - '{{ command == ''remote_button_double_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 3 }}'
    sequence: !input 'double_press_3'
  - conditions:
    - '{{ command == ''remote_button_double_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 4 }}'
    sequence: !input 'double_press_4'
  - conditions:
    - '{{ command == ''remote_button_long_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 1 }}'
    sequence: !input 'long_press_1'
  - conditions:
    - '{{ command == ''remote_button_long_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 2 }}'
    sequence: !input 'long_press_2'
  - conditions:
    - '{{ command == ''remote_button_long_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 3 }}'
    sequence: !input 'long_press_3'
  - conditions:
    - '{{ command == ''remote_button_long_press'' }}'
    - '{{ cluster_id == 6 }}'
    - '{{ endpoint_id == 4 }}'
    sequence: !input 'long_press_4'

Can you share a screenshot of your device? mine looks like this


and it doesn’t allow me to use your blueprint because there’s no device to select.

what am I doing wrong?

Here is my one:

If you go in to the blueprint and change the manufacturer to match your one it should then work.

1 Like

You’re a freaking genius lol. Thank you so much I wouldn’t have be able to fix this on my own.

Thanks for that! I think if you’ll remove the manufacturer code from the blurprint it will work out of the box for everyone finding this blueprint without the need to edit it