Новогодний период - время баловству с гирляндами! 😁
В прошлом году я делал гирлянду Франкенштейна, которая, к сожалению, почти вышла из строя за два дня до Нового Года. В этом году, к сожалению, у меня не дошли руки до её восстановления. Но я делал другую гирлянду, и осознал косяки в той.
Еще, старый друг в прошлом году порекомендовал делать гирлянду на WLED, поэтому к этому новому году я заблаговременно заказал парочку гирлянд на Aliexpress на адресных светодиодах.
Но давайте по порядку.
Советская ламповая гирлянда

Жена купила на аукционе старую советскую гирлянду с пластиковыми насадками в виде снежинок, на лампочках E10 13.5V.
В прошлом году она у нас красовалась на ёлке. Но была одна проблема - лампочки в ней перегорали почти каждый день! Поэтому я просто добавил в неё пару керамических резисторов. Лампочки перегорать перестали, но резисторы грелись очень сильно, и выглядело это как-то пожароопасно.
В этом году было решено от резисторов избавиться в пользу диода. Т.е. что бы диод берёг лампочки просто обрезая одну полу-волну сети 220В, и ничего не грелось.
Дополнительно хотелось сделать эту гирлянду "умной". Что бы можно было удаленно её включать/выключать, и добавить режим затухания.
Хоть у меня уже был опыт создания ZigBee устройства, в данному случае показалось, что будет проще (быстрее) реализовать управление по WiFi.
Взял ESP32-C6-Devkit. Для управления нагрузкой использовал полевой транзистор в связке с биполярным (т.к. 3.3V от ESP32 не может гарантированно открыть имевшийся у меня полевой транзистор). Спаял схемку на макетке, написал код с простой веб-формой для управления. Получилось как-то так.


- Режим затухания реализован просто через ШИМ. Изначально в коде использовал высокую частоту, которую взял просто из примера, и заметил, что соседняя гирлянда начинает немного глючить (мигать некоторыми светодиодами). Видимо ШИМ генерирует помехи в сеть (никакого фильтра в моей схеме пока нет). Понизил частоту - стало гораздо лучше, но не до конца.
- WiFi не стабильный. Хоть гирлянда находится в зоне с хорошим покрытием, периодически теряет связь, и может с десяток минут быть недоступна.
- Почему-то периодически перезагружается.
- с симистором вместо диода
- на таймере вместо ШИМ
- ZigBee вместо WiFi
- дополнительное управление с ИК-пульта
Гирлянды на адресных светодиодах
На Aliexpress заказал две гирлянды на адресных светодиодах WS2812.

Одну гирлянду заказал вот такую. 5 метров за 16.79$.
Изначально планировал её использовать как есть (т.е. не переделывать на WLED).
Светодиоды гирлянды находятся внутри шариков-рассеивателей. Управляется с ИК-пульта, либо со смартфона через Bluetooth. Есть микрофон для эффектов "под музыку", но реагирует так себе.
Эффектов много, но интересных нет! Так что, к следующем Новому Году буду переделывать либо на WLED, либо на своё.

Вторую заказал вот такую. 10 метров за 8.57$
Отличается от предыдущей тем, что нет шариковых рассеивателей, нужен дополнительно USB блок питания, и по Bluetooth управляется через другое приложение (которое я даже не ставил).
Гирлянду особе не тестил. Сразу отпаял контроллер, и втыркнул в Arduino. С сыном стали изучать что можно сделать.
После экспериментов, пришла пора попробовать WLED.

Если сравнивать с описанной ранее ламповой гирляндой, то тут понятие "сделал" звучит как-то с преувеличением. Я заранее заказал пару WeMos ESP32 D1 Mini. И всё что нужно:
- припаять к ней контакты, которые шли в комплекте
- припаять к гирлянде тройной штекерный разъём 2.54
В WLED прошивке по-умолчанию для шины данных используется GPIO16, который находися рядом с VCC и GND. Так что, нужно просто понять где што в гирлянде, и припаять соответственно. - соединить
- через ESPHome-Flasher залить на ESP WLED_*_ESP32.bin
- подключиться к ней через WIFI
- настроить параметры светодиодов (тип, количество, цветность RGB) и WiFI
Но, дополнительно можно ещё сделать какие-то кнопки, и ИК-приёмник, которые поддерживаются прошивкой.
Эффектов в прошивке огромное множество. Я даже все не пересмотрел - нашел парочку, которые мне нравятся, и забил.
Можно разделять гирлянду на сегменты, что бы у каждого сегмента был свой эффект.
Можно задать эффект по-умолчанию! А это именно то, чего не хватает во всяких дешевых гирляндах, которыми даже при помощи умной розетки управлять - не вариант, т.к. при после включения обязательно будет режим "подарок эпилептику".
Управлять гирляндой можно через браузер по WiFi, через специальное приложение на смартфон, или через API.
Косяки:- Как и с моей ламповой гирляндой, тут аналогичная непонятная проблема с WiFi.
- Иногда, после того как выключил через веб-интерфейс, не хочет включаться обратно таким же способом.
- Данную ESP питать нужно именно через USB-разъём. Если попробовать запитать 5V через VCC контакт - она не загрузится. Не критично, но стоит иметь в виду.
Так как гирлянда понравилась, решил взять еще одну - повесить на балконе.
Купил вот такую на Ozon за 33.41 BYN. Всего на пару рублей дороже, но доставка - пару дней, а не 3 недели. Отличается от предыдущей только тем, что со смартфона управляется тем же приложением, что и первая гирлянда с шариковыми рассеивателями.
Сразу переделал её на WLED. К сожалению, балкон у меня не в зоне качественного WiFi, так что режим подключения к своей точке пришлось отключить. Благо, тогда WLED выступает в роли точки доступа, при подключении к которой открывается окно управления гирляндой.
В заключение
Один из кейсов использования данных гирлянд в моей голове был - ночник. Т.е., что бы гирлянды загорались ночью от датчика движения, если ребенок пойдет в туалет. Однако, из-за проблемы с WiFi, данный сценарий работает не надежно. Пока датчик движения использую в связке с умной розеткой, в которую вставлен ночник.
Эффектов в WLED конечно много, но реально мне интересны всего парочка. А своих эффектов не хватает, вроде тех, что я показывал выше.
Так что, к следующему Новому Году в планах сделать гирлянду на собственной прошивке, с ZigBee и ИК-приёмником.