Z2M Blueprint to control IKEA Symfonisk Gen2 [E2123] not working

Hi everyone,

I have troubles making an automation setup from blueprint that should control Sonos speaker with SYMFONISK sound remote gen2 from Ikea through Zigbee2MQTT and would appreciate some help.

Blueprint : Z2M - IKEA Symfonisk Gen2 [E2123] Media Control v1.53

Set up :

  • Up-to-date HA
  • Sonos Speakers with official integration (Sonos - Home Assistant)
  • PHOSCON ConBee 2
  • Zigbee2MQTT
  • Mosquitto broker

I’m able to control anything from my house (Hue Lights, Apple TV, Sonos Speakers) with the remote setting up automations manually, but the above blueprint doesn’t control the sonos speaker specified in config, while showing actions in :

  • Device log in MQTT
  • Z2M Logs
  • Last triggered next to Automation

Do you guys have any idea what to check and could point me in the good direction in order to find what’s going on ? Checked supervisor logs, MQTT log and Z2m log but can’t see anything wrong.

As stated, Ikea remote is working with this automation below, but not with a blueprint that seems perfectly working for others, according to comments on its page.

alias: Cuisine Symfo
description: ""
trigger:
- platform: device
domain: mqtt
device_id: ad552fdf1a39bff0ea6d86d9b2eb4e0f
type: action
subtype: play_pause
discovery_id: 0x84ba20fffe512487 action_play_pause
condition: []
action:
- if:
- condition: state
 entity_id: media_player.cuisine
 state: playing
 then:
 - service: media_player.media_pause
 data: {}
 target:
 entity_id: media_player.cuisine
 - if:
 - condition: state
 entity_id: media_player.cuisine
 state: paused
 then:
 - service: media_player.play_media
 target:
 entity_id: media_player.cuisine
 data:
 media_content_id: FV:2/130
 media_content_type: favorite_item_id
 metadata:
 title: Fip
 thumbnail: >-
 https://is1-ssl.mzstatic.com/image/thumb/Features125/v4/0e/aa/c8/0eaac822-c1dc-9e5b1810-6259d1642b3c/source/400x400cc.jpeg
 media_class: genre
 children_media_class: null
 navigateIds:
 - {}
 - media_content_type: favorites
 media_content_id: ""
 - media_content_type: favorites_folder
 media_content_id: object.item.audioItem.audioBroadcast
else: []
mode: single

Would appreciate if you could tell me what to look for as I spent much time on it but can’t find anything wrong and everything seems to work… except it doesn’t trigger the speaker as it should.

Thank you very much for your help !

Best regards,

Hi,

As I said in DM you need to look at the Traces for your automation using the blueprint to see what HA thinks is happening.

It would also be useful for you to confirm what actions are being output by Z2M when you press buttons on the device so I can confirm that it is configured correctly. Your posts on the blueprint chat suggest that it is on the latest firmware but I can’t recall if you removed and re-added the device and followed the steps I suggested to ensure all of the functions get created properly?

Is HA and Z2M up to date?

Also, is the Sonos media player you have just the plain old standard item created when it detects your speakers? This is how I use the blueprint and all of it is working, including using the buttons to load and play favourites.

Finally, do you have any other active automations that may be affecting the media player that may be overriding the blueprint?

Hi,

Thank you for answering me.

HA and Z2M up-to-date.

Sonos player is the one added through official integration. Nothing Custom

No other automation interfering.

Here are some screenshots of Trace and feedbacks from MQTT or Z2M








And logs :

Some warning, but no errors Could one of them be the issue ?

Supervisor.log

23-11-22 17:08:52 WARNING (MainThread) [supervisor.addons.options] Option 'dark_mode' does not exist in the schema for Node-RED (a0d7b954_nodered)
23-11-22 17:08:52 WARNING (MainThread) [supervisor.addons.options] Option 'require_ssl' does not exist in the schema for Node-RED (a0d7b954_nodered)
23-11-22 17:08:52 WARNING (MainThread) [supervisor.addons.options] Unknown option 'logins' for Mosquitto broker (core_mosquitto)
23-11-22 17:08:52 WARNING (MainThread) [supervisor.addons.options] Unknown option 'base_topic' for Zigbee2MQTT (45df7312_zigbee2mqtt)
23-11-22 17:08:52 WARNING (MainThread) [supervisor.addons.options] Option 'advanced' does not exist in the schema for Zigbee2MQTT (45df7312_zigbee2mqtt)
23-11-22 17:11:34 INFO (MainThread) [supervisor.homeassistant.api] Updated Home Assistant API token
23-11-22 17:13:52 WARNING (MainThread) [supervisor.addons.options] Option 'dark_mode' does not exist in the schema for Node-RED (a0d7b954_nodered)
23-11-22 17:13:52 WARNING (MainThread) [supervisor.addons.options] Option 'require_ssl' does not exist in the schema for Node-RED (a0d7b954_nodered)
23-11-22 17:13:52 WARNING (MainThread) [supervisor.addons.options] Unknown option 'logins' for Mosquitto broker (core_mosquitto)
23-11-22 17:13:52 WARNING (MainThread) [supervisor.addons.options] Unknown option 'base_topic' for Zigbee2MQTT (45df7312_zigbee2mqtt)
23-11-22 17:13:52 WARNING (MainThread) [supervisor.addons.options] Option 'advanced' does not exist in the schema for Zigbee2MQTT (45df7312_zigbee2mqtt)

Mosquito Broker. What are those ?

2023-11-22 17:10:48: New connection from xxx.xx.x.x:33644 on port 1883.
2023-11-22 17:10:48: Client <unknown> closed its connection.
2023-11-22 17:12:48: New connection from xxx.xx.x.x:33722 on port 1883.
2023-11-22 17:12:48: Client <unknown> closed its connection.
2023-11-22 17:14:48: New connection from xxx.xx.x.x:33832 on port 1883.
2023-11-22 17:14:48: Client <unknown> closed its connection.

Z2M

Zigbee2MQTT:info  2023-11-22 17:00:32: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"play_pause","battery":null,"linkquality":255,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2900}'
Zigbee2MQTT:info  2023-11-22 17:00:32: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"","battery":null,"linkquality":255,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2900}'
Zigbee2MQTT:info  2023-11-22 17:00:32: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487/action', payload 'play_pause'
Zigbee2MQTT:info  2023-11-22 17:00:44: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"play_pause","battery":null,"linkquality":255,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2900}'
Zigbee2MQTT:info  2023-11-22 17:00:44: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"","battery":null,"linkquality":255,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2900}'
Zigbee2MQTT:info  2023-11-22 17:00:44: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487/action', payload 'play_pause'
Zigbee2MQTT:info  2023-11-22 17:02:12: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"play_pause","battery":null,"linkquality":152,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2900}'
Zigbee2MQTT:info  2023-11-22 17:02:12: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"","battery":null,"linkquality":152,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2900}'
Zigbee2MQTT:info  2023-11-22 17:02:12: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487/action', payload 'play_pause'
Zigbee2MQTT:info  2023-11-22 17:03:28: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"play_pause","battery":null,"linkquality":255,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2900}'
Zigbee2MQTT:info  2023-11-22 17:03:28: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"","battery":null,"linkquality":255,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2900}'
Zigbee2MQTT:info  2023-11-22 17:03:28: MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487/action', payload 'play_pause'

Thanks for the info. I can see from the trace that it’s skipping doing anything and it looks like there’s something potentially weird going on with your device setup - is it really named “0x84ba20fffe512487”? Have you given it a friendly name?

If it has a friendly name then you have something strange going on when you select your Ikea device.

If it doesn’t have a friendly name can you go into Z2M and add one and try it again to see if that fixes it please? If this is it, then I don’t think anyone has used it with the device id before rather than a proper name and the IEEE address is tripping up the string comparison.

Thank you very much. By default, friendly name is Device ID and I left it like that. After renaming it to something more “friendly”, I still have the same issue.

Do I need to set the same name in Friendly name and Home Assistant Name ? (I didn’t to avoid issues, i may mistaken)

Here’s the remote config. I left everything default in the link tab but must admit i don’t understand what’s going on there.






Indeed, it seems that the trace is skipping everything. What log would I like to check to investigate ?

Clicking on the grey square :

Reviewing your previous screenshots, I’ve spotted your device is sending the wrong command for the Play button, yours is sending play_pause, it should be toggle.

This changed after the first firmware update as I said in the blueprint thread. You have to delete your devices and re-add them. Whilst they are being added you need to repeatedly press one of the buttons or they sometimes don’t add correctly (Ikea battery device issue not HA or Z2M). Once they’re added correctly everything will work ok.

Having seen that I suspect the name/friendly name setting is not an issue.

I just deleted then re-added one of the remote by repeatedly push play button next to my zigbee usb key while adding it. After the interview, the play button still don’t send Toggle instruction

info 2023-11-22 19:25:39MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"play_pause","battery":null,"linkquality":255,"update":{"installed_version":-1,"latest_version":-1,"state":null},"update_available":null,"voltage":2800}'
info 2023-11-22 19:25:39MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487', payload '{"action":"","battery":null,"linkquality":255,"update":{"installed_version":-1,"latest_version":-1,"state":null},"update_available":null,"voltage":2800}'
info 2023-11-22 19:25:39MQTT publish: topic 'zigbee2mqtt/0x84ba20fffe512487/action', payload 'play_pause'

But previous Track / next track and volume up /volume down are working. They were not before.

It was up to date to [1.0.35] out of the box.

The weird thing is that my other remote set up with a hand-made automation is able to control the play/pause function of another sonos speaker by sending the exact same instruction :

 2023-11-22 19:39:14MQTT publish: topic 'zigbee2mqtt/0x385b44fffe39155f', payload '{"action":"play_pause","battery":null,"linkquality":252,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2800}'
info 2023-11-22 19:39:14MQTT publish: topic 'zigbee2mqtt/0x385b44fffe39155f', payload '{"action":"","battery":null,"linkquality":252,"update":{"installed_version":16777269,"latest_version":16777269,"state":"idle"},"update_available":false,"voltage":2800}'
info 2023-11-22 19:39:14MQTT publish: topic 'zigbee2mqtt/0x385b44fffe39155f/action', payload 'play_pause'

Of course a custom automation will work as it’s looking for the play_pause payload :wink:

My blueprint is using the latest action command set for the current firmware. The issue is in your system it’s not sending the correct action payloads.

In Z2M for the device on the “Settings (specific)” tab, do you have legacy enabled by any chance?
It should be false

Edit: I’ve checked and one of my devices is set to false, the other one is “?” and according to the setting text, the default is true and that device still reports the play button as “toggle” so you definitely have something weird going on with your setup

Hi Shawsky,

Thank you very much, I progress. I get it, speakers are waiting for play_pause but your automation for Toggle. That’s why. It’s still weird the remote is not sending the correct instruction as it’s on everything default and untouched and it was uptodate out of the box.

Will investigate this way now that I know what to look for. Thank you very much for your help.

Have a nice day !

It definitely is strange that you’re not seeing the right commands! Good luck with it!

Hi Shawsky,

It seems that I had multiple problems going on but the latest was that I was, indeed, running by default on Legacy mode. Setting it to off fixed the play/pause command to Toggle. User Canaletto had the same issue in the chat of your blueprint, you may add to the setup guidelines to check that settings.

Thank you again very much and for your blueprint, and for your support. Highly appreciated.

No worries :slight_smile: Glad you got it sorted in the end!! Very strange that some setups need this option changing and some don’t - as you’ve seen I have one set to false and the other in the unknown, presumed default state.

Oh well, got there in the end and yes I’ll note it for the future and update the original post in a bit. Thanks.