Multi-room audio with Snapcast, Mopidy, and Home Assistant

A snapclient runs fine on a PiZero W

This sounds awesome to me, but have tried it this weekend to no avail.
Iā€™m using a supervised install and using addons for both Mopidy and Snapcast.
The mopidy addon is from here:

Home Assistant Community Add-ons - EDGE!
Franck Nijhof <[email protected]>
https://addons.community/edge

and Snapcast from here:

raphii hassio
Raphael Pertl <[email protected]>
https://github.com/raph2i/hassio-addons

The simple reason Iā€™m using the addons is for backup of config files.
I can do a snapshot and get everything in one snapshot vs. having to figure out what spots I need to backup in my OS and keep track of all changes. The addon approach is easierā€¦for backups.

I havenā€™t been able to get this working though. All the help I can find on the interwebs shows you how to edit the config files which you donā€™t have access to in the addons.
Has anyone done this with addons that can explain how to get mopidy and snapserver talking?

Just noticed this thread and wanted to make a suggestion: https://www.picoreplayer.org
I use it for some time now, am very happy with it, there is a HA integration, active development and community, ā€¦

Maybe it can be interesting, maybe not.

1 Like

picoreplayer is just a squeezebox/lms device, so yes there is active support in HA and yes it does whole house support really well. I have been using squeezeboxes for years and have half a dozen hardware devices and one picoreplayer.

The squeezebox integration has recently been refactored and improved.

2 Likes

I actually tried picoreplayer and it worked well for one device at a time, but syncing did not work for me for very long. It didnā€™t take long for players to drift out of sync and be horrible to listen to.
Kinda hoping snapcast would work better for me. Thatā€™s why I am trying to get the whole thing working.

My hardware players sync perfectly, but my picoreplayer is in the garage, and you wouldnā€™t notice if it drifted.

The hardware players all have either a wired connection, or very good wifi.

Have multiple RPiā€™s, different types, wired and WiFi and 1 with bluetooth speaker: they are in 1 group, so always play the same things and sync perfectly.
Drifting occurres very rarely and stopping/restarting solves it.

Curious what you are using to drive the audio output. You mentioned Bluetooth but for others are you using hdmi audio, 3.5 mm audio, a audio hat or something else? I have a few piā€™s lying around and would like to do this but not sure how to get decent audio output.

Can you point me to that integration? I cannot seem to find it.

It is here https://www.home-assistant.io/integrations/squeezebox/

(picoreplayer is a software squeezebox)

1 Like

Hi pcwii, I use the onboard audio for those players where sound quality is not that important together with active speakers.
The main player has HiFiBerry Amp2 and I also have a HiFiBerry MiniAmp where I donā€™t need that much output power.

If you already have a few RPiā€™s and active speakers, I would advice you to try https://www.picoreplayer.org to see whether you like the ecosystem and itā€™s possibilities.
For me, itā€™s a very nice discovery which exactly does what I want.
Someone else might step away from this and buy quite expensive proprietary systems with cables and connectors that might sound better and to realize that at some point there are no updates anymore or to be stuck on the features that some company decided for you.

EDIT: you need LMS (Logitech Media Server) which can be on the same RPi that is also a client.

1 Like

logitechmediaserver is now an open source project, and appear to be quite healthy.

Same with the software picoreplayer is running.

@nickrout: it looks like you misread my reply, thatā€™s also why I chose this path instead of the buy/plug&play devices.

Does your solution work nicely with Mopidy? Basically: all I want is Spotify and muliroom speakers, where I can add/remove client speakers on the fly and control volume for each speaker and the group. This thread is about snapcast, mobidy and HA, which seems to meet my needs. Does your solution offer the same thing, or is it different? If so: in what way? Iā€™m not familiair with Squeezebox/LMS.

Hi ASNNetworks, sorry canā€™t answer that.
I know about the existence of mopidy from my search but havenā€™t looked at the specifics since I bumped on picoreplayer, which seemed to be closer to what I wanted.
Picoreplayer uses LMS (Logitech Media Server) which you can install on the same RPi or any other platform.
At first I had it on my main RPi in the living area but shortly after that I installed a server (Proxmox) and moved LMS to a container on my server.
With picoreplayer you have the options that you describe, it has multiple options to install - just have a look at their homepage.
My main player has the official Raspberry touch screen for which the control is embedded in picoreplayer.
Regarding spotify: I donā€™t use it but you can only use a premium account.

Sorry for going a bit off-topic guysā€¦

1 Like

So Iā€™ve got Snapcast working


(I think) on the Mopidy add-on from @frenck EDGE repository with @raphii snapcast plugin and it looks like itā€™s working, but Iā€™m just smart enough with this stuff to be dangerous and canā€™t figure out how to get it to output to any speakers yet.

What are you running snapcast on on the speaker side? A Pi? or is this only the snapcast from Home Assistant?

I am running both snapcast client and server on my HƁ PC. Ɓudio on that PC is working.

And you want to play music on the audio of this pc only or also on other speakers?

yes. Iā€™m not sure how to add additional speakers but Iā€™m going to try using using a Pi with the same setup and add them together here