Raspberry Pi Multi-Room Audio (Mobile/Tablet/PC Controlled)

I have been lurking on Instructables for a few years but have never posted one myself. Now I have bought a home of my own it's time to undergo some projects and share them with the community.
Raspberry Pi Multi-Room Audio
In my first project I'm going to show you how I setup multi-room audio that can be controlled by any device with a web browser or an app on your Android and/or iOS device.
I apologise for the lack of/poor quality photos.

I have borrowed some of this information and thrown in some things from my own experience. Some credit goes to the author of this tutorial http://www.raspberrypi.org/phpBB3/viewtopic.php?f=38&t=25778
To tackle this instructable you should have an understanding of networking, intermediate to expert computer skills and maybe some linux experience too. If you run into something you don't understand just remember google is your friend.

Equipment you will need

• Computer (mac/win/linux to act as your Logitech Media Server)
• Home network (wireless if you can't run a cable to the Pi)
• Raspberry Pi (I've used 1 per room however I will add a multi-DAC tutorial once I complete it myself)
• SD card 2GB or larger
• AC Adaptor (I used a USB wall charger for mobile phones check here http://elinux.org/RPi_VerifiedPeripherals#Power_adapters)
• Micro USB cable
• USB wireless adaptor (MAKE SURE IT IS COMPATIBLE OUT OF THE BOX! http://elinux.org/RPi_USB_Wi-Fi_Adapters)
• Powered USB Hub (for extra usb devices or multi DAC at a later date)
• HDMI cable or HDMI to DVI cable (depending on your monitor)
• DAC (digital to analogue converter, 1 per room)
• Amplifier (unless your DAC is also amplified)
• Speakers

Step 1: Logitech Media Server

First of all we need to setup your Logitech account and install the Logitech Media Server on the computer contains your music collection. This computer should always be on when you want to play music. The LMS and instructions can be found at http://www.mysqueezebox.com/download

Once installed setup your library

Also login to your squeezebox account otherwise you cannot see your music on the player.

You can also download the Squeezebox app for your iOS or Android device also remember to login to your Logitech account inside the app.

https://play.google.com/store/apps/details?id=com.logitech.squeezeboxremote&hl=en
https://itunes.apple.com/au/app/logitech-squeezebox-controller/id431302899?mt=8

Step 2: Raspberry Pi Setup

Now we'll setup the Raspberry Pi, to do this you'll need to have Raspbian installed. You can buy a Pi with Raspbian pre-installed or you can use a 2GB or larger SD card that you already have.

I am using an SD card I already have. Plug the SD card into your computer and download the latest Raspbian http://downloads.raspberrypi.org/raspbian_latest

I'm using windows so I unzipped the file and used win32diskimager (http://sourceforge.net/projects/win32diskimager) to write the Raspbian image to the SD card.

If you are still not sure there is a tutorial here http://elinux.org/RPi_Easy_SD_Card_Setup

Ok now we have Raspbian installed it's time to get our Pi up and running, plug in your SD card, Wi-Fi dongle, USB keyboard, Ethernet cable to your router, HDMI to your monitor and lastly the micro USB cable to the power socket. The first time you boot up you'll end up with the configuration tool on the screen.

Things you need to change are:
• Expand the filesystem so Raspbian utilises the entire SD card
• Change your password
• Set your language, region and time zone

Now the advanced options:
• Change your hostname so you can recognise your Pi on the network.
• Enable SSH so you can access your PI from a computer on your network.
• Select finish which might restart your Pi.

If you are in the US or Australia like me you will want to change the keyboard layout to US.
To do this you’ll need to change a file entering the command:
Raspberry Pi Multi-Room Audio
sudo nano /etc/default/keyboard

Use the arrow keys to move the cursor and change the gb to us.
Now save the file by pressing ctrl + X and Y to save changes

Now to update your Pi, type the following commands:

sudo apt-get update
sudo apt-get upgrade

Press y to download larger updates.

Step 3: Wi-Fi

If you just want to use Ethernet you can skip this step.

To get your Wi-Fi dongle working you may need to edit the wpa_supplicant.conf file by typing

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Then make it look like this:

ctrl_interface=/var/run/wpa_supplicant
network={
proto=RSN
scan_ssid=1
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP
ssid=”your network ID in quote marks”
psk=”your network password in quote marks”
}

To save the file press ctrl + x and Y to save

Restart the Pi by entering:

Sudo reboot

You should be able to see if your Wi-Fi dongle has an IP address with the command

Sudo ifconfig

You should get something like this

wlan0     Link encap:Ethernet  HWaddr 64:66:b3:06:43:1b
inet addr:10.0.0.75  Bcast:10.0.0.255  Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:912384 errors:0 dropped:121692 overruns:0 frame:0
TX packets:706463 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:694114055 (661.9 MiB)  TX bytes:71017681 (67.7 MiB)

Step 4: Static IP and SSH

Next I usually give my Pi a static IP by adjusting the LAN settings on my router.
Giving your Pi a static IP address makes it easier to remember the address when we connect via SSH.
I am not going into this because every router is different.
I suggest using google to search for “your routers model number” static IP.
Now the network is up and running either wired or wireless I like to use a SSH client like PuTTY to control the Pi.
That way I can copy and paste code if I’m feeling too lazy to type it out.
To copy use ctrl + c as usual but to paste into PuTTY click the right mouse button.
This will also free up a USB port for your DAC if you are using a USB Wi-Fi adaptor.
Download and run PuTTY then type in the IP address of your Pi and press open.
Login as pi and the password is whatever you changed it to in the initial setup.

 

For more detail: Raspberry Pi Multi-Room Audio


About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter
Scroll to Top