Airplay naar Sonos via RPi

Sonos apparatuur heeft een eigen netwerk en is jammer genoeg niet aan te sturen met Airplay vanaf een iDevice. Uiteraard is er de Sonos App in de Apple store beschikbaar maar als je gewend bent om airplay voor je muziek te gebruiken kan dit een gemis zijn.

Er is een oplossing om dit toch te kunnen doen door een Raspberry PI (RPi) als gateway te gebruiken met hierop AirSonos. (zie GitHub voor het project)

In feite zijn er twee apps nodig, één om met AirPlay te kunnen communiceren en één om de Sonos apparaten te overuigen om de muziek af te spelen. Het eerste deel is gevonden doordat iemand zo aardig is geweest om de certificate keys voor Airplay op Internet te plaatsen waardoor NodeTunes gemaakt kon worden en het tweede deel bestaat uit het feit dat, ondanks dat Sonos apparaten geen PCM streams kunnen ontvangen, ze wel Internet Radio ontvangen over http en dat daarin dus de audio gepushed kan worden en dus is NicerCast hiervoor ontwikkeld. De twee apps bij elkaar resulteren in AirSonos.

Eerst maar eens zorgen dat de RPi up to date is:

sudo apt-get update
sudo apt-get upgrade

Hierna is het noodzakelijk om nodejs > v0.10.28 op de RPi te hebben:

wget http://nodejs.org/dist/v0.10.28/node-v0.10.28-linux-arm-pi.tar.gz
cd /usr/local
sudo tar xzvf ~/node-v0.10.28-linux-arm-pi.tar.gz --strip=1
wget http://node-arm.herokuapp.com/node_latest_armhf.deb
sudo dpkg -i node_latest_armhf.deb

Voor het installeren van AirSonos is extra software nodig van avahi en altijd handig zijn de git tools:

sudo apt-get install -y libavahi-compat-libdnssd-de git-all

hierna kan de AirSonos zelf geïnstalleerd worden:

sudo npm install airsonos -g

Starten van AirSonos doen we met:

sudo airsonos