🎮 ZHA, deCONZ, Zigbee2MQTT - IKEA E2001/E2002 STYRBAR Remote control Universal blueprint - all actions + double click events - control lights, media players and more with Hooks

Setting up ZigBee groups is done through ZHA, Zigbee2MQTT or deconz - you didn’t say which you use. For ZHA you go to Settings > Devices & Services, then locate the ZHA integration, click on Configure menu, and select Groups tab where you can then create new groups.

The main difference between the two, I think, is that ZigBee devices know they belong to a ZigBee Group, and will respond to any messages sent to that group, whereas with Home Assistant Groups separate messages are sent to each device in the group. This can lead to lights coming on at slightly different times - something I’ve heard as the popcorn effect.

I’m not sure if there are any downsides to ZigBee groups. Probably a bit harder to troubleshoot. In general I use ZigBee groups when I can.

Checking in here, and also can’t get double click for up/down working.The rest of the buttons work perfectly!

From what I see, the up/down button triggers don’t get repeated in ZHA, unlike the left/right buttons.

Hi there, please see these posts.

Thanks for the tips - I am indeed using the latest blueprint but just can’t double press to trigger on the Top and Bottom buttons. In the logbook they just register as only one press. The left and right double presses work perfectly.

Sorry for the obvious question: Is the toggle switch for double press turned on?

What Firmware version is your Styrbar? You can find it under the device via the Settings > Devices & Services > ZHA Integration → Devices > {Remote}.

I am running Firmware 0x00010024 with no issues (with the Double Press Down, at least.)
You might need to set up ZHA Firmware Updates to upgrade.

Also make sure your signal strengths are strong, and your Zigbee stick is separated from the host device (using USB extensions) and WiFi Access Points.

Thanks for the tip! The double press switch toggle is turned on. Signal strength is strong with no issues on double press on the left and right buttons.

I’m also running a later 2.4.5 firmware (which was manually installed, see here Ikea Styrbar Force OTA if on V1.0.024). The double press wasn’t working on 1.024 firmware either.

Try going to developer tools > events and in the bottom input box type “zha_event” then hit the start listening button.

Press the button once, make note of the data, do a double press and make note of the data.

Compare them. If they are equal then your remote might be at fault. If they are different then remote is OK and it’s most likely the blueprint :slight_smile:

Thanks for sharing. Based on this, zha_event captures 2 successive clicks on the Left and Right buttons, but captures only 1 click on the Top and Down buttons, even when I clicked twice.

So not sure what’s at fault here - the remote, the quirk, or the blueprint…

Hmm. It would appear that my presses are all the Same aswell. No difference between single and double press in terms of what’s picked up.

Are you using any debounce in your BP? The last setting when setting up the BP. I have it at 100 millis

My debounce is set at 0, setting to 100 is no-go too. zha_event doesn’t register top/bottom clicks twice.

Well it would seem that my remote works as yours. There is no other event fired based on single/double click.

yet my BP with double-tap works but I can’t hit the buttons to fast then double-click wont register.
Since the code is not picking up any special codes but seems to rely on timing and the last_press helper I’d advise you to use the debounce at 100 and try to find the right timing between your presses.

1 Like

@borez
The timing can be a bit precise at times, and often it’s slower than you think.
Using a stopwatch might help you get used to it; that helped for me.

Thanks all! I did manage to get double presses to work - and yes, the timing needs to be precise.
It’s a bit too slow for my taste (almost 0.5-0.75s delay between presses), and I often get accidental single clicks.

No worries!
I think it’s just how it is unfortunately. The hardware doesn’t support double clicks - it’s all being done in software, so any delays caused by interference, CPU load, cosmic radiation can trip it up. I think that’s why the delay needs to be so high.
I share your problems!

1 Like

Thank you so much for this. It fixed my issues with the Ikea e2001 / e2002.

1 Like

Thanks for creating this blueprint.
I installed the latest version from @lsismeiro (dropbox), figured out the double click delay and debounce on the up button. Works beautifully.
Then I enabled double left and right click, which seemed to have broken single left/right click :frowning:
Can anyone reproduce/fix?

1 Like

Is it possible in some way to toggle through a few preset color settings with this blueprint?

I would like to assign click-up to on/2700K/x%brightness and if already on toggle between that setting and 4200K/100%Brightness.

It would also be nice to be able to use left/right to toggle between around 10 preset colors/brightness settings…

I saw there is a link in documentation to Hook - Light blueprint, but I don’t really understand how to use it or what it does… and in it’s comments it looks to have issues with Styrbar E2001, E2002…

I use a list of colors and step through in a similar way. I think a list of “profiles” will do the trick for you. (You create a list in your version of “homeassistant.local:8123/config/helpers”). For your first issue, simply have a list of two profiles (and make sure you set “cycle: true”…)

    action_button_right_short:
      - service: input_select.select_next
        data:
          cycle: true
        target:
          entity_id: input_select.janyc_light_color
      - service: light.turn_on
        data:
          color_name: "{{ states('input_select.janyc_light_color') }}"
        target:
          entity_id: light.janyc_roof

    action_button_left_short:
      - service: input_select.select_previus
        data:
          cycle: true
        target:
          entity_id: input_select.janyc_light_color
      - service: light.turn_on
        data:
          color_name: "{{ states('input_select.janyc_light_color') }}"
        target:
          entity_id: light.janyc_roof

hmmm…I see there is some opportunity…but I don’t really understand…
Profiles looks to be one csv-file )light_profiles.csv in the config folder that is supposed to have a header with the info used, e.g. profile,color_x,color_y,brightness,transition
One profile entry can be marked as default by adding “.default” after the profile name
…but how to handle it with profiles for several lights or as if I want one list with two color temperatures and another list with a set of colors…?

Those color profiles, isn’t that something else than using helpers?
If using helpers, what kind of helper is that? Text or dropdown or which one to select.

In your example, does input_select.janyc_light_color refer to the helper and light.janyc_roof to the entity?

Feels like I’m close to the solution now…might have to buy some toys soon and start testing…(but too much else going on now, so might have to wait 2 weeks…even though it will be difficult…)

…but how to handle it with profiles for several lights or as if I want one list with two color temperatures and another list with a set of colors…?

First some clarification: By colors I mean: green, blue, red, etc… I have that in the list “input_select.janyc_light_color”. The automation reads the selected color by the use of the template: "{{ “states(‘input_select.janyc_light_color’) }}”

#Profile version
action_button_right_short:
      - service: input_select.select_next
        data:
          cycle: true
        target:
          entity_id: input_select.janyc_light_profile
      - service: light.turn_on
        data:
          profile: "{{ states('input_select.janyc_light_profile') }}"
        target:
          entity_id: light.janyc_roof

    action_button_left_short:
      - service: input_select.select_previus
        data:
          cycle: true
        target:
          entity_id: input_select.janyc_light_profile
      - service: light.turn_on
        data:
          profile: "{{ states('input_select.janyc_light_profile') }}"
        target:
          entity_id: light.janyc_roof

Those color profiles, isn’t that something else than using helpers?

No, can define the profiles you want in the “light_profiles.csv”.

If using helpers, what kind of helper is that? Text or dropdown or which one to select.

Dropdown, with names of profiles.

In your example, does input_select.janyc_light_color refer to the helper and light.janyc_roof to the entity?

Yes.

Feels like I’m close to the solution now…might have to buy some toys soon and start testing…(but too much else going on now, so might have to wait 2 weeks…even though it will be difficult…)

Good Luck :slight_smile: