Symfonisk volume control media_player (Sonos) automation

Tags: #<Tag:0x00007f73ae2ca438> #<Tag:0x00007f73ae2ca2d0> #<Tag:0x00007f73ae2ca0f0> #<Tag:0x00007f73ae2c9f88>

Hi all,

I’m trying to connect my Ikea Symfonisk controls to my Sonos. I tried multiple ‘solutions’ that I found online, but the volume accuracy seems off every time (increase or decrease has lags or won’t respond). So now I tried to do it via automations because I used it to control my lights with the similar set up (rotate to dim lights)

The set up below doesnt work, as you can see I commented some lines that I tried. No result so far. Anyone who can point me in the right direction?

Any help is appreciated!

  - id: '1592992936267'
    alias: symfonisk lower volume on
    description: ''
    trigger:
    - device_id: f8fdabc708a0455b91f2a8fb68583895
      discovery_id: 0x680ae2fffe3df73a action_rotate_left
      domain: mqtt
      platform: device
      subtype: rotate_left
      type: action
    condition: []
    action:
    - device_id: 85561e47b88b44d0b2268e0ed812ca6c
    #   domain: media_player
    #   entity_id: light.bathroom
      data:
        entity_id: media_player.kitchen
        volume_level: 0.2
      service: media_player.volume_set

Remove the devixe_id line in the action part.
However, this will not solve your problem. Your automation always sets the level to 20 percent, no dimming of the volume. Dimming of the volume as you want it will not work with automations, you’ll need something like Controller X for this.

Hi! thanks for your reply! I tried the solution you’re referring to before, the problem is (still) the inaccuracy of the volume when rotating left or right. So looking for a more stable solution.

If Controller X is not enough, then I have bad news. There’s no other more accurate solution as of now, only binding the remote directly to the sonos in the Ikea app.

Hi @Murp,

How is your E1744 (symfonisk) controller integrated? I have the same controller with deCONZ and I have the following configuration for ControllerX:

livingroom_speakers:
  module: controllerx
  class: E1744MediaPlayerController
  controller: livingroom_mplayer_controller
  integration: deconz
  media_player: group.livingroom_current_media_player
  volume_steps: 15
  delay: 150

By default, ControllerX uses volume_steps: 10 and delay: 1000, this is to make the integration by default safe to all type of networks. With the configuration shown above, a request is sent every 150 while the controller is rotated. I literally, do not notice any delay when using it with my Chromecast and Google Home mini, it is quite smooth. My recommendation is to play with those attribute. You can read more about them in here. Also, if you have the controller integrated with Zigbee2MQTT, I recommend you the following configuration then:

livingroom_speakers:
  module: controllerx
  class: E1744MediaPlayerController
  controller: zigbee2mqtt/<friendly name>/action
  integration: mqtt
  media_player: group.livingroom_current_media_player
  volume_steps: 15
  delay: 150

This configuration listens to MQTT rather than the sensor state from HA, this speeds up the response between the controller and the media player. In the controller attribute, you should put the MQTT topic that as topic shows the action (rotate_left, rotate_right, etc.), you can check this in the zigbee2mqtt logs.

Let me know if you try and if you have any questions :slight_smile:

Cheers,
Xavi M.

Hi @Murp,

I recently posted a video on my Twitter account on how the Symfonisk work with my chromecast through ControllerX.