von Meikel bekam ich mal einen Karton mit Ilmenau Fragmenten, hauptsächlich Gehäuseteile, zu Bastelzwecken. Da es ja inzwischen runde TFT Display gibt wollte ich jetzt mal sehen wie sich ein solches TFT in einer Rundskala macht, und dafür bot sich ein solches Gehäuse an. Eine vielfältige Auswahl der Software hatte ich nicht. Außer YoRadio hab ich noch keine Software gefunden die ein rundes TFT unterstützt.
Erst mal weitete ich das Innenloch der Rundskala passend mit Bohrmaschine und Feile.
Bei der Einfassung des Display konnte ich auf bereits bewährte Druckvorlagen zurückgreifen. Siehe Minowa-YoRadio oder Huth E72 Internetradio mit ESP32.
auch der Halter für das ESP32 TTGO-Board T8 V1.7, ein WROOVER Modul mit
4MB PSRAM, LiPo Ladeschaltung und SD-Card Reader war schon bei anderen
Eigenbauten im Einsatz. Den Halter baute ich so ein dass er die
Aussparung für den Tastensatz bedeckt und die Speicherkarte zum
einfachen Wechsel nach vorne raus schaut.
Der schwierigste Teil war die Konstruktion der Lautsprecherfront. D.h. schwierig eigentlich nicht, sondern zeitaufwändig, bis alles genau passte. Das schwierige Vermessen war hier das Problem.
an der Gehäusefront fehlten die Haltebolzen. Zur Befestigung an den Gehäuserumpf fiel mir keine schonendere Möglichkeit ein als 4 Kunststoffschrauben, plaziert in den Ecken der Frontschlitze.
ein kleines Schaltnetzteil war schnell eingehaust und wurde an den Bodenschlitzen angeschraubt.
Auch hier wird noch ein Akku dazugesetzt werden. Das Prozessorboard ist ja darauf vorbereitet. Für einen offline-Betrieb bin ich dadurch auch von einer Stromversorgung unabhängig. Die Speicherkarte ist gefüttert mit mehreren Stunden aufgezeichneter Radiosendungen aus dem Jahr 2013. Es handelt sich um meine damalige Lieblingssendung "SR1 Classic Rock". Der Moderator Dieter Exter ist 2019 verstorben. Joe Cocker lebte noch, es wurde getrauert um Lou Reed. Angela Merkel wurde als Kanzlerin bestätigt..
Hier stelle ich meine stl-Dateien zur Verfügung:
Ilmenau-3D.zip
kommen wir nun zur Software. Die Beschreibung enthält viele Schritte die
bereits 100mal im Forum besprochen wurden. Mir geht es aber nicht nur
um die speziellen Einstellungen meines Projektes, sondern auch um einen
zusammenhängenden Leitfaden. Weitere Details können auf der github Seite
von YoRadio und auf der Seite von Schreibfaul nachgelesen werden.
Das Paket wird hier als zip runtergeladen und ins Arbeitsverzeichnis entpackt.
Der Ordner ..yoradio-main\yoRadio wird ergänzt um die Konfigurationsdatei myoptions.h, welche mit Hilfe eines Online-Formulars generiert wird. Auch ein Verdrahtungsplan (Preview) kann erzeugt werden. Der sieht in diesem Fall so aus:
Bei einem anderen Board, wie hier beim TTGO, passt das Layout nicht. Das
macht aber nichts, die Pin sind nur an anderen Positionen.
Im ersten Teil werden die Komponenten ausgewählt. Die Maske ist selbsterklärend:
Die Standard-VSPI Belegung für das Display gibt der Prozessor vor. Die
vorgeschlagenen frei konfigurierbaren Pin musste ich ändern (TFT-CS hab
ich willkürlich auf 33 gelegt), sonst hätte es Konflikte mit dem Card
Reader gegeben. Die Belegung des Card Reader gibt das Board vor. Diese
Belegung ist also nicht diskutierbar und hat daher Vorrang. RST = -1
bedeutet daß Reset des TFT auf den EN/RST-Pin des Board gelegt wird.
Die Audio Pin für den I2S-Bus entsprechen dem Standard. Sie können nur
bedingt geändert werden da der DAC ADC-fähige Pin benötigt. Auf dem
Belegungsplan nicht ersichtlich ist dass gain des DAC-Bausteins auf
Masse gelegt wird.
Für die Encoder-Pin kann der Vorschlag des Generators übernommen werden.
Da das Encoder-Modul bereits Pullup's eingebaut hat werden die internen
Pullup nicht gesetzt. Der Encoder arbeitet mit 3,3V.
Der SD-Reader ist wie schon gesagt auf dem TTGO-T8 fest eingebaut. Die
auf dem Board aufgedruckte Belegung wird als Custom-Belegung ins
Formular übertragen. Der Reader benutzt den HSPI-Bus.
Mit "GET MYOPTIONS.H" wird die Generierung der myoptions.h ausgelöst. Die Datei landet normalerweise im Download-Ordner.
Es gibt einen Bug im Formular. Nämlich wenn eine SD-Karte mit ausgewählt wurde fehlt in der myoptions.h der Eintrag für das Display. Diese Zeile muss dann manuell ergänzt werden. In meinem Fall:
#define DSP_MODEL DSP_GC9A01A
zum Kompilieren und Hochladen soll bevorzugt die ältere 1.8.x Version
der Arduino IDE benutzt werden. Als Board wählt man bei einem WROOM
Prozessor "ESP32 Dev Module" aus und bei einem WROVER "ESP32 Wrover
Module". Als Partitionsschema in beiden Fällen "Minimal Spiffs (1.9MB
APP with OTA/190KB SPIFFS)".
Bei der erstmaligen Programmierung überträgt man zuerst den Data Ordner, danach den Sketch.
Das Programm startet im AP-Mode. Man schaltet z.B. auf einem Handy die
SIM Karte ab und verbindet sich mit dem ESP32 Netz. Dann ruft man die IP
192.168.4.1 auf, trägt ins Formular seine WLAN Verbindungsdaten ein und
löst einen Neustart aus. Jetzt sollte sich der ESP ins normale WLAN
Netz einbuchen. Die zugewiesene IP wird auf dem Display (falls
vorhanden) sowie im seriellen Monitor angezeigt. Über diese IP kann nun
das webinterface aufgerufen werden. Dort lädt man eine playlist oder
trägt von Hand seine Radiostationen ein. Weitere Konfigurationen wie
Bildschirmdrehen, Anzeigen von Wetterdaten und Aussteuerungsanzeige
sowie viele weitere Feineinstellungen können dort vorgenommen werden.
das Ilmenau YoRadio hat seine schweinchenrosa Labormusterfarbe verloren. Grund war dass ich wegen der Erweiterung um eine RTC ein neues Chassis gebaut habe. Displayring und Chassis sind jetzt in einem gelb-transparenten PETG gedruckt mit dem schönen Effekt dass die grüne Kontroll-LED des TTGO-Boards durchscheint.
Keine Kommentare:
Kommentar veröffentlichen