Raspberry Pi als „Audiosink“

Ich arbeite momentan an einem kleine Zoneplayer System. Während der Recherche nach geeigneter Software ist mir Airplay und UPNP AV aufgefallen. Frisch motiviert hab ich gleich etwas gebastelt um im Tanzverein dem Trainer einen Airplay Renderer anzubieten. Jetzt bin ich bei den Feinheiten.

Die Sache ist eigentlich ganz einfach wenn man weiss wie es get 😉 XBMC und damit alle XBMC-Ditributionen für das Raspberry Pi unterstützt von Haus aus Airplay und UPNP AV. Und zwar das ganze für Audio UND Video. Sehr cooles Feature muss ich sagen.

Wer Android hat, sollte sich die App BubbleUPNP mal ansehen. Die App ist kostenlos und funktioniert super. Bei Apple kann man mit Boardmitteln loslegen (Stichwor „Airplay“).

Was mich nun interessiert ist die Performance. Bedingt durch das Streaming der Daten und die Latenzen im Netz, die schwachen Prozessoren im Handy/Tablet und im Pi gibt es leider ein paar Delays. Ich versuche nun das Delay auf der Pi Seite zu minimieren und probiere deswegen jede XBMC-Distribution durch 😉

Folgende Daten konnte ich ermitteln:

Xbian:
UPNP Start / Stop: ca. 0,3s
UPNP neues Lied: ca. 5,2s
Airplay Start / Stop: ca. 3,5-4s
Airplay neues Lied: ca. 6 – 10s
Boot Dauer: ca. 47s

Raspbmc:
UPNP Start / Stop: ca. 0,4s
UPNP neues Lied: ca. 5,6s
Airplay Start / Stop: ca. 10,3s
Airplay neues Lied: ca. 11 – 15s
Boot Dauer: ca. 46s

OpenELEC:
UPNP Start / Stop: ca. 0,3s
UPNP neues Lied: ca. 6-9s
Airplay Start / Stop: ca. 3,3s (aber Aussetzer! -> zu kleiner Puffer)
Airplay neues Lied: ca. 5,5s (aber Aussetzer! -> zu kleiner Puffer)
Boot Dauer: ca. 46s

Man muss dazu sagen, dass die Liedlänge Auswirkungen auf die Zeiten hat. Desweiteren ist mein IPod Touch mit erheblich schlechterer Hardware ausgestattet als mein Android Handy. Nichts desto trotz sind die Airplay Zeiten doch etwas enttäuschend. Ich hoffe dass sich das in der Zukunft bessert. Ich denke es gibts noch etwas Tuning potienzial wenn man Puffergröße und ähnliches umstellt. Allerdings suche ich mehr eine „out of the box“ Lösung. Und hier muss man sehen das Xbian die besten Werte liefert. Ich werde das mal eine Weile beobachten 😉

Network Scanner mit dem Raspberry Pi

Heute habe ich dringend meinen alten Scanner gebraucht und musste leider feststellen, dass es keinen Windows 8 Treiber mehr gibt -.-

Abhilfe schafft da ein Raspberry Pi. Ich habe beim kauf darauf geachtet, dass der Scanner von der SANE Bibliothek unterstützt wird 🙂 Jetzt kann ich mit meinem guten alten Scanner über Netzwerk scannen.

Eine Schritt für Schritt Anleitung gibt es hier:

Raspberry Pi: Sharing a scanner with the Network – even Windows!

Alternativ kann man das Pi so einstellen, dass es über einen Knopfdruck mit dem Scan beginnt und das Bild als PDF in die Dropbox kopiert. Das ist vllt die einfachere Lösung 😀

Hier noch ein paar weitere Infos:

Scannen mit dem Raspberry Pi und Canon Scannern

Make the Raspberry Pi wireless (mit dem MicroNEXT USB Stick)

Heute mal eine kleine Anleitung zum Thema WLAN mit dem Raspberry Pi.
Farnell bietet den MicroNEXT USB WLAN-Stick als Zubehör an. Auf dem Stick ist genau wie auf dem populären Edimax EW-7811UN Stick ein RTL8188CUS Chip verbaut.Herausfinden kann man das über den Befehl:

pi@raspberrypi ~ $ sudo lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 005: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter

Der Befehl listet alle USB-Geräte auf. In diesem Fall sieht man, dass der WLAN Stick und ein Logitech Empfänger angeschlossen ist 😉

Die Installation der WLAN Sticks mit diesem Chipsatz ist extrem einfach geworden. In der Community gibt es einen Script, der die ganze Arbeit übernimmt. Folgende einfache Schritte sind für die Installation nötig:

  1. Stick aus dem USB Slot ziehen!
  2. In den Ordner „boot“ navigieren:
    pi@raspberrypi ~ $ cd /boot/
  3. Den Script herunterladen:
    pi@raspberrypi /boot $ sudo wget http://dl.dropbox.com/u/80256631/install-rtl8188cus-latest.sh
  4. Den Script ausführbar machen:
    pi@raspberrypi /boot $ sudo chmod +x install-rtl8188cus-latest.sh
  5. Den Script als root ausführen und den Anweisungen folgen:
    pi@raspberrypi /boot $ sudo ./install-rtl8188cus-latest.sh
  6. Der Script fordert dich irgendwann auf, den Stick einzustecken. Dem sollte man auch erst zu dem Zeitpunkt folge leisten. Nach einer kurzen Wartezeit kann man „Enter“ drücken und das Pi wird sich mit dem WLAN verbinden.

Bei mir beendet sich der Script am Ende nicht richtig. Nach ein paar Minuten Wartezeit habe ich ihn mit „STRG+C“ beendet. Seit dem funktioniert das WLAN wunderbar. Übrigens scheint das Raspberry Pi genug Strom für den Stick zu liefern. Also war bei mir kein externer Hub nötig.

Raspberry Pi mit WLAN Stick

Quellen:
Forums Thread (Englisch): http://www.raspberrypi.org/phpBB3/viewtopic.php?t=10360&p=127674
Script: http://dl.dropbox.com/u/80256631/install-rtl8188cus-latest.sh