Freitag, 12. September 2014

Raspberry im IKEA DRAGAN Gewand als Airplaybox


Die ersten Versuche dem Raspberry als Airplay Empfänger zu verwenden waren erfolgreich und ich habe mir ein neues Projekt aus erkoren. Zusammen mit einem kleinen Lautsprecher und einer kleinen Box soll der Raspberry Musik und Podcast vom IPhone empfangen und wiedergeben.
Ich habe mir während der Planungsphase weder das kleine 1x1 des Lautsprecherbaus angeeignet, noch habe ich Nächte mit Handbüchern für Tools zur Berechnung von Lautsprechergehäusen und Frequenzweichen zugebracht. Auch sind die verwendeten Bauteile aus einem Preissegment, welches audiophilen Marktteilnehmern durchweg mit absoluter Nichtbeachtung gestraft wird. Wer HiFi  Equipment im hohen vierstelligen Bereich sein eigen nennt und ausschließlich lossless Musik hortet, bitte ich im weiteren sitzend weiterzulesen. Es wird billig :)


Wie eingangs erwähnt soll der Raspberry in einer kleinen Box sein zu Hause finden. Gemeinsam mit einem Lautsprecher, dem Verstärker und dem ganzen anderen Kram der da noch so anfällt.
Auf der Suche nach einem kleinen aber schönen Gewand für meinen Raspberry bin ich auf Bambus Kästchen von IKEA gestoßen. Das schwedische Möbelhaus vertreibt das Kästchen unter dem Namen DRAGAN.
Als Verstärker habe ich mir einen KEMO M032N ausgesucht. Als Lautsprecher verwende ich einen Visaton FRS8. Die Spannungsaufnahme des Verstärkers liegt bei 8 bis 16 Volt Gleichstrom. Ich habe mich für die goldene Mitte entschieden und verwende ein Netzteil mit 12Volt. Zum einen weil ich das noch hatte zum anderen weil ich mit einem USB Adapter für KfZ Steckdosen ohne viel Geld und Mühe die 5V für den Raspberry  gewandelt bekomme.
Nach den ersten Versuchen habe ich festgestellt, dass doch alles sehr eng in der Box wird. Nach einigen probieren habe ich die beste Anordnung gefunden, in der der Raspberry direkt unter der Box befestigt wird. Auf einer Seite neben dem Speaker befindet sich dann der Kemo Verstärker und auf der anderen Seite mein Spannungswandler.
Auf der Suche nach einigen Ansätzen bin ich über die Seite instructables.com gestolpert, auf welcher zwuckl eine ähnliche Box beschreibt. Ich habe mir von dort die Schaltung angeeignet und an meine Bedürfnisse angepasst. Das heißt im Wesentlichen ich habe mich für einen logarithmischen Poti (R4) entschieden. Die Wiederstände und den Poti habe ich bei Reichelt bestellt.


Für die Stromversorgung des Raspberry habe ich einen USB Adapter von seinem Plastikkleid befreit und die Kabel an die Anschlüsse gelötet.
12V auf 5V Spannungswandler ...outboxed

Das zusammensetzen des Gehäuses war weit aus schwieriger, da mir das Mc Gyver Gen offensichtlich fehlt. Stück für Stück habe ich den Einsatz für die Box zusammen gebaut. Das Ergebnis kann sich schon mal sehen lassen:
Erster Entwurf des Boxen Einstzes

Leider hat sich herausgestellt das dies so nicht ganz so funktioniert wie geplant. Also alles wieder auf Anfang und erneut zusammenbauen. Das verkommt irgendwie 3D-Tetris... aber ich bin erfolgreich.

Ich habe vom Pi den Composie Ausgang abgelötet und konnte diesen dann so upside down auf den Backplanel anbringen. Den Verstärker habe ich an eine der Streben verklebt und der Spannungwandler und die Musikausgang (inklusive Stereo zu Mono Schaltung) einigermasen innerhalb des Einsatzes Fixiert.... Das ganze sieht dann so aus:
zweiter Entwurf für den IKEA PI


Den Lautsprecher und die Frontseite habe ich mit etwas Stoff verkleidet. Das Ergebniss ist nach Einschätzung Dritter recht anschaulich.... was sagt ihr?

Anschliessend die Box zusammengebaut und ab auf den Laufsteg: von Vorn




Von der Seite:
und Von Hinten:

Die Box ist fertig! Doch was sind die inneren Werte? Die Konfiguration des Raspberry habe ich vor dem zusammenschrauben durchgeführt da bis zum Abschluss der Netzwerkkonfiguration mit USB Tastatur und HDMI gearbeitet wurde.

Als OS habe ich ein Rasbian verwendet, das ich von allen unnötigen Ballast befreit habe. Dazu habe ich die folgenden Pakete deinstalliert:

sudo apt-get purge console-setup desktop.* desktop-base dillo gnome.* gsfonts gtk.* gvfs.* libgtk.* libqt.* libxcb.* libxfont.* libxt.* lightdm lxde.* lxpanel omxplayer openbox penguinspuzzle python-tk python3-tk shared-mime-info tcl.* x11.* xarchiver xauth xdg-.* xkb-data xinit xserver.* wolfram

Anschliessend natürlich den Rest auf den aktuellen Stand bringen:

sudo apt-get update && sudo apt-get upgrade

Ich habe ebenfalls die Firmware des PI noch aktualisiert:

sudo rpi-update

Danach kommt die Konfiguration des WLAN Adaptes, bei welcher die Datei /etc/network/interfaces angepasst wird. Als erstes füge ich den WLAN Schlüssel an das ende der Datei angefügt:


sudo wpa_passphrase Testnetz TestPhrase >> /etc/network/interfaces

Aus den angefügten Inhalt und wird die Konfiguration der Datei /etc/network/interfaces editiert. Das Ergebnis sollte so aussehen:

sudo nano /etc/network/interfaces


auto lo
iface lo inet loopback
allow-hotplug wlan0
auto wlan0
iface wlan0 inet dhcp
wpa-ssid "ssid"
wpa-psk "password"

Anschliessend wird das Netzwerk neu gestartet:

sudo ifdown wlan0 && sudo ifup wlan0

Ein Blick in ifconfig zeigt das sich der WLAN Adapter eine Adresse aus dem Adressraum meines DHCP Servers bezogen hat.

sudo ifconfig

Nach der Konfiguration des Netzwerkes werden weitere Pakete installiert, welche für Shairport benötigt werden:

sudo apt-get install git libao-dev libssl-dev libcrypt-openssl-rsa-perl libio-socket-inet6-perl libwww-perl avahi-utils libmodule-build-perl

Ist dies geschehen wird noch das Perlmodul perl-net-sdp instlliert. Wobei ich mir gerade nicht sicher bin ob das bei der Version von Shairport, welche ich verwende benötigt wird.

git clone https://github.com/njh/perl-net-sdp.git perl-net-sdp
cd perl-net-sdp
perl Build.PL
./Build
./Build test
./Build install
cd

Okay die Basis für Shairport ist gelegt, jetzt kommt die Shairport installation an sich.
git clone https://github.com/abrasive/shairport.git shairport
cd shairport
./configure
make
make install

Ich kann das Ergebnis schon Testen in dem ich folgenden Befehl ausführe:
./shairport -a TestAIR

Super funktioniert und ich kopiere jetzt die Skripte, welche benötigt werden um Shairport beim Boot zu starten:
cp /opt/shairport/scripts/debian/init.d/shairport /etc/init.d
cp /opt/shairport/scripts/debian/default/shairport /etc/default

danach wird die Datei ausführbar gemacht und mit einem Runlevel versehen werden:
chmod a+x /etc/init.d/shairport
update-rc.d shairport defaults

Jetzt wird noch die Konfigurationsdatei von shairport angepasst:
nano /etc/init.d/shairport

In der Zeile 30 wird der Name für AirPlay vergeben, unter welchen ich das Gerät später finde:
AP_NAME=$(hostname)

wird zu:
AP_NAME=MyAIRPI

So die Datei speichern und zu guter letzt den Service von Shairport starten:
service shairport start

Der Raspberry läuft, auch nach einem Reboot ist Shairport sichtbar! und vor allem er hat ein schönes Gehäuse!

Keine Kommentare:

Kommentar veröffentlichen