Themabewertung:
  • 1 Bewertung(en) - 5 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Das (aller-) einfachste InternetRadio mit WT32-SC01
#1
Jaja, der Thread-Titel ...

Nee, ganz ehrlich, viel einfacher geht es kaum.

Doch der Reihe nach:

Für ein gänzlich anderes Projekt (Display & Steuerung für HomeTrainer) war ich auf der Suche nach einem Display mit Touch. Nicht zu klein, nicht zu groß und - natürlich - nicht zu teuer.
Bei Ali bin ich dann auf das WT32-SC01-Plus (Achtung: das "Plus" ist wichtig !) gestoßen:

Ein Modul mit
  • ESP32S3 (!) 
  • RS485, USB-C (!)
  • 3.5" TFT-Display mit 480x320 (16Bit)
  • kapazitivem Touch
  • SD-Karte
  • I2S Verstärker (leider nur Mono - egal)

Datenblätter findet man an verschiedenen Stellen, u.a. hier
Kaufen kann man das Ding nicht nur bei Ali , sondern auch direkt in Deutschland !!!


Bestellt und nach einer Woche bekommen...

Was ist in der Box ?

Das Board, ein USB-C zu USB-A Kabel , ein Anschluss-Kabel für RS485 und eins für das Programmier-Interface.

   
   


Was liegt also näher, als damit eine kleines, aber feines Internet-Radio zu bauen ?

Zuallererst muss man das Ding erstmal programmierbar machen. 
Ich bin großer Freund (und Benutzer) von PlatformIO, habe mich aber in diesem Fall für die Arduino IDE entschieden.

Da ich mit einem Mac arbeite, ist ja das USB-C Interface sehr willkommen: 
Vergesst das mitgelieferte Kabel: es kann nur zur Stromversorgung benutzt werden - nix weiter !
Also ein "richtiges" USB-C Kabel mit dem Board verbunden und - Erstaunen - das Board zeigt eine Demo.
Fein, aber nicht sehr spektakulär.

Ich will selber !!!

Zuerst mal gucken was sich in der Arduino-IDE zeigt:

und Tatsache, nicht nur der USB-C-Port, wird erkannt, auch das Board.

Kurzer Text ("Hello World") über Serial.Println :
Als Board im BoardManager "ESP32S3 DevModule" ausgewählt, "USB CDC on boot" auf enabled gestellt.
(Hier nochmal die Einstellungen)


.png   Bildschirmfoto 2023-11-24 um 14.29.23.png (Größe: 87,33 KB / Downloads: 830)

Kompiliert, Upload: Voila ! Das ist cool  Cool.

Und nochmal der Hinweis: Das ist der aller-aller-erste Schritt, den man erfolgreich absolvieren sollte - nicht gleich das volle Programm !

(die Quellen gibts dann - etwas später - auch auf GitHub)

Das nächste - und naheliegende - ist das Display. 
Nach eine wenig (wirklich wenig) googeln, habe ich mich für LVGL entschieden, die zusammen mit LovyanGFX (beide als Arduino Bibliotheken verfügbar) viele Dinge möglich machen sollte.

Es gibt mehrere kleine Hürden, die vorher noch überwunden werden müssen:
  • zuerst muss eine für das Board  angepasste lvcl.conf an ein den "Arduino/libraries"-Ordner kopiert werden: direkt in den Ordner und nicht in einen Unter-Ordner !!!
  • letztendlich braucht man noch die entsprechenden Aufrufe, um das Display zu initialisieren, den Touch abzufragen usw. : das habe ich über das Header-File wt32_sc01_plus.h realisiert.

Und schon kann man die erste UI "zaubern".  

(klitzekleines Beispiel dann auch auf Github)

Und jetzt kommt der Moment: alles zusammen mit Audio...

Ich benutze - der Einfachheit halber und weil ich mich damit ganz gut auskenne - die AudioTools von P.Schatzmann. Das Gute daran ist, dass man die gleich als Library in die Arduino-IDE einfügen kann ..

Und alles zusammen dann:

   



Und zu guter Letzt habe ich dann noch eine GUI mit dem Squareline Studio "gebastelt" ... es braucht zwar einige Zeit zur Einarbeitung und es sind auch einige Hürden zu überwinden, wenn man das ganze mit der Arduino-IDE "verheiraten" will - aber es geht:

   

Das wars erstmal für heute .. stay tuned !

PS: Alle Beispiele auf Github (habt noch eine wenige Geduld - ist Wochenende)
Think different ! 

Viele Grüße aus Berlin 
Frank 
Zitieren
#2
So, ich nochmal.

Ich habe ein paar Beispiele auf Github abgelegt...

Entgegen meinem ersten Beitrag habe ich dann auf die audio-tools von Schreibfaul umgeschwenkt - wollte doch mal probieren, wie das damit funktioniert:
es tut es , und nicht mal so schlecht.

Allerdings habe ich gerade im letzten Beispiel - bei dem ich das UI mit Squareline Studio erzeugt habe - festgestellt, dass man Performance-Probleme bekommt, wenn man die UI ui viel machen lässt. Eigentlich klar.

In einem nächsten Versuch werde ich das ganze mal direkt über eine Konfiguration erzeugen, die auf der SD-Karte abgelegt ist, so dass man dann - hoffentlich - recht schnell eine "eierlegende Wollmilchsau" bekommt, ohne immer alles neu zu kompilieren ... (ich sehe das bei den Diskussionen um div. Bibliotheken wie yoRadio, kaRadio usw..)

Aber für ca 30€ plus einem Lautsprecher bekommt man hier doch recht viel - dazu noch ein Display mit kapazitivem Touch...
Think different ! 

Viele Grüße aus Berlin 
Frank 
Zitieren
#3
das ist ja mal ein feines Board! Kann ich grad gut brauchen für eine etwas anspruchsvollere Applikation. Ich hatte schon einen M5stickC ins Auge gefasst, aber das WT32-SC01 Plus ist diesem weit überlegen. Die Bezeichnungen von Expressif sind immer sehr verwirrend. Ein ESP32-S3 kann z.B. auch ein Wroom sein, ohne dass dies großartig auf den Marktplätzen ersichtlich wäre.

Auch dein UI gefällt mir. Bin mal gespannt wie weit du deinen Sketch ausbaust. AP? Webinterface?
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#4
Ja, das Board gibt ne Menge her - ist eben nahezu alles integriert. Leider "nur" Mono-Endstufe... aber irgendwas ist immer :-(

Über das Interface habe ich mir zwar schon einige Gedanke gemacht, bin aber (noch) nicht schlüssig, was die beste Lösung wäre...

Momentan liebäugle ich noch mit der Config über die SD-Karte, weil man dann die Software als Image aufspielen kann und das UI usw. leicht editieren kann ... mal gucken.
Think different ! 

Viele Grüße aus Berlin 
Frank 
Zitieren
#5
Mono-Endstufe passt für die meisten meiner Anwendungen. Meine Bestellung ist raus, danke für den Hinweis!

Die Konfiguration könnte man auch ins Spiff schreiben, wenn mal keine SD-Hardware zur Verfügung steht.
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#6
Jo, das ist eine der Möglichkeiten ... bin momentan noch mit einigen Tests zur Bedienung über den Touch (wozu hat man den denn sonst ?).

Die Idee:

Mehrere Designs, die durch "swipe up" bzw. "swipe down" gewechselt werden können

Stationen nicht über Programm-Tasten, sondern durch "swipe left"  bzw. "swipe right"  auf dem Stationsnamen

Slider für Volume ....


stay tuned !


PS: Jupp, wo hast du bestellt ?
Think different ! 

Viele Grüße aus Berlin 
Frank 
Zitieren
#7
(01.12.2023, 10:22)DrNeurosurg schrieb: ..Jupp, wo hast du bestellt ?

über den link von dir bei Antratek. Ein besseres Angebot war auf die Schnelle nicht zu finden, und Ali ist kaum günstiger.
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#8
Ab Januar! im Roboter Shop
Grüße aus Wassenberg,
Norbert.
Zitieren
#9
Es gibt da verschiedene Boards. Ich habe eins von Aliexpress, da ist ein ESP32 Wroom drauf. Dazu kann man sich eine Datei mit dem Stromlaufplan und Beispielen (auch für Arduino) runterladen. Da laufen die typischen Radio-Scripte auch drauf.

   
Liebe Grüße,
der Jens wars gewesen...

--------------------------------------------------------------
Die Wege der Elektronen sind unergründlich.
Zitieren
#10
meine Boards sind schon da, und tatsächlich mit Wrover bestückt :-)

   
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#11
die erste Hürde ist das Parallel-Display ST7796UI. Meine Softwarepakete (z.B. die Adafruit_GFX_Library oder Bodmer) kennen es nicht. Das schränkt die Einsatzmöglichkeiten schon mal ein. Da wäre das WT32-SC01 ohne Plus die handlichere Wahl gewesen. Hier ist ein Vergleich:


.jpg   modelle.JPG (Größe: 77,75 KB / Downloads: 415)

Quelle: ESP32-TUX - A Touch UX template
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#12
die Demos hab ich durch.

   

   

   

   

macht ja immer wieder Spass zu schauen was da rauskommt :-)

für die display.h (Hello World) fand ich keine Quelle. Bei dem Schatzmann-Radio sieht man einen Formatierungsfehler in der ersten Zeile. Und der erste der 4 links funktioniert nicht. Sonst alles gut!
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#13
da hab ich was sehr schönes entdeckt! Ein Nachbau des WinAmp für das WT32-SC01-Plus Board.

   

LVGL_Music_Player
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#14
(02.12.2023, 23:22)saarfranzose schrieb: für die display.h (Hello World) fand ich keine Quelle. Bei dem Schatzmann-Radio sieht man einen Formatierungsfehler in der ersten Zeile. Und der erste der 4 links funktioniert nicht. Sonst alles gut!

Hmm - ja, ich hab die display.h später umbenannt - leider nicht in der ersten Demo -- sorry.
Think different ! 

Viele Grüße aus Berlin 
Frank 
Zitieren
#15
Hi,

schnell noch ein WICHTIGER Hinweis:

meine Beispiele funktionieren nur mit der lvlg Version 8.x - Ich werde demnächst die Änderungen die sich durch Version 9.0 ergeben, posten ...
Think different ! 

Viele Grüße aus Berlin 
Frank 
Zitieren
#16
So, Jungs & Mädels, ich habe eine neue Version zur Integration mit LVGL 9.xx auf Github hochgeladen:

nicht nur eine neue Header-Datei  (WT32_SC01_PLUS.h) und lvgl.conf, sondern auch noch eine 3D-Demo: Video dazu gibts hier

Da ist bestimmt noch mehr möglich ...

Kommentare willkommen !

   
Think different ! 

Viele Grüße aus Berlin 
Frank 
Zitieren
#17
ich sehe jetzt das Drahtmännchen nicht als sinnvolle Anwendung. Besser wäre eine schöne Skalensimulation und ein weiterer Ausbau des Internetradio :-)
Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#18
Naja - ist ja nicht "nur" das DrahtMännchen - auch mit Textur usw. (wollte ja auch nur sehen, "was so geht").
Aber Recht hast du ... An was dachtest du denn mit "Skalensimulation" ?
Aber:ich werd' mich da mal ansetzen - stay tuned !
Think different ! 

Viele Grüße aus Berlin 
Frank 
Zitieren
#19
natürlich ist die Grafikleistung beeindruckend! Wenn man sieht wie schwer sich der ESP bereits mit einem animierten gif tut.
Eine Skalensimulation kann ein sich bewegender Zeiger sein vor oder hinter dem Bild einer historischen Radioskala. Oder eine sich drehende animierte Skalenscheibe. Oder etwas moderneres, schlichteres, mit reinen Zeichenbefehlen. Hier ein Beispiel dazu:

Gruß,
Jupp
-----------------------------

was du baust ist immer mit dir verbunden
(Lego)

Einsamkeit ist nur ein Mangel an Technologie
(@beetlebum)
Zitieren
#20
Oh ja. -das ist machbar ..
Mal sehen wie ich das umsetze .. würde natürlich auch den Touch benutzen- schließlich hat man den ja auch ?
Think different ! 

Viele Grüße aus Berlin 
Frank 
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  ESP32-Internetradio yoRadio saarfranzose 90 20.124 23.04.2024, 22:29
Letzter Beitrag: saarfranzose
  Internetradio mit dem ESP32-S3 Audio Kit The MicroMaker 4 195 23.04.2024, 17:02
Letzter Beitrag: The MicroMaker
  Das einfachste Internetradio mit dem neuen ESP32 Audio pintel 129 34.000 16.04.2024, 00:12
Letzter Beitrag: Charliey
  Retro style WebRadio mit WT32-SC01 Plus saarfranzose 38 1.631 15.04.2024, 13:02
Letzter Beitrag: DrNeurosurg
  ESP32 Internetradio yoRadio Problembesprechung Klaus99 103 9.353 02.04.2024, 13:22
Letzter Beitrag: Bosk Veld

Gehe zu: