IKEA RODRET + SOMRIG + TRADFRI Remotes - ZHA/Z2M - Control Light

I tested now with another SOMRIG connected to a different light and it is doing the same.

Sorry I cannot debug ZHA at the moment.
Could you check your automation execution history, see if it is triggered when you release the button ? Basically it should be triggered and do nothing besides interrupting the previous execution (when holding down the button).
Also, do you have the same behaviour when holding down on button ?

When dimming up, command: long_release is registered in the execution history and the lights stop dimming up when releasing the ON button. When doing the same with the OFF button it does not trigger a command: long_release and the lights continue to dim down after releasing the button.

I pushed a fix but I’m in the dark as I dont have access to my zha setup.
Can you try to refresh the blueprint and check again please?

Sorry, now it immediately goes down to 1% without dimming step by step.

It should be ok now.
You can refresh the blueprint :crossed_fingers:t2:

1 Like

That did the trick. Thank you

Hi everyone,

I’m using an IKEA Tradfri power supply connected to a smart outlet that operates on a schedule. The outlet powers my computer, monitors, and other equipment, including spotlights. It’s set to turn on at 7:30 AM and off at 4:30 PM daily.

The Tradfri power supply controls my spotlights using this blueprint and a Somrig remote. However, I’ve noticed that the spotlights always turn on automatically when the power is restored in the morning. I’d like to prevent this from happening and keep the spotlights off when the outlet turns on.

Does anyone have a suggestion on how to stop the spotlights from turning on automatically? Could this be something added to the code to prevent the spotlights from powering up when the outlet is restored each morning?

Thanks in advance!

Thank you so much for this Automation!!

Just one thing I’d like to know
 is it possible to connect Rodret to my light directly and still connect the TRÅDFRI Bulb to Home Assistant? The dimming is just so much smoother when directly connected.

Thanks for this blueprint. I have been using it for a while now.
I have noticed lately that the transition on and off has gotten longer. Espescially when turning off it can take up to 10-15 seconds to transition off. Trying different lights the fade time tends to vary.

My preference for my lights is instantaneous off and on. So I took control of my automation and changed this and the dimmer step to work much more dynamically. It would be great as a feature to have the transition time and dimmer step as options for other users of the blueprint who may not want to fiddle.

Thanks!

Hey !

New version is here :rocket:

v2.2.0 :boom: Breaking Changes

  • feat: added TRADFRI on/off switch (E1743), thanks to @yarafie
    :mega: :warning: Files were renamed to reflect the Tradfri support, so in order to update smoothly you should:
  1. import the new blueprint version
  2. open your existing automation
    2.1 Edit in yaml mode
    2.2 Update line 4 from path: damru/ikea_E2201-E2213_ZHA-Z2M_control-light.yaml to path: damru/ikea_E1743-E2201-E2213_ZHA-Z2M_control-light.yaml
  • feat!: allow multiple remotes
    :mega: :warning: Please update any automation using these blueprints in order to reselect the remote (and add new ones if needed)

Check the :blue_book: first post to download the blueprint

Nice Blueprint, just wondering how does this compare with Switch Manager, other than fancy UI?

I don’t get this working. I see from traces that automation gets trigged. But it always stops in the first check if device is in list of devices. That gets value false and automation stops.

My device is Ikea rodret. Just got it from ikea today. I added this automation, and it listed the controller as an option to add is as controller device. Then I added 806 lm light as the one to be controlled. And saved the automation.

Regardless if I press on or off, the trace gets the value but stops at the first check if device is in the list of devises.

I use zigbee2mqtt.
Core 2025.2.4
Frontend 20250214.0

This is the device ifo in z2m:

Device type
    EndDevice
Zigbee Model
    RODRET Dimmer
Zigbee Manufacturer
    IKEA of Sweden
Description
    RODRET wireless dimmer/power switch
Support status

    Supported

Network address
    0x9799 / 38809
Firmware build date
    20221114
Firmware version
    1.0.47
Manufacturer
    IKEA
Model
    E2201

I feel there is some bug in device name comparison, any idea?

And now I found how to see the devices and parsed device. There definately is a bug how to parse the mqtt device name as it’s empty:

this:
  entity_id: automation.allin_poytavalon_kaukosaato
  state: 'on'
  attributes:
    id: '1740852161851'
    last_triggered: '2025-03-01T18:18:36.483847+00:00'
    mode: restart
    current: 0
    friendly_name: Allin pöytÀvalon kaukosÀÀtö
  last_changed: '2025-03-01T18:58:11.652336+00:00'
  last_reported: '2025-03-01T18:58:11.652336+00:00'
  last_updated: '2025-03-01T18:58:11.652336+00:00'
  context:
    id: 01JN9H5F24NKN6EBK5J8MN4WG5
    parent_id: null
    user_id: null
trigger:
  id: press-on-z2m-e1743-e2201
  idx: '1'
  alias: null
  platform: mqtt
  topic: zigbee2mqtt/0x0c2a6ffffe550171/action
  payload: 'on'
  qos: 0
  description: mqtt topic zigbee2mqtt/0x0c2a6ffffe550171/action
helper_force_brightness: false
helper_hold_delay: 0.1
helper_hold_dim_step: 4
light: light.allin_poytavalo
remote_devices:
  - b46909cb791812d9be04e28a1b21c281
remote_device: null
mqtt_topic: zigbee2mqtt/0x0c2a6ffffe550171/action

The blueprint will extract de device name from the matt topic in order to get the device id.
So, in your case, could you check the result of the following command under Developer tools / Template:
{{ device_id("0x0c2a6ffffe550171") }}
If the result is still null, this would explain the issue, but I wouldn’t know why this device name doesn’t match any id.
Otherwise, you could try to refresh the blueprint, save again your automation, disable / enable it and check again.

is the rodret or somrig capable of having a button (like a double tap) where I can turn on/off all the lights in one area?

Thanks. It is null. And BTW, the same happened with the “Any device” version of the blueprint.

This is what zigbee2mqtt sees:

info 2025-03-02 19:37:43z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/0x0c2a6ffffe550171', payload '{"action":"off","battery":85,"identify":null,"linkquality":120,"update":{"installed_version":16777303,"latest_version":16777303,"state":"idle"}}'

info 2025-03-02 19:37:43z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/0x0c2a6ffffe550171/action', payload 'off'

This is what the device looks like from mqtt plugin debug. So it has some id:

"device": {
      "id": "b46909cb791812d9be04e28a1b21c281",
      "name": "0x0c2a6ffffe550171",
      "name_by_user": "allin_poytavalon_kaukosaadin",
      "disabled": false,
      "disabled_by": null,
      "entities": [
        {
          "device_class": null,
          "disabled_by": null,                                                                       "disabled": false,
          "entity_category": "config",
          "entity_id": "update.allin_poytavalon_kaukosaadin",
          "icon": null,
          "original_device_class": "firmware",
          "original_icon": null,
          "state": {
            "entity_id": "update.allin_poytavalon_kaukosaadin",
            "state": "on",
            "attributes": {
              "auto_update": false,
              "display_precision": 0,
              "installed_version": "16777287",
              "in_progress": true,
              "latest_version": "16777303",
              "release_summary": null,
              "release_url": null,
              "skipped_version": null,
              "title": null,
              "update_percentage": null,
              "device_class": "firmware",
              "entity_picture": "https://github.com/Koenkk/zigbee2mqtt/raw/master/images/logo.png",
              "friendly_name": "allin_poytavalon_kaukosaadin",                                           "supported_features": 5                                                                  },
            "last_changed": "2025-03-01T17:41:37.618277+00:00",
            "last_reported": "2025-03-01T18:08:21.457701+00:00",
            "last_updated": "2025-03-01T18:08:21.457701+00:00"
          },
          "unit_of_measurement": null
        },
        {
          "device_class": null,
          "disabled_by": null,

And while looking at the automation trace, the device id is listed in devices, but i is not the zigbee mac address which is used in mqtt channel. So the logic is a bit faulty, it should either grab the mac address to list of devices, or then dig the device id from somewhere else than mqtt message, which does not have it. As mqtt source is zigbee2mqtt, it has no way of knowing the HA internal device ids.

trigger:
  id: press-on-z2m-e1743-e2201
  idx: '1'
  alias: null
  platform: mqtt
  topic: zigbee2mqtt/0x0c2a6ffffe550171/action
  payload: 'on'
  qos: 0
  description: mqtt topic zigbee2mqtt/0x0c2a6ffffe550171/action
helper_force_brightness: false
helper_hold_delay: 0.1
helper_hold_dim_step: 4
light: light.allin_poytavalo
remote_devices:
  - b46909cb791812d9be04e28a1b21c281
remote_device: null
mqtt_topic: zigbee2mqtt/0x0c2a6ffffe550171/action

Should it perhaps use entity_id instead of device_id to be able to match it? That’s how the styrbar one does it.

Ok, now taking time to read it. I haven’t looked at template programming earlier. But it looks to me this line does not work, perhaps some syntax problem?

{% set device_name = trigger.topic.split("/")[1] if is_mqtt else none %}

As we can see there is proper trigger topic, device should get the name. So is there a syntax error with either the split or if sentence?

Hey

Everything is fine on the templating side.
But there is something that’s bothering me in your configuration though:

  "id": "b46909cb791812d9be04e28a1b21c281",
  "name": "0x0c2a6ffffe550171",
  "name_by_user": "allin_poytavalon_kaukosaadin",

Could you tell me how you get these info? Which version of mqtt are you using?
I cannot confirm, but my guess here is that the topic is zigbee2mqtt/{name}/actionand for some reason, home assistant only knows {name_by_user}, so the device_id("{name}") command returns null indeed.
What is the device’s name in HA?

Hello,

This kind of feature will probably not be coming in this blueprint.
I can only redirect you to the more versatile one: IKEA RODRET + SOMRIG + TRADFRI Remotes - ZHA/Z2M - Control anything