Kategorie: Android

Raspberry Pi per DLNA mit Raumfeld Controller verbinden

Da ich momentan kranheitsbedingt eine Menge Zeit und Langeweile habe, habe ich mal versucht, meinen Raspberry Pi als DLNA Box für die Küche einzurichten. Das i-Tüpfelchen wäre dann, wenn ich den Pi auch später als eigenen Raum im Raumfeld Controller ansprechen könnte. Wenn der Sound meiner alten PC Lautsprecher angeschlossen am Pi auch noch einigermassen ok wäre, hätte ich damit eine ziemlich günstige DNLA Box. Normalerweise gehen die Preise für solche Boxen erst ab 150€ los. Highend Boxen zb. von Teufel werden dann nochmal deutlich teurer.

Als erstes sollten wir uns in der RaspiConfig einen SSH Zugang einrichten,dann können wir komfortabel mit Putty auf den Pi zugreifen. Wie man auf dem Pi ein Betriebssystem installiert, zeige ich hier nicht, dazu gibt es jede Menge gute Tutorials im Netz. Auf meinem Pi läuft übrigens ein Raspbian „wheezy“.

sudo raspi-config

Nun öffnet sich die Raspberry Konfiguration und dort kann man dann SSH enablen. Anschließend kann man sich über „netstat -r -n“ die IP des Pis geben lassen und sich dann mit Putty connecten.
Sinnigerweise setzt man sich eine statische IP für die Netzwerkkarte.

sudo nano /etc/network/interfaces
// eth0 bekommt jetzt statisch die x.x.x.105
iface eth0 inet static
    address 192.168.1.105
    netmask 255.255.255.0
    gateway 192.168.1.1
// network restart
sudo service network-manager restart

Nun updaten und upgraden wir den Pi, das dauert ein bisschen…

sudo apt-get install rpi-update
sudo rpi-update
// Neustart
sudo shutdown -r now

sudo apt-get update
sudo apt-get upgrade

Nun muss der Wlanadapter installiert und konfiguriert werden, das kann jetzt abhängig vom Adapter etwas variieren, in meinem Fall ist es ein EDIMAX Adapter. Evtl. wird der Adapter auch gleich beim Anstecken erkannt.

//Gibt die Adapter an USB aus
lsusb
apt-cache search edimax

sudo apt-get install "gefundener Begriff"
iwlist wlan0 scan

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

//Einstellungen für das WLAN
network={
  ssid="deine_ssid"
  key_mgmt=WPA-PSK
  psk="dein_passwort"
}

Zuletzt wird jetzt DLNA installiert und konfiguriert.

//Install GmediaRenderer
cd
git clone https://github.com/hzeller/gmrender-resurrect.git
cd gmrender-resurrect

sudo apt-get install autoconf automake libtool
sudo apt-get install libupnp-dev libgstreamer0.10-dev \
                gstreamer0.10-plugins-base gstreamer0.10-plugins-good \
                gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly \
                gstreamer0.10-ffmpeg \
                gstreamer0.10-pulseaudio gstreamer0.10-alsa
./autogen.sh
./configure
make
sudo make install
sudo cp scripts/init.d/gmediarenderer /etc/init.d

//Roomname "Küche"vergeben
sudo nano /etc/init.d/gmediarenderer

sudo update-rc.d gmediarenderer defaults
sudo shutdown -r now
//Prüfen, ob der Dienst läuft
ps aux|grep gmedia

Wenn alles geklappt hat, sollte man nun im Raumfeld Controller den Raum „Küche“ finden.

Nun noch meinen alten Creative T10 Boxen an den Pi und mal Musik anmachen…. Naja, der Sound haut mich jetzt nicht um, ich höre so ein leichtes Hintergrundrauschen, aber für die Küche reicht es.

UPDATE:
Ich hab jetzt eine USB Soundkarte angeschlossen, das war etwas frickelig, da die Soundkarte zwar erkannt wurde, aber der Gmediarenderer trotzdem nur Musik über den Standardausgang gespielt hab. Folgendes hat geholfen:

sudo nano /etc/modprobe.d/alsa-base.conf

Dort den Wert „snd_usb_audio“ auf „0“ setzen.
Unglaublich, was das jetzt für ein Unterschied ist!Sauberer, klarer Sound ohne Störgeräusche und Rauschen!




HTC Desire mit Android 2.3.x und Sense 3.0 flashen

Nachdem ich gelesen hatte, das es inzwischen flüssig laufende Custom-ROMs mit Android 2.3 und HTC Sense 3.0 gibt, habe ich mal versucht, mein HTC Desire upzudaten. Dazu gibts es leider gefühlte 1 Millionen Sites, die das alle unterschiedlich erklären. Deshalb schreibe ich das Vorgehen mal so auf, wie ich es gemacht habe und welche Erfahrungen ich dabei gesammelt hab.
Vorab solltet ihr euch im Klaren darüber sein, das ihr aus eurem Telefon einen sehr teuren Briefbeschwerer machen könnt, wenn etwas schief läuft. Die Anleitung gilt übrigens nur für ein ungebrandetes Desire mit aktueller Android 2.2 Version und 0.93.0001 Bootloader!

Vorbereitungen
Ladet euch zuerst alle Dateien auf den PC runter, die ihr benötigt. Das wäre:

  • Das originale RUU ROM von HTC, falls etwas total schief geht (Info steht unter „Telefoninfo=>Software Informationen“) RUU
  • Unrevoked3 (Das wird zum Rooten benötigt).
  • Den USB-Treiber für Android: Android USB Treiber
  • Das neue ROM, in meinem Fall Cool3D AceS v5 Bravound auf der gleichen Seite außerdem folgende Dateien:
    • Alignment Cool.zip (um die Partition auf der SD Card nach EXT4 zu konvertieren)
    • Stock_HBOOT.zip (um den HBOOT zu flashen)
  • Zum Partitionieren der SD Card: Partition Wizard Home Edition

Ladet eurer Desire vorher vollständig auf, sollte beim Flashen der Akku leer gehen, könnt ihr euch schonmal nach einem neuen Gerät umsehen.
Sichert alle Daten von der SD Card! Das Telefon ist am Ende wieder im Auslieferungszustand.

Das Rooten

  1. Schaltet auf dem Desire USB Debugging an (Einstellungen => Anwendungen => Entwicklung => USB-Debugging).
  2. Löscht „HTC Synch“, außer den Treibern von eurem Rechner.
  3. Verbindet das Desire mit dem PC.
  4. Startet das Desire im HBoot Menü, dazu müsst ihr beim Start des Desires die Leise-Taste drücken.
  5. Öffnet am PC den „Gerätemanager“, dort erscheint ein „Unbekanntes Gerät“, installiert dort den USB-Treiber für Android
  6. Startet das Desire ganz normal, startet dann Unrevoked3.
  7. Macht jetzt nichts mehr, Unrevoked3 rootet jetzt das Desire und gibt euch dabei Statusmeldungen (Done!).
  8. Startet das Desire normal und schaut unter „Apps“, dort sollte es jetzt einen „Superuser“ geben.
  9. Installiert euch CWM ROM Manager von Clockworkmod über den Android Market auf euer Desire

Die SD Card partitionieren
Es wird oft empfohlen, den „ROM Manager“ aus dem Market zum Flashen und Partitionieren zu nehmen. Das habe ich auch versucht, allerdings kam der mit meiner SD Card anscheinend nicht zurecht. deshalb habe ich die „Old School Variante“ gewählt und meine SD Card am PC partitioniert.
Sichert dazu alle (auch versteckte) Dateien eurer SD CARD, denn die SD Card wird anschließend komplett formatiert.
Ihr benötigt eine FAT32 Partition für eure Daten und eine EXT3 Partition (keine EXT4, das kommt später!).
Wie das genau geht, steht hier sehr gut beschrieben.

Das ROM auf das Desire flashen

  1. Startet das Telefon im HBOOT-Menü (Leiser + An Taste), geht mit der „Leiser-Taste“ zu „Recovery“ und startet dieses mit der „An-Taste“, danach könnt ihr, wenn ihr im (grünen) „Recovery“ den Trackball benutzen.
  2. Verbindet über „mounts and storage=>mount usb storage“ das Desire mit dem PC und schiebt alle o.g. ROM-Dateien des neuen ROM auf die SD Card.Danach das USB Kabel wieder lösen
  3. Geht zu „backup and restore=>backup“ und sichert dort eure momentane Froyo-Version.
  4. Geht zu „install zip from sdcard“ und wählt „Alignment_cool.zip“, die formatiert eure EXT Partition zu EXT4.
  5. Geht auf die oberste Ebene des Recovery und wählt „wipe data/factory reset“, ab jetzt sind alle eure Daten auf dem Desire gelöscht!
  6. Wählt jetzt „wipe cache partition“.
  7. Wählt jetzt „Advanced“ und dann „wipe Dalvik cache“.
  8. Wählt jetzt „install zip from sdcard“ und wählt das neue ROM aus.
  9. Bootet jetzt noch nicht neu, sondern wählt noch einmal „install from sdcard“ und wählt „stock_hboot.zip aus.
  10. Danach wählt im Recovery „reboot system now“ und wartet ab. Das Desire braucht so ca. 10 Minuten und startet dabei öfters.

Wenn alles gut gegangen ist, habt ihr jetzt Android 2.3 auf dem Desire.

Wenn etwas schief geht
Solltet ihr im Bootloop hängen bleiben oder Android ist total langsam, startet im HBOOT-Menue das Recovery und spielt euer altes Backup ein. Dann überprüft, ob ihr alles korrekt gemacht habt und versucht es noch einmal.
Wenn gar nichts mehr geht, spielt das Original RUU-ROM ein, wie das geht, seht ihr hier.

Fazit
Was hier in ein paar Zeilen steht, hat mich ein ganzes Wochenende gekostet, zwischenzeitlich hatte ich extrem schlechte Laune, da ich dachte, ich hätte mein Telefon „gebrickt“ (=geschrottet). Es gibt extrem viele (gute) Sites mit Anleitungen, bei denen man aber tunlichst drauf achten sollte, über welches Telefon mit welchen Bootloader, Kernel usw. gesprochen wird. Es wird oft zwischen S-ON und S-OFF unterschieden, diese Anleitung ist für S-ON! Ich hatte auch mehrfach Bootloops, zwischenzeitlich ein total langsames Android 2.3, das ständig abstürzte, sowie ständige Fehlermeldungen beim Partitionieren mit dem CWM Rommanager. Zwischenzeitlich lief auch Android 2.3.4 ROM mit HTC Sense 3.5, aber das war so unperformant, das ich es sofort wieder gelöscht habe. Inzwischen läuft Android 2.3 mit Sense bei mir stabil und ich kann nur sagen, es ist der Wahnsinn!!!

Nützliche Links
Forum xda-developer
Brains Brutzelstube

Bugs
Die Bugs müssen nicht unbedingt am ROM liegen, es kann auch sein, das bei der Einrichtung noch nicht alles rund läuft:

  • Der Wecker ging heute morgen nicht.
  • Musicplayer „3“ spielt keine Musik ab.

Update
Da mein System zwischenzeitlich so laggy wurde, das ich mein Telefon nicht mehr richtig benutzen konnte, habe ich ein neues ROM aufgespielt, diesmal mit Sense 3.5:
Runnymede AIO V3.0.4
Dies scheint momentan sehr stable und auch auf den ersten Eindruck auch sehr schnell zu sein…

Screenshots