Shelly Blu RC 4

Hi everyone. It’s my first time I get to give back to the community. I’m not super good at yaml or anything but I made a pretty simple blueprint for my Shelly Blu RC 4 remote. I thought this could help people set up their remote a little easier. If you have any comments or advice please let me know. It allows for single press, double press and long press for each of the 4 buttons and it’s working well for me so far. Thank you for being a great community!

Features:

  • Short Press, Long Press, and Double Press for all 4 buttons.
  • Easy to customize actions via the blueprint UI.

How to Use:

  1. Import the blueprint.
  2. Select your Shelly BLU RC-4 device.
  3. Assign actions for short press, long press, and double press for each button.

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

1 Like

i added the triple press for those who might need it but since it only a small tweak i don’t won’t to take credit for your work so feel free to update your bluprint if you want

blueprint:
  name: Shelly BLU RC-4 Button Control (Short, Long, Double Press and Triple Press)
  description: Automate actions using Shelly BLU RC-4's 4 buttons with different press
    types.
  domain: automation
  input:
    button_device:
      name: Shelly BLU RC-4
      description: Select the Shelly BLU RC-4 remote.
      selector:
        device:
          integration: bthome
          multiple: false
    button_1_short:
      name: Button 1 Short Press Action
      description: Action when button 1 is short pressed.
      default: []
      selector:
        action: {}
    button_1_double:
      name: Button 1 Double Press Action
      description: Action when button 1 is double pressed.
      default: []
      selector:
        action: {}
    button_1_triple:
      name: Button 1 Triple Press Action
      description: Action when button 1 is Triple pressed.
      default: []
      selector:
        action: {}
    button_1_long:
      name: Button 1 Long Press Action
      description: Action when button 1 is long pressed.
      default: []
      selector:
        action: {}
    button_2_short:
      name: Button 2 Short Press Action
      description: Action when button 2 is short pressed.
      default: []
      selector:
        action: {}
    button_2_double:
      name: Button 2 Double Press Action
      description: Action when button 2 is double pressed.
      default: []
      selector:
        action: {}
    button_2_triple:
      name: Button 2 Triple Press Action
      description: Action when button 1 is Triple pressed.
      default: []
      selector:
        action: {}
    button_2_long:
      name: Button 2 Long Press Action
      description: Action when button 2 is long pressed.
      default: []
      selector:
        action: {}
    button_3_short:
      name: Button 3 Short Press Action
      description: Action when button 3 is short pressed.
      default: []
      selector:
        action: {}
    button_3_double:
      name: Button 3 Double Press Action
      description: Action when button 3 is double pressed.
      default: []
      selector:
        action: {}
    button_3_triple:
      name: Button 3 Triple Press Action
      description: Action when button 1 is Triple pressed.
      default: []
      selector:
        action: {}
    button_3_long:
      name: Button 3 Long Press Action
      description: Action when button 3 is long pressed.
      default: []
      selector:
        action: {}
    button_4_short:
      name: Button 4 Short Press Action
      description: Action when button 4 is short pressed.
      default: []
      selector:
        action: {}
    button_4_double:
      name: Button 4 Double Press Action
      description: Action when button 4 is double pressed.
      default: []
      selector:
        action: {}
    button_4_triple:
      name: Button 4 Triple Press Action
      description: Action when button 4 is Triple pressed.
      default: []
      selector:
        action: {}
    button_4_long:
      name: Button 4 Long Press Action
      description: Action when button 4 is long pressed.
      default: []
      selector:
        action: {}
  #source_url: 
trigger:
- platform: event
  event_type: bthome_ble_event
  event_data:
    device_id: !input button_device
action:
- choose:
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_1'' and trigger.event.data.event_type
        == ''press'' }}'
    sequence: !input button_1_short
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_1'' and trigger.event.data.event_type
        == ''long_press'' }}'
    sequence: !input button_1_long
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_1'' and trigger.event.data.event_type
        == ''double_press'' }}'
    sequence: !input button_1_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_2'' and trigger.event.data.event_type
        == ''press'' }}'
    sequence: !input button_2_short
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_2'' and trigger.event.data.event_type
        == ''long_press'' }}'
    sequence: !input button_2_long
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_2'' and trigger.event.data.event_type
        == ''double_press'' }}'
    sequence: !input button_2_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_3'' and trigger.event.data.event_type
        == ''press'' }}'
    sequence: !input button_3_short
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_3'' and trigger.event.data.event_type
        == ''long_press'' }}'
    sequence: !input button_3_long
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_3'' and trigger.event.data.event_type
        == ''double_press'' }}'
    sequence: !input button_3_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_4'' and trigger.event.data.event_type
        == ''press'' }}'
    sequence: !input button_4_short
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_4'' and trigger.event.data.event_type
        == ''long_press'' }}'
    sequence: !input button_4_long
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_4'' and trigger.event.data.event_type
        == ''double_press'' }}'
    sequence: !input button_4_double
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_4'' and trigger.event.data.event_type
        == ''triple_press'' }}'
    sequence: !input button_4_triple
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_3'' and trigger.event.data.event_type
        == ''triple_press'' }}'
    sequence: !input button_3_triple
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_2'' and trigger.event.data.event_type
        == ''triple_press'' }}'
    sequence: !input button_2_triple
  - conditions:
    - condition: template
      value_template: '{{ trigger.event.data.event_class == ''button_1'' and trigger.event.data.event_type
        == ''triple_press'' }}'
    sequence: !input button_1_triple
mode: single