PROJEKTY / ESP32-S3

Radio Kaseta — YoRadio

Radio internetowe w stylu magnetofonu kasetowego: na ekranie kręcą się rolki kasety, widać etykietę z nazwą stacji, zegar, datę i imieniny. Oparte na yoRadio, z własną skórką Sir Williams. Kod i instrukcja za darmo.

ESP32-S3ST7796ILI9488ILI9341PCM5102AArduino IDE

JAK TO WYGLĄDA

Skórka Kaseta na ekranie ST7796 480×320
Ekran 3,5″ 480×320 (ST7796): rolki kasety, przyciski dotykowe, etykieta C60.
Skórka Retro Cassette Sir Williams na małym ekranie
Ekran 2,8″ 320×240 (ILI9341): etykieta „Sir Williams Retro Cassette”, data i zegar.

CO POTRAFI

Skórka kasety

Animowane rolki, etykieta kasety, wskaźnik formatu i bitrate, data, zegar i imieniny. Skórkę włączasz linią CASSETTE_SKIN w myoptions.h.

Radio internetowe

Odtwarzanie stacji MP3/AAC/FLAC przez Wi-Fi, lista stacji i ulubione, nazwa stacji i tytuł utworu na ekranie.

Panel WWW

Konfiguracja Wi-Fi, edycja listy stacji i ustawień przez przeglądarkę, interfejs po polsku.

Trzy ekrany

ST7796 i ILI9488 (3,5″ 480×320) oraz ILI9341 (2,8″/3,2″ 320×240). Wybór jedną linią w myoptions.h.

Dwa enkodery

Pierwszy reguluje głośność 0–100% (wciśnięty: zmiana stacji), drugi przewija listę stacji.

Dobry dźwięk

Zewnętrzny przetwornik I2S PCM5102A. Podłącz wzmacniacz lub aktywne głośniki.

POTRZEBNE ELEMENTY

Płytka

ESP32-S3 (wariant z pamięcią PSRAM).

Ekran

TFT SPI: ST7796 lub ILI9488 3,5″ 480×320, albo ILI9341 2,8″/3,2″ 320×240.

Audio i sterowanie

DAC PCM5102A, dwa enkodery (np. EC11 z przyciskiem), wzmacniacz i głośniki.

POŁĄCZENIA

Ekran TFT i DAC

SygnałESP32-S3
TFT DCGPIO9
TFT CSGPIO10
TFT RSTGPIO14
Podświetlenie (BRIGHTNESS)GPIO21
PCM5102A BCLKGPIO17
PCM5102A LRC (LCK)GPIO15
PCM5102A DOUT (DIN)GPIO16

Piny SPI (SCK/MOSI) są domyślne dla płytki ESP32-S3. Przy ILI9488 nie podłączaj SDO/MISO, jeśli moduł nie zwalnia tej linii.

Enkodery

SygnałESP32-S3
Enkoder 1 (głośność) S2GPIO4
Enkoder 1 S1GPIO5
Enkoder 1 KEYGPIO6
Enkoder 2 (stacje) S2GPIO7
Enkoder 2 S1GPIO18
Enkoder 2 KEYGPIO3

Jeśli enkoder kręci w złą stronę, zamień piny S1 i S2. Wszystkie masy (GND) połącz ze sobą.

INSTALACJA

  1. Używaj Arduino IDE 1.8.19 (wersja 2.x nie jest wspierana przez yoRadio) i zainstaluj rdzeń esp32 by Espressif w wersji 2.0.0 lub nowszej.
  2. Zainstaluj biblioteki Adafruit GFX Library i OneButton. Pozostałe biblioteki są w folderze src projektu.
  3. Rozpakuj archiwum. W yoRadio/myoptions.h wybierz ekran (jedna linia DSP_SEL_…) i sprawdź piny.
  4. Podmień plik Arduino/libraries/Adafruit_GFX_Library/glcdfont.c plikiem yoRadio/fonts/glcdfont.c i uruchom Arduino IDE ponownie.
  5. Wgraj dane: Narzędzia → ESP32 Sketch Data Upload, potem wgraj szkic na płytkę.
  6. Połącz się z siecią yoRadioAP (hasło 12345987), otwórz http://192.168.4.1/ i skonfiguruj Wi-Fi. Potem dodaj stacje w panelu pod adresem radia.

Szczegóły wgrywania opisuje wiki yoRadio oraz plik README.md w archiwum.

POBIERZ

YoRadio_Kaseta.zip

Archiwum ZIP · Szkic Arduino, dane WWW, skórka Kaseta i licencja GPL-3.0 ·

Pobierz program

Przed wgraniem sprawdź w myoptions.h model ekranu i piny.

AUTOR I LICENCJA

Skórka i zmiany

Skórka Kaseta, konfiguracja i zmiany: Sir Williams, 2026. Projekt jest zmodyfikowaną wersją yoRadio (autor: e2002) i podlega tej samej licencji.

Licencja GPL-3.0

Program jest darmowy na licencji GNU GPL v3: wolno go używać, zmieniać i rozpowszechniać, o ile zachowasz licencję, informację o autorach i udostępnisz kod źródłowy. Pełny tekst jest w pliku LICENSE w archiwum. Oryginał: github.com/e2002/yoradio. Oprogramowanie dostarczane „tak jak jest”, bez gwarancji.

← WRÓĆ DO PROJEKTÓW