Skip to content

vortigont/FireLamp_JeeUI

Repository files navigation

CHANGELOG | PlatformIO CI

Огненная лампа FireLamp_EmbUI

Лампа, гирлянда, информер с поддержкой светодиодных матриц/лент ws2812 и HUB75 RGB панелей.

Деполитизированный форк проекта "огненной" лампы FireLamp_EmbUI.

Project Manifest

Проект был пересобран из старых форков и архивов репозитория пользователей и участников разработки на момент примерно 2021 года. В исходном проекте был полностью вырезан русский язык, задним числом переписана история разработки в Git и удалена соотвествующая тема форума. Данный форк это не срез исходного репозитория, хотя сохранил часть общей истории до определенного момента.

Канал в Telegram для общения пользователей прошивки - LampDevs

Группа ВКонтакте

Тема на форуме Гайвера

Галерея

ESP32 FireLamp RGB HUB75 Informer panel Demo

Содержание

WiKi проекта

Актуальную документацию по проекту можно найти в WiKi

Прошивка / сборка проекта

Подробно опции прошивки сборки описаны в WiKi Залить собраную прошивку можно через ESPWebFlasher

Концепт

Исходный проект был полностью реструктурирован и переписан. Из "огненой лампы" проект трансформировался в универсальный движёк для работы как с адресными лентами так и RGB HUB75 панелями. Проект академический, используется как платформа для разработки отдельных библиотек под платфому ESP32. Целью разработок - создание качественных асинхронных библиотек, классов и компонентов.

В разработке основное внимание уделяется структуре кода, декомпозиции и объектоориентированности в ущерб набору "фич" и количества функций. Основная идея развития - проект должен быть лекго конфигурируем и полностью настраиваться без необходимости создания дремучих конфиг файлов и пересборок уникальных прошивок. Вся периферия и функционал должен быть максимально гибко настраиваем уже во время работы кода без необходимости пересборки/перепрошивки проекта. Проект поставляется в виде бинарных сборок, может быть прошит и использован с любым шильдом/платой под HUB75 информеры/ленты. назначение выводов под периферию выполняется целиком из WebUI.

Библиотеки, используемые в проекте

В процессе работы на проектом были разработаны с нуля или адаптированы следующие библиотеки:

  • EmbUI - Embedded WebUI framefork. Building interactive UI based on websockets for your Arduino projects
  • ESPAsyncButton - Event-based asynchronous button library for ESP32 family chips. It generate events for various button press patterns, like short/long press, clicks, autorepeat, multiple clicks
  • LedFB - template-based LED framebuffer library for FastLED / AdafruitGFX API
  • DFMiniMp3 - библиотека DFPlayer'а от Makuna, адаптированная для run-time конфигурации
  • esp32-flashz - zlib compressed OTA firmware update for ESP32. Implements on-the-fly OTA images decompression on upload/flashing
  • TM1637 - адаптированная библиотека от AKJ7 переработанная для дополнительных эффектов анимации
  • ESP32-DNSServerAsync - Async version of ESP32's DNSServer based on AsyncUDP lib

ESP8266 vs ESP32

Разработка ведется под контроллеры семейства esp32. ESP8266 морально устарел, было принято решение не тратить время на поддержку совместимости и уделить больше времени и ресурсов актуальной платформе. Последний стабильно работающий на контроллерах 8266 выпуск проекта - версия v3.1.1, прочий код в ветке legacy.