Kleines Internetradio

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • mit welchem Display läuft kivi bei Dir?

    Hi kle,

    ich habe zwei Touch-Displays. Bei beiden funktioniert es:

    https://www.amazon.de/gp/product/B075JFT9SF/ref=oh_aui_detailpage_o00_s01?ie=UTF8&psc=1&tag=psblog-21 [Anzeige]

    https://www.amazon.de/gp/product/B0765VZGWG/ref=oh_aui_detailpage_o08_s00?ie=UTF8&psc=1&tag=psblog-21 [Anzeige]

    Edit (Ergänzung): bei ersterem musste ich entsprechende Treiber installieren, bei letzterem funktionierte es - wenn ich mich richtig erinnere - out of the box.

  • Code
    cd /etc/ifpluged/action.d
    sudo mv ifupdown ifupdown.bak
    sudo cp /etc/wpa_supplicant/ifupdown.sh ./ifupdown

    Danke für das schöne Projekt!

    Kleine Ergänzung zu Beitrag #2:

    In der aktuellen Version von Volumio hat sich der Name eines Verzeichnisses geändert.


    Code
    cd /etc/ifplugd/action.d
    sudo mv ifupdown ifupdown.bak
    sudo cp /etc/wpa_supplicant/ifupdown.sh ./ifupdown

    Viele Grüße

    Erich

  • Hallo Herr Kaiser,

    Ich würde gerne ein kleines Webradio fürs Bad bauen mit Lautsprecher und Touchdisplay. Leider bin ich eher von der Hardware-Seite/Boxenbau als softwaretechnisch bewandert... Ich finde ihren Ansatz perfekt, da schlicht auf Webradio reduziert. Wäre es möglich, dass sie mir ein Image zur Verfügung stellen?

    Grüße Alex

  • Hallo Alex,

    danke für dein Interesse. Aktuell habe ich keine Version, die ich weitergeben könnte. Da ich inzwischen aber mehrfach per PN danach gefragt wurde, steht es auf meiner To-Do-Liste, meinen Code zu veröffentlichen. Wenn die aktuelle Zeitnot nicht wäre. Irgendwann demnächst werde ich entweder hier ein Image posten oder einen Link auf das (noch zu erstellenden) GitHub-Projekt. Kann noch nicht abschätzen wann, aber ich werde mich darum kümmern.

  • Danke für das Lob! :)

    In Ermangelung eines 3D-Printers und wegen eines nur sehr überschaubaren Werkzeugkastens ist alles aus Pappe (Passepartout-Karton) und Klebefolie zusammengeschnitten. Die Frontbeschriftung ist mittels Bedruckung eines simplen Fotopapiers, das ich anschließend laminiert habe, hergestellt. Alles also relativ simple. Bin sehr erstaunt, dass das Ergebnis nicht viel weniger robust erscheint, als ein Kunststoffgehäuse. Die Bastelei hat ca. 3 Nachmittage gebraucht, hat aber viel Spaß gemacht. :)

    Hallo Herr Kaiser,

    mit den Gehäusen des Raspis tue ich mir immer etwas schwer. Ich würde gerne nachvollziehen können, wie du so ein super Gehäuse aus Karton basteln konntest. Gibt es dafür Bastelanleitungen im Internet? Oder könntest du mal detailliert auflisten, welche Materialien, Klebefolien, Magnete, Kartons du verwendest hast?

    Danke,

    Linuxer

    Einmal editiert, zuletzt von Linuxer (25. Mai 2019 um 11:08)

  • Hallo Linuxer,

    eine "offizielle" Anleitung kenne ich nicht, hab das so zusammengebastelt, wie mir das in den Sinn gekommen ist. Grundlage sind folgende Passepartoutkartons:

    https://www.ebay.de/itm/10-Stuck-M…asAAOSwgkRVTG87

    Von denen klebe ich für jede Wand zwei aufeinander, dabei den inneren an jeder Seite 1,5mm kürzer, so dass eine stufige Kante entsteht. Die Wände werden zuerst mit etwas Alleskleber an den Kanten verbunden. Anschließend verstärke ich die Kanten mit Nassklebeband (Papier, dass man wie eine Briefmarke anfeuchtet, gibt es auf Rollen - glaube ich - im Künstlerbedarf). Das lässt sich leicht verarbeiten und gibt nach dem Trocknen gute Stabilität. Hinterher kommt gewöhnliche d-c-fix-Klebefolie in gewünschter Farbe darüber. Damit erreicht man für ein Pappgehäuse eigentlich eine recht erstaunliche Stabilität. Die Front mit Beschriftungen drucke ich einfach aus und laminiere sie und klebe sie dann auf die Vorderseite auf.

    Unten klebe ich kleine Gummifüße auf. Das sieht besser aus, wenn das Gehäuse nicht flach auf der Oberfläche aufliegt, gibt einen gewissen Rutschschutz und schont das Gehäuse. Wenn ich Gehäuse mit einer Art "Verschlussklappe" baue, bringe ich selbstklebende Neodym-Scheibenmagnete an (die dünnsten, die man finden kann), damit die Klappe selbständig "zuschnappt.".
    Wichtigstes Werkzeug: eine Hebelschneidemaschine. Ohne die wird man beim Pappgehäusebaus nicht glücklich. Außerdem hilfreich: Skalpell, ggf. Kreisschneider und Dremel für entsprechende Aussparungen/Löcher.

  • Irgendwie wird das kleine Internetradio immer größer. Habe inzwischen etwas upgegraded. Der ursprünglich verwendete Raspberry Zero W reichte für den Betrieb des Radios völlig aus. Nur hat mich die lange Bootzeit etwas gestört. Deshalb habe ich ihn nun durch einen 3A+ ersetzt, der schön flott startet. Bei der Gelegenheit habe ich das 3,5- gegen ein 7-Zolll-Display ausgetauscht und die Software so angepasst, dass man jetzt die Senderliste und die Detailansicht des ausgewählten Senders auf einem Schirm hat. Das macht die Bedienung noch etwas komfortabler. Das fällige neue Gehäuse ist jetzt nicht mehr aus Karton geschnitten, sondern aus Kunststoff mit etwas Aluminium. Etwas aufgehübscht mit Carbon- und Birkenholzoptik. Alle Anschlüsse inklusive SD-Kartenslot habe ich nach außen geführt, so dass das Gehäuse im Regelfall nicht mehr geöffnet werden muss. Jetzt habe ich zwei USB-Ports am Gehäuse. Da kann ich per Stick meine mp3-Sammlung anstöpseln, die das Radio jetzt auch abspielen kann. Außerdem habe ich da einen externen WLAN-Dongle angeschlossen, mit dem der Empfang noch etwas robuster ist. Schließlich habe ich noch ein IR-Modul eingebaut, damit das Radio auch per Fernbedienung gesteuert werden kann. Der ganze andere Rest ist aber noch genau so wie in der letzten Version des Radios. Alse eine LED. ;)

    Das Ganze ist jetzt als Wandgerät konzipiert. Es nimmt keine Stellfläche weg und ist so per Touch noch etwas einfacher zu bedienen.

  • Danke! :)

    Uwe: Die Software besteht aus zahlreichen Einzeldateien, die ich noch ziemlich dilettantisch zusammengeschustert habe. Der Code ist leider auch noch etwas buggy, vor allem was die Fernsteuerung betrifft. Ich muss noch daran feilen, bevor ich das hier zeigen kann.

    hyle: Die Soundausgabe läuft über meine Hifi-Anlage, mit der das Radio per Klinkenkabel verbunden ist. Die Boxen hängen ebenfalls an der Wand.

  • Ergänzende Info: Das Radio kann ja jetzt auch IR-fernbedient werden. Ich habe mit allen hier im Haushalt auffindbaren Fernbedienungen Hampeleien und allenfalls Teilerfolge gehabt (hauptsächlich im Zusammenhang mit dem Anlernen der Tastencodes). Deshalb habe ich mir jetzt einfach folgende programmierbare Universal-Fernbedienung zugelegt:

    https://www.oneforall.de/universal-fern…sence-4#/step-1

    Dann habe ich mir in der Datenbank der bereits für lirc erfassten Fernbedienungen:

    http://lirc.sourceforge.net/remotes/

    eine Fernbedienung herausgesucht, die über die gewünschten Tasten verfügt. Habe mich für die TOSHIBA-SE-R0313-DVD-Fernbedienung entschieden und das entsprechende Konfigurationsfile heruntergeladen.

    Die Universalfernbedienung war innerhalb von Sekunden per Eingabecode auf das TOSHIBA-Modell eingestellt und funktionierte sofort. Das Schöne: einzelne Tasten können auf Wunsch zusätzlich individuell angelernt werden. So kann ich jetzt mit einer Fernbedienung das Internetradio und die angeschlossene Hifi-Anlage steuern - perfekt! :)

  • Jetzt hat das Radio einen weiteren Entwicklungsschritt durchlaufen. Ich habe einen eigenen Verstärker eingebaut (HifiBerry Amp2), so dass ich meine Passivboxen direkt anschließen kann.

    Der Sound ist hörbar besser als der zuvor an meine Kompaktanlage übergebene HDMI-Sound. Das kann u. a. auch daran liegen, dass ich die bisherige analoge Lautstärkeregelung per Poti ersetzt habe durch digitale Steuerung per Rotary Encoder. Ich habe noch einen Equalizer implementiert, der ebenfalls über Drehencoder eingestellt wird.

    Das Gute an dem HifiBerry ist auch, dass es kein Problem ist, ein wirklich sattes Netzteil zu finden, das über den Amp gleichzeitig auch den Pi und das Display versorgt. Das hat mit den üblichen USB-Netzteilen bisher schon auch ohne Verstärker nie zuverlässig funktioniert. Jetzt läuft das Radio auch im Dauerbetrieb wie am Schnürchen. Ich glaube, es erreicht langsam seine Endfassung :)


  • Hier noch ein par Ergänzungen.

    Mit eurer Hilfe ist der Lautstärkeregler jetzt eingebaut:

    Guten Abend,

    darf ich fragen wie du den Lautstärkeregler zum Funktionieren gebracht hast?

    Hab nach dieser Anleitung gearbeitet und versuche das ganze mit Python3.4 auszuführen. Ohne Erfolg.
    Dachte bevor ich jetzt einen thread eröffne, frage ich eben hier kurz nach.


    EDIT: Hat sich erledigt, ganz vergessen, dass es in Volumio ja ein Extra Plugin dafür gibt ;)

    Einmal editiert, zuletzt von UltraNoob (1. November 2020 um 19:23)

  • Hallo Forum,

    ein frohes neues Jahr euch allen!

    Ich habe mal wieder ein Internetradio gebaut. ^^

    Das zuletzt vorgestellte ist eher ein stationäres, das per Netzteil betrieben und an meine Boxen angeschlossen ist. Ich brauche aber natürlich noch eins zum Herumtragen - mit Batterieversorgung und eingebauten Boxen. :)

    Diesmal basiert es nicht auf einem Raspberry, sondern auf einem ESP32. Außerdem habe ich erstmals auch ein ePaper-Display eingebaut.

    Die Stromversorgung erfolgt per angekletteter Powerbank. Ich weiß, dass das von vielen als suboptimale Lösung betrachtet wird, ich bin aber auf keine bessere gestoßen. Zunächst habe ich es probeweise mit einem 3.2V-LiFePO4-Akku betrieben. ESP32, Display und mp3-Decoder kommen damit gut zurecht. Der verbaute Verstärker wird damit aber nur gerade noch soeben mit der erforderlichen Mindestspannung versorgt und meldet sich ab, sobald der Akku nicht mehr randvoll ist. Es musste daher eine 5V-Versorgung her. Mit 2 LiFePO4-Akkus wäre ich auch nicht um einen Step-Down herumgekommen, also habe ich mich direkt für die Powerbank (5000mAh) entschieden.

    Die hält jetzt schon seit vielen Stunden durch.

    Der Sound ist eindrucksvoll. Ich habe die Lautsprecher noch nicht voll hochdrehen können, weil sonst die Wände wackeln. =O:)

    Hier das Innenleben:

    Und die Zutatenliste:

    ESP32 (NodeMCU)

    1.54-Zoll ePaper-Display mit SPI-Interface

    2 Lautsprecher 4 Ohm, 5W [Anzeige] *)

    MP3-Decoder VS1053 [Anzeige]

    Verstärker PAM8403 [Anzeige] **)

    2 Trenntransformatoren 600:600 Ohm [Anzeige]

    1 Micro-USB-Buchse

    6 PCB-Schraubklemmen [Anzeige]

    3 Klinkenbuchsen

    PVC-Hartschaumplatte

    Deko-Folie

    Intenso Powerbank Slim 5000 mAh (vermutlich nicht mehr erhältlich)

    Kabel, Schalter, Drehknopf, einige Wago Durchgangsverbinder

    *) Wer es etwas kleiner mag, kann auch diese 3W-Lautsprecher [Anzeige] nehmen, die ich zu Vergleichszwecken angeschlossen habe. Bin beeindruckt, welcher Klang aus solchen Mini-Lautsprechern kommen kann. Sie sind natürlich etwas leiser als die o. g., aber immer noch mehr als ausreichend für den normalen Radio-Betrieb.

    **) Der Verstärker ist bekannt dafür, dass er gerne Störgeräusche produziert. Etwas vermindert wird das durch die Verwendung der Trenntransformationen. Trotzdem sind sie bei mir noch hörbar, wenn das Radio ganz leise gestellt wird. Das ist wohl auf die gemeinsame Masse der verbauten Teile zurückzuführen. Eine Verbesserung verspreche ich mir durch die Verwendung eines DC-Wadlers ( der allerdings erst bestellt und daher noch nicht getestet wurde).

    Bin insgesamt sehr happy mit dem Ergebnis. Schnelles Booten, schnelle Reaktionszeiten, einfaches Ausschalten ohne Herunterzufahren, Energiegenügsamkeit und natürlich der Sound - alles prima! :)

  • Poste doch mal den Code..

    Ok, der ist aber noch ziemlich dirty. Und noch nicht ganz vollständig. Aber er funktioniert :) (bei mir! ;) )

  • Ich würde die StreamURLs als HeaderFile einbauen. Das macht es schon mal besser lesbar. Wenn du nochmal Zeit hast, kannst du dir gerne mal den zweiten Core vom ESP32 anschauen, damit könntest du bspw. Den Taster kontrollieren, einen Webserver zur Streamverwaltung etc einbauen. Wenn du Arduino nutzt muss Wifi-Krams immer auf Core0 laufen.

    Wenn's brennt 112 hilft weiter!

  • Das ist das nächste Thema, in das ich mich einarbeiten wollte (bin ja noch blutiger Anfänger in Sachen Mikrocontroller und C++), nicht nur wegen des Tasters, sondern in erster Linie wegen des Displays. Der Senderwechsel erfolgt prinzipiell verzögerungsfrei. Wenn das Display eingebunden ist, wird allerdings erst die Aktualisierung der Anzeige abgewartet. Die Displayanzeige in einen anderen Thread zu legen, ist mir noch nicht gelungen. Führte nur zum Reboot des ESP, ohne das er mir verständlich gesagt hat, was er denn nun hat. Bin, wie gesagt, ja noch Anfänger. Aber das werde ich auch noch hinkriegen ...

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!