Ёлочная адресная гирлянда DIY на ESP8266

06 ноября 2020, 07:49

Ввиду домашней автоматизации, еще в прошлом году хотел собрать ёлочную гирлянду на ESP8266 и адресной ленте WS2811. На прошлый Новый год я не успел все заказать, зато в этом году подготовился заранее. Вот и выпускаю эту статью в начале ноября, чтобы и вы успели заказать все необходимое к новогодним праздникам. 

Для начала давайте определимся, какие бывают варианты адресной ленты, точнее, в нашем случае, адресной гирлянды. Тут я приведу несколько самых популярных вариантов.

Адресные гирлянды

k02-1.jpg
На мой взгляд, это лучший вариант исполнения для новогоднего настроения и украшения ёлки.
k02-2.jpg
Вариант для создания матриц, можно украсить окно, и вывести красивую анимацию.
k02-3.jpg
Уличное исполнение гирлянды на WS2812. Отлично подойдет для украшения фасада дома.

Адресные ленты

k02-1.jpg
Самое дешевое исполнение ленты WS2811, к недостаткам можно только отнести 3 диода на один контроллер, если использовать как подсветку - это даже и лучше. Лента работает от 12В.
k02-2.jpg
WS2812 - на любой вкус и цвет, предусмотрена возможность выбрать количество диодов на метр и как с влагозащищенностью, так и без. 
k02-3.jpg
Не самое дешевое исполнение адресной ленты, но, наверное, одно из самых красивых. 

Итак, со светодиодными лентами мы определились, можно приступать к выбору остальных комплектующих. Для себя я выбрал вариант "Для новогоднего настроения", а также у меня было два куска по 5 метров дешевой ленты на WS2811. Ввиду того, что ленты работают на разных напряжениях, рассмотрим вариант как для питания 5В, так и для 12В.

Нам понадобится:

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

Обратите внимание, что любая адресная лента имеет направление подключения. В местах подключения имеется стрелка.

Схема №1, 5В

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

1600x_image.png?1604425277

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

Схема №2, с понижающим преобразователем

1600x_image.png?1604426242

В таком случае мы используем 12-36 В блок питания, а уже при помощи понижающего преобразователя (в данном примере уже с вольтметром) есть возможность понизить напряжение до 5 В, в зависимости от потребности ленты. NodeMCU при этом имеет собственный стабилизатор и имеет возможность питания 5-12 В.

Схема №3, мой вариант

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

o01-1.jpg

Кстати в этой схеме есть еще один плюс - намного удобнее в корпусе вырезать окошко для вольтметра. 

Так как у меня валялся корпус уже с вольтметром от моей прошлой самоделки, я пошел именно этим путем. А вообще вольтметр особо не нужен. Ну только когда вы будете изменять напряжение, можно и мультиметром воспользоваться. 

Схема №4 все в одном

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

o01-1.jpg

В этой схеме вам дополнительно может понадобится:

Для удобства можно вывести внешний подстрочный потенциометр, для более удобной регулировки питания. 

Ну и для полного эстетического удовлетворения ручка потенциометра. 

Уже какой-то лабораторный блок питания получился, кстати есть такая статья, можно ознакомиться тут: "DIY Лабораторный блок питания". Возможно, будет полезно что-то взять именно с этой статьи.

Прошивка

Собрали мы схему, собственно, вообще не важно, по какому пути идти. Выбираем для себя более простой или более удобный. Теперь можно перейти к прошивке, тут также имеется несколько вариантов. 

Вариант №1, прошивка Apple HomeKit ready

Вариант достаточно сложный, вам придется установить SDK для компиляции прошивки ESP8266 под Apple HomeKit. Повторятся не буду, как это сделать можно прочитать в мой одной очень старой статьеПо итогу вы получите результат описанный в этом блоге

Плюсы

  • Поддержка Apple HomeKit и Siri из коробки.

Минусы

  • Довольно муторная установка SDK.
  • Нет возможности изменить количество светодиодов в ленте (только перепрошивка).
  • Отсутствие MQTT. 

Вариант №2, прошивка WLED

Есть более простой и, в то же время, более функциональный вариант. Но уже без HomeKit из коробки, при помощи сторонней системы можно, конечно, добавить. Прошивка WLED. А теперь обо всем по порядку. 

Плюсы

  • Очень простой способ прошивки.
  • Поддержка MQTT, Philips Hue, Blynk.
  • Возможность интеграции в Home Assistant, HomeBridge, nodeRED ...
  • Удобный web-интерфейс.
  • Одноименное приложение на iOS и Android.
  • Возможность создавать отдельные зоны и управлять ими по отдельности.

Минусы

  • Нет возможности добавить в Apple HomeKit из коробки.

Так сказать, универсальное решение для работы с адресной лентой. Для себя я давно выбрал этот вариант, поэтому давайте приступим к самой прошивке. 

Прошивка ESP8266

Чтобы прошить устройство, нам понадобится вот этот архив, в нем я оставлю все необходимое, чтобы у вас все заработало. Скачиваем архив и распаковываем. После чего подключаем ESP8266 к компьютеру при помощи кабеля USB - microUSB (блок питания при этом не подключаем к источнику питания).

Для начала нам понадобится очистить память ESP8266. Открываем папку "Чистая" и запускаем "FlashESP8266.exe", выбираем COM-порт нашей nodeMCU и файл прошивки blank_4MB, нажимаем кнопку "Flash". Ждем окончание процесса, он достаточно долгий, наберитесь терпения. 
1600x_image.png?1604431339

После завершения процесса, проще всего передернуть USB кабель на любой из сторон и запустить процесс прошивки. Для этого открываем папку "Прошивка" и делаем абсолютно все тоже самое по аналогии. 

1600x_image.png?1604432373
Только вместо файла blank указываем саму прошивку. На этот раз дело пойдет намного быстрее, так как файл прошивки значительно меньше чистой. 

По завершению процесса прошивки, снова передергиваем USB кабель и смотрим появившиеся Wi-Fi сети. Должна появиться сеть WLED-AP, пароль от которой wled1234. После подключения к сети, нам необходимо перейти по адресу: http://4.3.2.1, попадаем в Web-интерефес устройства. 

Первичная настройка

Настройка Wi-Fi

Первое, что необходимо - в верхней части экрана "Config" -> "Wi-Fi Setup" и вводим данные своей сети, после чего нажимаем кнопку "Save & Connect". Теперь можно отключать ESP от компьютера и подключать по схеме. 

После чего смотрим в настройках роутера назначенный DHCP серверов, IP адрес. Можно воспользоваться браузером компьютера или приложением для телефона, ссылка на приложение для iOS.

1600x_image.png?1604486724
1600x_image.png?1604486724

Как пользоваться устройством рассказывать не буду, лучше расскажу, как подключить нашу Ёлку к Apple HomeKit. 

Сегменты

Отдельно хочется остановиться на разделе Сегменты. Здесь вы можете поделить вашу ленту на отдельные сегменты, для управления ими по отдельности. 

Например: Можно отделить Звезду ёлки от основной части гирлянды, тем самым, подчеркнуть уникальность каждого элемента украшения. 

Или если вы используете ленту как подсветку комнаты, можно также задать направление анимации по сегментам.

Примечание: Чтобы не произошло обрыва цепи из-за большой нагрузки, рекомендую подавать питание на каждый участок ленты отдельно. 
k01-2.jpg

Добавление в Home Assistant

Если вы используете Hassio, открываем Настройки -> Интеграции, и видим наше новое устройство. 

Нажимаем Настроить -> Подтвердить, после чего Лента автоматически добавиться. 

1600x_image.png?1604433092

После добавления, у нас появится возможность управлять лентой и включать эффекты. Эффекты - это то, ради чего мы все это затевали. 

1600x_image.png?1604433092

Добавление в HomeBridge

С добавлением дела обстоят немного сложнее, при этом функционал получаем более ущербный, нежели в Home Assistant. Для добавления в HomeBridge, устанавливаем плагин homebridge-wled-simple. После чего, добавляем в наш конфиг в раздел accessory следующие стройки. 

     {
       "accessory": "WLEDSimple",
       "name": "Moodlight Livingroom",
       "apiroute": "http://102.168.1.133"
     }

где, 192.168.1.133 - ip нашей ESP.

Добавление в nodeRED

Более подробно про прошивки и настройку WLED можно прочесть в отдельной статье на портале. В статье описан интересный способ интеграции ленты в nodeRED.

Испытания

Вот мы добрались до самого интересного. Тут предлагаю без текста, просто покажу как выглядит устройство у меня, и приведу несколько примеров красивых анимаций, которые отлично впишутся в новогоднее настроение. Как говорится - лучше один раз увидеть, чем 100 раз прочитать.

1600x_image.png?1604488551
1600x_image.png?1604488554
1600x_image.png?1604488552

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

Адресная гирлянда

12.11.20 ко мне все же доехала гирлянда, и я решил дополнить статью отдельным блогом

Светомузыка

19.11.20 Продолжение цикла, добавления функционала светомузыки

В канун Нового года, когда уже будет стоять ёлка, сниму видео и опубликую в отдельном блоге. Я думаю, на ёлке это будет выглядеть гораздо симпатичнее. 


Все новости мира умных домов - t.me/SprutAI_News или Instagram
Остались вопросы? Мы в Telegram - @SprutAI

Хочешь умный дом но нет времени разбираться?
Посмотри примеры работ и выбери себе интегратора.
  1. (Xsibirevx)
    (Xsibirevx) 7 месяцев назад

    Спасибо за подробную статью, мне как новичку данная статья бальзам на душу. Скажите, а в прошивке wled можно делать такие же, ну, типа объемные эффекты как у гайвера в прошивке для матрицы ? Планирую делать гирлянду на окно, хочется, что бы время было, бегущая строка и прочие эффекты. Спасибо! 

    • Дмитрий Батюшин (ReD)
      Дмитрий Батюшин (ReD) 7 месяцев назад

      не, расположение диодов только линейное, матрицей незя

      • (Alvian)
        (Alvian) отредактировано 7 месяцев назад

        А можно программировать подобные эффекты как у Pixelblaze - https://www.bhencke.com/pixelb...

        Что то подобное - https://electromage.com/patter...

        • (TiNs1993)
          (TiNs1993) 7 месяцев назад

          Удалось что-нибудь выяснить?

          • (Alvian)
            (Alvian) отредактировано 7 месяцев назад

            Я сам не нашел информации, здесь пока молчат коллеги.

            Насколько понял я, свои добавлять нельзя, можно видоизменять существующие - https://wled.discourse.group/t...

            https://electromage.com/patter... - было бы круто реализовать такой репозиторий эффектов

            Жаль что Pixelblaze проект не открытый...

            Но патерны может создавать любой пользователь

            Функционально, это самая продвинутая система управления диодами с пиксельной адресацией

  2. (MightyPants)
    (MightyPants) 7 месяцев назад

    Большое спасибо за статью! Прям то что надо под Новый год. Планировал сделать гирлянду, и тут готовое решение! 

  3. (klugge)
    (klugge) 7 месяцев назад
    1. Архив не доступен.
    2. Почему блок питания 5V 3A - это много? Контроллер с лентой возьмет столько тока, сколько ему надо.
  4. Антон Киселёв (Whilser)
    Антон Киселёв (Whilser) 7 месяцев назад

    А зачем блок 12В брать и понижайку ставить? Можно же взять блок на 5В - от него и ESPха и лента будет питаться. 

  5. (sanyafifa)
    (sanyafifa) 7 месяцев назад

    Спасибо Дмитрий! 

  6. (way)
    (way) 7 месяцев назад

    К этой прошивке можно любую адресную ленту или адресную гирлянду подключить ?

    • Дмитрий Батюшин (ReD)
      Дмитрий Батюшин (ReD) 7 месяцев назад

      я не пробовал четырехпиновую, а так любая, главное питание правильное подать  

      • Ильмир Гайнутдинов (Gelmer)
        Ильмир Гайнутдинов (Gelmer) 6 месяцев назад

        Проверил на гирлянде WS2801 четырехпиновой, все работает без проблем

        Кстати проверил гирлянду на тоненьких проводах на устойчивость к статическому электричеству. Вывод, очень боится: жена прошла мимо и скакнула искра, два светодиода в середине сдохли. Пришлось выковыривать.

  7. (Memorize)
    (Memorize) 6 месяцев назад
    Добрый день, подскажите как сделать по 1 варианту?
    ввожу led all test проходит компиляция и в конце ничего...

  8. (Memorize)
    (Memorize) 6 месяцев назад

    Может неправильно выразился, как сделать такое устройство не используя raspberry и тп устройства, сдк так и не победил, соноф шьеться по статье https://sprut.ai/client/articl...без проблем,с остальными так и не понял как прошить...

  9. (Memorize)
    (Memorize) 6 месяцев назад

    прописал в vagrant настройки wifi, устройство стало прошиваься и появляться в homekit но теперь не пойму какую прошивку использовать  для ленты(((( и какой gpio задействован....

  10. (Memorize)
    (Memorize) 6 месяцев назад

    победил....пойду разбираться с эффектами.

  11. (Jenyba)
    (Jenyba) 6 месяцев назад

    доброе время суток, возник вопрос в правильном подключении внешнего питания. Собрал схему на nodemcu и герлянде со светодиодами в силикона. Так вот, проблема в чем, подклбчил по вашей схеме, только на прямую от блока +5В, резистор на 200ом, после прошивки лента заработала на все 50 диодов, поклацал ее, понравилась, но после того как отключил от юсб и подклбчил от блока питания, диод синий на плате горит, но герлянда нет(( хотя всё работает, и можно подключиться к плате. 

    если подключиться снова от юсб компьютера, всё работает и герлянда тоже, но если в этот момент подключить и внешнее питание, то герлянда зависает, пока не отключить его

    • (Jenyba)
      (Jenyba) отредактировано 6 месяцев назад

      Отвечу сам себе. По скольку строить схему с 2мя питальниками мне не выгодно, и герлянда должна быть полностью автономная, поставил просто диод на 2А на + с гирлянды(50шт). Имеем просадка 0.6, на работу не сказывается.  

      так же ещё кому вдруг полезно будет, герлянду ws2811 в силиконовых колпочках не работает с напряжением выше 5в при 5.1В начинает сбоить, при 5.4 просто не загорается. По этому лучше использовать на 4.5В, как раз диод в тему.

      • (SponchBob)
        (SponchBob) 6 месяцев назад

        Везёт вам, я вот не могу решить проблему с синим диодом, собирал по второй схеме. И даже от компьютера питание на ленту не идёт. Хотя лента такая же как у автора. Чертовщина какая-то. 

        • (Jenyba)
          (Jenyba) 6 месяцев назад

          Если у вас на ch340, то там на внешку питание не идёт, нужно питать ленту, а с ленты уже модуль. Или сбросьте фото что у вас не получается

  12. (vrn75)
    (vrn75) 6 месяцев назад

    Как в приложении сделать переключение эффектов по очередности?

  13. (raflz)
    (raflz) 6 месяцев назад

    Лента 5В. При подключении по первой схеме идет просадка напряжения до 3,5 в и диод на плате гаснет (платы, я так понял, вырубается). Приходится плату питать отдельно от USB и соединять GND платы и GND ленты, тогда эффекты работают.

    • (Jenyba)
      (Jenyba) отредактировано 6 месяцев назад

      Используйте блок питания мощнее, от 2А. Или проводник большего сечения

      • (raflz)
        (raflz) отредактировано 6 месяцев назад

        БП 2А. Подключал ленту на 30 диодов (тестил). Провод медный, многожильный, каждая жила толщиной чуть меньше чем жила хорошего сетевого кабеля от компа.


        • (Jenyba)
          (Jenyba) 6 месяцев назад

          Попробуйте подключить ленту без платы, есть ли просадка? Если нету, то поставьте диод после платы на ленту. 

  14. (ed13hell)
    (ed13hell) 5 месяцев назад
    Добрый день!
    Повторил ваш проект - работает. СПАСИБО.
    Как осуществить возможность автоматического повторения всех режимов по кругу или в случайном порядке? 

  15. (Egor.M)
    (Egor.M) 5 месяцев назад
    Добрый день, подскажите пожалуйста как реализована поддержка в прошивке WLED системы Philips Hue, т.е. ленту можно будет подключить к их шлюзу после чего прокинуть в Homekit? а так же будет ли работать по технологии эмбилайт если имеется телевизор с данной функцией?
    Заранее спасибо за ответ и несомненно большое спасибо за ваш труд.

    • Дмитрий Батюшин (ReD)
      Дмитрий Батюшин (ReD) 5 месяцев назад

      Тут не совсем поддержка, а просто синхронизация с  Philips Hue

      • (Egor.M)
        (Egor.M) 5 месяцев назад
        Т.е. получается что он сможет только получать информацию цвета и все? а соответственно в саму систему и соответственно в сам хаб Филиппса прокидываться не будет?

  16. (viktor6)
    (viktor6) 5 месяцев назад

    Кто как реализовал смену эффектов?

    Я у себя сделал так. Вроде чтото работает

    Создал сенсоры

    - platform: random name: Random Effect minimum: 0 maximum: 82 - platform: random name: Random palette minimum: 0 maximum: 49

    Создал автоматизацию
    - id: Random_WLED_Effect alias: Random WLED Effect trigger: - platform: time_pattern seconds: /10 action: - data_template: payload: FX={{ states("sensor.random_effect") }} topic: wled/all/api service: mqtt.publish - data_template: payload: FP={{ states("sensor.random_palette") }} topic: wled/all/api service: mqtt.publish

    • (ed13hell)
      (ed13hell) 5 месяцев назад

      Вы могли бы выложить свой скетч с изменениями, 

      очень хотелось бы иметь возможность автоматической смены эффектов.

      Заранее благодарен!



  17. (jkcufa)
    (jkcufa) отредактировано 5 месяцев назад
    Комментарий удален
К списку статей

Устройства в материале

ESP8266 NodeMcu v3

Производитель: Espressif Systems
Заказать на:
JD

Скидки для сообщества

Ноотехника

+375 17 233-25-45
Промокод:
Sprut
Размер скидки:
10%
Действует у всех официальных представителей. Для применение необходимо указать в поле комментария или при звонке менеджеру.

Интернет-магазин yourhomekit.ru

+7 914 550-51-11
Промокод:
SPRUT-BLG
Размер скидки:
8%
Cамый большой ассортимент в России аксессуаров Apple HomeKit

Тематические чаты

Похожие статьи

17 декабря 2019, 17:49
Универсальный привод для автоматического удаленного открытия окон с простой интеграцией в умные дома.
09 ноября 2018, 20:54
Кейс создания умного дома без каких либо прокладок в виде Raspberry pi
04 сентября 2018, 12:14
Интеграция RGB ленты на ESP8266 с прошивкой tasmota в систему HomeBridge (HomeKit)
15 октября 2018, 09:05
Прошивка для Sonoff c нативным HomeKit
02 ноября 2018, 12:14
Кнопка звонка с уведомлениями в HomeKit
15 ноября 2018, 09:42
Способы автоматизации механических ворот
27 октября 2018, 12:20
Нативный Термостат для котла на ESP8266 с поддержкой Apple HomeKit
01 октября 2018, 07:43
Нативный HomeKit на ESP8266
25 сентября 2020, 11:49
Сенсорный монитор для управления умным домом. Настройка и использование.
20 октября 2018, 22:57
Теоретические основы протокола MQTT и описание того, как он работает и для чего используется