Широкоформатная матрица гирлянда на балкон или стену с управлением по wifi

Обновлено: 02.07.2024

Крутая WiFi панель / гирлянда на esp8266 своими руками

Этот проект основан на проекте "Крутая WiFi лампа на esp8266 своими руками" с расширением возможностей работы на неквадратных широких матрицах с размерами от 23x11.
Основное назначение проекта - настенные экраны больших размеров или гирлянды на широкие балконы.
Также подходит с некоторыми ограничениями для матриц с размерами 16x16. Ограничение связаны с невозможностью отображения часов крупным шрифтом 5x7 для которого требуется матрица не менее 23 пикселей по ширине. Для матриц менее 23 колонок шириной в часах может использоваться только шрифт 3x5 для которого достаточно 15 колонок.

  • Проект собран на базе микроконтроллера ESP8266 в лице платы NodeMCU или Wemos D1 mini (неважно, какую из этих плат использовать)
  • Реализована поддержка микроконтроллера ESP32, имеющего больший размер оперативной памяти и быстродействие, что позволяет управлять матрицами с большим количеством светодиодов
  • Матрица может быть реализована на адресной ленте или отдельных светодиодах WS8212b, спаянных в нити гирлянды проводами
  • Также для компактных панелей может использоваться соединение нескольких гибких адресных матриц 16×16, состоящих из 256 диодов с плотностью 100 штук на метр, что позволяет легко получить панели размерами 32х16, 48x16, 64x16 и так далее (до 128 по ширине и/или высоте).
  • Система управляется со смартфона по Wi-Fi в локальной сети или из любой точки мира через MQTT, а также “оффлайн” с кнопки на корпусе (сенсорная кнопка на TTP223 или любая физическая кнопка с нормально разомкнутыми контактами)
  • В случае реализации проекта в виде большой настенной матрицы поддерживается функционал будильника-рассвет и индикация текущего времени на индикаторе TM1637, что позволяет в ночное время полностью выключать саму матрицу, оставляя возможность отображения текущего времени на этом индикаторе
  • Поддерживается загрузка файлов анимации формата *.out программы Glediator с SD-карты.
  • Заливка панели белым или другим выбранным цветом
  • Снегопад
  • Блуждающий кубик
  • Пейнтбол
  • Радуга (горизонтальная, вертикальная, диагональная, вращающаяся)
  • Огонь
  • The Matrix
  • Шарики
  • Конфетти
  • Звездопад
  • Шумовые эффекты с разными цветовыми палитрами
  • Плавная смена цвета заливки панели
  • Светлячки
  • Водоворот
  • Мерцание
  • Северное сияние
  • Циклон
  • Тени (меняющийся теневой рисунок на матрице)
  • Демо-версия игры Тетрис - автоигра без возможности управления
  • Демо-версия игры Лабиринт - автоигра без возможности управления
  • Демо-версия игры Змейка - автоигра без возможности управления
  • Демо-версия игры Арканоид - автоигра без возможности управления
  • Демо-версия игры Эволюция (симулятор жизни) - автоигра без возможности управления
  • Движущийся синус
  • Палитра (лоскутное одеяло)
  • Имитация графического индикатора спектра, движущегося "в такт музыке".
  • Вышиванка
  • Дождь
  • Камин
  • Стрелки
  • Погода (слайдшоу или отображение текущих погодных условия)
  • Отображение анимированных картинок
  • Фоновые узоры (нотки, сердечки, снежинки, зигзаги и т.п.)
  • Анимация с SD карты

Доступны в приложении-компаньоне "WiFiPlayer"

Кнопка управления режимами, последовательность переключения:

Будильник сработал, идет рассвет или мелодия пробуждения

Долгое удержание кнопки

  • При включенной панели - плавное изменение яркости
  • При выключенной панели - включение яркой белой панели освещения (только для сборки типа "Лампа" - DEVICE_TYPE == 0)

Однократное нажатие кнопки

  • Включение / выключение панели. При включении возобновляется режим на котором панель была выключена.

Двухкратное нажатие кнопки

Трехкратное нажатие кнопки

  • Включение демо-режима с автоматической сменой режимов по циклу

Четырехкратное нажатие кнопки

  • Включение яркой белой панели освещения из любого режима, даже если панель была "выключена" /для сборки типа "Лампа"/
    Отображение IP адреса панели на матрице и на индикаторе TM1637, если подключение к локальной WiFi сети установлено /для сборки типа "Панель"/

Пятикратное нажатие кнопки

  • На индикаторе TM1637 и на матрице отображается IP адрес панели, если подключение к локальной WiFi сети установлено /для сборки типа "Лампа"/

ВНИМАНИЕ! Если это твой первый опыт работы с Arduino, читай инструкцию

  • Android - файлы с приложениями, примерами для Android и MIT App Inventor
  • firmware - прошивки
  • libraries - библиотеки проекта.
  • pics - примеры картинок для загрузки / отображении на матрице
  • schemes - схемы подключения компонентов
  • sounds - звуковые файлы будильника для размещения на SD-карте
  • tools - полезные утилиты, Jinx! и другие
  • wiki - файлы раздела wiki-страниц GitHub

Варианты схем с различным набором компонент, для микроконтроллеров ESP8266 - NodeMCU, Wemos d1 mini, ESP32 представлены здесь.

SCHEME

Вариант релизации от Дмитрия (7918514) - схемы, фотографии сборки и готового изделия, печатные платы - все материалы доступны по ссылке в папке "Монстр".

Материалы и компоненты

Ссылки оставлены на магазины

Вам скорее всего пригодится

Как скачать и прошить

На главной странице проекта (где ты читаешь этот текст) вверху справа зелёная кнопка Clone or download, вот её жми, там будет Download ZIP

Подробная инструкция тут

Если проект не собирается (ошибки компиляции) или собирается, но работает неправильно (например вся матрица светится белым и ничего не происходит) - проверьте версии библиотек. Данный проект рассчитан на работу с версиями библиотек поддержки плат ESP версии 2.7.4 и библиотеки FastLED версии 3.2.9 или более новую (до 3.4.0);

Не используйте библиотеку поддержки плат ESP8266 (ядро) версии 3.x.х и ESP32 версии 2.x.x - с ними проект работать не будет ввиду несовместимости с библиотекой FаstLED указанных версий

Если в качестве микроконтроллера вы используете Wemos D1 - в менеджере плат для компиляции все равно выбирайте "NodeMCU v1.0 (ESP-12E)", в противном случае, если выберете плату Wemos D1 (xxxx), - будет работать нестабильно, настройки не будут сохраняться в EEPROM, параметры подключения к локальной сети будут сбрасываться каждый раз при перезагрузке, плата вместо подключения к локальной сети будет каждый раз создавать точку доступа.

About

Универсальная прошивка для широкоформатных матриц / гирлянд на балкон или стену / лампы с эффектами / часов с будильником-рассвет. Управление по WiFi в локальной сети или через MQTT-брокер.


DIY

Ещё один проект разработчика AlexGyver. Матрица с увеличенным расстоянием между светодиодами для наблюдения с большого расстояния. В оригинале, матрица управляется по Bluetooth, но захотелось, чтобы по Wi-Fi. Не только мне этого захотелось, поэтому, всё уже было сделано. Оставалось только воплотить в железе на своём окне.

Описание

Одной ленты достаточно для покрытия одной секции стандартного окна в многоэтажном доме 121-й серии (97-й серии, думаю, тоже). Получается матрица 5х10. Я крепил ленту на большое окно, в котором 3 секции. Соответственно, понадобилось 3 ленты. В результате, как нетрудно догадаться, получилась матрица 15х10, как и в оригинальном проекте.

Комплектующие

Наименование и ссылкаК-воЦенаСумма
1Лента (Transparent wire)38002400
2 Контроллер Wemos D1 mini (D1 MINI)1160160
3Блок питания (5В, EU, 3А)1400400
4Разъём питания 5 мм x 2,1 мм18080
5Резистор 220 Ом111
6Конденсатор 6.3 В, 470 мФ177
7Печатный корпус1152152
ИТОГО3200
Смета

Сборка

На этом, собственно, сборка и окончена. Осталось только закрепить ленту на окне. Крепить можно широким прозрачным скотчем.

С лентой у меня случилась незадача. Поскольку лента крепится зигзагом, то решил, что в местах поворота, из-за жёсткости шлейфа расстояние между светодиодами получится меньше, чем напрямом участке. Соответственно, изображение получится вытянутым по вертикали. Для того, чтобы этого не случилось, отпаивал кусочки шлейфа в критичных местах и припаивал провода подлиннее. Ещё немного ошибся в подсчётах. Не знаю, что это было, но перепаивал несколько раз. И в завершение всего ещё и неправильно приклеил на окно. Заметил это только в самом конце. Переделывать очень не хотелось. Хорошо, что Алекс сделал прошивку универсальной и настраиваемой. Поэтому, ничего не переклеивая, просто поправил параметр отвечающий за ориентацию ленты.

Ну и некоторые соседи интересовались тем, где купили такую вещь и кто-то даже попросил сделать такую же.

Заливка прошивки

Видео с демонстрацией работы

Идеи по доработке

  1. Спроектировать и распечатать корпус для контроллера.
  2. Спроектировать и распечатать съёмное крепление для ленты.
  3. Убрать ненужные эффекты, например, часы.
  4. Убрать игры.
  5. Добавить какие-то свои эффекты.
  6. Упростить приложение.

Favorite

В закладки

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

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

Зачем так рано

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

Лучше всего заказать все и сразу на AliExpress. Компоненты успеют прийти к новогодним праздникам и вы с легкостью повторите данный проект на зависть всем соседям.

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

В этот раз предлагаю модернизировать уже знакомый проект и собрать более крутую гирлянду. Если прошлая версия состояла всего из 100 светодиодов, то новый проект будет содержать минимум 1000 RGB адресных светодиодов! Это позволяет выводить не только более детализированные эффекты, но и демонстрировать GIF-ки, анимацию и даже специально подготовленное видео.

По сути мы превратим окна квартиры или балкона в LEG-панель с небольшим разрешением.

Что нужно заказать для данного проекта



Так выглядела моя посылка с пятьюдесятью кусками диодной ленты

Отлично подойдут ленты с плотностью 30 диодов на метр. Расстояние между ними на ленте составляет примерно 3 см, значит крепить такие ленты на окно лучше всего с шагом 3 см. Так получится равномерная матрица с правильными пропорциями картинки.

Исходя из этих данных рассчитываем необходимое количество лент для заказа. Покупаем самую доступную ленту WS1218B на белой основе с классом влагозащиты IP30.

Более защищенная и дорогая лента нам не нужна, крепить ее мы будем внутри помещения. Метровый кусок такой ленты стоит 100 рублей.

Учитывая большое количество заказываемых лент и всевозможные купоны мы неплохо сэкономим.



Не экономьте на блоке питания, берите с запасом мощности

▸ Чтобы запитать такую матрицу потребуется мощный блок питания. Рассчитать запас мощности можно исходя из приведенной таблицы.


Закладывайте минимум 3A на каждые 100 диодов. При построении матрицы на 1000 диодов выбирайте блок на 5В 30А, а лучше сразу на 40А с запасом.

Такой адаптер питания обойдется от 990 рублей.



Wemos D1 mini и комбинированный модуль времени + кардридер

▸ Для управления матрицей понадобится плата на базе микроконтроллера ESP8266 NodeMCU или Wemos D1 mini. Ни одна модель Arduino такую матрицу не потянет.

▸ Не забывайте про канифоль и олово для пайки – от 270 руб.

Как спаять все компоненты



Тестовая сборка на макетной плате

Данную самоделку будем делать по базовому проекту Алекса Гайвера и дальшейшему развитию данной идеи в виде проекта GyverPanelWiFi от vvip-68.

Изначально разработчики предлагают достаточно сложную схему:



Схема с использованием платы NodeMcu

Однако, все возможности проекта нужны далеко не каждому пользователю. Можете запросто убрать динамик (он используется для будильника), плату с разъемом для карты памяти (она нужна для GIF-ок и видео), дисплей для индикации режимов и кнопку для их ручного переключения.

Если упростить проект, будет достаточно собрать нечто подобное:



Схема с использованием платы Wemos D1 mini

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

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


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

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


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

Как прошить модуль управления


1. Если вы первый раз прошиваете подобные платы, потребуется скачать и установить приложение Arduino IDE на Mac или Windows.

Кроме этого могут потребоваться библиотеки Java Runtime Environment и драйвера для плат.


2. Подключаем прошиваемую плату к компьютеру и запускаем Arduino IDE.

3. В меню Инструменты – Плата выбираем тип используемой платы.

4. В меню Инструменты – Процессор выбираем тип процессора на плате. Проверяется методом перебора.

5. В меню Инструменты – Порт выбираем USB порт с подключенной платой.


7. В папке firmware находим последнюю версию прошивки GyverPanelWiFi и открываем в приложении Arduino IDE.

8. Из папки libraries с проектом импортируем все необходимые библиотеки через меню Скетч – Подключить библиотеку – Добавить .ZIP Библиотеку….


9. На вкладке a_def_hard.h настраиваем основные параметры подключаемой ленты (матрицы). Ее размер, способ подключения и угол подачи логического сигнала.


При желании можно пробежаться по другим вкладкам проекта и настроить эффекты под себя.

10. Загружаем проект на подключенную плату и устанавливаем ее в готовую сборку.

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

Синхронизация времени и получение прогноза погоды будет возможно при использовании убавляющий платы с Wi-Fi.

При использовании модуля с подключаемой картой памяти получится конвертировать и выводить на нашу матрицу GIF-ки и даже видео в соответствующем разрешении.

В результате соберете нечто подобное:

Останется лишь закрепить самоделку на окно и радовать всех проходящих соседей.

(21 голосов, общий рейтинг: 4.67 из 5)

Favorite

В закладки

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


Рассмотрю два варианта — отдельно без существующей домашней автоматизации и работу в связке с “умным домом”.

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

Остановил свой выбор на двух недорогих вариантах из Китая:



Адресные пиксели в офисном интерьере

В обоих случаях для питания моих лент требуется 5 вольт. По мощности я не считал, а установил имеющийся и доступный по цене существующий блок питания Mean Well RS-150-5.


Блок питания Mean Well RS-150-5

И самая важная часть для управления новогодней программой — контроллер. Я выбрал микроконтроллер ESP8266 китайского производителя Espressif Systems, то есть в моем случае использовал недорогую плату LOLIN (WEMOS) D1 mini.



LOLIN (WEMOS) D1 mini в термоусадке, подключенный к ленте на ёлке

Hardware

По лентам и гирляндам очень широкий выбор — есть большое число разных чипсетов и надо смотреть чтобы контроллер поддерживал ленты, которые собираетесь покупать.
Моей задачей было использовать адресные пиксельные ленты в составе автоматизации на базе open-source платформы Home Assistant. Самый доступный для этого вариант — использовать ESP8266. Существует большая база совместимых контроллеров заводского изготовления (раздел LED Controller), составленная авторами прошивки Tasmota.
На мой взгляд Tasmota хорошая прошивка, но для управляемых пикселей и шаговых двигателей не очень подходит.



LOLIN (WEMOS) D1 mini, подключенный к гирлянде

Software

Вариант без домашней автоматизации

Если хотите быстрый старт “без регистрации и смс”, то самое разумное решение это прошивка ESP8266 проектом WLED (WiFi Lighting Effects Driver). У прошивки есть собственное приложение которое позволяет легко управлять светодиодами, а также огромный список предустановленных эффектов для адресных лент и гирлянд. Также WLED поддерживает множество протоколов управления, в том числе и MQTT , если в этом есть необходимость.
Пайка для подключения ленты к WEMOS не требуется.



Интерфейс WLED (WiFi Lighting Effects Driver)

Адресная иллюминация в составе умного дома на базе Home Assistant

Надо заметить, что у WLED совсем недавно (в декабре 2019 года) появилась полноценная интеграция для Home Assistant.
Но, поскольку я занимался гирляндами еще в ноябре, до появления этой интеграции, связь Home Assistant <--> WLED по MQTT мне показалась глючной.



Панель управления ESPHome

Для Home Assistant существует нативная прошивка ESPHome, которая работает с Home Assistant без MQTT и она также поддерживает адресные светодиоды.

SPI:
APA102
DOTSTAR
LPD8806
P9813
SK9822
SM16716
WS2801
WS2803

Поскольку я использую образ Hass.io, то для компиляции прошивок использовал самый простой для этого вариант — дополнение ESPHome Hass.io Add-On.



Окно редактора прошивки ESPHome

Получившиеся прошивки гирлянды и ленты:

После добавления получившихся устройств в Home Assistant в интерфейсе можно видеть и задавать варианты эффектов.



Интерфейс Home Assistant

Также эффекты можно использовать и в автоматизациях. Например при открытии двери 30 секунд один эффект, 10 секунд другой эффект, а потом выключение, чтобы не отвлекал. Но есть условие: включение только когда на улице уже полумрак.



Ёлка с адресной светодиодной лентой

Как можно увидеть при некоторой сноровке можно недорого организовать новогоднее освещение и вписать его в существующую систему “умного дома” или использовать отдельно без домашней автоматизации, используя отдельное приложение на смартфоне.

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

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

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

А пару лет назад (2016 год) я случайно наткнулся на статью про "ещё одну светодиодную DIY-гирлянду для начинающих" на базе UCS1903. Меня сразу же заинтересовала эта тема, ведь мы получаем добротное качество (а по сравнению с одноразовыми китайскими гирляндами – так и вообще, я бы сказал, революционное), безопасность (гирлянда питается от низковольтного источника питания, с гальванической развязкой от сети), да и хватит такой гирлянды не на один сезон. Про возможности в плане визуальных эффектов тут и говорить нечего, они фактически бесконечны. Неплохое комьюнити - можно найти кучу готовых вариантов эффектов, а можно поразмять мозг и сделать свои эффекты самому.

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

Поскреб по сусекам, нашел ардуинку нано. Когда лента наконец приехала, в тот же вечер все соединил и залил скетч из статьи… Да, смотрится обалденно! Цвета насыщенные, яркие. Одно загляденье.

Это все здорово. Но хочется все-таки иметь возможность как-то это настраивать, пробовать различные эффекты. На то время уже было достаточно годной информации по данной теме - скетчи, различные эффекты разной степени сложности. Решил изучать работу с библиотекой FastLED с нуля. Вообще, есть 2 популярных библиотеки работы с умными светодиодами – это NeoPixel от Adafruit и FastLED (ранее FastSPI LED). Почему я остановился на FastLED – да просто потому, что она мне первой подвернулась под руку, так как использовалась в той самой статье. Ну и еще FastLED мне показалась на тот момент более удобной для быстрого освоения (дело вкуса) и с чуть большим функционалом (опять же, навскидку). Для начала условился, что сделаю простой контроллер с кнопкой и одним потенциометром – набросаю пару эффектов для переключения кнопкой и яркость регулировать буду потенциометром. Сделано. Запилил парочку плавных эффектов радуги, смены цветов по кругу, добавил статических. Но все не то. Нужно бы еще как-то скорость регулировать. Впилил еще один потенциометр. Вот – теперь другое дело, хочешь быструю радугу, хочешь медленную. Завязал на второй регулятор выбор цвета в режиме статического освещения – уже интереснее. Добавил возможность запоминания эффекта в памяти ардуинки по долгому удержанию кнопки – чтоб при включении воспроизводился любимый эффект. 50 диодов оказалось мало, и я успел дозаказать еще одну такую гирлянду до праздников. В общем в таком виде этот контроллер и встретил новый год.

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

В своих контроллерах я еще ставлю электролитический конденсатор параллельно питанию. Однако это скорее правило хорошего тона, на этапе отладки я конденсатор не использовал, все работало стабильно. (Также в некоторых случаях может понадобится преобразователь уровней 3.3->5 вольт ТТЛ, так как чипы в гирлянде работают с пятивольтовыми уровнями ТТЛ, а ESP8266 – оперирует 3.3в-уровнями. Но если не питать гирлянду напряжением выше 5,1 вольт, все работает без дополнительного согласователя, проверено). Питаю контроллеры от адаптеров для мобильных телефонов/планшетов. Просто припаиваю провод с USB-A на конце. Это удобно, так как можно питать гирлянду хоть от power bank, хоть от чего-то еще. Здесь важно понимать, что гирлянда может быть прожорливой, нужен качественный блок питания. В своих прошивках я ограничиваю максимально возможную яркость каждого светодиода так, чтобы вся гирлянда потребляла не более 2 ампер в режиме, когда все диоды светятся белым (самый неблагоприятный в плане потребления тока режим).

В общем, вот что имеется на данный момент:

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

Эффекты с читаемыми названиями выбираются из выпадающего списка и сразу же применяются.

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

Предустановки (яркость, скорость, эффект) можно сохранять в энергонезависимую память. При включении эти предустановки загружаются автоматически, и гирлянда начинает работу. Поскольку я планировал изготовить несколько таких гирлянд в качестве подарков, было необходимо максимально упростить процедуру первоначальной настройки контроллера для конечного юзера – а именно привязки девайса к домашней WiFi сети. В общем я реализовал это следующим образом: когда контроллер запускается, если он не смог подключиться к известной сети, он переходит в режим точки доступа. В принципе, этого уже достаточно чтобы им управлять, просто выбираем на смартфоне сеть NY_LED_XXXXXX и подключаемся к ней.

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

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

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

И снова об умных (и не только) гирляндах… Esp8266, Гирлянда, Новый Год, Интернет вещей, Ws2811, Чип, Neopixel, Fastled, Видео, Длиннопост

Небольшое видео демонстрации встроенных эффектов:

Контроллер умеет работать с диодами WS2811, WS2801, WS2812B, WS2813, UCS1903. Количество – лично я больше 150 не пробовал. Тип диодов и количество задается в исходном коде константами. На данный момент в FastLED не поддерживает задание этих параметров в рантайме, что означает необходимость пересобирать прошивку под различное кол-во и типы лент.

Ранее я уже начинал реализовывать спектроанализатор-цветомузыку с использованием микрофона смартфона. В дальнейших планах все-таки довести до ума этот функционал. А также добавить еще интересных эффектов. Было бы прикольно придумать свой формат интерпретатора эффектов из, например, текстовых файлов или JSON, чтобы не лезть в исходники контроллера каждый раз, когда захочется добавить новый эффект. А еще можно прикрутить калибровку (привязку) диодов по координатам, в том числе с помощью камеры (как это сделано у Twinkly от Ledworks). Но это все требует времени, которое не всегда у меня есть, поэтому пока это только планы.

Также вы без труда сможете нагуглить кучу альтернативных реализаций подобных гирлянд и матриц (сеток) от разных авторов, и попробовать их в деле.

Читайте также: