If you want to play your music using the Squeezebox system, you need a Squeezebox server. Or several. Possibly the cheapest and lightest Squeezebox server is one that you run on a Raspberry Pi. This project describes how to build a Squeezebox server on a Pi using the very useful download Squeezeplug. 

Your hardware setup will consist of:

  • A Raspberry Pi
  • A powered USB drive containing the music library to be used by this server. (You could also connect across the network to another file server using Samba, but USB is preferable.)
  • A 4GB minimum HDSD card containing the Debian/Squeezeplug software
  • An HDMI screen, USB keyboard and mouse for initial setup. 
  • A powered USB hub if you plan to have more than two USB devices connected at one time. 
  • An ethernet cord, and a LAN to plug it into. We recommend a hard-wired ethernet connection for the server. Since you can position it anywhere on the LAN, wireless is not usually required.
  • A Linux, Windows or Mac computer equipped to flash an SD card. If you use Windows you also need the PuTTy application for SSH access over the network. With Linux and Mac you can just use Terminal commands.
You will need the screen, keyboard, mouse, keyboard and hub only for initial setup. After initial setup you can, if you prefer, do everything via SSH and Samba, running the Pi headless.

With all the hardware on hand, here's how to install Squeezeplug and set up your Squeezebox server on Raspberry Pi.

  1. Download the latest Pi version of Squeezeplug from http://www.squeezeplug.eu/ and unzip it.
  2. Flash the image onto the SD card. Instructions here.
  3. When the SD card is safely flashed, eject it and slide it into the Pi.
  4. Connect the Pi to ethernet using a wired connection.
  5. If you are using screen, keyboard etc, plug all these in now.
  6. Connect the power to Pi and watch it boot up. 
  7. If you connected a screen you will see the bootup messages scrolling through. You will eventually see (somewhere towards the end of the boot process) the IP address that the Pi has obtained. If not you will have to identify the IP address by accessing your router and looking at the connected devices list. Or you can ask the Pi itself, after you've logged in.
  8. Hit return to get a login prompt. Login using:
    • login: root
    • password: nosoup4u.
  9. If you didn't find out the IP address at Step 7, do it now using 
    • ifconfig
  10. You need the IP address so you can access the Squeezeplug Pi remotely over the LAN. It's possible to finish the setup using the connected screen and keyboard, but since you will (probably) want to use SSH after setup, might as well check it out now.
    • Use Terminal in Linux or Mac - ssh -l root - use the actual IP address of your Pi, of course.
    • In Windows use PuTTy to access the Pi's IP address. Use Port 22 and SSH if it doesn't default to these settings automatically.
  11. Login when requested. User root password nosoup4u.
  12. At the prompt, type
    • setup
  13. You can now work through the basic and advanced setup menu items, more or less in the order they are presented. Some things you may want to consider:
    • Network: You may choose to set a static IP address so that when the server is rebooted, the address never changes.
    • Library: Identify the location of your music library. (Be sure your USB drive is connected.)
    • Server: Don't forget to install Squeezebox server!
    • Hostname: Give your Squeezeplug a unique, identifiable name so you can identify it on the network.
    • Samba: Set up Samba, which you can use to transfer new music files across the network to your server.
    • Timezone: Change to your local timezone.
  14. When you've finished setting up, choose the Reboot option. On reboot, Squeezebox server will be launched and you can access the server to control music, set up playlists and change settings by pointing your web browser to (substitiuting, of course, the actual IP address of your server).
Your new Squeezebox Server is up and running!
This server will perform very well - up to a point. Once it's set up and running, it will serve individual music files to multiple players on your network quite well. Delays on track startup will be tolerable. However the Pi has a tiny processor and not much memory, so expect some performance reduction compared to running a server on a full-sized desktop! For example:
  • You may experience clicks and dropouts, especially when more than one player is operating. If so, try increasing the buffer size in each player affected.
  • Don't expect exact synchronization across multiple players.
  • If you have a large library, re-scanning for new or changed music will take hours, and will affect streaming playback while it's doing it. To address this:
    • If you can bear to wait, switch off automatic re-scanning and schedule daily rescanning for some time when you won't be listening.
    • Divide your library into separate folders that youy can add individually to Media Folders in Settings / Basic Settings. Then you only need to rescan the folder you added new material to.
    • You can reduce the impact of scanning on playback by going to Settings / Advanced / Performance and reducing the priority of Scanner to 'Low', and increasing the priority of Server towards 'High'.

Don't forget, if you enjoy using Squeezeplug, think about donating to the Squeezeplug project, here: http://www.squeezeplug.eu/?page_id=52.

Copyright, Liability, Privacy  •  Contact Us  •  Contribute