📻 ESP32 Radio (Sebastian Piwowarski)

ESP32-S3 N16R8 · 16 MB flash · 8 MB PSRAM

wersja …

Wymagana przeglądarka Chrome lub Edge na komputerze (Web Serial API).
Firefox i Safari oraz telefony nie są obsługiwane.

Wgraj firmware bezpośrednio z przeglądarki — bez instalowania żadnych programów.

🚨 Masz już starszą wersję niż v1.0.4_I? Aktualizuj przez USB (tutaj), NIE przez WiFi
Panel WWW urządzenia ma opcję „Aktualizacja firmware przez WiFi” — z wersji starszej niż v1.0.4_I na v1.0.4_I lub nowszą NIE używaj jej, bo radio wpada w pętlę restartów i przestaje odpowiadać w sieci (pomaga tylko ponowne wgranie przez kabel USB, dokładnie tak jak na tej stronie).
Powód: od v1.0.4_I zmienił się układ partycji na flashu (doszła partycja na zrzuty awaryjne/coredump, zmniejszona partycja na pliki urządzenia). Aktualizacja przez WiFi podmienia tylko sam firmware — nie dotyka fizycznej tabeli partycji ani zapisanego systemu plików — więc na starszym układzie partycji nowy firmware nie może się poprawnie uruchomić. Wgrywanie przez USB (ten instalator) zapisuje na nowo całość naraz (bootloader + tabelę partycji + firmware + system plików), więc jest zawsze bezpieczne, niezależnie od tego, jaka wersja była wcześniej.
📌 Uwaga: płytka ma DWA gniazda USB — to ważne, do którego podłączysz!
Port „UART" gniazdo z mostkiem USB-UART ✅ Wgrywanie firmware (wolniejsze)
✅ Logi i komendy (terminal)
👉 Podłącz tutaj — działa do wszystkiego
Port „USB" natywny USB ESP32-S3 ✅ Wgrywanie firmware (szybsze)
❌ NIE pokazuje logów ani nie przyjmuje komend
Gniazda są opisane małym drukiem na płytce (UART / USB), tuż obok siebie. Jeśli chcesz tylko wgrać firmware — wystarczy którekolwiek. Do terminala/logów musisz użyć portu „UART".

📺 Wybierz swój wyświetlacz:

💡 Pierwsze dwa przyciski dotyczą zwykłego devkitu ESP32-S3 N16R8 z osobno podłączonym wyświetlaczem TFT SPI (ST7789/ILI9341/ILI9488). Masz wyświetlacz OLED — SSD1306 (0.96" I2C), SSD1309 (2.42" I2C), SH1106 (1.3" I2C) lub SSD1322 (3.12" SPI, skala szarości)? Obsługiwany identycznie w obu tych wariantach — wybierz dowolny, a typ wyświetlacza ustawisz później w panelu WWW urządzenia. Trzeci i czwarty przycisk (Waveshare LCD 1.9 / ESP32-1732S019) to osobne, gotowe płytki ze zintegrowanym ekranem — powyższe nie ma do nich zastosowania.
Niepewny, który masz ekran? Sprawdź oznaczenie na płytce wyświetlacza lub w opisie zakupu — wgranie złego wariantu nie uszkodzi urządzenia, ale ekran nie będzie działał poprawnie do czasu ponownego wgrania właściwego.
Twoja przeglądarka nie obsługuje Web Serial.
Użyj Google Chrome lub Microsoft Edge na komputerze (nie na telefonie).
Wgrywanie działa tylko przez połączenie HTTPS.
  1. Podłącz ESP32-S3 N16R8 kablem USB do komputera.
  2. Kliknij Zainstaluj i wybierz port szeregowy (COM).
  3. Potwierdź i poczekaj na zakończenie wgrywania.
  4. Gotowe — urządzenie samo się zrestartuje. 🎉
📶 Po wgraniu: połączenie z WiFi (dotyczy KAŻDEGO wariantu, w tym Waveshare LCD 1.9)
Zaraz po wgraniu — a potem za każdym razem, gdy urządzenie nie zna żadnej zapisanej sieci — radio samo tworzy WŁASNĄ sieć WiFi o nazwie „ESP32-Radio”. Połącz się z nią telefonem lub komputerem — wymagane hasło: 12345678. Dopiero po połączeniu otwórz w przeglądarce http://192.168.4.1 i tam wpisz nazwę oraz hasło swojej domowej sieci WiFi.
⚠️ Waveshare LCD 1.9: to JEDYNY sposób — w odróżnieniu od pozostałych wariantów (ST7789/ILI9341, ILI9488), które mają DODATKOWO możliwość ustawienia WiFi komendą w terminalu (monitor portu szeregowego, 115200 baud: wifi set <numer> <SSID> <hasło>), na module Waveshare LCD 1.9 ta alternatywa nie działa — jedyna droga to sieć „ESP32-Radio” opisana wyżej.
🔘 Jeśli wgrywanie nie startuje lub przerywa się
Wprowadź płytkę w tryb wgrywania ręcznie: przytrzymaj BOOT, krótko naciśnij RST (lub EN), puść BOOT — i dopiero wtedy kliknij „Zainstaluj". Zwykle nie jest to potrzebne (płytka sama wchodzi w tryb wgrywania), ale ratuje, gdy pojawiają się błędy.
📋 Historia zmian (Changelog)
v1.0.5_E 10.09.2026
⭐ Nowa zakładka „Przyciski” — możesz podłączyć zwykłe przyciski chwilowe wprost do wybranych pinów GPIO (drugą nóżką do GND) i przypisać każdemu dowolną akcję z listy pilota (głośność, stacje, mute, power, dioda RGB, ulubione…). Każdy przycisk ma konfigurowalny pin. Domyślnie funkcja jest wyłączona — po pierwszym wgraniu firmware przyciski są nieaktywne, dopóki sam ich nie włączysz
v1.0.5_D 30.08.2026
🔧 Naprawiono restart radia (watchdog) przy słabym sygnale WiFi — mogło się to zdarzyć podczas ponownego łączenia się ze strumieniem po chwilowej utracie sygnału
🔧 Poprawki edycji pinów DAC/OLED w panelu WWW — usunięto fałszywe ostrzeżenia o konflikcie pinów oraz przypadki, w których wyświetlacz nie startował po zmianie typu lub przypisanych pinów
v1.0.5_C 28.08.2026
⭐ Piny DAC (dźwięk) i wyświetlacza OLED do zmiany w panelu WWW — oprócz pilota IR i enkodera, teraz też piny wzmacniacza/DAC oraz magistrali OLED można zmienić samodzielnie w zakładkach panelu, bez przelutowywania. Część zmian wymaga restartu radia, panel o tym uprzedzi
🛡 Ostrzeżenie o zajętym pinie — jeśli wybierzesz pin, który jest już używany przez inną funkcję (np. pilota, enkoder, diodę RGB), panel Cię o tym poinformuje, żeby coś przez pomyłkę nie przestało działać
🔧 Drobna poprawka — pole „RST” w ustawieniach wyświetlacza ILI9488 pokazywało nieprawidłową wartość
v1.0.5_B 24.08.2026
🔧 Dopracowano naprawę czarnego ekranu OLED z v1.0.5_A — u części użytkowników poprzednia poprawka nie wystarczała. Wydłużono opóźnienie startowe i dodano automatyczną reinicjalizację zaraz po starcie oraz cyklicznie co 10 minut — dodatkowe zabezpieczenie dla modułów z wolniej stabilizującym się zasilaniem
v1.0.5_A 23.08.2026
🔧 Naprawiono czarny ekran OLED zaraz po włączeniu zasilania (SSD1306/SSD1309/SH1106) — na niektórych modułach ekran potrafił zostać czarny mimo że radio wystartowało poprawnie; wystarczyła dowolna zmiana ustawień wyświetlacza, żeby „się obudził". Teraz radio samo wykrywa i naprawia ten przypadek już przy uruchomieniu
v1.0.5 23.08.2026
🔧 Naprawiono rzadką pętlę restartów zaraz po uruchomieniu — na niektórych sieciach WiFi (dużo widocznych sieci dookoła) radio potrafiło fałszywie „zawiesić się” i restartować w kółko już przy pierwszym uruchomieniu, mimo że wszystko było w porządku
⭐ Import i eksport klawiszy pilota IR — w zakładce Pilot IR można teraz zapisać całą listę zaprogramowanych klawiszy do pliku (kopia zapasowa albo przeniesienie na inne radio) i wczytać ją z powrotem
⭐ Tablica ogłoszeń w zakładce Firmware — panel WWW pokazuje teraz aktualne komunikaty/ostrzeżenia, które mogą się pojawić bez potrzeby wgrywania nowego firmware
🔧 Dodatkowe zabezpieczenie pamięci — naprawiono bardzo rzadki, teoretyczny przypadek, w którym przy skrajnie niskiej ilości wolnej pamięci odczyt niektórych metadanych utworu (np. tytułu) mógł doprowadzić do zawieszenia
v1.0.4_I 12.08.2026
⭐ Własny ekran powitalny/pożegnalny — w zakładce Wyświetlacz można teraz wgrać własny obrazek zamiast napisu „DZIEŃ DOBRY”/„DOBRANOC” przy włączaniu/wyłączaniu radia
🔧 Drobne poprawki — kolory własnego obrazka na ekranie ILI9488 oraz odświeżanie podpowiedzi w panelu WWW po zmianie orientacji ekranu
🧪 Eksperymentalne wsparcie płytki ESP32-1732S019 — nowe środowisko kompilacji dla chińskiego klonu z innym rozkładem pinów SPI niż oryginalny Waveshare LCD 1.9; oznaczone w instalatorze jako wersja testowa, jeszcze niezweryfikowana na fizycznym sprzęcie
v1.0.4_H 12.08.2026
⭐ Duża poprawa płynności ekranu w wariancie ILI9488 — lista stacji, przewijanie tytułu/nazwy stacji i wskaźniki głośności nie „szarpią" już przy odświeżaniu (był to najbardziej zauważalny problem tego wariantu)
🔧 Płynniejsze wskaźniki głośności na ILI9488 (wskazówki i segmentowy pasek LED) — zmniejszono ich rozmiar, animacja przestała być zauważalnie wolniejsza niż na mniejszym ekranie
🔧 Większe czcionki na ILI9488 (nazwa stacji, tytuł, kodek, WiFi) — lepiej wykorzystują szerszy ekran
🛠️ Wycofano probę podbicia szybkości transmisji do ekranu ILI9488 — zamiast ograniczyć rozmywanie przewijanego tekstu, powodowała powyginane igły wskaźników głośności na fizycznym sprzęcie
v1.0.4_G 08.08.2026
⭐ Trzeci przegląd stabilności — cały kod ponownie sprawdzono i naprawiono kolejną porcję rzadkich, ukrytych przyczyn możliwych zawieszeń i niespójnych odczytów danych
⭐ Nowy tryb wskaźnika głośności: segmentowy pasek LED (obok spektrum, wskazówek i pogody) — dostępny na wszystkich wariantach wyświetlacza LCD
🔧 Szybsza zmiana orientacji ekranu na Waveshare LCD 1.9" — obrót (ręczny lub żyroskopem) jest teraz niemal natychmiastowy, bez migotania
🔧 Naprawiono rzadki przypadek utraty ostatniej zmiany suwaka (np. jasności ekranu) przy bardzo szybkim przeciąganiu — teraz zawsze zostaje zapisana na stałe
🔧 Wydłużono czas oczekiwania na połączenie WiFi (15s → 35s) — pomaga przy bardzo słabym sygnale
v1.0.4_F 02.08.2026
⭐ Duży przegląd stabilności — dwie niezależne rundy — cały kod sprawdzono dwukrotnie pod kątem wielomiesięcznej, nieprzerwanej pracy i naprawiono łącznie kilkadziesiąt rzadkich, ukrytych przyczyn możliwych zawieszeń, utraty ustawień i restartów (WiFi, zapis ustawień/stacji, aktualizacje przez WiFi, odtwarzanie strumienia)
🔧 Naprawiono miganie i czarny ekran przy obrocie wyświetlacza (Waveshare LCD 1.9") — zmiana orientacji ekranu (ręczna lub żyroskopem) nie pokazuje już krótkiego białego/przesuniętego obrazu ani nie zostawia czarnego ekranu na liście stacji
🔧 Bezpieczniejszy zapis ustawień — nagły zanik zasilania w trakcie zapisu ustawień nie psuje już pliku konfiguracji (WiFi/EQ/itd. się nie gubią)
🛠️ Dodatkowe zabezpieczenie odtwarzacza — wykrywa teraz jeszcze jeden rzadki przypadek "cichego zawieszenia" strumienia audio
v1.0.4_E 01.08.2026
⭐ Naprawiono rzadkie zawieszanie się odtwarzania — gdy stacja chwilowo odsyłała błąd zamiast dźwięku, radio potrafiło "zawiesić się" w ciszy bez końca zamiast spróbować ponownie
🛠️ Rozszerzona diagnostyka — nowa sekcja w panelu WWW pokazuje statystyki bieżącej sesji (np. rozłączenia streamu/WiFi) i historię „zdrowia” pamięci co godzinę — łatwiej zauważyć problem, zanim doprowadzi do awarii
v1.0.4_D 31.07.2026
⭐ Duży przegląd stabilności — usunięto kilka rzadkich przyczyn zawieszania się urządzenia (przy pobieraniu pogody, przy usypianiu i przy problemach z WiFi)
🔧 Naprawiono błąd — pogoda czasem nie pojawiała się po ponownym uruchomieniu lub wybudzeniu urządzenia
🔧 Naprawiono rzadkie zawieszanie się przy wyświetlaniu utworów ze specjalnymi znakami w tytule
🛠️ Rozszerzona diagnostyka — historia restartów pokazuje teraz też ostatnie zdarzenie dźwięku i który układ się zawiesił
v1.0.4_C 30.07.2026
⭐ Nowy obsługiwany wyświetlacz: ILI9488 (3.5"/4", 320×480) — osobny wariant firmware, wybór na tej stronie
v1.0.4_B 25.07.2026
🔧 Poprawiono wyświetlanie pogody
⭐ Dodano wyświetlanie miejscowości
v1.0.4_A 24.07.2026
⭐ Rozszerzona diagnostyka — w zakładce Info: częstotliwość procesora, wolna pamięć, wolne miejsce na aktualizacje
🛠️ Dokładniejszy log restartów — łatwiej znaleźć przyczynę rzadkich, samoistnych restartów
💅 Uporządkowana zakładka Info
v1.0.4 24.07.2026
⭐ Temperatura procesora — nowy wskaźnik w zakładce Info
📋 Zakładka „Historia zmian” w panelu WWW pokazuje teraz tylko 3 najnowsze wpisy — pełna historia zawsze dostępna tutaj
v1.0.3_Z 23.07.2026
⭐ Korektor dźwięku (EQ) — trzy suwaki: Bas / Średnie / Wysokie w zakładce Player
v1.0.3_Y 22.07.2026
⭐ Automatyczne wyrównywanie głośności między stacjami — opcjonalna funkcja w zakładce Player
⚠️ To przybliżenie, nie idealny pomiar głośności — poprawia komfort, ale nie zawsze wyrówna ją dokładnie
🎚️ Płynniejsze zmiany głośności (ręczne i automatyczne)
v1.0.3_X 22.07.2026
🔧 Naprawiono biały ekran po nieudanym wybudzeniu z uśpienia
v1.0.3_W 21.07.2026
⭐ Tryb „tylko ulubione” — oznacz stacje gwiazdką i przełączaj się tylko między nimi
🎮 Limit zaprogramowanych klawiszy pilota zwiększony (40 → 42)
v1.0.3_V 21.07.2026
🔧 Naprawiono zacinanie dźwięku na początku odtwarzania po zmianie stacji
v1.0.3_U 21.07.2026
🎮 Podwojony limit klawiszy pilota IR (20 → 40) — można zaprogramować dwa piloty jednocześnie
v1.0.3_T 20.07.2026
🎚️ Kolor i peak-hold dla VU-metrów (tryb Wskazówkowe)
🌙 Wygaszacz ekranu po bezczynności
🎵 Nowy tryb diody RGB: Audio-reaktywna
👆👆 Wybudzenie pilotem z uśpienia wymaga teraz DWÓCH kliknięć POWER
v1.0.3_S 20.07.2026
📻 Import gotowej listy stacji jednym kliknięciem — w zakładce Stacje
⚠️ Wyraźniejsza informacja o ograniczeniu funkcji Pogoda
v1.0.3_R 19.07.2026
🌤️ Nowa wizualizacja TFT: Pogoda — temperatura, wilgotność, jakość powietrza, UV
⚠️ Funkcja eksperymentalna — przy stacjach HTTPS zwykle nie uda się pobrać danych pogodowych
🛠️ Naprawiono rzadki restart urządzenia przy zapisie ustawień z włączonym pilotem IR
v1.0.3_P 19.07.2026
🎨 Naprawiono przełącznik kolorów RGB/BGR na wyświetlaczu TFT (ILI9341)
v1.0.3_O 18.07.2026
🔧 Naprawiono zawieszanie się radia w ciszy przy zerwaniu streamu
v1.0.3_N 18.07.2026
🖥️ Nowa opcja wyświetlacza TFT: bez analizatora widma — większe, czytelniejsze czcionki
🎛️ Wybór wizualizacji audio na TFT: słupki / wskazówkowe (VU-metry) / brak
v1.0.3_M 17.07.2026
⚙️ Drobne poprawki stabilności WiFi i pamięci (aktualizacja platformy)
v1.0.3_K 12.07.2026
🧪 Wersja testowa — weryfikacja zachowania ustawień (WiFi/stacje) przy aktualizacji „Aktualizuj teraz" (bez zmian funkcjonalnych)
v1.0.3_J 12.07.2026
📊 Poprawiony pasek postępu pobierania przy aktualizacji
v1.0.3_I 12.07.2026
🛡️ Naprawiono kasowanie ustawień przy aktualizacji panelu WWW — WiFi i stacje są teraz zachowywane
v1.0.3_H 12.07.2026
🧪 Wersja testowa — weryfikacja poprawek jednoklikowej aktualizacji OTA (bez zmian funkcjonalnych)
v1.0.3_G 12.07.2026
🗄️ Naprawiono cache przeglądarki blokujący widoczność aktualizacji panelu WWW
v1.0.3_F 12.07.2026
🔧 Naprawiono restart urządzenia w trakcie aktualizacji przez WiFi
v1.0.3_E 12.07.2026
📡 Aktualizacja firmware przez WiFi — nowa zakładka „Firmware” w panelu WWW
⬆ Jednoklikowe „Aktualizuj teraz”
v1.0.3_D 12.07.2026
🔒 Naprawiono rzadkie zawieszanie się przy edycji stacji z panelu WWW
🖥️ Naprawiono niepotrzebne mignięcie ekranu przy zapisie ustawień
v1.0.3_C 12.07.2026
🐛 Naprawiono błąd braku pamięci przy stacjach HTTPS
v1.0.3_B 12.07.2026
🌐 Ukraiński w panelu WWW i instalatorze — czwarty język interfejsu
🖥️ Cyrylica poprawnie wyświetlana na TFT i OLED
📻 Limit stacji zwiększony z 99 do 150
v1.0.3_A 08.07.2026
🖥️ Obsługa wyświetlacza SSD1322 OLED SPI 3.12" (skala szarości)
v1.0.3 05.07.2026
🌐 Panel WWW i instalator po francusku — trzeci język interfejsu
🕐 Format godziny 12h (AM/PM) do wyboru
📅 Format daty niezależny od godziny
🖥️ Poprawiony wybór sterownika wyświetlacza (ST7789 / ILI9341)
v1.0.2 26.06.2026
🌐 Strefa czasowa — wybór z panelu WWW (35+ stref)
v1.0.1 19.06.2026
🖥️ Obsługa wyświetlacza ILI9341 3.2" (320×240)
🔁 Opóźnienie przed powtarzaniem NEXT/PREV z pilota
v1.0.0 2025-05
🎵 Streaming audio przez WiFi (stacje internetowe, lista stacji)
🖥️ Wyświetlacze: SSD1306 / SSD1309 / SH1106 OLED, ST7789 TFT SPI
🕹️ Enkoder obrotowy, pilot IR (protokół NEC)
🌐 Panel WWW — zarządzanie stacjami, konfiguracja, analizator widma
💡 Dioda RGB (efekty, tryby kolorów)
⚡ Instalator webowy (ESP Web Tools) — wgrywanie z przeglądarki
Coś nie działa?

❌ „Failed to open serial port"

Port COM jest zajęty przez inny program. Zamknij monitor szeregowy (Arduino IDE, PlatformIO, PuTTY) i wszelkie inne karty z instalatorem, odepnij i wepnij kabel USB, odśwież stronę i spróbuj ponownie.

🔌 Nie widać urządzenia / brak portu

Użyj kabla USB do przesyłu danych (nie tylko do ładowania). Sprawdź też inne gniazdo USB. Na niektórych płytkach trzeba wpiąć kabel w port oznaczony USB, a nie UART/COM.

🛠️ Płytka nie wchodzi w tryb wgrywania

Ręcznie: przytrzymaj przycisk BOOT, krótko naciśnij RESET (lub EN), puść BOOT. Potem znów kliknij Zainstaluj.

🌐 Przycisk „Zainstaluj" nie reaguje

Użyj Google Chrome lub Microsoft Edge na komputerze. Firefox, Safari oraz telefony i tablety nie obsługują wgrywania (brak Web Serial API).

🖥️ Terminal / Konsola — logi i komendy

Podgląd logów z urządzenia i wysyłanie komend. Przydatne, gdy coś nie działa — możesz skopiować logi i wysłać je autorowi.

🔌 Podłącz kabel do portu „UART"!
Logi i komendy działają tylko przez gniazdo „UART" (z mostkiem USB-UART). Natywny port „USB" służy do wgrywania, ale tutaj nic nie pokaże.

Działa tylko w Chrome/Edge na komputerze. Terminal i instalator nie mogą być połączone naraz — jeśli przed chwilą wgrywałeś firmware, odśwież stronę.

build #9
Instalacje (ta strona): …
Aktualizacje (WiFi w panelu): …