- RGB СВЕТОДИОДНЫЙ КОНТРОЛЛЕР
- Описание системы
- Железо
- Софтовые фишки
- Описание режимов и настроек
- Управление
- Подсветка лестницы. Задания на доработку проекта
- noemotion1992
- Старик Похабыч
- noemotion1992
- Старик Похабыч
- noemotion1992
- Старик Похабыч
- noemotion1992
- Azalis
- bort707
- Azalis
- bort707
- vitya2009
- Старик Похабыч
- vitya2009
- Старик Похабыч
- vitya2009
- bort707
- ОГНЕННАЯ WIFI ЛАМПА
- КУПИТЬ ЛАМПУ
- GyverLamp v1 (Giant4)
- GyverLamp v2 (Giant4)
- Aliexpress
- ВИДЕО ПО ПРОЕКТУ
- НОВОСТИ ПРОЕКТА
- МАТЕРИАЛЫ И КОМПОНЕНТЫ
- СПИСОК КОМПОНЕНТОВ (ССЫЛКИ)
- СХЕМЫ, ПЕЧАТНЫЕ ПЛАТЫ
- ПРОШИВКИ И ИНСТРУКЦИИ
- Прошивка от AlexGyver v1.2-1.4 (УСТАРЕЛА)
- ВЕРСИЯ УСТАРЕЛА, СМОТРИТЕ V1.5+
- Конфигурация прошивки
- Настройка Wi-Fi
- Работа с приложением
- Управление кнопкой
- Прошивка от AlexGyver v1.5 и выше
- Общая информация
- Конфигурация прошивки
- Настройка Wi-Fi
- Как узнать IP лампы?
- Сброс настроек WiFi
- Работа с приложением
- Управление кнопкой
- Прошивка от gunner47 (+ новое приложение)
- Общая информация
- Настройки
- Основные изменения
- Приложение
RGB СВЕТОДИОДНЫЙ КОНТРОЛЛЕР
Описание системы
Захотелось мне сделать RGB свет для видео из китайских компонентов. RGB – значит нужен ШИМ контроллер, значит нужно его сделать! Вот и сделал: GyverRGB – контроллер для RGB светодиодных лент со множеством режимов и настроек, модульной структурой и различными способами управления.
Железо
Используется обыкновенная RGB светодиодная лента с общим анодом (контакты 12V G R B). Я использовал два ряда ленты с плотностью 120 диодов на метр, чтобы иметь хороший запас по яркости даже на одном цвете.
В проекте используется Arduino NANO (микроконтроллер ATmega328p). В качестве 100% совместимого аналога можно использовать Arduino UNO/Pro Mini.
Я рассматривал два варианта драйвера для светодиодной ленты: китайский RGB LED amplifier и самодельный драйвер из трёх МОСФЕТ (полевых) транзисторов. LED amplifier очень удобен в подключении, но имеет жуткий недостаток: на высоких частотах у него поднимается нижний порог яркости, что приводит к трате оттенков и вообще некорректной работе режимов.
Вывод: если контроллер не планируется использовать для видео света, то можно поставить LED amplifier и в настройках контроллера поставить низкую частоту (490 Гц), глаз такую частоту не заметит, но снятое на камеру видео будет «стробить». Если планируется использовать контроллер для создания видео света, то в обязательном порядке нужно делать свой драйвер. Также свой драйвер позволит работать с большими отрезками ленты, т.к. транзисторы можно поставить очень мощные.
Полевой транзистор подойдёт практически любой (99%), наковырять можно из материнской платы. Список популярных МОСФЕТов в корпусе to-220: IRF3205, IRF3704ZPBF, IRLB8743PBF, IRL2203NPBF, IRLB8748PBF, IRL8113PBF, IRL3803PBF, IRLB3813PBF (в порядке роста стоимости). Список популярных МОСФЕТов в корпусе D-pak: STD17NF03LT4, IRLR024NPBF, IRLR024NPBF, IRLR8726PBF, IRFR1205PBF, IRFR4105PBF, IRLR7807ZPBF, IRFR024NPBF, IRLR7821TRPBF, STD60N3LH5, IRLR3103TRPBF, IRLR8113TRPBF, IRLR8256PBF, IRLR2905ZPBF, IRLR2905PBF (в порядке роста стоимости).
Управление контроллером предусмотрено тремя способами:
- Энкодер – китайский модуль в двух вариантах
- ИК пульт – продаётся вместе с приёмником-модулем, но удобнее монтировать отдельный приёмник
- Кнопка – обычная нормально-разомкнутая тактовая кнопка
- Bluetooth – управление с приложения GyverRGB для Android
Питается система от 12V, от блока питания или батареи из трёх литиевых аккумуляторов. При питании от аккумуляторов предусмотрен «вольтметр» – делитель напряжения на резисторах, позволяющий измерить напряжение на батарее для вывода его на дисплей.
Софтовые фишки
- Автоматическое отключение дисплея по таймауту неактивности
- Несколько вариантов частоты ШИМ для драйвера:
- 490 Гц – для дешёвых LED усилителей
- 8 кГц – слышно, как пищит
- 4 кГц – работает только на самодельном драйвере
- Настраиваемая до герца
- Настраиваемое направление работы ШИМ (для готовых и самодельных усилителей)
- Автоматическое ограничение тока потребления на основе количества светодиодов и яркости каналов цвета
- Вывод напряжения питания на дисплей в вольтах или процентах
- Режим поддержания яркости при разрядке аккумулятора (при полном заряде чуть занижает яркость)
- Коррекция яркости по CRT гамме
- Матрица коррекции LUT
- 10 настраиваемых профилей
- 11 настраиваемых режимов работы для каждого профиля, из них 5 статических и 6 динамических
- Настройки хранятся в EEPROM и не сбрасываются при перезагрузке
Описание режимов и настроек
- RGB– цвет в пространстве RGB
-
- BR – яркость (0-255)
- R – красный (0-255)
- G – зелёный (0-255)
- B – синий (0-255)
- HSV– цвет в пространстве HSV
-
- HUE – цвет (0-255)
- SAT – насыщенность (0-255)
- VAL – яркость (0-255)
- Color– яркий цвет
-
- BR – яркость (0-255)
- COL – номер цвета (0-1530)
- ColorSet– предустановленные цвета
-
- BR – яркость (0-255)
- COL – цвет
- WHITE
- SILVER
- GRAY
- BLACK
- RED
- MAROON
- YELLOW
- OLIVE
- LIME
- GREEN
- AQUA
- TEAL
- BLUE
- NAVY
- PINK
- PURPLE
- Kelvin– установка цветовой температуры
-
- BR – яркость (0-255)
- TEMP – цветовая температура, К (1000-10000)
- ColorW– плавная смена цвета
-
- BR – яркость (0-255)
- SPD – скорость (0-1000)
- STP – шаг (0-500)
- Fire– стандартный огонь
-
- BR – яркость (0-255)
- SPD – скорость (0-1000)
- STP – шаг (0-500)
- FireM– ручной огонь
-
- BR – макс. яркость (0-255)
- COL – цвет (0-255)
- SPD – скорость (0-1000)
- MIN – мин. яркость (0-255)
- Strobe– стробоскоп
-
- HUE – цвет (0-255)
- SAT – насыщенность (0-255)
- VAL – яркость (0-255)
- SPD – скорость (0-1000)
- StrobeR– стробоскоп со случайным периодом
-
- HUE – цвет (0-255)
- SAT – насыщенность (0-255)
- VAL – яркость (0-255)
- SPD – скорость (0-1000)
- Police– мигалки
-
- BR – яркость (0-255)
- SPD – скорость (0-1000)
Управление
Энкодер
- Кнопка удержана около секунды – вкл/выкл светодиоды
- Кнопка клик – навигация: выбор профиля -> выбор режима -> выбор настройки
- Смена профиля – поворот рукоятки
- Смена режима – поворот рукоятки
- Смена настройки – поворот рукоятки
- Выбор настройки – нажатие, удержание и поворот рукоятки
ИК пульт
- Кнопки 0–9 – быстрый переход к профилю с номером
- Кнопки * и # – вкл и выкл систему
- Кнопка ОК – навигация: профиль -> режим -> настройка
- Кнопки вправо/влево – смена профиля/меню/настройки
- Кнопки вверх/вниз – изменение выбранной настройки
Bluetooth
Загрузить приложение GyverRGB (для Android) и наслаждаться!
Кнопка (с версии 1.2)
- Клик: включить/выключить ленту
- Двойной клик: следующий пресет
- Тройной клик: предыдущий пресет
- Удержание: смена яркости
Кнопка вариант 2 (с версии 1.3)
- Клик: включить/выключить ленту
- Двойной клик: следующий цвет (12 цветов по кругу Иттена)
- Тройной клик: предыдущий цвет
- Удержание: смена яркости
Источник
Подсветка лестницы. Задания на доработку проекта
noemotion1992
Старик Похабыч
noemotion1992
Старик Похабыч
М. указывать надо число чипов, а не светодиодов.
Просто в основном работают с ленто 2812, где одному чипу соотв. 1 светодиод, и они виднее, отсюда пошла тема говорить про светодиоды.
noemotion1992
М. указывать надо число чипов, а не светодиодов.
Просто в основном работают с ленто 2812, где одному чипу соотв. 1 светодиод, и они виднее, отсюда пошла тема говорить про светодиоды.
Точно я дурак. Большое спасибо. Теперь работает гуд. Позже выложу видео как работает. Ещё раз большое спасибо .
И последний вопрос. Как можно выключить совсем бегающие зелёные огоньки.?
Старик Похабыч
Удалить вот этот кусок кода:
if (goDuty)
<
stairs_duty_fire();
ignor_bottom = false;
ignor_top = false;
>
ну или перед ним сделать
goDuty=false;
хотя нет! просто закомментируйте сроку
stairs_duty_fire();
noemotion1992
Удалить вот этот кусок кода:
if (goDuty)
<
stairs_duty_fire();
ignor_bottom = false;
ignor_top = false;
>
ну или перед ним сделать
goDuty=false;
хотя нет! просто закомментируйте сроку
stairs_duty_fire();
Azalis
Подскажите, какое значение поставить вместо colorCounter для белого цвета?
И да, уже много просьб было реализовать плавное зажигание/угасание ступенек. Сделайте пожалуйста.
bort707
Azalis
bort707
vitya2009
Старик Похабыч
vitya2009
Старик Похабыч
Извините, я исходными проектами не пользуюсь, я все с нуля пишу, ну или почти с нуля, поэтому мне трудно понять что там в них есть. Человек попросил конкретный эффект. На самом деле движок там позволяет лепить все что угодно, отрисовка идет с заданной частотой независимо от других параметров, 50 раз в секунду.
Хотите прсто зажечь по другому в дежурном режиме — есть функция stairs_duty_fire где оно отрабатывается .
vitya2009
Извините, я исходными проектами не пользуюсь, я все с нуля пишу, ну или почти с нуля, поэтому мне трудно понять что там в них есть. Человек попросил конкретный эффект. На самом деле движок там позволяет лепить все что угодно, отрисовка идет с заданной частотой независимо от других параметров, 50 раз в секунду.
Хотите прсто зажечь по другому в дежурном режиме — есть функция stairs_duty_fire где оно отрабатывается .
bort707
Витя, судя по тому, что вы спрашиваете — сами вы не особо в программировании, я не прав?
Тогда как вы предлагаете вам это «подсказать» ?
Хочу напомнить — это коммерческий раздел, задания на доработку проектов тут выполняют на платной основе.
Источник
ОГНЕННАЯ WIFI ЛАМПА
Представляю вашему вниманию светильник на адресных светодиодах с кучей эффектов, управлением по Wi-Fi с мобильного приложения, открытым исходным кодом и функцией будильник-рассвет!
- Проект собран на базе микроконтроллера ESP8266 в лице платы NodeMCU или Wemos D1 mini
- Вместо адресной ленты используется гибкая адресная матрица 16×16, что выходит дешевле ленты
- Система управляется со смартфона по Wi-Fi, а также “оффлайн” с кнопки на корпусе (сенсорная кнопка на TTP223).
- Для прошивки от AlexGyver используется приложение GyverLamp для Android и GyLamp для iOS
- Для прошивки от gunner47 используется приложение Led Lamp (.apk) для Android и Arduino Lamp для iOS
- 14 крутых эффектов с настройкой каждого
- Настройка скорости, яркости и “масштаба” для каждого эффекта
- Работа системы как в локальной сети роутера, так и в режиме “точки доступа”
- Встроенный Wi-Fi менеджер для удобной настройки сети
- Точное время из Интернета
- Управление кнопкой: смена режима, настройка яркости, вкл/выкл
- Режим будильник-рассвет: менеджер будильников на неделю в приложении
- Куча разных прошивок и приложений от подписчиков! Эффекты, режимы, интеграция и прочее, читай ниже.
КУПИТЬ ЛАМПУ
В настоящий момент несколько магазинов предлагают купить набор для сборки GyverLamp, из них официально поддерживаемым мной является российский магазин Giant4. Купленные железки нужно собрать по схеме (смотри ниже) и загрузить одну из прошивок по инструкциям ниже.
GyverLamp v1 (Giant4)
GyverLamp v2 (Giant4)
Aliexpress
ВИДЕО ПО ПРОЕКТУ
НОВОСТИ ПРОЕКТА
• ВНИМАНИЕ. Архив проекта обновлён, библиотека FastLED обновлена до версии 3.2.9. Данная версия поддерживает ядро esp версии 2.5.2. Так что ставим ядро для esp версии 2.5.2, свою версию FastLED удаляем и ставим новую FastLED 3.2.9 из архива проекта!
• 14.11.19 Версия 1.5.5:
– Поправлены глюки во время рассвета
Для WEMOS выбираем плату LOLIN(WEMOS) D1 R2 & mini
Для NodeMCU выбираем NodeMCU 1.0 (ESP-12E Module)
• Добавлено приложение под iPhone! (читай ниже)
• Добавлена прошивка от Whilser (читай ниже)
• Добавлена прошивка + приложение от gunner47 (читай ниже)
• Добавлена прошивка + вебморда от lakec (читай ниже)
• Добавлены корпуса под 3D печать (читай ниже)
• 13.04.2020 ДОБАВЛЕНО ЕЩЁ НЕСКОЛЬКО ПРОШИВОК
МАТЕРИАЛЫ И КОМПОНЕНТЫ
Ссылки на магазины, с которых я закупаюсь уже не один год
Вам скорее всего пригодится:
СПИСОК КОМПОНЕНТОВ (ССЫЛКИ)
NodeMCU или Wemos mini? Абсолютно не имеет значения, платы одинаковые. Отличаются по размеру и цене.
- Wemos D1 mini – искать
- https://ali.ski/aKZs9
- https://ali.ski/uPoqu
- https://ali.ski/-VjNuh
- https://ali.ski/Avqtk
- Giant4 (Россия)
- NodeMCU – искать
- https://ali.ski/yDIl0Z
- https://ali.ski/UTwAyZ
- Матрица 16×16 – искать
- Giant4
- https://ali.ski/pOMcck
- https://ali.ski/nSJCP
- https://ali.ski/hI6tov
- https://ali.ski/ZSliU7
- Матрица 8×8 купить в РФ
- Адресная лента (для DIY матрицы)
- https://ali.ski/crrqi1
- https://ali.ski/2I3be
- Купить в РФ, 60 свет/метр, 30 свет/метр
- Black PCB / White PCB – цвет подложки ленты, чёрная / белая. В видео была чёрная
- 1m/5m – длина ленты в метрах (чтобы заказать 2 метра, берите два заказа 1m, очевидно)
- 30/60/74/96/100/144 – количество светодиодов на 1 метр ленты. В видео использовалась лента 60 диодов на метр
- IP30 лента без влагозащиты (как на видео)
- IP65 лента покрыта силиконом
- IP67 лента полностью в силиконовом коробе
- Постфикс ECO – лента чуть более низкого качества, меньше меди, на длинной ленте будет сильно проседать яркость
- Штекер 5521 для новой схемы
- https://ali.ski/8R5F_
- Сенсорная кнопка – искать
- http://ali.ski/aWQBAa
- http://ali.ski/rsOrSB
- БП 5V искать (минимум 3A на каждые 100 LED)
- https://ali.ski/DItEG
- https://ali.ski/t3YFfU
- Мощные https://ali.ski/7Jg69
- Мощные https://ali.ski/NGDrjQ
- БП 3А (Купить в РФ)
- БП 12А (купить в РФ)
- БП 20А (купить в РФ)
- Проводочки – искать
- http://ali.ski/_SuCF
- Сантех
- Труба D50 длина 250
- Труба D40 короткая
- Заглушка D40
- Плафон, как в видео и похожие. Названия магазинов кликабельные
- Леруа Мерлен
- 33ideas плафон как в Леруа (доставка по РФ)
- Мегастрой
- Мегастрой ещё вариант
- Brille (Украинский магазин)
- Brille ещё вариант
- Леонардо
- ИКЕА + крышка под печать скачать с ЯД
- Luxen (Беларусь)
- Плафон НАСТЕННЫЙ
- Леруя белый
- Леруя чёрный
- ЧиД
- ЭЛЕТЕХ
- Всеинструменты
- Wildberries
- Искать как Светильник “Цилиндр 1” НБУ 06-60-02 опал
Плафоны и прочее для ЭПИЧНОЙ версии лампы
- БП 5V 10A – другой может не уместиться в трубе! Я брал этот https://ali.ski/RMBhVV
- Труба Леруа
- Абажур Леруа
- Стойка Леруа
- Светильник Хольмэ ИКЕА
- Миска с крышкой OZON
СХЕМЫ, ПЕЧАТНЫЕ ПЛАТЫ
Схема с NodeMCU
Схема с Wemos mini
Если вы не ставите кнопку – отключите её в прошивке! Это самая первая настройка. Если вместо матрицы используется лента – нужно ставить резистор как в гайде, на матрице резистор уже припаян.
ПРОШИВКИ И ИНСТРУКЦИИ
Здесь собрано краткое описание и инструкции к прошивкам от разных авторов из нашего сообщества. На данный момент самой прогрессивной прошивкой является версия от gunner47, основанная на версии 1.4 от AlexGyver. Там очень много всего улучшено, доработано и добавлено, для управления используется отдельное приложение под iOS и Android (см. ниже).
- Для прошивки от AlexGyver используется приложение GyverLamp для Android и GyLamp для iOS
- Для прошивки от gunner47 используется приложение Led Lamp (.apk) для Android и Arduino Lamp для iOS
- К остальным прошивкам смотри описание ниже
Прошивка от AlexGyver v1.2-1.4 (УСТАРЕЛА)
ВЕРСИЯ УСТАРЕЛА, СМОТРИТЕ V1.5+
Конфигурация прошивки
Перед загрузкой прошивки нужно настроить под себя некоторые моменты:
- DAWN_BRIGHT – яркость рассвета в максимальной точке (перед отключением)
- DAWN_TIMEOUT – время в минутах, которое рассвет будет жарить на максимум после указанного времени будильника
- GMT – смещение по часовому поясу
- ESP_MODE – режим работы WiFI системы (читай ниже)
Если вы используете не матрицу, а спираль из ленты, то нужно настроить под себя параметры матрицы:
- WIDTH – ширина матрицы, она же количество светодиодов в одном витке спирали
- HEIGHT – высота матрицы, она же количество витков спирали
- MATRIX_TYPE – тип матрицы. Гибкая матрица 16×16 имеет тип 0, спиральная матрица из ленты – тип 1
- Полный гайд по матрицам есть тут: https://alexgyver.ru/matrix_guide/
Настройка Wi-Fi
- Перед подключением к ПК обязательно подключать внешнее питание!
- В прошивке версии 1.2 и выше можно задать статический IP адрес лампы! Искать адрес, как показано в видео, не нужно
- Для режима работы “Точка доступа“:
- ВНИМАНИЕ! В этом режиме система не подключается в Интернету и не получает текущее время, т.е. режим будильника не работает!
- В прошивке настройка ESP_MODE 0
- Чуть ниже IP_AP[] = <192, 168, 4, 66>; – статический IP лампы для подключения
- Загрузить прошивку по инструкции ниже
- После загрузки прошивки открыть монитор порта, перезагрузить систему кнопкой Reset на плате, ожидать вывод информации в порт, там будет указан IP лампы для связи по UDP
- Подключиться со смартфона к лампе по WiFi, название точки AP_SSID (по умолч. GyverLamp), пароль AP_PASS (по умолч. 12345678)
- Открыть приложение, в настройках указать IP , подсмотренный два пункта ранее
- Для режима работы “Локальная сеть“:
- В прошивке ESP_MODE 1
- Чуть ниже IP_STA[] = <192, 168, 1, 66>; – статический IP лампы для подключения
- Загрузить прошивку по инструкции ниже
- Подключиться к точке доступа с именем AC_SSID (по умолч. AutoConnectAP), пароль AC_PASS (по умолч. 12345678)
- Должно автоматически открыться окно конфигурации точки доступа
- Если не открылось: открыть монитор порта в Arduino IDE, перезагрузить плату, узнать IP точки доступа, открыть на смартфоне браузер, в строку адреса вписать полученный IP адрес, перейти. Должна открыться страница конфигурации WiFi Manager
- Нажать Configure, откроется список точек доступа. Выбрать свой роутер, указать пароль
- Перезагрузить плату, смотреть в монитор порта, узнать локальный IP лампы
- Открыть приложение, в настройках указать IP
- Всё должно работать!
Работа с приложением
- Приложение есть под Android, скачать можно с PlayMarket’a, вот ссылочка
- Также появилось приложение для iOS, ссылочка вот
- В приложении можно настроить параметры текущего эффекта или сменить эффект на другой. После смены эффекта или изменения его параметров настройки сохраняются в энергонезависимую память через 30 секунд. При смене эффекта настройки сразу же сохраняются.
- В приложении можно настроить 7 будильников на каждый день недели. При открытии окна будильников текущие параметры будильников подгружаются из лампы. После изменения состояния будильника или его времени настройки сразу же сохраняются в энергонезависимую память, т.е. лампе не страшна перезагрузка.
- Логика работы рассвета такая: свет плавно включается за указанное время до будильника, разгорается до максимума ко времени будильника, и горит так ещё DAWN_TIMEOUT минут, затем отключается. Прервать рассвет можно кликом по кнопке на корпусе.
Управление кнопкой
- Одиночный клик: выкл/выкл свет, также выключение рассвета
- Двойной клик: смена режима
- Тройной клик: смена режима назад
- Удержание: смена яркости
Прошивка от AlexGyver v1.5 и выше
Общая информация
“Официальная” прошивка проекта, описание возможностей есть в самом начале этой страницы
Версия 1.5
- Исправлено непереключение кнопкой с первого на последний режимы
- Добавлена настройка для отключения кнопки (для корректной работы схемы без кнопки)
- Убран статический IP для локального режима (вызывал проблемы)
- Добавлена возможность сброса настроек WiFi удержанием кнопки при включении лампы (
7 секунд)
Версия 1.5.1
- Оптимизировано обращение к серверу времени (нет подвисаний при отсутствии интернета)
- Оптимизация под пины NodeMCU
- ВНИМАНИЕ! Изменения в выборе платы (Инструменты/Плата) для загрузки прошивки!
- Для WEMOS выбираем платуLOLIN(WEMOS) D1 R2 & mini
- Для NodeMCU выбираемNodeMCU 1.0 (ESP-12E Module)
Версия 1.5.2
- Исправлен незначительный баг с таймером
- Исправлено падение по WDT при выводе IP
- Исправлен баг с переназначением времени будильника
- Исправлено переключение с первого на последний режимы
- Приложение автоматически получает настройки с кнопки
- Бегущая строка с текущим временем во время рассвета
Версия 1.5.3
- Увеличена плавность рассвета
- Поправлен баг с отображением времени рассвета
Версия 1.5.4:
- Поправлены глюки во время рассвета
Версия 1.5.5:
- Поправлены ещё глюки во время рассвета
Конфигурация прошивки
Перед загрузкой прошивки нужно настроить под себя некоторые моменты:
- DAWN_BRIGHT – яркость рассвета в максимальной точке (перед отключением)
- DAWN_TIMEOUT – время в минутах, которое рассвет будет жарить на максимум после указанного времени будильника
- GMT – смещение по часовому поясу
- ESP_MODE – режим работы WiFI системы (читай ниже)
Если вы используете не матрицу, а спираль из ленты, то нужно настроить под себя параметры матрицы:
- WIDTH – ширина матрицы, она же количество светодиодов в одном витке спирали
- HEIGHT – высота матрицы, она же количество витков спирали
- MATRIX_TYPE – тип матрицы. Гибкая матрица 16×16 имеет тип 0, спиральная матрица из ленты – тип 1
- Полный гайд по матрицам есть тут: https://alexgyver.ru/matrix_guide/
Настройка Wi-Fi
- Перед подключением к ПК обязательно подключать внешнее питание!
- В прошивке версии 1.5 и выше статический IP задать нельзя! Вы можете присвоить лампе IP по её MAC адресу в настройках роутера.
- Для режима работы “Точка доступа“:
- ВНИМАНИЕ! В этом режиме система не подключается в Интернету и не получает текущее время, т.е. режим будильника не работает!
- В прошивке настройка ESP_MODE 0
- Чуть ниже IP_AP[] = <192, 168, 4, 66>; – статический IP лампы для подключения
- Загрузить прошивку по инструкции ниже
- Подключиться со смартфона к лампе по WiFi, название точки AP_SSID (по умолч. GyverLamp), пароль AP_PASS (по умолч. 12345678)
- Открыть приложение, в настройках указать IP, пользоваться
- Для режима работы “Локальная сеть“:
- В прошивке ESP_MODE 1
- Загрузить прошивку по инструкции ниже
- Подключиться к точке доступа с именем AC_SSID (по умолч. AutoConnectAP), пароль AC_PASS (по умолч. 12345678)
- Должно автоматически открыться окно конфигурации точки доступа
- Если не открылось: открыть монитор порта в Arduino IDE, перезагрузить плату, узнать IP точки доступа, открыть на смартфоне браузер, в строку адреса вписать полученный IP адрес, перейти. Должна открыться страница конфигурации WiFi Manager
- Нажать Configure, откроется список точек доступа. Выбрать свой роутер, указать пароль
- Перезагрузить плату
- Открыть приложение, в настройках указать IP лампы
- IP можно узнать из монитора порта в Arduino IDE
- Или кликнув 5 раз по кнопке: адрес будет выведен на матрицу в виде бегущей строки
- Всё должно работать!
Как узнать IP лампы?
- Подключите плату к компьютеру, откройте монитор порта, перезагрузите плату (кнопка RST), адрес будет выведен в монитор
- В версии прошивки от AlexGyver 1.5 и выше можно вывести IP адрес лампы на матрицу (пробегает строка с адресом), кликнув 5 раз по кнопке лампы.
Сброс настроек WiFi
В случае проблем с работой лампы можно выполнить сброс настроек WiFi, включив питание с зажатой кнопкой:
- Подайте питание
- Зажмите кнопку (убедитесь, что кнопка активировалась)
- Подождите
7 секунд
Работа с приложением
- Приложение есть под Android, скачать можно с PlayMarket’a, вот ссылочка
- Также появилось приложение для iOS, ссылочка вот
- В приложении можно настроить параметры текущего эффекта или сменить эффект на другой. После смены эффекта или изменения его параметров настройки сохраняются в энергонезависимую память через 30 секунд. При смене эффекта настройки сразу же сохраняются.
- В приложении можно настроить 7 будильников на каждый день недели. При открытии окна будильников текущие параметры будильников подгружаются из лампы. После изменения состояния будильника или его времени настройки сразу же сохраняются в энергонезависимую память, т.е. лампе не страшна перезагрузка.
- Логика работы рассвета такая: свет плавно включается за указанное время до будильника, разгорается до максимума ко времени будильника, и горит так ещё DAWN_TIMEOUT минут, затем отключается. Прервать рассвет можно кликом по кнопке на корпусе.
Управление кнопкой
- Одиночный клик: выкл/выкл свет, также выключение рассвета
- Двойной клик: смена режима
- Тройной клик: смена режима назад
- Удержание: смена яркости
Прошивка от gunner47 (+ новое приложение)
Общая информация
Модифицированная прошивка от gunner47 с форума сообщества.
- Постоянная ссылка на обновляемый пост в сообществе с описанием прошивки
- Страница проекта на GitHub
- Скачать архив актуальной версии
- Прямая ссылка на загрузку .apk приложения LedLamp для Android. Подробнее о приложениях читайте ниже.
Настройки
Подключение:
- В режиме локальной сети с роутером (по умолчанию)
- Имя сети: LedLamp
- Пароль: 31415926 (число Пи. Можно изменить в Constants.h)
- IP адрес для приложения: роутер выдаёт автоматически, в приложении нажмите “найти лампу”
- В режиме точки доступа (связь напрямую со смартфоном):
- Имя сети: LedLamp (можно изменить в Constants.h)
- Пароль: 31415926 (число Пи. Можно изменить в Constants.h)
- IP адрес для приложения: 192.168.4.1
Управление с кнопки:
- Одиночный клик: включение/выключение
- Двойной клик: следующий эффект лампы
- Тройной клик: предыдущий эффект лампы
- Два четверных клика: режим обновления прошивки по воздуху (ожидание второго четверного клика – 30 секунд; ожидание прошивки после двух четверных кликов – 5 минут)
- Пятикратный клик: вывод IP бегущей строкой
- Шестикратный клик: вывод текущего времени бегущей строкой, если время было синхронизировано
- Семикратный клик: переключение рабочего режима лампы (ESP_MODE 0 -> 1 и 1 -> 0), сохранение в энергонезависимую память и рестарт
- Удерживание кнопки: изменение яркости от меньшей к большей; при повторном удерживании – от большей к меньшей
- Одиночный клик + удерживание кнопки: изменение скорости от меньшей к большей; при повторном клике + удерживании – от большей к меньшей
- Двойной клик + удерживание кнопки: изменение масштаба от меньшего к большему; при повторном двойном клике + удерживании – от большего к меньшему
- Удержание кнопки при запуске: сброс настроек WiFi (если активна настройка ESP_RESET_ON_START)
Настройки в файле Constants.h:
- ESP_USE_BUTTON: если лампа собрана без физической кнопки, нужно закомментировать или удалить строку, иначе будут фантомные срабатывания кнопки, увеличение яркости и т.д.
- ESP_RESET_ON_START: true – при старте с зажатой кнопкой все хранимые настройки стираются, false (по умолчанию) – не стираются
- ESP_CONF_TIMEOUT: время ожидания ввода имени WiFi сети и её пароля при первом старте в секундах; если истекло – лампа меняет рабочий режим на ESP_MODE = 0 (точка доступа), сохраняет его и перезагружается; до принудительного переключения семикратным кликом будет работать в ESP_MODE = 0
- MOSFET_PIN: номер пина esp модуля для подключения MOSFET транзистора, который отключает питание матрицы во время, когда лампа/будильник/вывод времени выключены; может быть использован для экономии энергии, если лампа питается от аккумуляторов
- MOSFET_LEVEL: уровень сигнала для MOSFET транзистора, при котором на матрицу подаётся питание, по умолчанию HIGH
- ALARM_PIN: номер пина esp модуля, на который подаётся сигнал во время срабатывания рассвета + будильника (может быть использован для подключения проигрывателя и т.д.)
- ALARM_LEVEL: уровень сигнала, который выводится при срабатывании рассвета + будильника, по умолчанию HIGH
- AP_PASS: пароль точки доступа для рабочего режима ESP_MODE = 0 И ПАРОЛЬ ДЛЯ ОБНОВЛЕНИЯ ПРОШИВКИ ПО ВОЗДУХУ
- SUMMER_WINTER_TIME: для тех, кому нужен переход на зимнее/летнее время – оставить строку, остальным – закомментировать или удалить
- LOCAL_OFFSET: смещение от начального меридиана в минутах (часовой пояс), ТОЛЬКО ДЛЯ ТЕХ, У КОГО НЕТ ПЕРЕХОДА НА ЗИМНЕЕ/ЛЕТНЕЕ ВРЕМЯ
- SUMMER_OFFSET: смещение от начального меридиана в минутах (часовой пояс) для летнего времени, ТОЛЬКО ДЛЯ ТЕХ, У КОГО ЕСТЬ ПЕРЕХОД НА ЗИМНЕЕ/ЛЕТНЕЕ ВРЕМЯ
- WINTER_OFFSET: смещение от начального меридиана в минутах (часовой пояс) для зимнего времени, ТОЛЬКО ДЛЯ ТЕХ, У КОГО ЕСТЬ ПЕРЕХОД НА ЗИМНЕЕ/ЛЕТНЕЕ ВРЕМЯ
- PRINT_TIME: вывод текущего времени бегущей строкой по расписанию (если время было синхронизировано): 0U – не выводить время бегущей строкой; 1U – вывод времени каждый час; 2U – каждый час + каждые 30 минут; 3U – каждый час + каждые 15 минут; 4U – каждый час + каждые 10 минут; 5U – каждый час + каждые 5 минут; 6U – каждый час + каждую минуту
- NIGHT_HOURS_START: начало действия “ночного времени” (в минутах от начала суток, 1380U = 23:00), текущее время бегущей строкой будет выводиться с яркостью NIGHT_HOURS_BRIGHTNESS
- NIGHT_HOURS_STOP: конец действия “ночного времени” (в минутах от начала суток, 479U = 7:59)
- DAY_HOURS_BRIGHTNESS: яркость для вывода текущего времени бегущей строкой днём; если -1, будет использована яркость текущего эффекта (она известна, даже когда матрица выключена), [0..255]
- NIGHT_HOURS_BRIGHTNESS: яркость для вывода текущего времени бегущей строкой ночью; если -1, будет использована яркость текущего эффекта (она известна, даже когда матрица выключена), [0..255]
- * константы DAY_HOURS_BRIGHTNESS и NIGHT_HOURS_BRIGHTNESS используются только, когда матрица выключена, иначе будет использована яркость текущего эффекта
- USE_MQTT: true – используется управление по mqtt, false – нет, по умолчанию false; команды для mqtt подробно расписаны в MqttManager.h в комментариях, управление из приложения и по mqtt унифицировано
Основные изменения
- Полный список изменений смотри в посте автора в сообществе
- Более стабильная работа (исправлены ошибки, приводящие к циклической перезагрузке, к частым подтормаживаниям без доступа к интернету, к самопроизвольному изменению яркости в сборках без кнопки; исправлено выключение будильника, если он сработал при изначально выключенной лампе).
- Разработано новое android приложение. Умеет сканировать сеть и искать лампы. Умеет запоминать несколько ламп и переключаться между ними. Позволяет более точно выставить все параметры. Раздел Избранные эффекты циклически переключает понравившиеся режимы по статическому/случайному таймеру.
- Добавлено два новых эффекта: Светлячки со шлейфами и Белый свет.
- Обновление прошивки по воздуху. (отдельная инструкция) Актуально для тех, кто уже собрал лампу, но всё ещё экспериментирует с прошивкой.
- Включение (подача питания или перезагрузка модуля) при зажатой кнопке приводит к стиранию запомненных настроек WiFi сети.
- При переносе лампы в новую WiFi сеть (при недоступности ранее запомненной) лампа разворачивает WiFi точку доступа для ввода имени и пароля новой WiFi сети. Не нужна перепрошивка, если не захардкожен статический IP.
- В гитхаб репозитории выложены файлы прошивки, android приложение и файл thunkable проекта для желающих всё настроить/переделать под себя.
Приложение
Для прошивки от gunner47 используется отдельное приложение, с прошивкой от AlexGyver оно несовместимо!
- Для Android: установочный .apk файл есть в архиве с проектом в папке Android, там же есть исходник (файл .aia) для Thunkable. Скачайте и запустите .apk файл из файлового менеджера смартфона.
- Прямая ссылка на скачивание .apk файла актуальной версии.
- Для iOS: юзер Stmf сделал приложение Arduino Lamp под iOS, скачать можно из App Store
Источник