ESP-LED #1: Собственный WLED-контроллер

ESP-LED #1: Собственный WLED-контроллер

Руководство по сборке собственного контроллера адресных лент на базе WLED.

Проекты

Вернуться в блог

Создание собственного контроллера WLED позволяет объединить реакцию на звук и автоматическую регулировку яркости. В этой статье мы соберем первую версию устройства на базе мощного ESP32-S3 SuperMini.

WLED Controller v1

Когда я начинал этот проект, моей целью было создать собственный контроллер WLED, который мог бы обрабатывать звуковые эффекты и автоматически регулировать яркость в зависимости от окружающего освещения. Многие готовые контроллеры имеют либо одну функцию, либо другую, но редко обе сразу в чистом виде. Это первая версия контроллера, и хотя она уже отлично работает, в разработке находится v2, в которую будет добавлен ИК-приемник и свободные GPIO для будущих расширений.

Сердцем платы является ESP32-S3 SuperMini, который обеспечивает гораздо большую производительность по сравнению с ESP32-C3 SuperMini, в основном благодаря двухъядерной архитектуре. Эта дополнительная мощность действительно помогает при быстрой и надежной обработке светодиодных эффектов, реагирующих на звук, не перегружая контроллер.

Прототип PCB ESP-LED-01
Схема

Планирование схемы

Прежде чем приступать к изготовлению печатной платы, я хотел убедиться, что всё работает так, как задумано. Любой хороший проект начинается с макетной платы, кучи проводов и небольшого хаоса.

В качестве «мозга» я выбрал ESP32-S3 SuperMini. Он компактный и дешевый, но при этом мощный — двухъядерный S3 легко справляется и с WiFi, и с обработкой звука в реальном времени.

Для реакции на звук я выбрал цифровой MEMS-микрофон INMP441. Я специально искал цифровой вариант, чтобы избежать проблем с шумом, которые часто возникают у аналоговых микрофонов, особенно на макетных платах. Он чувствительный и подключается по интерфейсу I2S — идеально для аудиовхода WLED.

Поскольку я также хотел, чтобы свет автоматически приглушался в темноте, я добавил простой датчик освещенности — фоторезистор (LDR) с подтягивающим резистором. Ничего сложного, но он отлично интегрируется в функции автояркости WLED.

Еще одной важной деталью стал преобразователь уровней 74AHCT125N. Хотя адресные ленты типа WS2812B иногда могут работать напрямую от 3.3В логики ESP32, это ненадежно. Ленты ждут чистый сигнал 5В. 74AHCT125N правильно повышает сигнал, гарантируя стабильную работу первого светодиода в цепочке даже при длинных проводах.

Наконец, чтобы всё выглядело аккуратно, я добавил 2-контактный клеммник для питания и 3-контактный для подключения светодиодной ленты: +5В, Данные и Земля.

Fritzing-схема контроллера

В этой схеме:

  • Питание идет от разъема barrel jack на клеммники и ESP32-S3 SuperMini.
  • 🟣 Микрофон INMP441 подключается к выводам I2S.
  • ⚪ Датчик света подключен к аналоговому GPIO с резистором для стабильных показаний.
  • 🟠 74AHCT125N преобразует данные ESP в уровень 5В для ленты.
  • ⚫ Конденсатор установлен по линии питания рядом с лентой для сглаживания скачков напряжения.
  • 🟤 Резистор последовательно на линии данных защищает первый пиксель.

Эта настройка отлично показала себя в тестах, что дало мне уверенность в разработке PCB.

Макет

Сборка на макетной плате

Честно говоря, мне не терпелось дождаться заводских плат, поэтому я собрал всё на макетке. Это помогло внести пару правок до того, как отправить проект в производство.

Вот как я подошел к сборке макета:

  • Собрал полную схему, следуя чертежу во Fritzing.
  • Прошил WLED на ESP32-S3 и проверил работоспособность ленты.
  • Протестировал отдельно каждую часть: микрофон, уровни сигнала 5В и стабильность питания под нагрузкой.
Сборка на макетной плате
Тестирование микрофона
Дизайн

Проектирование и заказ PCB

После проверки на макетке я приступил к созданию PCB в KiCad. Я добавил диод Шоттки для защиты от переполюсовки (до 5А) и электролитический конденсатор большой емкости для компенсации скачков тока. Для защиты линии данных я установил резистор 330 Ом.

Крупный план платы

Пара советов по разводке:

  • Силовые дорожки должны быть широкими, чтобы выдерживать ток ленты без нагрева.
  • Сигнальные линии (микрофон, датчик) лучше держать подальше от шумных линий питания.
  • Выход преобразователя уровней должен идти максимально коротким путем к разъему.
Трассировка в KiCad

Готовые Gerber-файлы я загрузил на PCBWay для изготовления.

Закажите свою плату

Если вы хотите собрать такой же контроллер, вы можете заказать изготовление плат по этой ссылке: 👉 Заказать WLED Controller PCB на PCBWay

Готовые платы
Сборка

Сборка платы

Пакет от PCBWay прилетел довольно быстро. Теперь самое интересное — превратить цифровой дизайн в живое устройство.

Процесс распаковки
Материалы

Список компонентов (BOM)

Компоненты для сборки

Компонент Описание Где купить
ESP32-S3 SuperMini Основной контроллер, двухъядерный S3 с поддержкой USB Купить
INMP441 MEMS Mic Цифровой микрофон I2S для чистого аудиовхода Купить
74AHCT125N Преобразователь уровней с 3.3В до 5В Купить
LDR5516 (датчик света) Фоторезистор для автоматической яркости Купить
Клеммники 2-pin для питания и 3-pin для светодиодной ленты Купить
Защитный диод Диод на 5А (например, SR260) против переполюсовки Купить
Набор компонентов
WLED

Прошивка и настройка WLED

Сборка завершена, переходим к установке софта.

Прошивка ESP32-S3 SuperMini

  1. Подключите ESP32-S3 по USB-C.
  2. Перейдите на install.wled.me в Chrome.
  3. Выберите порт и нажмите Install.

Настройка ленты

  • В меню LED Preferences установите Data GPIO на 12.
Настройка GPIO в WLED

Настройка микрофона

  • В разделе Usermods -> AudioReactive, выберите Generic I2S.
  • Пины: I2S SD: 3, I2S WS: 5, I2S SCK: 4.
Настройка аудио в WLED
Будущее

Планы на будущее

Версия v1 работает отлично, но я уже думаю о v2:

  • ИК-приемник: управление без телефона.
  • Вывод всех GPIO: чтобы можно было подключать еще больше датчиков или несколько лент.

Скоро будет готов анонс v2! 🚀

Анонс v2
Итог

Заключение

Этот проект превратился из кучи проводов в надежную печатную плату. Мы получили компактный, мощный и функциональный контроллер для адресных лент. Если вы увлекаетесь светодиодами, сборка такого устройства — отличный способ прокачать свои навыки в схемотехнике и WLED.

Закажите свою плату

Вы можете заказать профессиональную печатную плату на PCBWay: 👉 Заказать WLED Controller PCB на PCBWay