Zigbee2MQTTZigbee2MQTT
  • Getting started
  • Supported Adapters
  • Supported Devices
  • Installation
  • Configuration
  • Usage
  • FAQ
Devices
  • Zigbee

    • Zigbee network
    • Improve network range and stability
    • Sniff Zigbee traffic
    • Create a CC2530 router
  • Support new devices

    • Support new devices
    • Support new Tuya devices
    • Find Tuya Data Points
  • Remote Adapter

    • Connect to a remote adapter
    • Connect to a remote Sonoff ZBBridge
  • More

    • 3D cases
    • External converters
    • External extensions
    • Switch to the dev branch
    • Get Tuya and Xiaomi OTA url
  • Forum
  • Discord
  • Issues
  • Donate
GitHub
GitHub (docs)
  • Getting started
  • Supported Adapters
  • Supported Devices
  • Installation
  • Configuration
  • Usage
  • FAQ
Devices
  • Zigbee

    • Zigbee network
    • Improve network range and stability
    • Sniff Zigbee traffic
    • Create a CC2530 router
  • Support new devices

    • Support new devices
    • Support new Tuya devices
    • Find Tuya Data Points
  • Remote Adapter

    • Connect to a remote adapter
    • Connect to a remote Sonoff ZBBridge
  • More

    • 3D cases
    • External converters
    • External extensions
    • Switch to the dev branch
    • Get Tuya and Xiaomi OTA url
  • Forum
  • Discord
  • Issues
  • Donate
GitHub
GitHub (docs)

IKEA E1812

ModelE1812
VendorIKEA
DescriptionTRADFRI shortcut button
Exposesidentify, battery, action
PictureIKEA E1812

Notes

Related

  • TRADFRI on/off switch
  • TRADFRI open/close remote

Information

  • FCC - emissions, teardown, user manual
  • CSA IoT - Zigbee compliance
  • Based on Silabs chipset

Battery

Uses 1 x CR2032 battery (3V)

This device sleeps to preserve energy when it's not actively used.
When sleeping, it will not respond to any Z2M commands.
Press its buttons repeatedly to keep it awake and allow interactions, for example when attempting to bind.

Pairing

Unscrew and remove the bottom cover to reveal the pair button.
Press the pair button 4 times to factory reset and start pairing.
A red light should flash and pulsate until it connects.

Touchlink

This buttons uses Touchlink to set-up binding without a Zigbee network.
To activate, bring it close to the device you want to control, and hold the pair button for 10s.
Unfortunately, this is barely useful on the initial firmware, because it's missing the Off command. Also the firmware update removes this possibility entirely.

Binding

When connected to a Zigbee network, this remote can directly control devices or groups.

On initial firmware, it can be bound to multiple devices and multiple groups.
Bind a single cluster, e.g. genOnOff to enable all commands. Binding multiple clusters will duplicate (spam) the commands!

On latest firmware, it can be bound to multiple devices or one group.
To control devices, bind all clusters you need (genOnOff and genLevelCtrl).
To control a group, bind only genBasic, and unbind everything else, including the coordinator.

Note that, when bound to a device, the remote may spam the network and drain the battery if that device goes offline. Bind to group to avoid this.

Action mapping

Latest firmware enables double-click = off.
To accommodate this, a noticeable 0.6s delay is added to single-clicks.

PressZ2M ActionBind Action
SingleonOn
DoubleoffOff
Triple+Multiple off and onMultiple Off and On
Longbrightness_move_up + brightness_stopMoveWithOnOff (Up, 83 units/s) + StopWithOnOff

Older firmware is missing multi-clicks.
It's not even possible to configure them in automations, because this version has a very long 0.4s debounce time.
The benefit is that single-clicks are sent immediately.

PressZ2M ActionBind Action
SingleonOn
Longbrightness_move_up + brightness_stopMoveWithOnOff (Up, 83 units/s) + StopWithOnOff

Button must be held for ~0.7s until long-press gets detected, on any version.

Firmware

  • v2.3.015, date 20190715: initial version, not available as a downgrade
  • v24.4.6, date 20230308: the latest and only update available
    • adds double-clicks and removes Touchlink

Troubleshooting

  1. Difficulties pairing, action null
    • Update coordinator
    • Power-off 'bad' routers (e.g. Telink Tuya, AwoX) and pair again
    • Pair directly through the coordinator
    • Add USB 2.0 extension to dongle coordinators
  2. Battery null after pairing
    • Power-cycle the remote and refresh percentage
  3. Battery drains too quick, action null, remote offline
    • Reset or unbind it from offline devices

OTA updates

This device supports OTA updates, for more information see OTA updates.

Options

How to use device type specific configuration

  • identify_timeout: Sets the duration of the identification procedure in seconds (i.e., how long the device would flash).The value ranges from 1 to 30 seconds (default: 3). The value must be a number with a minimum value of 1 and with a maximum value of 30

  • simulated_brightness: Simulate a brightness value. If this device provides a brightness_move_up or brightness_move_down action it is possible to specify the update interval and delta. The action_brightness_delta indicates the delta for each interval. Example:

simulated_brightness:
  delta: 20 # delta per interval, default = 20
  interval: 200 # interval in milliseconds, default = 200

Exposes

Identify (enum)

Initiate device identification. This device is asleep by default.You may need to wake it up first before sending the identify command.. Value will not be published in the state. It's not possible to read (/get) this value. To write (/set) a value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/set with payload {"identify": NEW_VALUE}. The possible values are: identify.

Battery (numeric)

Remaining battery in %. Value can be found in the published state on the battery property. To read (/get) the value publish a message to topic zigbee2mqtt/FRIENDLY_NAME/get with payload {"battery": ""}. It's not possible to write (/set) this value. The minimal value is 0 and the maximum value is 100. The unit of this value is %.

Action (enum)

Triggered action (e.g. a button click). Value can be found in the published state on the action property. It's not possible to read (/get) or write (/set) this value. The possible values are: on, off, brightness_move_up, brightness_stop.

Help to make the docu better and edit this page on Github ✌
Page was last updated on: 5/31/26, 7:33 PM