Перейти к содержимому

WLED 0.15: Что нового в последнем релизе

WLED 0.15 — самое значительное обновление с 0.14 — почти год разработки, 200+ коммитов, вклад 50+ разработчиков. Он решает три главных запроса сообщества: правильная поддержка матриц, переписанная с нуля аудиореактивность и многоконтроллерная синхронизация, работающая в масштабе. Он также приносит официальную поддержку ESP32-S3.

Веб-интерфейс управления WLED Логотип WLED

Переработка 2D-матриц

Предыдущие версии обрабатывали 2D-матрицы как хак — сегменты рассматривали одну длинную ленту как строки пикселей. Это работало для простых эффектов, но разваливалось после 8×8. WLED 0.15 переписывает поддержку матриц с нуля.

Новый интерфейс конфигурации панелей позволяет определить физическое расположение с точностью. Сообщите WLED количество панелей, их размеры и схему подключения — он обрабатывает пиксельный маппинг автоматически. Сетка 2×2 из панелей 16×16 отображается как единый холст 32×32.

Несколько макетов панелей теперь поддерживаются нативно:

  • Стандартная сетка — панели расположены строками и столбцами
  • Змеевидная — панели расположены зигзагом, чтобы контроллеру не нужны были длинные линии данных обратно к началу
  • Зигзаг — каждая строка чередует направление, распространено в больших POV-дисплеях

Топология подключения тоже имеет значение. Вы можете настроить змеевидное подключение (непрерывная линия данных, проходящая через все панели) и зигзагообразные узоры (чередующиеся начальные точки на строку). Прошивка обрабатывает координатное отображение, чтобы ваши эффекты выглядели правильно независимо от физического расположения.

Более 30 существующих эффектов получили истинный 2D-рендеринг. Эффекты, которые были сломаны, теперь работают правильно: Огонь распространяется естественно через стыки панелей вместо перезапуска на каждой границе; клетки Game of Life текут по всему холсту; Plasma рендерит плавные градиенты без видимых швов; следы Meteor продолжаются через всю матрицу; Perlin Noise правильно отображается для органических узоров.

Если вы избегали сборки матриц из-за того, что поддержка WLED казалась недоработанной, 0.15 полностью меняет это.

Новый движок аудиореактивности

Реализация 0.14 имела ограничения: только аналоговый вход, фиксированные частотные полосы, отсутствие автокалибровки. 0.15 поставляет полностью переписанный FFT-движок с настраиваемыми частотными полосами. Сопоставляйте определённые диапазоны с конкретными сегментами — бас на нижней строке, средние частоты в середине, высокие наверху. Каждая полоса имеет независимые настройки усиления, шумоподавления и затухания.

Поддержка I2S-микрофонов — главное дополнение. Три протокола цифровых микрофонов поддерживаются из коробки:

МикрофонПротоколПримечания
INMP441I2SСамый распространённый, ~$3, отлично для общего использования
SPH0645I2SБолее низкий уровень шума, лучше для тихих помещений
PDMPDMОднопроводной протокол, используется в MEMS-микрофонах

Цифровые микрофоны устраняют шум, который преследовал аналоговые установки. Интерфейс I2S также поддерживает длинные провода микрофона без ухудшения сигнала — преимущество для постоянных установок.

Улучшенное обнаружение битов использует адаптивные алгоритмы, которые захватывают темп независимо от жанра. Автоусиление непрерывно сэмплирует окружающую громкость и регулирует уровень входа FFT, устраняя проблему «слишком тихо / слишком чувствительно».

Новая панель Audio Reactive Settings в веб-интерфейсе даёт обратную связь в реальном времени: визуализация частотного спектра, измерители усиления и индикаторы уровня на полосу. Больше не нужно гадать, работает ли микрофон — вы видите путь сигнала от начала до конца.

Улучшенная многоконтроллерная синхронизация

Предыдущая синхронизация была ненадёжной на более чем 2-3 устройствах. 0.15 вводит UDP sync v2 — бинарные пакеты вместо JSON, уменьшая размер пакета на ~60%. Задержка синхронизации падает с 50-100мс до менее 15мс в локальной сети. Задержка в 100мс между зонами видна; 15мс незаметна.

Групповая синхронизация позволяет синхронизировать определённые сегменты вместо целых выходов. Хотите, чтобы левая и правая стена показывали один эффект, но потолок оставался независимым? Назначьте их в группу синхронизации. Это меняет правила игры для многозонных установок.

Другие улучшения синхронизации: NTP-синхронизация времени для запланированных эффектов, срабатывающих в одно и то же абсолютное время на всех устройствах; синхронизация пресетов с точностью менее 10мс; обнаружение узлов через mDNS; и индикаторы синхронизации в веб-интерфейсе, показывающие подключённых пиров.

ESP32-S3 и поддержка платформ

ESP32-S3 доступен уже более года, но поддержка WLED была экспериментальной. 0.15 делает её официальной. S3 приносит двухъядерную работу на 240 МГц, нативный USB CDC (больше проблем с драйверами последовательного порта) и — критически — поддержку PSRAM.

PSRAM позволяет адресовать до 8 МБ внешней RAM, что важно для:

  • Больших матриц (64×64 и больше)
  • Множественных параллельных выходов (до 8 лент с разными пинами данных)
  • Сложных эффектов с несколькими буферами кадров
  • JSON-тяжёлых API, таких как HTTP и WebSocket

Релиз также добавляет определения плат для нового оборудования:

ПлатаОсобенности
QuinLED Dig-Octa8 выходов, Ethernet, выделенный аудиовход
Athom LED контроллерыГотовые корпуса, БП с сертификацией UL
ESP32-S3-USB-OTGРежим USB-хоста для прямого доступа к файлам
WT32-ETH01Бюджетный Ethernet с LAN8720

Улучшенные OTA-обновления используют дифференциальные размеры прошивки (в среднем на 40% меньше передача) и режим восстановления с откатом. Если OTA-обновление прерывается, устройство автоматически откатывается к предыдущей версии вместо входа в boot loop. Веб-интерфейс показывает прогресс OTA на контроллер при одновременном обновлении нескольких устройств.

Обновление

Скачайте последний бинарный файл со страницы релизов WLED или используйте встроенный OTA-обновлятор в веб-интерфейсе. Сделайте резервную копию пресетов и конфигурации — хотя путь миграции с 0.14 протестирован, пользовательские сегменты могут потребовать перенастройки в новой матричной системе.

Полный список изменений см. в примечаниях к релизу WLED 0.15.