SONOS speakers seem to be decent hardware. So when a friend mentioned the IKEA branded, SONOS produced Symfonisk speakers, I had to take a look. At 130€ for a single speaker, they are not exactly cheap, but they are certainly a lot cheaper than anything SONOS would usually offer. The build quality is good, audio quality is supposedly good. But the important question for me is: can I use them at a decent level of privacy? Is it possible to make these speakers useful without the SONOS app and a SONOS account and without sending usage information over to SONOS every couple of minutes? Let’s find out!
Some Specs
The speaker in question is sold as IKEA article No. 505.065.73
, this is the black edition of the “Generation 2” shelf speakers. I received mine in July 2024. It was shipped with firmware 69.0-25115-manufacturing
which appears to be from 2022-01-11 – over two years old. I have no way of updating them.
App, Account and Refusal
The manual wants you to install a ~200MB app, which I find ridiculous. Also the first thing that app does is ask you to accept their terms of service and their privacy policy. After that it goes straight to account creation (or login for those who already have one). I want none of this. No app. No account. So this way is not going to work for me.
Some Mild Network Exploration
The speaker has a LAN port, so at least I don’t have to worry about setting up Wifi. After connecting, it requests an IP address and we can run a portscan. Ports 1400, 1410, 1443 and 1843 are open with 1400 being a very normal HTTP server and 1443 being the same thing but TLS encrypted. They give us some information like the version number above. People have written about this endpoint already (for example _nico from loggn (german) and @turbotas on Github (english)), so I won’t go into too much detail.
I thought that their AirPlay support might work, but at least in this current state, neither PipeWire (with pactl load-module module-raop-discover
) nor an Apple device list this speaker as target. Both list another AirPlay device, so I’m pretty confident that the speaker is to blame.
I am able to put web radio on it with Noson (5.6.7). I can also play various sources via DLNA/UPnP app Jupii (2.14.4). This even extends to sending system audio from the computer itself – but this only works for about a second. Then there’s a project offering an API for some of the most common actions with the very fitting name node-sonos-http-api. None of these can group speakers in any way. My speaker is still in an “Unnamed Room”. I am not confident in buying more speakers unless I can really actually group them meaningfully.
Music Assistant To The Rescue
Since I can play something on this speaker, I set up Music Assistant (2.1.1), which pairs nicely with Home Assistant. Its SONOS integration can connect to the speaker without a problem and I can use it to play any music from a Subsonic-Style server (Navidrome, in my case). This is a major breakthrough because from this point forward the speaker is actually somewhat useful to me. I can’t create stereo-groups (partly because I only have one speaker, but also there’s no interface to accomplish this. I’m pretty sure it can’t be done without the App).
When connected to MusicAssistant, the buttons at the front of the device are useless. In fact, they are worse than useless, because they play a loud sound and then put the speaker in a weird state. I haven’t spent much time with the buttons, maybe there’s a simpler fix. I just resorted to power-cycling the whole speaker. Another thing that straight up does not work: pause/play starts the song over (I’m not entirely sure if Music Assistant is to blame or the speaker) and, probably related, I can’t seek in a song. It will always start from the beginning.
Music Assistant itself is pretty useful so far. I was able to play two separate playlists on two different devices (a Denon AVR supporting AirPlay and the SONOS box). It is not bug-free, but works well enough that I find it useful already. I can also group the two devices into one universal speaker group, but since they speak different protocols, you don’t get synchronized playback. In my setup the two players are more than a second apart and there does not seem to be a manual way of correcting this either.
Power Draw
Standby power is roughly 2.5W for me, which is quite a lot. I wonder if this would improve once they are fully configured by the app. When playing music very quiet (almost as quiet as they go, nighttime small room quiet), they draw 4.4W. With 3 hours of music a day, this would roughly equal 24kWh in a year – that is 8,85€ per year just for a speaker mostly doing nothing.
The Verdict
Without app and account, these speakers are very hard to use. You give up Wifi, Stereo-Groups, Naming of Zones and the front buttons. Standby power is also not great, especially given that I would need a Raspberry Pi running on opt of a number of speakers.
If this test had played out differently, I would likely have bought eight speakers (three stereo rooms and two mono rooms), but that’s not going to happen now. I might tear one up and see if I can use some part of the speaker instead.
I wish to emphasize that the very same speakers might still be great for you. But if you want to use them without a SONOS account and without the app, these speakers are not for you.
Further Exploration
Things I need to write about, or that I need to try later or that you might want to try yourself:
- SONOS documentation
- https://www.deadf00d.com/post/how-i-hacked-sonos-and-youtube-the-same-day.html
- http://python-soco.com/ / https://github.com/SoCo/SoCo
- SmarthomeNG integration
- https://github.com/luckyshot/OpenSound (written in PHP)
- HomeAssistant integrations
- https://github.com/philippe44/AirConnect
- https://felix-kling.de/blog/2019/sonos-dedicated-vlan.html