ich hatte ja angekündigt ein Webradio mit dem ESP8266, später mit dem ESP32 umsetzen zu wollen. Die letzte Woche habe ich durchprogrammiert und nun eine erste Soft- und Hardwareversion fertiggestellt. Als DSP setze ich den bereits bekannten und vorgestellten V1053b von VLSI ein. Der NF-Verstärker ist ein kleiner Klasse D-Verstärker (PAM84xx irgendwas) aus Fernost.
Hier ein Bild des "Entwicklungsboards".
dazu die Beschaltung:
Wie bei käuflichen Internetradios wird die Netzwerkkonfiguration und die Editierung der Programmliste über eine Webseite erledigt. Der ESP8266 startet in der Grundeinstellung, oder wenn er keine Verbindung zu einem WLAN-Netz herstellen kann, als WLAN-Accesspoint. Dort kann man die Netzwerkeinstellungen für das eigenen Netzwerk (SSID, Password) über einen geräteinternen Webserver mit einem Webbrowser vornehmen. Im normalen Betrieb kommt man über ein Passwort auf die Webseite zur Editierung der eigenen Programmliste. Der Eigenbau hat gegenüber eines Industriegerätes den Vorteil, das der Hersteller nicht einfach das Webportal nach einigen Jahren abschalten kann. Man kann also jederzeit und immer wieder seine Programmliste ändern oder neu erstellen. Auch ein Firmwareupdate (eine Firmware ist ja nie fertig) kann man OTA (Over-the-Air) oder per USB weiterhin einspielen.
Die geräteinternen Webseiten werde ich in den nächsten Wochen mit einem HTML-Editor noch etwas aufhübschen.
Das ganze Webradio habe ich danach in das Leergehäuse eine alten Grundig Elite Boy eingebaut. Hier ein paar Bilder:
Ein kurzes Demovideo habe ich mit der Kamera meines Mobiltelefons gerade gedreht.
Was passiert in den nächsten Tagen und Wochen? - Neugestaltung der Webseiten des geräteinternen Webportals - Einbau eines SD-Kartenlesers -> Aufzeichnung und Wiedergabe von Radiosendungen - Das Gerät bekommt ein eigenes Netzteil, zurzeit Speisung aus dem Labornetzteil - Einbau eines passenden Lautsprechers
UKW oder DAB+ spare ich mir bei einem Internetradio, denn UKW wird irgendwann mal abgeschaltet und alle Sender bekomme ich sowieso per Internet. Ich habe zwar noch ein DAB+ Modul rumliegen, aber den Einbau spare ich mir auch, denn auch hier sind alle DAB-Sender per Internet in besserer Qualität zu bekommen.
!!!
Fotos, Grafiken nur über die
Upload-Option des Forums, KEINE FREMD-LINKS auf externe Fotos.
!!! Keine
Komplett-Schaltbilder, keine Fotos, keine Grafiken, auf denen
Urheberrechte Anderer (auch WEB-Seiten oder Foren) liegen! Solche Uploads werden wegen der Rechtslage kommentarlos gelöscht!
Keine Fotos, auf denen Personen erkennbar sind, ohne deren schriftliche Zustimmung.
ganz großes Kino....mit gefällt Dein Radio prima. Du schreibst,...dass Du ein Netzteil einbauen willst. Batteriebetrieb kommt anscheinend nicht in Frage. Der Stromverbrauch ist ja auch nicht ohne. Ich habe mal bei meinen Anfängeraufbau gemessen....denn ich habe mir ein Experimentierboard zusammengestellt. Der nun auf dem Foto fest aufgesetzte Controller, LCD- Anzeige, 3er LED rot, grün blau im Sekundentakt mit etwa 1/3 PWM Aussteuerung, RTC- Modul (Clockmodul) und zusätzliches Powermodul 3.3V / 5V für mobilen Betrieb mit 9V- Block zieht schon 125mA. Wie hoch ist der Strom bei Deinem jetzigen Aufbau in mittlerer NF- Lautstärke? Wenn Du ein Netzteil einbaust, würde ich in jedem Fall Akkubetrieb als Option umsetzen. Stell Dir vor Du stellst Dein Internetradio ohne Steckergebamsel einfach irgendwo inerhalb der WLAN- Reichweite hin....das könnte auch im Garten, Terasse, Balkon etc. sein. 3-4 x parallele 9V Akkus sollten das schon könnnen.
Hier mein Experimentieraufbau auf 140x250mm Makrolon. Ich fange jetzt an die Analogeingänge auszuwerten und auf dem LCD darzustellen. Es soll letztendlich die Verbindung zum Radiohobby geschaffen werden. Das TFT liegt noch in der ESD- Tüte. Heute ist mir aufgefallen, dass ich das Verbindungskabel vergessen habe....dachte wäre dabei!
vielen Dank für die Blumen. Ein Batteriebetrieb wäre machbar, die Stromaufnahme liegt bei 270mA. Ein zu erwartender Wert bei dauerhaft eingeschalteter WLAN-Funktion des ESP8266. Auch der DSP will gut versorgt werden. 10-20 Stunden Spieldauer mit Mignonzellen wären aber durchaus denkbar. Die Stromaufnahme wird sich noch etwas erhöhen. Ich möchte auch noch einen SD-Kartenleser für Radioaufnahmen einbauen und die Software auf den ESP32 umsetzen, das ist der große Bruder des ESP8266 der zusätzlich noch Bluetooth mit an Bord hat.
Mal sehen was sich im Anschluß für neue Ideen auftun. Vielleicht ein Neubau einer Mischerröhre mit WLAN/Bluetooth-Funktion um alte Radios einfach aufzurüsten. Hier würde ich aus Platzgründen dann auf den DSP verzichten und die MP3,Ogg-Dekodierung per Software erledigen. Der ESP32 hat ja 240 MHz Taktfrequenz und sollte das alles ohne Probleme verarbeiten können, selbst der ESP8266 mit seinen 80MHz Takt schafft das noch so grenzwertig.
Wie angekündigt habe ich die Webseiten des Internetradios noch einmal mit einem Online-HTML-Editor neu erstellt. Ich denke ich kann es so lassen, natürlich bin ich kein Webdesigner, deshalb habe ich mich auf das Wesentliche beschränkt. Die Firmware des Radios unterstützt nun auch die drei gängigsten Playlistformate.
Im nächsten Schritt muß ich die Aufnahme- und Wiedergabe auf/von einer SD-Karte umsetzen. Ein schönerer Lautsprecher muß auch noch gesucht werden.
weiter geht es in meinem Webradio-Projekt. Da ich zusätzlich Musik via Bluetooth auf das Radio übertragen wollte musste ich jetzt einen Schnitt machen, der ESP8266 hat an dieser Stelle ausgedient, denn er besitzt kein Bluetooth-Modul. Zum Einsatz kommt sein größerer Bruder, der ESP32.
Dieser kleine Kerl ist nun ein Controller der richtiges Multithreading mit 2 Kernen bei 240 MHz Taktfrequenz mitbringt, das merkt man auch bei den Umschaltzeiten. Obwohl diese beim ESP8266 nur 3-4 Sekunden betragen hatten, geht jetzt alles noch viel schneller (zirka eine Sekunde). Zusätzlich gibt es ein paar GPIOs mehr und neben WLAN hat er auch einen Bluetooth-Stack.
Die Portierung der Firmware beschränkte sich auf eine Neuzuteilung der GPIOs und Neukompilieren gegen den Arduino ESP32-Core und meine Bibliotheken. Lediglich für die Nutzung des Bluetooth-Moduls musste noch etwas Code geschrieben werden.
Die Aktivierung des Bluetooth-Modus erfolgt, wenn in der Programmliste der Kanal "BT Audio" ausgewählt wird. Das Internetradio wird dann im Mobiltelefon als "ESP32 Internetradio" gelistet, nach erfolgreichem Pairing verhält sich das Internetradio wie ein Funklautsprecher und kann Musik vom Telefon wiedergeben. Durch einen erneuten Kanalwechsel kann wieder auf normales Internetradio umgeschaltet werden.
Zusätzlich habe ich eine kleine Aufnahmefunktion in eine Pufferdatei im internen FlashFS realisiert, damit kann man schnell einmal wichtige Nachrichten aufnehmen und abhören. Bei Bedarf (ich werde schauen wie oft ich die Aufnahmefunktion überhaupt benötige) werde ich eine SD-Karte als zusätzlichen Flash-Speicher für längere Aufnahmen an den Controller hängen.
Damit geht mein Webradio-Projekt langsam dem Ende entgegen. Falls mal jemand ebenfalls ein Internetradio auf ESP8266/ESP32 Basis aufbauen will, dem bin ich gern bei Problemen in der Umsetzung behilflich, bis dahin
es ist natürlich sehr schwierig für nicht Eingeweihte mitzuhalten. Dieses Bastelgebiet Internetradio ist sicherlich, hier im WGF, auch sehr speziell und eröffnet einen ganz neuen Themenbereich. Dieser zeigt aber,.. dass alte analoge Technik und moderne Controllertechnik in der Thematik "Radio" sehr gut vereinbar sind und zusätzlich ein ganz neues Betätigungsfeld aufzeigen. Das find ich total prima, da Du mit Deinem Thema " Bernhards Radiobasteleien" hier gleich zwei Radiothemen und deren Lösungsmöglichkeiten durch Einsatz von Controllern aufzeigst. Ich kann nur sagen, dass mich dieses derart inspiriert hat, um letztendlich Selbstversuche zu starten. Klar, der Anfang ist immer schwer,..... aber es lohnt sich da mal reinzuschauen und das Preis- Leistungsverhältnis bei diesen Versuchen und Angeboten im www ist sehr befriedigend. Einige werden bestimmt sagen, das ist nicht mehr "Old Radio World". Ich finde schon, es geht ja hier nicht um Restaurierung im originalen Aufbau....es geht um Inspiration für Bastler und Interessierte. Es ist kein Sammlerthema...sondern ein Bastelthema. Im WGF hat das seinen festen Platz. Vom Knallfunk, über Detektor, Audion und Super bis hin zum Internetradio. Da fällt ja die Simulation eines MA kaum ins Gewicht.
Gruß
Joerg
P.S. Der Anfänger; Von wegen Kabel für TFT Display fehlt! Geglaubter TFT- Stecker = SD- Card- Slot. Anschlüsse direkt auf dem Mega 2560.. Brauchste nur draufstecken, Demo von CD läuft sofort wenn Libraries eingebunden sind. Nee, nee, man sollte die ESD- Tüte schon aufschneiden und sich den Inhalt der CD ansehen......und nicht gleich meckern. Wie sagte es gleich Dieter Nuhr?!
" Wenn man keine Ahnung hat, erst einmal die Frexxe halten!"
gestern habe ich die Firmware des Radios nocheinmal erweitert. Auf der Netzwerkseite kann man nun mehrere WLAN-Zugänge eingeben, das Radio sucht sich dann aus einer Liste von WLAN-Zugängen das beste Netz heraus und verbindet sich mit diesem. Warum habe ich das gemacht? Der Grund: Im Auto habe ich einen festen Mobilfunkrouter (praktisch ein Mobiltelefon ohne Display und Tastatur) installiert. Dieser stellt im Auto ein WLAN über die Mobilfunknetze bereit. Und bei Netzwechsel jedesmal die Verbindungsdaten neu einzugeben ist auch unpraktisch.
So ausgerüstet konnte ich heute einen "Fieldday" auf den Straßen Frankfurts mit meinem Internetradio machen und schauen wie die Verbindungsqualität unterwegs ist. Zusätzlich zum UKW-Autoradio habe ich ein portables DAB-Radio mitgenommen. Ich bin die Route zweimal abgefahren und habe bei der ersten Fahrt die Qualität von UKW und DAB überwacht. Entlang des Südufers des Mains war sowohl UKW wie auch DAB+ problemlos und ohne Aussetzer zu empfangen. Für DAB sollte sich das Blatt jedoch bei Fahrt in die Innenstadt deutlich verändern. Viele Komplettaussetzer, meist mehrere Sekunden lang, von "Conrad" bis zum HBF. Entlang der 66 bis zum Flughafen dann wieder vollen Empfang. UKW hatte nur einmal einen kurzen Signalzusammenbruch welcher hörbares Rauschen hervorbrachte.
Während des zweiten Durchlaufs habe ich dann mein Internetradio über einen Mobilfunkhotspot laufen lassen. Während der gesamten Fahrt gab es keine Aussetzer. Der Radioempfang war ungestört möglich. Das Mobilfunknetz scheint somit bereits heute vollkommen "Radiotauglich" zu sein.
Als Bastler stellt sich mir die Frage ob ich solche Techniken wie UKW oder DAB überhaupt noch verbasteln soll um alte Radios funktionell aufzurüsten. UKW wird sicher, wenn nicht noch ein Wunder passiert, mittelfristig in 5 bis 10 Jahre der Politik zum Opfer fallen. Das Problem der Alltagstauglichkeit alter Dampfradios ist somit nur verschoben. Aufrüstung auf DAB+, wie uns die Werbung (und die Digitallobby) rät, scheint mir auch nicht der richtige Weg zu sein. Spätestens mit einer neuen Audiocodierung wird DAB+ veraltet sein. Da sich Internetradio so tapfer geschlagen hat, auch vom Datenverbrauch ist es kein Problem gewesen, habe ich zumindest für mich entschieden kein DAB+ mehr im Auto (oder in der Wohnung) neu anzuschaffen. Dieses Projekt hier mit dem ESP8266 und dem ESP32 haben mir gezeigt, wo das Radio seine Zukunft haben wird. Für mein altes Autoradio werde ich jetzt noch eine kleine Zusatzbox aufbauen, die mit einem Expressif-Microcontroller Internetradio nachrüstet. Das kostet mich im Gegensatz zu einen neuem DAB+-Autoradio oder industriell hergestellten Internetradio nur knapp 25 Euro und einige Stunden Bastelspaß.
Zumindest heute erscheinen mir weitere Bastelprojekte mit dem RDA5807, habe ich hier noch rumliegen, oder einem DAB-Modul von Keystone sinnlos und überholt. Ich hätte vielleicht mit diesen Bausteinen anfangen sollen und nicht gleich mit dem ESP8266/ESP32. Diese beiden tollen Prozessoren haben mir somit den Spass an andere Übertragungswege und Radio-ICs verdorben.
was die Zukunft des Radios angeht hast Du wahrscheinlich recht.....aber Bastelprojekte sollen ja nicht unbedingt die Zukunft oder beste Technik wiederspiegeln. Es ist ja der Spaß am Experiment. Das ist ja auch der Grund warum immer noch AM- Basteleien wie Audione oder sogar Detektoren entstehen. In nicht allzu langer Zeit wird man damit keinen Erfolg mehr haben und trotzdem geht der Spaß weiter. Solch ein DAB+ Selbstbau hat aus meiner Sicht zwei interessante Seiten. Erstens der Empfänger selbst und dann die Dekodierung bis hin zum NF- Teil. Man muss das Ganze ja nicht als Hochglanzprojekt durchziehen. Einfach auf dem Bastelboard spielen und wenn man die Lust daran verloren hat.....abbauen und ab in die Kiste. Arduino & Co sind wie geschaffen dafür. Denke mal an DRM. Alles Schnee von gestern.....aber viel Spaß hat es gemacht. Wumpus hat, glaube ich, sogar einen Detektor auf DRM als Empfänger versucht und dann mit dem Computer dekodiert. Hat wohl nicht so gut funktioniert, war wohl die Resonanzbreite nicht so tauglich,...aber ein bisschen zappelte es doch.
Im Endeffekt,....alles eine Frage des eigenen Anspruchs.
die Software wird jetzt ständig erweitert. Es haben sich zwei weitere Bastler meiner angeschlossen, um auf Grundlage meiner Software weitere Geräte zu entwickeln.
Weitere geplante Funktionen:
- Hinzufügen des NTP-Protokolls zur Einstellung einer prozessorinternen Uhr, Fallback: MSF60, DCF77 - Programmierung mehrerer Weckzeiten über einen Internetbrowser -> WLAN Radiowecker Fallback: UKW oder DAB+ - Ansteuerung von OLEDs, TFTs - Ausgabe des Audiosignals analog und digital zur Weitergabe an einen externen Verstärker, HiFi-Anlage oder als Vorsatz für ein altes Dampfradio - Hinzufügen des POP, IMAP Protokolls -> Über ein Symbol auf dem Display soll angezeigt werden wenn neue Emails eingetroffen sind, eventuell eine Tickerfunktion die die aktuell eingetroffene eMail auf einem Display durchlaufen lässt. - Der ESP8266/32 ist in der Lage sein Wifi-Modul gleichzeitig als Client und Accesspoint bereitzustellen -> WLAN Repeaterfunktion
Ich denke da kommen noch viele weitere interessante Funktionen hinzu. Ich werde mich dabei vorallem auf die Programmierung konzentrieren, ein anderer auf die Entwicklung einer Platine.
Das Experimentieren mit den Expressif-Chips geht also weiter, ich freue mich darauf.
Für alle die zur MP3 Dekodierung kein DSP von VLSI nehmen wollen, habe ich hier eine Arduino-Bibliothek erstellt, die eine reine MP3 Softwaredekodierung direkt auf dem Zielsystem macht. Sie ist für Projekte mit dem ESP8266 und ESP32 kompilierbar und kann zum Beispiel mit einem PDM-DAC (Tiefpass nicht vergessen!) genutzt werden.
Die Installation erfolgt analog den anderen Arduino-Bibliotheken.
Die MP3 Bibliothek habe ich entfernt, da jede Implementierung eines Encoders/Decoders Lizenzgebühren nach sich zieht.