🧩 Матрица поддержки плат
4 платы Wi-Fi
2 Zigbee варианта
| Плата | Wi-Fi | Zigbee |
|---|
| ESP32 (classic) | ✅ | ❌ |
| ESP32-C3 SuperMini | ✅ | ❌ |
| ESP32-C6 SuperMini (рек.) | ✅ | 🐝 C6 Router |
| ESP32-H2 | ❌ | 🐝 H2 Router |
| ESP8266 NodeMCU | ✅ | ❌ |
🎛️ Типы лент (параметр led_type)
| Значение | Лента | Платформа ESPHome | Эффекты |
|---|
addressable (по умолч.) | WS2812B / NeoPixel | neopixelbus (RMT/GPIO) | 6 адресных + Пульсация |
pwm_mono | Одноцветная (12/24 В через MOSFET) | monochromatic + LEDC/PWM | Пульсация, Стробоскоп, Мерцание |
pwm_rgb | RGB без адресации (3 MOSFET) | rgb + LEDC/PWM | + Случайный цвет |
🔌 Подключение
Адресная лента WS2812B (addressable)
| Сигнал | GPIO | Примечание |
|---|
| DIN (данные) | GPIO18 | через резистор 300–500 Ом |
| 5 V | внешний БП | не от платы при > 10 LED |
| GND | GND | общий минус |
| Сигнал | GPIO | Примечание |
|---|
| DIN | GPIO5 | через резистор 300–500 Ом |
| 5 V | внешний БП | |
| GND | GND | |
| Сигнал | GPIO | Примечание |
|---|
| DIN | GPIO13 | через резистор 300–500 Ом |
| 5 V | внешний БП | |
| GND | GND | |
| Сигнал | Метка / GPIO | Примечание |
|---|
| DIN | D2 / GPIO4 | не конфликтует с UART0 логгера |
| 5 V | внешний БП | |
| GND | GND | |
Одноцветная или RGB через MOSFET (pwm_mono / pwm_rgb)
Каждый канал подключается через N-channel MOSFET (IRLZ44N, STP55NF06L и аналоги):
SOURCE ─── GND (общий с ESP и БП)
«+» ленты ── к «+» БП (12 В или 24 В)
| Канал | GPIO | pwm_mono | pwm_rgb |
|---|
| Mono / R | GPIO18 | ✅ | R |
| G | GPIO19 | — | G |
| B | GPIO20 | — | B |
| Канал | GPIO | pwm_mono | pwm_rgb |
|---|
| Mono / R | GPIO5 | ✅ | R |
| G | GPIO6 | — | G |
| B | GPIO7 | — | B |
| Канал | GPIO | pwm_mono | pwm_rgb |
|---|
| Mono / R | GPIO13 | ✅ | R |
| G | GPIO12 | — | G |
| B | GPIO14 | — | B |
| Канал | Метка / GPIO | pwm_mono | pwm_rgb |
|---|
| Mono / R | D2 / GPIO4 | ✅ | R |
| G | D6 / GPIO12 | — | G |
| B | D5 / GPIO14 | — | B |
⏰ Расписание
Расписание работает прямо на устройстве — не нужны автоматизации в HA:
- В HA откройте устройство → найдите 4 сущности
number: час/минута включения и выключения.
- Выставьте нужное время (например, включение
08:00, выключение 22:30).
- Включите
switch.расписание_активно.
- Каждые 30 с прошивка проверяет время и переключает ленту.
✨ Эффекты
| Эффект | addressable | pwm_mono | pwm_rgb |
|---|
| Радуга | ✅ | — | — |
| Бегущий огонь | ✅ | — | — |
| Мерцание (addressable) | ✅ | — | — |
| Бегающий огонёк | ✅ | — | — |
| Фейерверк | ✅ | — | — |
| Пульсация | ✅ | ✅ | ✅ |
| Стробоскоп | — | ✅ | ✅ |
| Мерцание (PWM) | — | ✅ | ✅ |
| Случайный цвет | — | — | ✅ |
📁 Структура шаблона
Директорияfirmwares/ci-overrides/mihazzzold.espHome_Dimmer/
- led-strip.yaml.j2
Директория_includes/
- runtime.yaml.j2
- logic.yaml.j2
- maintenance.yaml.j2
- diagnostics.yaml.j2
- hardware.yaml
📦 Сборка
# Адресная лента (по умолчанию)
py -3.13 scripts/flasher.py --local `
-f firmwares-external/mihazzzold.espHome_Dimmer/led-strip.yaml.j2 `
--board-profile esp32c6-supermini -a run --port COM5 -y
py -3.13 scripts/flasher.py --local `
-f firmwares-external/mihazzzold.espHome_Dimmer/led-strip.yaml.j2 `
--board-profile esp32c6-supermini -a run --port COM5 -y `
py -3.13 scripts/flasher.py --local `
-f firmwares-external/mihazzzold.espHome_Dimmer/led-strip.yaml.j2 `
--board-profile esp32c6-supermini -a run --port COM5 -y `
py -3.13 scripts/flasher.py --local `
-f firmwares-external/mihazzzold.espHome_Dimmer/led-strip.yaml.j2 `
--board-profile esp32c3-supermini -a run --port COM5 -y
py -3.13 scripts/flasher.py --local `
-f firmwares-external/mihazzzold.espHome_Dimmer/led-strip.yaml.j2 `
--board-profile esp8266-nodemcu -a run --port COM5 -y
Параметры шаблона
| Параметр | По умолчанию | Описание |
|---|
led_type | addressable | Тип ленты: addressable / pwm_mono / pwm_rgb |
led_count | 30 | Количество LED (только для addressable) |
led_strip_pin | из board_profile | Пин данных (addressable / mono) |
led_r_pin / led_g_pin / led_b_pin | из board_profile | Пины каналов RGB (только pwm_rgb) |
use_ha_time | true | false = SNTP (автономно без HA) |
serial_number | — | Серийный номер устройства |
friendly_name_override | — | Имя в Home Assistant |
OTA-каналы: mihazzzold.espHome_Dimmer.{esp32,esp32c3,esp32c6,esp8266}.
🏠 Home Assistant
Сущности после добавления устройства:
| Сущность | Тип | Описание |
|---|
light.led_лента | light | Управление (вкл/выкл, яркость, цвет, эффекты) |
switch.расписание_активно | switch | Включить расписание |
number.расписание_включение_ч/мин | number | Время включения |
number.расписание_выключение_ч/мин | number | Время выключения |
🐝 Zigbee-вариант
Полная реализация (не scaffold) — кластеры On/Off, Level Control, Color Control (HS→RGB), RMT-драйвер, кнопка паринга GPIO9.