Skip to content

Witaliy76/Yoradio_RGB_Panel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

171 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

English version

Yoradio — Wi-Fi интернет-радио для ESP32 RGB Panel дисплеев, где музыка первична, а AI-слой служит тихим экспериментом по «оживлению» прибора

  • См.: readme_ai_layer_rus.md

  • Основано на проекте e2002/yoradio (https://github.com/e2002/yoradio). Этот форк добавляет поддержку RGB Panel дисплеев на ESP32-S3, с библиотекой Arduino_GFX и платформой .pioarduino/PlatformIO.

Поддерживаемые dev boards

4848S040 (ST7701S, 480x480, 4.0" квадратный)

UEDX48480021-MD80ET (ST7701S, 480x480, 2.1" круглый)

JC3248W535C (AXS15231B, 320x480, 3.5")

Особенности проекта

Отличия от оригинального Yoradio:

  1. Рефакторинг на Arduino_GFX — использование современной библиотеки Arduino_GFX с поддержкой RGB Panel и последнего ESP-IDF 5.4/5.5.
  2. Поддержка U8g2 шрифтов — библиотека Arduino_GFX поддерживает U8g2 шрифты, их можно использовать в проекте.
  3. Spectrum Analyzer — добавлен спектроанализатор с переключением VU ↔ SA прямо из веб-интерфейса (Settings). VU-метр теперь со шкалой (настраивается в widgets.cpp).
  4. Переключение SD ↔ Radio — добавлена возможность переключения через тачскрин (одновременное нажатие двумя пальцами).
  5. CPU Load виджет — показывает загрузку обоих ядер процессора.
  6. Поддержка форматов — OGG, OPUS, VORBIS, FLAC потоки.
  7. Автоматическое притухание яркости — виджет в main.cpp (настройки AUTOBACKLIGHT в myoptions.h).
  8. Батарея — код встроен в файлы дисплея, активируется закомментированием #define BATTERY_OFF (для UEDX48480021 требуются свободные пины).
  9. Обновлённые библиотеки — AudioI2S от Wolle (schreibfaul1) & Maleksm, Version 3.4.2p.
  10. Исправлено множество багов — стабильность и производительность.
  11. AI Layer

AI Layer (optional)

Эта версия Yoradio опционально включает AI Layer — тихий семантический слой, который может добавлять смысл фоновой музыке.

AI Layer — не ассистент и не взаимодействует с пользователем. Он может оставаться молчаливым и не влияет на поведение системы, когда отключен.

Устройство остаётся Wi‑Fi интернет‑радио и объектом присутствия, где музыка первична, а смысл появляется только когда уместно.

Видео работы ai_layer: https://github.com/user-attachments/assets/ea316f44-2394-4d24-8178-0bb7b66141dc

См.: readme_ai_layer_rus.md

Лог изменений

  • 07.03.2026
    • Миграция файловой системы с SPIFFS на LittleFS: конфиг, веб-сервер, плейлисты, AI prompt, OTA. Первый запуск после обновления отформатирует раздел ФС (данные нужно заново залить через «Upload filesystem image»).
    • Увеличен лимит размера AI prompt до 20 КБ; исправлена загрузка промпта (не отклоняет валидные файлы).
    • Исправлен краш погоды при неудачном DNS запросе (api.openweathermap.org).
  • 29.01.2026
    • Добавлен AI Layer (базовая архитектура и интеграция).
    • Исправлены отрисовка текста, скроллинг и оптимизация дисплея.
    • Добавлены LwIP библиотеки для ESP‑IDF 5.5.2 / Arduino 3.3.6 (b2159fa).
    • Обновлена audioI2S для стабильной работы (0d81d2c).
  • 25.10.2025
    • Исправлено: обновление строки Wi‑Fi на бутскрине и перебор нескольких SSID.
    • Добавлена поддержка платы JC3248W535C (AXS15231B QSPI, 320x480, 3.5").
    • Обновлены библиотеки liblwip.a и libesp_netif.a для ESP-IDF 5.5 (stable), оптимизации LwIP.
    • Обновлена библиотека audioI2S до 3.4.2p (улучшения логирования, NetworkClient, декодеры).
    • Улучшена обработка тачскринов: DEBUG_TOUCH через веб-интерфейс, защита от ложных кликов после свайпа, корректная работа мультитача с SD.
    • Добавлен параметр SPECTRUM_GRADIENT: QSPI дисплеи используют solid цвета, RGB Panel - плавные градиенты.
  • 12.10.2025 — Создание репозитория и добавление плат 4848S040 и UEDX48480021-MD80ET.

Важные замечания

  • Русификация шрифта: замените файл .pio/libdeps/<env>/GFX Library for Arduino/src/font/glcdfont.h на файл из репозитория fonts/glcdfont.h (где <env> — имя окружения из platformio.ini).

  • Стабильность радио на высоких битрейтах: замените библиотеки IDF перекомпилированными версиями из library!/esp32s3_5_5_2__3_3_6/:

    • libesp_netif.a
    • liblwip.a
    • Куда копировать (Windows): %USERPROFILE%\.platformio\packages\framework-arduinoespressif32-libs\esp32s3\lib\
    • Версия: ESP-IDF 5.5.2 / Arduino 3.3.6. После замены перезапустите PlatformIO и пересоберите проект.
  • Первый запуск/после erase flash: до ~60 секунд возможен чёрный экран (инициализация ФС). Это нормально — дождитесь старта.

  • Порядок работы и примеры: ориентируйтесь на оригинальный проект автора e2002/yoradio.

Благодарности

Особая благодарность:

  • e2002 — автор оригинального проекта Yoradio
  • Wolle (schreibfaul1) — за отличную библиотеку AudioI2S
  • Maleksm (4pda.to) — за доработки и улучшения AudioI2S
  • moononournation — за библиотеку Arduino_GFX

Лицензия

MIT — см. LICENSE.


About

Yoradio (with AI Layer) for ESP32-S3 RGB Panel dispay (ST7701S etc). Support ESP32-4848S040,UEDX48480021,JC3248W535C

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages