vinzv
freedom and linux stuff

Ein WLAN-Radio mit RaspberryPi und Touchdisplay selbstgebaut

Eins vorweg: Du solltest ein bisschen Grundwissen mitbringen, was den RaspberryPi und Linuxsysteme angeht. Ich erkläre hier nicht alles.

Schon länger wollte ich ein WLAN-Radio haben. Durch unsere innenliegende Küche, den damit miserablen UKW-Empfang und „die Hits der 70er, 80er, 90er und das Beste von Heute“ wurde der Wunsch noch akuter. Wenn nicht mal Bayern 1 für die Bundesliga-Konferenz reingeht, ist das schon bitter. WLAN-Radios von den gängigen Herstellern sind aber recht teuer und unflexibel in der Bedienung: Ab 80€ aufwärts ist mir schlicht viel zu viel Geld für „nur“ ein Radio.

Also habe ich mich für die Selbstbauvariante mit einem RaspberryPi entschieden. Hier gibt es eine Vielzahl von Lösungen mit Bedienung durch LCD-Displays und manuellen Knöpfen, sowie ein paar Schöne mit Touchdisplay. Letzteren Weg habe ich gewählt.

Material

Vorüberlegungen

Ich habe verschiedene Lösungen ausprobiert, darunter das RPi Tron Radio und den Raspbian Tron Radio lema67 Mod. Teilweise hat das auch funktioniert, Problem war aber die unterschiedliche Displaygröße (2,8 vs. 3,2 Zoll) sowie eine unfertige Konfiguration des Touchdisplays, die ich selbst nicht wirklich verstanden geschweige denn hinbekommen habe.

Also war mein Weg nach einigem (!) Probieren die Kombination aus dem vorbereiteten Raspbian Image von Watterott für 8-Bit SPI Version 2015-05-24 und der newTRON-Radio Oberfläche. Der große Vorteil von newTRON ist die Skalierbarkeit: dank Python und SVG-Grafiken passt sich die Darstellung automatisch an die jeweils verwendete Displaygröße an.

Die Einrichtung – Schritt für Schritt

  1. Raspbian Image herunterladen, entzippen und mit dd auf die Speicherkarte bringen
    ~# dd if=raspbian_wheezy_armhf_fbtft_02.2015.img of=/dev/sdX oflag=direct bs=1M
  2. Zweite Partition mounten und in /etc/network/interfaces WLAN SSID und Passwort hinterlegen:
    auto wlan0
    iface wlan0 inet dhcp
    wpa-ssid "Wlanname"
    wpa-psk "Wlan Passwort"
  3. Das Installerscript aus dem Forenbeitrag (ganz unten am ersten Beitrag) herunterladen und in /home/pi/ ablegen. Für den Download musst du dich im Forum registrieren, was eh eine gute Idee ist, wenn du dich für RaspberryPi Themen interessierst!
  4. Touchdisplay am RaspberryPi aufstecken, Speicherkarte einlegen und den Pi starten. Das Gerät startet und auf dem Display erscheinen die üblichen Zeilen eines bootenden Linux. Nach einer Weile fängt der WLAN-Stick an zu blinken und des Pi lässt sich pingen.
  5. Du loggst dich via SSH mit user „pi“ und „raspberry“ als Passwort auf dem RaspberryPi ein und aktualisierst die Paketliste: sudo apt-get update
    Wichtig: Auf keinen Fall das System aktualisieren! (upgrade oder dist-upgrade). Das installiert eine Version von python-pygame die mit der Firmware des Pi nicht klarkommt. Das newTRON Radio startet dann nicht!
  6. Wenn die Paketliste aktualisiert ist startest du die Installation von newTRON:
    sh ./newtron-radio-setup.sh
    Das dauerte eine Weile, hol dir mal nen Kaffee. Sobald die Installation abgeschlossen ist, fügst du in die Datei /etc/rc.local noch die Zeile /usr/local/bin/newtron-radio vor exit 0 ein. Sonst sollte in der Datei nichts stehen!
  7. Im Anschluss startest du den RaspberryPi neu. Wenn alles geklappt hat, sollte das System direkt nach dem Booten newTRON starten und anfangen Musik abzuspielen. Natürlich nur falls du Boxen oder testweise Kopfhörer angeschlossen hast. ;)

Für mich steht noch der Bau eines passenden Gehäuses auf dem Plan. Ich möchte das aus Holz sägen und kleine Aktivboxen einbauen, die über USB mit Strom versorgt werden.

Kategorien: Allgemein

In reply to… » « 6./7. Juni: Das erste GNU Social Hackfest steht an!

43 Kommentare

  1. Wenn es um den Empfang von Bayern 1 geht, wäre es eventuell auch interessant, einen USB-DAB+-Empfänger wie den RealTek RTL2832U Chip in Betracht zu sehen. Oft kann man mit dem DAB+-Empfang sehr gute Ergebnisse erzielen und verschwendet dabei keine kostbare Bandbreite.

    • vinzv

      20.08.2015 — 23:42

      Ne, Bayern 1 ist das geringste Problem. Dafür könnte ich Notfalls auch eine Antennenverlängerung auf den Balkon basteln.
      Mir gehts mehr um SomaFM, DI.fm oder die Webstreams von Rockantenne.

      • Nette Ableitung, aber dazu zu raten das system nicht upzudaten find ich nicht gut. Sicherheit sollte auch bei einem noch so unbedeutenden gerät wie dein radio garantiert werden. Immerhin ist das teil ja mit dem Internet verbunden und somit prinzipiell von außen angreifbar.

        Eine bessere Lösung wäre es das system upzudaten und anschließend eine ältere Version von pygame zu installieren. (Downgrade oder selber kompilieren)

    • Hast du einen DAB+ Stick am Raspberry zum Laufen gebracht? Würde mich interessieren, bisher hab ich noch nichts gefunden…

  2. Vielen Dank, genau so eine Anleitung habe ich schon lange gesucht! Bis auf das Display habe ich alle Teile da. Noch ein paar Fragen:
    – Kann dieses Radio auch .mp3-Dateien von einem USB-Stick abspielen? Idealerweise per Ordnernavigation aufrufbar.
    – Verwendest du den originale RPi-Audioausgang? Wie ist die Klangqualität?
    – Kann man einen Speicher anschließen, den man dann über’s Netzwerk befüllen kann?

    • vinzv

      21.08.2015 — 17:18

      Das Radio läuft ja mit MPD (Music Player Daemon) und kann somit alles abspielen: MP3, Ogg, MP4…
      Hilfreich für deine anderen Fragen dürfte dieser Blogpost sein: https://kaffeeringe.de/703/fernsteuerte-musik-per-mpd-und-android/
      Ich werde das aber selbst noch testen.

      Für die Audioausgabe verwende ich den Klinkenausgang. Für meine Zwecke reicht das, selbst mit den 5€-Schrottboxen die ich hier noch rumliegen hatte klingt das ganz passabel. Für den Zweck einer Hifi-Anlage würde ich aber den HDMI-Port verwenden. Digital ist besser. :)

      Lass was hören, wenn du dein Radio fertig hast!

      • Mach ich. Zuerst mal habe ich jetzt das Display bestellt, das wird noch dauern, bis das kommt.
        Kann man das Ding auch über eine Fernbedienung steuern? Ich hab noch so eine X10 herumliegen. Gehäuse steht jetzt auch bereit…

        • vinzv

          21.08.2015 — 20:40

          Für Infrarot wirst du einen externen Empfänger zu brauchen. Es gibt aber auch Android Apps für die remote Steuerung von MPD. Da bist du dann von Sichtkontakt unabhängig.

          • Die X10 ist eine Funk(!)-Fernbedienung, für die ich auch ein Dongle habe. Nachteil: Die ist für Medion-PCs, wie ich auch einen im Wohnzimmer stehen habe. Bediene ich auf der die Pfeiltasten, dann scrollt der Rechner im Wohnzimmer auf und ab. Aber damit muss man leben ;)
            Das Display ist immer noch nicht gekommen. Ich würde so gerne damit anfangen, das Ding zu bauen…

          • vinzv

            09.09.2015 — 20:01

            Ja,die Lieferungen per Seefracht aus China brauchen ihre Zeit.

  3. Was lange währt, wird endlich… irgendwann fertig. Das Display aus der oben genannten Auktion ging zweimal auf dem Postweg verloren, ich habe jetzt ein anderes bestellt und heute bekommen. Ein angepasstes Raspbian (vom Displayhersteller) ist drauf, ebenso die oben genannten Anpassungen. Jetzt geht es ans Feintuning, Displaykalibration, Oberfläche anpassen und so weiter. Danke für die Anleitung!

    • Hi,
      darf ich fragen welche Display du bestellt hast?
      Ich will mir auch so ein Radio bauen und hab extra auf den Chip XPT2046 geachtet, nur kann ich das Radio nicht starten, weil das Display auf die befehle ts_calibrate nicht reagiert.

  4. Erst mal viele Dank für die super Anleitung, hab heute mein Display bekommen und gleich mal alles zusammen gesteckt.
    Und dann Spannung an den Pi und gespanntes warten ……
    Und es funktioniert !!!
    Jetzt steht nur noch der bau eines Gehäuses an.

    Ich hab da nur noch ein Problem und zwar das ich NDR 2 nicht zum laufen bring, habs schon als NDR2.m3u versucht oder auch „mit mpc add http://www.ndr.de/resources/metadaten/audio/m3u/ndr2.m3u

  5. Hallo ganz Klasse deine Anleitung,
    Ich habe ein kleines Problem. Ich kann keinen Sender abspielen der in der Adresse einen Unterstrich haben wie z.B
    http://mp3-live.swr3.de/swr3_s.m3u
    http://www.dradio.de/streaming/dlf_mq_ogg.m3u

  6. Ein nettes Projekt! Ich hab es ausprobiert und bin soweit zufrieden. Als Monitor hab ich den Waveshare 3,5″ 480×320 genommen. Trotz Bildschirmkalibrierung liegt die Maus immer zu weit links vom gedrückten Punkt im Fenstermodus oder im Vollbild. Ich wollte mir noch ein paar schwedische Sender hinzufügen und hab die auch in die Playliste eingetragen wie die anderen. Wenn ich die Sender suche tauchen sie in der Liste nicht auf. Gibt es hier noch etwas zu ergänzen im newtron-radio.py?

  7. Ich habe die Probleme gelöst. Die neuen Radiostationen wurden im mpd-Verzeichnis /etc/mpd.conf eingefügt. Die genaue Bezeichnung ergibt sich wenn man mit vlc den offiziellen link als Netzwerkstream öffnet und dann unter Werkzeuge/Medieninformation Ort die genau Bezeichnung findet um den Stream bei mpd.conf einzufügen. Die Bildschirmproblematik habe ich umgangen indem ich remote desktop software auf raspberry pi und mein Handy aufgespielt habe.
    Nun bediene ich komfortabel mein Wlan Raspberry Pi vom Handy aus.
    Dazu bräuchte ich eigentlich kein Display mehr.

  8. Habt ihr ein Verstärker verbaut?
    Ich würde gerne 2 deckenlautsprecher verbauen.

    Ich wollte erst ein Buschjager Radio verbauen die Alternative mit dem Pi ist natürlich um einiges besser.

  9. Bin absoluter Anfänger, wie kriege ich das ganze mit nem Mac hin?

    • vinzv

      08.06.2016 — 22:37

      Hi,

      klar – das ganze ist vom Betriebssystem deines Rechners unabhängig.
      Aber ein paar Linux-Grundkenntnisse sind bestimmt hilfreich. Vielleicht solltest du erst einmal mit dem Pi rumspielen und ausprobieren, bevor du dich an das Radio-Projekt wagst.

  10. Hallo zusammen,

    ich finde das die anleitung echt super mal ganz von der idee abgesehen.
    mein papa wird sich bald über ein neues radio freuen können, denn das medion radio wird ersetzt.
    Beim schreiben ergibt sich noch folgende frage: Kann ich irgendwie ein CD Laufwerk einbinden ?
    Mein papa ist schon recht alt, aber mit dem 3,5 zoll display sollten die knöpfe mind wenn nichr besser erkennbar sein.
    Ein cd laufwerk wäre deswegen interessant, weil es nicht zu komplex werden darf ( er ist über 70 u nicht IT affin) oder könnte man einen button „CDs“ hinterlegen? dann würde ich die über das lan bereitstellen wollen.

  11. Aber es sollte doch nicht zu schwer sein ein CD-Player zu integrieren?
    Wäre doch Super wenn man ein CD-Laufwerk per USB anschließt und Audio-CD’s hören würde
    Man hat ja nicht Lust alle CD zu rippen

  12. Erstmal danke für die Anleitung.
    Hab noch nen Raspberry Pi in der ersten Version liegen, geht der auch?
    Oder ein Pi 3 ?

  13. Sorry für die Frage, welche Image von den vielen muss ich denn nehmen? Habe Raspi 2 und Touchdisplay.

    • vinzv

      04.11.2016 — 14:11

      Kein Problem! Welches Image meinst du? Raspian?

      • Hallo, ich meinte für dein Projekt umzusetzen…… Du schreibst Raspbian Image von Watterott für 8-Bit SPI Version 2015-05-24 und der newTRON-Radio Oberfläche. Welches Watterot soll ich nehmen? oder ist das ein normals Raspian Image?

  14. Hallo, kann man den Mauspfeil deaktivieren, Touch funktioniert nicht so richtig, wenn leiser machen will verändert sich der Radiosender oder so.

  15. Hi
    Ich habe ein Problem das ich nicht lösen kann. Erst mal ist das Image das beschrieben ist nicht mehr dort zu finden. Habe unterschiedliche Waterrott Images ausprobiert aber konnte mein Problem auch nicht gelöst.
    Das Display selber leuchtet einfach nur hell ohne etwas an zu zeigen. Jetzt weiss ich nicht ob das Display defekt ist oder ob ich was falsch mache.
    Jemand ne idee ? Der Raspi bootet und scheint zu laufen.

  16. Hallo,
    tolle Anleitung, ich habe alles auch mit 3,5 Zoll Display hinbekommen. Auch die mp3 laufen einwandfrei. Was nicht funktioniert ist die Lautstärkenregelung. Ich kann die Lautstärke nich erhöhen, somit kommt der Ton zu schwach. Woran kann das liegen? Kann mir da jemand helfen?

    Danke
    Mas-Ter

    • Hatte das Problem auch. Bei mir stand die Lautstärke anzeige auf -1.

      Du musst die mpd.conf anpassen
      da fehlt mixer_type „software“ in Datei /etc/mpd.conf.

      type „alsa“
      name „My ALSA Device“
      # device „hw:0,0“ # optional
      # mixer_type „hardware“ # optional
      mixer_type „software“
      # mixer_device „default“ # optional
      # mixer_control „PCM“ # optional
      # mixer_index „0“ # optional

  17. Danke für die Anleitung, werde ich gleich mal probieren – kann man über Newtron auch ein CD-Laufwerk ansprechen?
    Würd ja gerne einen CD/Radio-Player für die Kids basteln…

    • vinzv

      05.06.2017 — 22:50

      Uh, schwer zu sagen. Wenn du es schaffst das CD-Laufwerk im MPD anzusprechen sollte es aber gehen. Newtron braucht ja prinzipiell nur eine Playlist. Was da dann drin steht ist erst mal egal.

  18. Hallo zusammen,
    ich plane mir auch einen Raspberry Pi 3 zuzulegen, um damit ein Internet-Radio ans laufen zu kriegen. Kann mir jemand für den Pi 3 ein gutes 3,5 Zoll Display empfehlen, wo ich auch mit der aktuellen Raspian Version das Newtron zum laufen kriege? Habe irgendwie Angst, mir jetzt die Sachen zu bestellen, und dann funktionieren die nicht richtig zusammen…
    Bin für jede Hilfe und Kaufempfehlung dankbar !

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

*

Copyright © 2017 vinzv

Theme von Anders Norén↑ ↑