Raspberry Pi als WLAN-Audio-System mit Logitech Media Server – Steampunk Edition

fertig

Bezüglich Radioempfang auf dem terrestrischen Weg wohne ich im Tal der Ahnungslosen. Die paar Sender die ich erhalte, glänzen mit musikalischem Einheitsbrei nebst übermotivierten Moderatoren die mir mit ihrer künstlich guten Laune – besonders Morgens – gehörig auf die Nerven gehen.

Mehr als bloß eine Alternative bieten die Weiten des Internets – fehlt nur noch das passende Empfangsgerät, welches unabhängig von einem Computer sein soll und möglichst auch Spotify abspielen kann. Logischerweise WLAN-Fähig. Vielleicht mit Display. Klasse wäre eine Baustein für die vorhandene Anlage. Oder ein Extrateil für andere Räume, an die man Computer- und/oder Stereoboxen anschließen kann.

Nach einiger Recherche kamen für mich Produkte von Sonos oder Logitech Squeezebox in Frage. Die schneiden alle in Tests nicht schlecht ab, haben aber den Nachteil eines recht hohen Anschaffungswertes besonders bei mehreren Systemen.

Raspberry Pi Eine super Alternative mit der alle meine Ansprüche erfüllt werden können, kommt in Form des Raspberry Pi.Schon im Grundausbau besteht die Möglichkeit des Anschlusses von aktiven Computerboxen per 3,5 mm und mit Erweiterungsmodulen (z.B. Wolfson Audio-Card etc.) kitzelt man noch ein wenig besseren Sound aus dem Gerät. Wer wie ich hier einen kleinen Amplifier einsetzt, benötigt diese Karte ggf. noch nicht einmal. Für den Hausgebrauch sollte/könnte die Musikqualität ausreichend sein.

Da ich über ein Synology-NAS verfüge, auf dem die kostenlose Mediaserver-Software von Logitech (LMS) als Paket installiert werden kann, sollte ursprünglich diese NAS als Server dienen, der alle daran angeschlossenen Abspielgeräte mit Musik versorgen kann. Leider besitzt meine Synology 213+ einen PowerPC-Prozessor mit dem das bis dato nicht funktioniert wie gewünscht. Jedenfalls kann ich nicht auf Spotify zugreifen, wodurch ich ein wenig umdisponieren musste.

Meine Test-Hardware:

45233066 Raspberry PI Model B
45241416 Netzteil extern USB micro B
13300435 Kingston Karte, Klasse 10, 16 GB
Wolfson Audio Card für Raspberry Pi
WLAN-Adapter (hier: TP-Link TL-WN725N)
Mini-Amplifier
Mini-Boxen vom Flohmarkt
Holz, Kabel, Lack, Werkzeug, gute Nerven
IMG_20140729_184741925

Wegen der Multiroomfunktion wollte ich am Logitech Media Server festhalten. Das perfekte System stellte für mich daher Squeezeplug dar. In dem Paket ist der Server sowie Player enthalten. Der Plan war also einen Raspberry als Server/Player-Kombination einzusetzen. Weitere Player kann man dann in Form eines zusätzlichen Raspberry einbinden, auf dem dann nur die Player-Software installiert ist. Ebenso ist es möglich, iOS oder Android-Endgeräte einzubinden, auf denen die passende App installiert wird.

Für Android kann ich den Squeezeplayer empfehlen, den es als Squeezepad auch für das iPad gibt. Die App findet dann später den aktiven Logitech Server automatisch im eigenen Netzwerk. Schließt man an sein Endgerät nun aktive Lautsprecher oder ein Headset an, hat man die gleiche Funktion wie mit meiner Raspberry-Bastelei.

Installation Squeezeplug

Hinweis: Die Software ist grundsätzlich kostenlos erhältlich und ohne Einschränkungen nutzbar. Der Entwickler bittet um eine kleine Spende auf seiner Seite für die zukünftige Weiterentwicklung. Finde ich auf jedenfalls unterstützenswert und habe meinen kleinen Beitrag geleistet.

Download http://www.squeezeplug.eu/?page_id=52

Für die Installation des Images verwende ich ein DeLock Card Reader und das Programm USB Image Tool.

Eine Anleitung in Form eines Videos hat der Entwickler bei youtube hochgeladen. Daran hatte ich mich auch komplett gehalten. Grundsätzlich sind für die Einrichtung selber kaum bis gar keine Linux-Kenntnisse notwendig. Mit ein bisschen allgemeinen Computerkenntnissen sollte man aufwarten können aber anhand der Videoanleitung z.B. schafft man das auch.

Mein erster Versuchsaufbau sah dann so aus:

Raspberry mit aufgestecker Wolfson Audio-Karte. Verbunden mit einem 3,5 mm Klinken/2x Cinch-Kabel wird das Ganze mit dem Amplifier-Eingang. An dem Amplifier wiederum hängen zwei kleine Boxen.

Auf dem Foto ist der WLAN-Adapter installiert und aktiv. Für die Erstinstallation empfehle ich die LAN-Kabel-gebundene Vorgehensweise mit dem Programm putty (Kurzanleitung zur Einrichtung hier).

testaufbau

login: root
Passwort: nosoup4u

Mit dem Befehl

setup

starte ich das Installationsprogramm, sollte das später vonnöten sein. Beim allerersten Aufruf startet das Programm ohne diesen Befehl Das Fenster am Besten direkt größer ziehen, damit man auch alle Menüpunkte sieht.

Zunächst werden automatisch SSH-Keys generiert. Danach folgt eine Update-Überprüfung. Das bestätigt man natürlich, um eine möglichst neue Version zu erhalten. Mit dem Menüpunkt expand rootfs versetzt man den Raspberry in die Lage, die komplette SD-Karte zu nutzen. Danach ist ein Neustart erforderlich, was bedeutet, dass man sich mit putty auch erneut auf den Rasp einwählen muss.

So sieht das Menü aus

Mit setup starten. In der Basic Configuration stell ich die Software zunächst auf die richtige Zeitzone ein. Hier kann ich auch das Passwort ändern oder die Konfiguration des Netzwerks ändern, falls ich später auf WLAN umstellen möchte.

Unter Advanced Configuration… sollte man den Unterpunkt Install a SAMBA Server auswählen. Damit ermöglicht man später anderen Rechner den Zugriff auf Dateien die mittels USB direkt am Raspberry zur Verfügung stehen. Meine Musik liegt auf einem NAS bereit. Damit der Pi diese auch findet rufe ich über setup

Media_Handling und den Unterpunkt Configure the Media Library
Dort nun Samba und Samba Share attached to your LAN
Hier jetzt die IP-Adresse des NAS eingeben z.B. 192.168.100.10
Im nächsten wird der Ordnername abgefragt in dem sich die befindet. z.B. /Musik
Jetzt folgt der Benutzername für den Zugriff auf das NAS und das zugehörige Passwort.

Squeezeplug & MP3

Falls die Musik auf dem Laufwerk hauptsächlich im Format mp3 vorliegt – damit konnte mein Squeezeplug von Haus aus nicht umgehen. Hier kann man aber über die Konsole einfach den Lame-Encoder nachinstallieren über den Befehl:

apt-get install lame

und

sudo reboot

Der Logitech-Server

Da ich noch keinen Logitech-Server im Netzwerk habe, gehe ich jetzt aber zum Punkt Server and Play like LMS…. Dort rufe ich den Unterpunkt Install a Logitech Server auf und installiere ihn. Ist das erfolgreich erledigt, kann man den Server über den Browser aufrufen und konfigurieren. Das geschieht über die Adresse

http://squeezeplug:9000/

Hier habe ich nun einen Account bei mysqueezebox.com erstellt. Diesen Zugang benötigt man, um später weitere Player in das Multiroom-Netzwerk einzubinden. Zur eigentlichen Konfiguration komme ich auch gleich aber wir wechseln noch einmal kurz zum Rasp und installieren ein Abspielgerät.

Im nächsten Schritt installiere ich den Mediaplayer. Wählt dazu aus dem Menü den Eintrag Basic_Configuration/Server_and_Player. Entscheidet euch hier für Player. Aus der Liste wählt ihr die Variante SqueezeLite. Markiert den Eintrag Install und vergebt als erstes einen Namen für den Player. Identifiziert jeden Raspberry Pi eindeutig, damit ihr die unterschiedlichen Player später besser auseinanderhalten könnt, sollten mehrere Abspielgeräte zum Einsatz kommen. . Ich habe bei diesem Vorgang direkt auch die Treiber für die Wolfson Audio Card installieren können. Vorm installieren bitte überprüfen, ob eine neuere Version von SqueezeLite vorliegt, geht wie gehabt alles automatisch.

Überprüfen ob das jetzt geklappt hat kann man, indem man nun wieder mit http://squeezeplug:9000/ das Konfigurationsmenü des LMS aufruft. In der oberen Leiste recht sollte in dem Kontextmenü der oder die verfügbaren Player auswählbar sein. Meiner heißt Balawer, das ist saarländisch und beschreibt relativ eindeutig, was ich unter anderem so höre. Da noch keine weitere Musikquellen bereitliegen kann man zum testen hier beispielsweise einen x-beliebigen voreingestellten Radio-Sender auswählen und abspielen. Sofern alles korrekt verbunden ist, sollte Ton zu hören sein.

Jetzt möchte ich, dass dem LMS meine MP3 auf dem NAS zugeordnet werden. Hierzu klicke ich links unten auf EinstellungenGrundeinstellungen. Als Pfad wähle ich über durchsuchen /mnt/samba bzw. gebe das direkt ein. Das ist der Pfad, dem ich dem Pi vorhin über das Media_Handling bekannt gemacht habe. Mit dem durchsuchen starten werden die Musikstücke nun in den Server eingelesen und je nach sauber vergebenen ID-Tags auch sortiert.

Wenn es mal ruckelt:

Sollte die Wiedergabe aussetzen hilft ggf. eine Erhöhung des Zwischenpuffers. Das geht ebenfalls über die Oberfläche des Logitech Media-Servers: Server-Einstellungen – erweitert – „Netzwerk“ auswählen – Puffergröße für Internetradio höher einstellen. Ggf. auch die Maximale WMA-Datenstrom-Bitrate

Spotify

Die Einbindung eines Spotfiy-Accounts (nur Premium!) ist ebenfalls sehr einfach. Man geht im LMS-Menü über die Einstellungen zum Punkt Plugins. Das offizielle Spotify-Plugin hat nicht sonderlich gut funktioniert. Ich habe stattdessen das Spotify-Plugin von Triode aktiviert. Dort trägt man in den Einstellungen seinen Benutzernamen und das Passwort ein. Die Stream-Qualität habe ich hier auf 160K einstellt, da es über WLAN bei mir zu starken Aussetzern kam. Einfach herum experimentieren, was am besten geeignet ist. Seine Wiedergabelisten kann man nun ebenfalls einfach über das Hauptmenü aufrufen und abspielen.

WLAN-Adapter

Idealerweise wird der WLAN-Adapter automatisch erkannt. Überprüfen kann man das wieder über das Setup-Menü am Rasp. Basic ConfigurationConfigure the network settings. Ruft man das auf und es gibt einen Eintrag bei wlan0 ist alles toll und gut. Konfiguriert wird er dann einfach über den entsprechenden Unterpunkt mit seiner SSID und dem zugehörigen WLAN-Passwort.

Sollte jemand den TP-Link TL-WN725N V2 einbinden wollen. Die Vorgehensweise habe ich im Beitrag über die WLAN-Kamera erläutert. Für andere WLAN-Adapter muss man sich leider selbst auf die Suche nach passenden Treiber begeben. Um unnötigen Ärger zu vermeiden am besten im Vorfeld informieren, welche WLAN-Adapter ohne Probleme mit dem Raspberry zusammen arbeiten.

Die Fernsteuerung

Immer die Adresse des Logitech-Servers über einen laufenden Rechner aufzurufen ist natürlich doof. Wesentlich lässiger gestaltet sich die Steuerung über z.b. ein Handy. Die App nennt sich Logitech Squeezebox Controller und gibt es für Android und iOS. Sie hat nicht die allerbesten Bewertungen bei den Usern erhalten, ist aber kostenlos und erfüllt absolut seinen Zweck. Mit ihrer Hilfe kann man, genau wie mit dem Menü über den Browser, verschiedene Player im Haus bedienen und z.B. auch synchronisieren, so dass alle die gleiche Musik abspielen.

Gehäuse und Endmontage

Meine Konfiguration habe ich am Schluß nun noch in ein selbstgebasteltes Gehäuse gepackt. Den Kabelsalat bitte ignorieren, kommt ja ein Deckel drauf. Im Gehäuse befinden sich eine kleine Steckdosenleise für die Stromversorgung des Raspberry und des Amplifier. Das Anschlusskabel dazu wird einfach rückseitig heraus geführt. Die Boxenanschlüsse des Amplifier werden mittels Kabel an 4 Anschlussbuchsen ebenfalls auf die Rückseite geführt. Dort habe ich dann meine Miniboxen angeschlossen.

An der linken Seite habe ich noch eine kleine Öffnung geschaffen, um den Anschluss für USB und die Netzwerkbuchse frei zu legen. Glaube zwar, dass das WLAN-Signal durch das dünne Brettchen durchkommt aber kann ja nix schaden. So ist es jedenfalls möglich ohne Probleme eine USB-Festplatte anzuschließen oder das Gerät zu konfigurieren, falls mal der WLAN-Adapter abraucht.

fastfertig

Designt habe ich den Kasten Steampunk-mäßig, weil mir danach war und ich sonst nix zu tun hatte. Sieht irgendwie besser aus, als eine simple Holzkiste.

ganzfertig

{ Leave a Reply ? }

  1. Dirk

    Der Raspberry Pi ist wirklich genial – ich habe momentan auch ein „halbfertiges“ Wlan-Radio hier. Es fehlt nur noch eine schöne Hülle dafür. Holz ist natürlich sehr schick! Spotify ist auch für mich ein must-have!

    Grüße
    Dirk

  2. KöNic

    Hi,
    erstmal danke für das anschauliche Tutorial.Plane ein ziemlich ähnliches Setup für Multiroom.

    Wieso hast du denn auf dem Pi einen LMS Server laufen? Reicht es nicht aus diesen auf dem Synology Nas zu installieren und dann für jeden Raum der beschallt werden soll einen Pi als Squeezebox Client zu konfigurieren und dort dann Boxen dran zu hängen ?
    LG

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Pingback & Trackback

  1. SQUEEZBOX | Pearltrees - Pingback on 2015/09/08/ 09:48