Светодиодная лестница алекс гайвер

Содержание
  1. RGB СВЕТОДИОДНЫЙ КОНТРОЛЛЕР
  2. Описание системы
  3. Железо
  4. Софтовые фишки
  5. Описание режимов и настроек
  6. Управление
  7. Подсветка лестницы. Задания на доработку проекта
  8. noemotion1992
  9. Старик Похабыч
  10. noemotion1992
  11. Старик Похабыч
  12. noemotion1992
  13. Старик Похабыч
  14. noemotion1992
  15. Azalis
  16. bort707
  17. Azalis
  18. bort707
  19. vitya2009
  20. Старик Похабыч
  21. vitya2009
  22. Старик Похабыч
  23. vitya2009
  24. bort707
  25. ОГНЕННАЯ WIFI ЛАМПА
  26. КУПИТЬ ЛАМПУ
  27. GyverLamp v1 (Giant4)
  28. GyverLamp v2 (Giant4)
  29. Aliexpress
  30. ВИДЕО ПО ПРОЕКТУ
  31. НОВОСТИ ПРОЕКТА
  32. МАТЕРИАЛЫ И КОМПОНЕНТЫ
  33. СПИСОК КОМПОНЕНТОВ (ССЫЛКИ)
  34. СХЕМЫ, ПЕЧАТНЫЕ ПЛАТЫ
  35. ПРОШИВКИ И ИНСТРУКЦИИ
  36. Прошивка от AlexGyver v1.2-1.4 (УСТАРЕЛА)
  37. ВЕРСИЯ УСТАРЕЛА, СМОТРИТЕ V1.5+
  38. Конфигурация прошивки
  39. Настройка Wi-Fi
  40. Работа с приложением
  41. Управление кнопкой
  42. Прошивка от AlexGyver v1.5 и выше
  43. Общая информация
  44. Конфигурация прошивки
  45. Настройка Wi-Fi
  46. Как узнать IP лампы?
  47. Сброс настроек WiFi
  48. Работа с приложением
  49. Управление кнопкой
  50. Прошивка от gunner47 (+ новое приложение)
  51. Общая информация
  52. Настройки
  53. Основные изменения
  54. Приложение

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 и не сбрасываются при перезагрузке

Описание режимов и настроек

  1. RGB– цвет в пространстве RGB
    • BR – яркость (0-255)
    • R – красный (0-255)
    • G – зелёный (0-255)
    • B – синий (0-255)
  1. HSV– цвет в пространстве HSV
    • HUE – цвет (0-255)
    • SAT – насыщенность (0-255)
    • VAL – яркость (0-255)
  1. Color– яркий цвет
    • BR – яркость (0-255)
    • COL – номер цвета (0-1530)
  1. ColorSet– предустановленные цвета
    • BR – яркость (0-255)
    • COL – цвет
      • WHITE
      • SILVER
      • GRAY
      • BLACK
      • RED
      • MAROON
      • YELLOW
      • OLIVE
      • LIME
      • GREEN
      • AQUA
      • TEAL
      • BLUE
      • NAVY
      • PINK
      • PURPLE
  1. Kelvin– установка цветовой температуры
    • BR – яркость (0-255)
    • TEMP – цветовая температура, К (1000-10000)
  1. ColorW– плавная смена цвета
    • BR – яркость (0-255)
    • SPD – скорость (0-1000)
    • STP – шаг (0-500)
  1. Fire– стандартный огонь
    • BR – яркость (0-255)
    • SPD – скорость (0-1000)
    • STP – шаг (0-500)
  1. FireM– ручной огонь
    • BR – макс. яркость (0-255)
    • COL – цвет (0-255)
    • SPD – скорость (0-1000)
    • MIN – мин. яркость (0-255)
  1. Strobe– стробоскоп
    • HUE – цвет (0-255)
    • SAT – насыщенность (0-255)
    • VAL – яркость (0-255)
    • SPD – скорость (0-1000)
  1. StrobeR– стробоскоп со случайным периодом
    • HUE – цвет (0-255)
    • SAT – насыщенность (0-255)
    • VAL – яркость (0-255)
    • SPD – скорость (0-1000)
  1. Police– мигалки
    • BR – яркость (0-255)
    • SPD – скорость (0-1000)

Управление

Энкодер

  • Кнопка удержана около секунды – вкл/выкл светодиоды
  • Кнопка клик – навигация: выбор профиля -> выбор режима -> выбор настройки
  • Смена профиля – поворот рукоятки
  • Смена режима – поворот рукоятки
  • Смена настройки – поворот рукоятки
  • Выбор настройки – нажатие, удержание и поворот рукоятки

ИК пульт

  • Кнопки 09 – быстрый переход к профилю с номером
  • Кнопки * и # – вкл и выкл систему
  • Кнопка ОК – навигация: профиль -> режим -> настройка
  • Кнопки вправо/влево – смена профиля/меню/настройки
  • Кнопки вверх/вниз – изменение выбранной настройки

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 секунд)

  • Добавлен вывод IP адреса на лампу по пятикратному нажатию на кнопку
  • Версия 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

    Источник

    Оцените статью