Low Cost Multi-room Audio
Introduction
So, I wanted to setup a multi-room audio system at home to compete with Sonos, but on a tight budget.The entry level Sonos device is the PLAY:1 which costs £169 for a very high quality mono solution. You can't argue with the quality, but you're looking at over £300 for stereo sound.
I want to put something together for £60 for a stereo solution with HiFi quality sound that can be repeated to create true multi-room audio throughout a house. Yes, I know!
I have a Synology NAS (the best technology investment ever) that I use for storing and serving all my media files (photos, videos and music):
...which I want to use as the source of the music (which would have been the case with a Sonos setup), as well as playing radio stations and other music streaming services, such as Spotify and Deezer.
It just so happens that the Sonology NAS devices come with a whole bag of really useful apps, including the brilliant (and free) Logitech Media Server (LMS) - formerly "SlimServer", "SqueezeCenter" and "Squeezebox Server".
I'm also just a little bit hooked on trying to use the RaspberryPi as a platform for all sorts of low-cost, low-power applications, so I'll be using a Raspberry Pi as the platform to create the client/player device on.
Step A - Set up LMS on the Synology NAS
You can run LMS on any Windows PC, Apple OS computer or Linux platform and immediately start streaming your music to software and hardware receivers (such as Logitech's Squeezebox devices), as well as other media players capable of playing MP3 streams.For the sake of my project, I'm going to use LMS on my Synology NAS to do the job.
Setting up LMS on the Synology NAS is really easy.
- Logon to DSM (the web interface for the NAS)
- Click on "Package Centre"
- Select the "Multimedia" heading in the left hand navigation
- Click the "Install" button on the Logitech Media Server tile
- Once it has finished installing, click on Open to launch the web interface for LMS
There's not a lot more you can do until you've set up a device to receive the music stream from LMS.
You do need to have some music files in the "music" shared directory on the NAS.
Step B - Build a receiver for the LMS music streams
This is the bit that is going to take some tweaking and refining over time, so I've approached this in phases:
Phase 1
This isn't going to be the cheapest spec setup, because I'll be using kit lying around the house to get it going - I'll squeeze out the cost in later phases.
I am going to use a Raspberry Pi as the client/player, so need to find a decent Squeezebox client.
After about 10 seconds of Googling, I came across piCorePlayer - this looks perfect.
I have an old Audiolab 8000A amplifier:
...and a pair of B&W DM301 speakers:
...in the loft, so I'll dust them off and use them to test the output, once the Raspberry Pi has been configured as a piCorePlayer device.
For this initial setup I'm using a Raspberry Pi model B board that I've already got here - cost about £25 a year or so ago:
It turns out that the 3.5mm audio line-out jack (note: not a headphone jack, so don't expect to plug your headphones in) has shocking sound quality - sounds like someone's left a gas tap on while you're trying to listen to your music. This calls for a Digital to Analogue Converter (DAC). There are a couple of DAC's targeted at the Raspberry Pi that I stumbled across:
I plumped for the HiFiBerry DAC, it cost €29.90:
With the Raspberry Pi Model B version of the HiFiBerry DAC there is a little bit of soldering to do on the Pi board, but in the version for the Raspberry Pi Model B+ it just plugs straight on the GPIO connector.
After installing the DAC, the quality of audio from the Raspberry Pi is fantastic.
Step C - Install
So, first to set up the Raspberry Pi as a piCorePlayer device:- Download a copy of the piCorePlayer software here
- Burn the image to an SD Card using Win 32 Disk Imager for Win PC, or ApplePi-Baker for Mac
- Insert the SD Card into your Raspberry Pi
- Connect the Raspberry Pi to your network
- Apply power to the Raspberry Pi using a 5v micro USB power supply
To make any configuration/settings changes to piCorePlayer, log onto the web interface for the device:
- Identify the IP address of the Raspberry Pi (check your router to find it, or use a free app for scanning your LAN for devices - I use LanScan for the Mac)
- Using a web browser, enter the IP address identified in step 1, e.g. http://192.168.0.8
- If you are using a DAC, then, as a minimum you will need to select it as the Audio Output in the Squeezelite Settings page (otherwise you won't hear any music!).
- You might like to rename the piCorePlayer to be something more meaningful, such as "Living Room"
- After making any changes, then hit the Restart button on the "Main Page"
I then connected the RCA output from the HiFiBerry DAC to the amp, and the amp to the speakers.
Step D - Now to Test That it Works
You can control the music being streamed to the piCorePlayer via the LMS web interface (see below), or one of the many free and paid apps for Android and iOS devices - I use iPeng8 for iPhone and iPad, which costs about £5, but works really well.
When installed on a Synology NAS, the IP address for the LMS web interface is the same as the NAS, but uses port 9002, so in my case http://192.168.0.250:9002
As soon as you login, you will be able to select your piCorePlayer and choose some music to start streaming to it. That's it.
Now to work on stripping out the cost from the solution...
Now to work on stripping out the cost from the solution...





No comments:
Post a Comment