В статье хочется поделиться реализацией управления освещением, которая может быть использована в различных системах "умного дома". Ключевая особенность - возможность работать вместе с обычной двухпроводной проводкой освещения.
Краткая предыстория
Идея появилась после покупки китайской светодиодной люстры, которой можно управлять с помощью радиопульта - включать, изменять яркость и цветовую температуру. Дома уже функционировал Home Assistant, и возникло логичное желание управлять этой люстрой для реализации режима "искусственный рассвет" - с ним намного комфортнее просыпаться в осенне-зимний период.
Проводка в комнате сделана давно. К люстре идет только два провода от выключателя, следовательно для любого умного управления пришлось бы держать выключатель в положении "включено" и управлять освещением только с помощью пульта. Это довольно неудобно, к тому же простых способов интегрировать пульт в систему Home Assistant я не придумал - нужно или коммутировать кнопки пульта или эмулировать радиокоманды.
Интеграция с Home Assistant
Другой способ интеграции - это переделка электроники люстры. Нужно заменить радиоуправление на модуль ESP32 под управлением ESPHome, который отлично интегрируется с Home Assistant.
Все управление освещением производится изменением состояния двух каналов яркости с помощью ШИМ-сигналов - холодного белого и теплого белого. Прошивка ESPHome умеет это "из коробки". Требуемый режим "искусственный рассвет" тоже легко реализуется - просто устанавливаем время включения на 30 минут, и получим плавное нарастание яркости.
Получается, что интегрировать люстру в систему умного дома относительно несложно, осталось придумать как сохранить возможность управления освещением с помощью существующих выключателей. Для этого нужно передавать команду от выключателя к люстре по тем же двум проводам, что и питание.