Skip to main content

Controller - IKEA E1524/E1810 TRÅDFRI Wireless 5-Button Remote

Import this blueprint

My Home Assistant

Open your Home Assistant instance and show the blueprint import dialog with a specific blueprint pre-filled.
(Home Assistant 2021.3.0 or higher)

Direct Link

tip

This blueprint is part of the Controllers-Hooks Ecosystem. You can read more about this topic here.

Description

This blueprint provides universal support for running any custom action when a button is pressed on the provided IKEA E1524/E1810 TRÅDFRI Wireless 5-Button Remote. Supports controllers integrated with deCONZ, ZHA, Zigbee2MQTT. Just specify the integration used to connect the remote to Home Assistant when setting up the automation, and the blueprint will take care of all the rest.

In addition of being able to provide custom actions for every kind of button press supported by the remote, the blueprint allows to loop the long press actions while the corresponding button is being held. Once released, the loop stops. This is useful when holding down a button should result in a continuous action (such as lowering the volume of a media player, or controlling a light brightness).

The blueprint also adds support for virtual double button press events, which are not exposed by the controller itself.

tip

Automations created with this blueprint can be connected with one or more Hooks supported by this controller. Hooks allow to easily create controller-based automations for interacting with media players, lights, covers and more. See the list of Hooks available for this controller for additional details.

Requirements

deCONZ Integration

Optional

If you plan to integrate the with deCONZ, you must have this integration set up. The deCONZ integration can be configured from the Home Assistant UI and requires an additional container to run deCONZ on. Head over to the documentation for full details on the required hardware and how to set up deCONZ on your system.

deCONZ Integration Docs

ZHA Integration

Optional

If you plan to integrate the with ZHA, you must have this integration set up. The ZHA integration can be configured from the Home Assistant UI. Check the documentation for full details on the required hardware and how to set up ZHA on your system.

ZHA Integration Docs

Zigbee2MQTT Integration

Optional

If you plan to integrate the with Zigbee2MQTT, you must have this integration set up. Installation methods differ between different installation types. Check out the documentation for full details on the required hardware and how to set up Zigbee2MQTT on your system.

Zigbee2MQTT Docs

Input Text Integration

Required

This integration provides the entity which must be provided to the blueprint in the Helper - Last Controller Event input. Learn more about this helper by reading the dedicated section in the Additional Notes.

Input Text Integration Docs

Inputs

Integration Select Required

Integration used for connecting the remote with Home Assistant. Select one of the available values.


Controller Device Device deCONZ, ZHA Required

The controller device to use for the automation. Choose a value only if the remote is integrated with deCONZ, ZHA.


Controller Entity Entity Zigbee2MQTT Required

The action sensor of the controller to use for the automation. Choose a value only if the remote is integrated with Zigbee2MQTT.


Helper - Last Controller Event Entity Required

Input Text used to store the last event fired by the controller. You will need to manually create a text input entity for this, please read the blueprint Additional Notes for more info.


Left button short press Action Optional

Action to run on short left button press.


Left button long press Action Optional

Action to run on long left button press.


Left button release Action Optional

Action to run on left button release after long press.


Left button double press Action Optional

Action to run on double left button press.


Right button short press Action Optional

Action to run on short right button press.


Right button long press Action Optional

Action to run on long right button press.


Right button release Action Optional

Action to run on right button release after long press.


Right button double press Action Optional

Action to run on double right button press.


Up button short press Action Optional

Action to run on short up button press.


Up button long press Action Optional

Action to run on long up button press.


Up button release Action Optional

Action to run on up button release after long press.


Up button double press Action Optional

Action to run on double up button press.


Down button short press Action Optional

Action to run on short down button press.


Down button long press Action Optional

Action to run on long down button press.


Down button release Action Optional

Action to run on down button release after long press.


Down button double press Action Optional

Action to run on double down button press.


Center button short press Action Optional

Action to run on short center button press.


Center button long press Action Optional

Action to run on long center button press.


Center button double press Action Optional

Action to run on double center button press.


Left button long press - loop until release Boolean Optional

Loop the left button action until the button is released.


Left button long press - Maximum loop repeats Number Optional

Maximum number of repeats for the custom action, when looping is enabled. Use it as a safety limit to prevent an endless loop in case the corresponding stop event is not received.


Right button long press - loop until release Boolean Optional

Loop the right button action until the button is released.


Right button long press - Maximum loop repeats Number Optional

Maximum number of repeats for the custom action, when looping is enabled. Use it as a safety limit to prevent an endless loop in case the corresponding stop event is not received.


Up button long press - loop until release Boolean Optional

Loop the up button action until the button is released.


Up button long press - Maximum loop repeats Number Optional

Maximum number of repeats for the custom action, when looping is enabled. Use it as a safety limit to prevent an endless loop in case the corresponding stop event is not received.


Down button long press - loop until release Boolean Optional

Loop the down button action until the button is released.


Down button long press - Maximum loop repeats Number Optional

Maximum number of repeats for the custom action, when looping is enabled. Use it as a safety limit to prevent an endless loop in case the corresponding stop event is not received.


Expose left button double press event Boolean Optional

Choose whether or not to expose the virtual double press event for the left button. Turn this on if you are providing an action for the left button double press event.


Expose right button double press event Boolean Optional

Choose whether or not to expose the virtual double press event for the right button. Turn this on if you are providing an action for the right button double press event.


Expose up button double press event Boolean Optional

Choose whether or not to expose the virtual double press event for the up button. Turn this on if you are providing an action for the up button double press event.


Expose down button double press event Boolean Optional

Choose whether or not to expose the virtual double press event for the down button. Turn this on if you are providing an action for the down button double press event.


Expose center button double press event Boolean Optional

Choose whether or not to expose the virtual double press event for the center button. Turn this on if you are providing an action for the center button double press event.


Helper - Double Press delay Number Optional

Max delay between the first and the second button press for the double press event. Provide a value only if you are using a double press action. Increase this value if you notice that the double press action is not triggered properly.


Helper - Debounce delay Number Optional

Delay used for debouncing RAW controller events, by default set to 0. A value of 0 disables the debouncing feature. Increase this value if you notice custom actions or linked Hooks running multiple times when interacting with the device. When the controller needs to be debounced, usually a value of 100 is enough to remove all duplicate events.


Available Hooks

Virtual double press actions

Some of the following mappings might include actions for virtual double press events, which are disabled by default. If you are using a hook mapping which provides an action for a virtual double press event, please make sure to enable support for virtual double press on the corresponding buttons with the corresponding blueprint input.

Light

This Hook blueprint allows to build a controller-based automation to control a light. Supports brightness and color control both for white temperature and rgb lights.

Default Mapping

  • Up button short press -> Brightness up
  • Up button long press -> Brightness up (continuous, until release)
  • Down button short press -> Brightness down
  • Down button long press -> Brightness down (continuous, until release)
  • Left button short press -> Color down
  • Left button long press -> Color down (continuous, until release)
  • Right button short press -> Color up
  • Right button long press -> Color up (continuous, until release)
  • Center button short press -> Toggle

Light Hook docs

Media Player

This Hook blueprint allows to build a controller-based automation to control a media player. Supports volume setting, play/pause and track selection.

Default Mapping

  • Up button short press -> Volume up
  • Up button long press -> Volume up (continuous, until release)
  • Down button short press -> Volume down
  • Down button long press -> Volume down (continuous, until release)
  • Left button short press -> Previous track
  • Right button short press -> Next track
  • Center button short press -> Play/Pause
  • Center button long press -> Stop

Media Player Hook docs

Cover

This Hook blueprint allows to build a controller-based automation to control a cover. Supports opening, closing and tilting the cover.

Default Mapping

  • Up button short press -> Open cover
  • Down button short press -> Close cover
  • Left button short press -> Close the cover tilt
  • Right button short press -> Open the cover tilt
  • Center button short press -> Stop cover and cover tilt

Cover Hook docs

Additional Notes

Helper - Last Controller Event

The helper_last_controller_event (Helper - Last Controller Event) input serves as a permanent storage area for the automation. The stored info is used to implement the blueprint's core functionality. To learn more about the helper, how it's used and why it's required, you can read the dedicated section in the Controllers-Hooks Ecosystem documentation.

The helper is used to determine button release events when the controller is integrated with ZHA, because of the actions mapping for the controller with these integrations. Natively, the controller doesn't allow to distinguish between different button release events, so the blueprint must store the previous clicked button.

Virtual double press events

It's also important to note that the controller doesn't natively support double press events. Instead , this blueprint provides virtual double press events. You can read more about them in the general Controllers-Hooks Ecosystem documentation.

Center button long press

Please note that the long press on the center button behaves differently from the long press for other buttons, due to how the controller implements this feature: when long pressing the center button, the controller first fires the short press event, then after a couple of seconds it sends the long press event as well. This behaviour is due to the controller design and it's not relative to any integration or the blueprint itself.

Issues with the E1810 model firing bad events

It has been reported that the newer IKEA E1810 controller, which looks identical to the E1524, might fire wrong events in certain situations when interacting with it. This is due to an issue with the controller design and is not relative to the blueprint itself.

If you notice your controller is not behaving as expected please remove the battery, wait about 2 minutes, insert it back and try again.

Changelog

  • 2021-02-05: first blueprint version 🎉

  • 2021-02-07: fix an issue which prevented to create automations for ZHA or deCONZ.

  • 2021-02-08: update example, fixed an issue which executed actions twice when the remote was connected via Zigbee2MQTT.

  • 2021-03-18: added example for fully controlling a RGB light (thanks @kks36!)

  • 2021-02-21:

    • add support for virtual double press events
    • block automation runs for empty and repeated messages
    • reduce input_text helper writes
  • 2021-03-03: move the blueprint in the Controllers-Hooks Ecosystem. See announcement here. 🎉

  • 2021-03-25: ⚠️ Breaking Change: standardize input names across all the Controller blueprints. If you plan to update this blueprint, please update the inputs in your automations as follows:

    • remote -> controller_device
    • zigbee2mqtt_remote -> controller_entity
    • action_* inputs -> action_button_*
    • helper_last_loop_event_input -> helper_last_controller_event
  • 2021-03-26: add support for the Cover Hook

  • 2021-03-30: Fix event mappings for ZHA and deCONZ

  • 2021-04-19: Fix double press events not being detected with deCONZ

  • 2021-04-23: Fix deCONZ events not being recognized

  • 2021-05-26:

    ⚠️ Breaking Change:

    helper_last_controller_event is now a mandatory input. It also simplifies the blueprint setup (reducing issues due to improper configuration missing the helper, which was required only in certain conditions as was stated in the docs), and provides support for advanced features which might be developed in the future.

    If you plan to update this blueprint, please make sure to provide a valid input_text entity for the helper_last_controller_event input. You should create a separate input_text for each Controller blueprint you're configuring, since using the same for multiple automation could lead to inconsistencies and undefined behaviour.

    Other changes:

    • 🎉 Add Debouncing support. Debouncing avoids duplicate action runs which might occur with certain controllers and integrations. The feature is disabled by default, check the documentation to find out how to enable it
    • Prevent undesired endless loops, which might occur in rare cases when the corresponding stop event is not received, by running loop actions a finite number of times, customizable with four new blueprint inputs
    • Fix inputs wrongly marked as required
    • Fix for Zigbee2MQTT reporting null state changes
  • 2021-07-04: Fix deCONZ button release events not being properly recognized

  • 2021-08-02: Improve inputs documentation and organization

  • 2021-10-26: Standardize blueprints structure and inputs naming across the whole collection. Improve blueprint documentation. No functionality change.

  • 2022-08-08: Optimize characters usage for the helper_last_controller_event text input.