ZHA ROBB Smarrt 8-Button Switch (ROB_200-007-0) blueprint

Hi all,

This blueprint is based @FunkeyFlo’s blueprint for the Robb smart 8-switch wall mount ROB_200-007-0 device. As FunkeyFlo noticed his blueprint works only with zigbee2mqqt, while this one works with ZHA (deCONZ). While not tested, it should also work with the 2 and 4 button variant (if not give me a notice)

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

c0004a9032f94da2a3aace2235fbfc4faed6f53b

Use this for the 4 button variant (ROB_200-008-0)
Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

Use this for the 2 button variant (ROB_200-009-0)
Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

There is also a 4 channel remote control available from ROBB SMARRT (ROB_200-024-0). Use this blueprint to enable all buttons
Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.

ROB_200-024-0

blueprint:
  name: Robb smart 8-button switch
  description:  |
    This blueprint is for the  Robb smarrt 8-button switch panel (ROBB ROB_200-007-0) when used with zha.
    It is for genral use so all buttons can be connected to any action of your choice. This remote supports short button clicks and long button presses (over 4 seconds)
    Make sure to select the correct sensor for the remote.
  domain: automation
  input:
    remote:
      name: Remote
      description: Switch remote to use
      selector:
        device:
          integration: zha
          manufacturer: "ROBB smarrt"
          entity:
            domain: sensor
            device_class: battery
          
    on_button_1_short:
      name: On button 1 - short
      default: []
      selector:
        action: {}
    off_button_1_short:
      name: Off button 1 - short
      default: []
      selector:
        action: {}
    on_button_1_long:
      name: On button 1 - long press
      default: []
      selector:
        action: {}
    off_button_1_long:
      name: Off button 1 - long press
      default: []
      selector:
        action: {}

    on_button_2_short:
      name: On button 2 - short
      default: []
      selector:
        action: {}
    off_button_2_short:
      name: Off button 2 - short
      default: []
      selector:
        action: {}
    on_button_2_long:
      name: On button 2 - long press
      default: []
      selector:
        action: {}
    off_button_2_long:
      name: Off button 2 - long press
      default: []
      selector:
        action: {}

    on_button_3_short:
      name: On button 3 - short
      default: []
      selector:
        action: {}
    off_button_3_short:
      name: Off button 3 - short
      default: []
      selector:
        action: {}
    on_button_3_long:
      name: On button 3 - long press
      default: []
      selector:
        action: {}
    off_button_3_long:
      name: Off button 3 - long press
      default: []
      selector:
        action: {}

    on_button_4_short:
      name: On button 4 - short
      default: []
      selector:
        action: {}
    off_button_4_short:
      name: Off button 4 - short
      default: []
      selector:
        action: {}
    on_button_4_long:
      name: On button 4 - long press
      default: []
      selector:
        action: {}
    off_button_4_long:
      name: Off button 4 - long press
      default: []
      selector:
        action: {}


mode: restart
max_exceeded: silent
trigger:
  - platform: event
    event_type: zha_event
    event_data:
      device_id: !input "remote"
  
action:
  - variables:
      button: '{{ trigger.event.data.endpoint_id }}'
      cmd: '{{ trigger.event.data.command }}'
      args: '{{ trigger.event.data.args }}'
  - choose:
      - conditions:
          - "{{ button == 1 and cmd == 'on' }}"
        sequence: !input "on_button_1_short"
      - conditions:
          - "{{ button == 1 and cmd == 'off' }}"
        sequence: !input "off_button_1_short"
      - conditions:
          - "{{ button == 1 and cmd == 'move_with_on_off' }}"
        sequence:
          - if:
              - condition:
                - '{{ args[11] == "U" }}'
            then: 
                !input "on_button_1_long"
            else:
                !input "off_button_1_long"

      - conditions:
          - "{{ button == 2 and cmd == 'on' }}"
        sequence: !input "on_button_2_short"
      - conditions:
          - "{{ button == 2 and cmd == 'off' }}"
        sequence: !input "off_button_2_short"
      - conditions:
          - "{{ button == 2 and cmd == 'move_with_on_off' }}"
        sequence:
          - if:
              - condition:
                - '{{ args[11] == "U" }}'
            then: 
                !input "on_button_2_long"
            else:
                !input "off_button_2_long"

      - conditions:
          - "{{ button == 3 and cmd == 'on' }}"
        sequence: !input "on_button_3_short"
      - conditions:
          - "{{ button == 3 and cmd == 'off' }}"
        sequence: !input "off_button_3_short"
      - conditions:
          - "{{ button == 3 and cmd == 'move_with_on_off' }}"
        sequence:
          - if:
              - condition:
                - '{{ args[11] == "U" }}'
            then: 
                !input "on_button_3_long"
            else:
                !input "off_button_3_long"

      - conditions:
          - "{{ button == 4 and cmd == 'on' }}"
        sequence: !input "on_button_4_short"
      - conditions:
          - "{{ button == 4 and cmd == 'off' }}"
        sequence: !input "off_button_4_short"
      - conditions:
          - "{{ button == 4 and cmd == 'move_with_on_off' }}"
        sequence:
          - if:
              - condition:
                - '{{ args[11] == "U" }}'
            then: 
                !input "on_button_4_long"
            else:
                !input "off_button_4_long"

Description
It’s a simple blueprint that just maps all the available actions for all 8 buttons.
The available actions are:

  • short press (each button)
  • long press (each button)

This allows you to map any of the button (events) to any action you choose.

Store link

2 Likes

Having just written a similar blueprint this device is also sold as Vesternet VES-ZB-WAL-012 and it identifies as the Sunricher ZG2833K8_EU05.

Hopefully this will help someone find this blueprint for those devices.

Hi,
I have tested your blueprint. The short press buttons works. The long press button’s wont work. The move_mode is not reacting. Both buttons (on and off) react to the else command.

if:
  - condition: template
    value_template: '{{ params[''move_mode''] == 0 }}'
then:
else:
1 Like

(The same problem occurs with the blueprint this one is based on.)

The long press does work, but for some reason the action ID’s are swapped, meaning brightness_move_up_1 correlates to button 4, 2 to 3, 3 to 2 and 4 to 1.

I dunno why but the quick fix is to modify the blueprint to swap these numbers. This fixed it for me.

Hi,
I am new with the blueprints but i have one of those 8 button switches from Robb connected to HAOS.
When i try to use the blueprint it asks me to give the name of the remote device but i am not able to select any device:

I can see it’s actually added as a device via deCONZ. What can i do? A reboot did not work :slight_smile:
Thanks

Hi Stephan,

i have same problem. I added this button to Hue (no confirmation unfortanly).
Downloaded this blueprint, but also no entity or remote visable. Did you find a solution?
How did you use deConz?

Greetings!

Thanks for your reply. I did some research and it seems that ZHA also needs to be installed as an integration but i get unknown errors when adding it with my conbee 2 stick.

I also tried to add it to my HUE controller but gave me the same result.

i see the events in the log:
e.g. 8-knoppen fired event ‘3002’
In the automation script selection it states on selecting: “No matching devices found”
i’m running a Zigbee using Deconz 2 USB integration. Seeing the events are entering H.A. this should work, but somehow they do not link.
Same applies for the battery… keeps signal 0%. While the battery is fully charged. Replacing with the new one makes no difference.
Any clue … Where is the missing link?

Did anyone manage to get this device working? seeing only questions it looks like this device is of no use for automation. sorry for the money spend on it :frowning: .
Connectivity seems to be there as events appear in the log, but the data is of no use seeing battery level of 0 while still working and the events pop into H.A. but no scripts want to use these incoming events. Looks like something is missing but i’ve really no clue which component is malfunction. And my coding knowledge is limited in this world…

For such a button switch; is there a way to set the LED Indicator to stay on?
Use case: Short clicks make blinds go up or down. Long Click put the Blinds in “Auto mode”, where the LED indicator is the feedback that the ‘AUTO mode’ is on. ‘Auto Mode’ could be the blinds go down when sun shines strongly. The LED indicator ‘on’ is the feedback to the user that the blinds are in Automode.

any clue why it would not detect this ?

As in the log it shows the incoming press of 0 o 1
afbeelding

In Deconz: afbeelding

confused…looking for help.
Maybe it helps, the battery is fully powered but show empty:
afbeelding

Hi Neil, did you share this blueprint somewhere?
I have just bought a Yphix device which also identifies as the Sunricher ZG2833K8_EU05.

Hi,

I’ve fixed the long press issue. Took longer than expected
Please reload the blueprint from GitHub

@BartE how do i make it so it keeps decreasing the brightness on hold instead of only doing 1 small decrease?
Also this only seems to allow me to select 1 device, no groups or helpers, is there a way to set this up? It seems to be unstable when using on my Light that has 3 bulbs

Hi @BartE thanks for your time and effort creating this blueprint. I was wondering if I would be able to use this as a base to create a blueprint supporting the " ROBB SMARRT Afstandsbediening 4 Kanaals Zwart Zigbee" SKU: ROB_200-024-0. (link:
4kanaals afstandsbediening Zigbee zwart ROBB SMARRT kopen? | We ❤️ Smart! | ROBBshop)

Turns out… It took me only the effort of removing the restrictions you’ve set-up for devices you were able to select. Don’t know if there were more variables blocking me from seeing results, but the final one was the manufacturer and that did the trick. After that immediately I was able to work with all 4 controls (thus 8 buttons) on short and long press actions. (I was impressed :slight_smile: ).

You could therefore state that the other remote is also (almost) supported by your blueprint

Hi @Pantsema, nice that you were able to use this plugin as well for the specific remote.
The “restrictions” i did put in, is to make sure only supported devices can/will be configured. Can you share the code to me? Maybe i can add support to my plugin for both solutions.

@peterke13371 you can add as many actions as you like, there is no limitation.
I did not implement an auto repeat function, since the device has not implemented that support. It is either a short or a long press.

Ok! Have the basics (on/of) working with a ConBee II stick and with Home Assistant Zigbee Home Automation for this device: https://www.robbshop.nl/draadloze-zigbee-schakelaar-met-2-knoppen (ROB_200-009-0).

Edit: have it also working for dimming/fading up and downwards in steps of 20% in my example. This unit does not repeat yet, so you have to let go the button after the change and press it again (although, there are multiple events in a row…).

Example of the ‘Call a service: Light’ (group exposed as entity)

Example of dimming/fading up with the “I” button in steps of 20% per individual long press:

Example of dimming/fading down with the “O” button in steps of -20% per individual long press:

@peterke13371 About the group: did you already create a Light group for example via the Helpers function? (HA → Settings → Devices and Services → Helpers → Create Helper → Group). After creating a Group, it will expose the new group as Entity.

Hey @BartE , thanks for creating this blueprint! It’s been working brilliantly (8-button version over ZHA). I’m trying to understand how/why it works, and I’m a little stumped, maybe someone here can explain. I must be missing something trivial.

For a long-press for on-button 4, the event looks like so:

event_type: zha_event
data:
  device_ieee: b4:e3:f9:ff:fe:ef:88:12
  unique_id: b4:e3:f9:ff:fe:ef:88:12:4:0x0008
  device_id: f6d80f63eb1dde35617e4058e53b9b4e
  endpoint_id: 4
  cluster_id: 8
  command: move_with_on_off
  args:
    - 0
    - 50
  params:
    move_mode: 0
    rate: 50
origin: LOCAL
time_fired: "2024-01-20T18:03:51.769269+00:00"
context:
  id: 01HMM0P5JSTM0613F6G92EKPAD
  parent_id: null
  user_id: null

and that indeed triggers the right long-press (on_button_4_long), in this part of the blueprint:

    - if:
      - condition:
        - '{{ args[11] == "U" }}'
      then: !input on_button_4_long
      else: !input off_button_4_long

I just don’t understand why… args is [0,50], right, so why is the expression args[11] == "U" now true?