IoT, ESP, NODE WiFi лампа-будильник. Обсуждение проекта

19.07.2019
18
6
3
Добрый день. Пришли ко мне китайские блоки питания 5В/3А, до этого тестировал только с БП meanwell 5В/10А, и тут начались чудеса. Собрана лампа на Wemos D1 mini, конденсатор на питании 25В 470мкФ, прошивка от gunner47. На китайском бп напряжение оказалось в районе 5.32В, многие эффекты, особенно неэнерго затратные, поменяли свои цвета, пошла непонятная разноцветная вакханалия. При отключении по кнопке или из приложения некоторые пиксели продолжали гореть, только со второй или третьей попытке удавалось погасить все. Эффект огонь горел непонятными разноцветными огоньками.
Алекс как раз в одном из последних видео предупреждал о нестабильности Wemos'a при неправильном входном напряжении.
Переделал схему, добавил диод на 1А 1000В. Частично это помогло, эффекты стали как и раньше, но иногда проскакивали некоторые артефакты(вспышки). Отключение по кнопке и из приложения продолжало глючить. При увеличении яркости эффектов, когда напряжение проседало ближе к 5В, лампа начинала работать стабильнее.
Решил быстренько на макетке пересобрать лампу на NodeMCU с конденсатором на питании, диод не ставил, и о чудо все заработало как и раньше, но уже с китайским БП.
 

gunner47

Проходящий мимо
18.06.2019
119
122
43
Постараюсь ответить сразу всем (читаю вопросы по мере их поступления):
1. @Gogy Сервер времени. Хорошо, если замена помогла. В идеале лучше использовать тот, который вам физически ближе, до которого и от которого сигналы доходят быстрее. Класс точности (стратум) для лампы абсолютно не важен. В прошивке я увеличил интервал обращения к серверу до 30 минут, у Алекса был один запрос в минуту. Если по каким-то причинам сервер недоступен сразу после включения лампы, она будет пытаться достучаться раз в 5 минут до тех пор, пока не получит время. У Алекса было раз в 3 секунды. Прошивка ожидает ответ от сервера 1,5 секунды, и, если он недоступен, эффекты подтормаживают. Поэтому раньше могло быть так, что лампа 50% времени тратила на запросы и тормоза. Я посчитал, что 1,5 секунлы тормозов за 5 минут будут раздражать намного меньше. Если у вас эффекты замораживались чаще, вероятно, причина была в другом. Но я рад, что это в прошлом. Запросы раз в полчаса - это нечастые запросы. Сервера времени за такое не банят. У меня почти постоянно работали 2, а то и 3 лампы - проблем не замечал.
2. @Sinner_91 По точке доступа без матрицы. Да, будет работать. Проблема была в регулярной перезагрузке модуля. Причина судя по тому, что помогла очистка flash памяти, была в том, что прошивка пыталась вычитать что-то, что было ещё не сохранено или неправильно сохранено. Использовать esptool не обязательно, Arduino IDE тоже умеет затирать flash всё тем же esptool'ом (Инструменты > Erase Flash > All Flash Content). Рекомендую это делать при переходе к новой прошивке однократно. Вообще, хардкодить IP - это как-то... не очень хорошо. Лучше его пустым оставить, как по мне, и настроить роутер, чтоб давал лампе всегда один и тот же адрес.
3. @dune10991 Режим прошивки по воздуху уже можно включить не только двумя четверными кликами, но и кнопкой OTA из приложеия (обычное однократное нажатие). Разницы никакой нет. Пароль при прошивке... по зрелому размышлению не нужен. Всё равно случайно лампу вряд ли прошьёшь, а злонамеренно :) наверное, некому. Я его оставил, потому что когда-то планировал открыть лампе доступ из инета, и это было бы хоть какой-то защитой - iot устройства очень часто ломают.
4. @Денис321 Если лампа не может получить время, будильник работать не будет. И в приложении он будет недоступен. Почему лампа не получила время? Наверное, таки была беда с ntp сервером. Может быть, имеет смысл добавить второй сервер в прошивке, подумаю... Замените на любой другой, они легко гуглятся.
5. @CrazySpell По замечаниям о том, что куча всего не работает. Сначала убедитесь, что прошивка модуля и версия приложения - из одного архива. Это важно. Автообнаружение лампы приложением может не работать, если у вас в сети запрещены широковещательные сообщения по udp или если сеть побита на сегменты меньше чем /24 (меньше 256 адресов). Так может быть в корпоративных сетях, но в домашних всё обычно работает по умолчанию. Посмотрите в монитор порта - при нажатии кнопки поиска в приложении вы должны увидеть пришедшую команду DISCOVER и ответ на неё. По строке статуса лампы: оставлять только время пока не планирую, пока ещё работу над прошивкой буду продолжать, мне нужны отладочные данные. Если вам это сильно мешает, можете убрать в thunkable проекте. По регулировке эффектов - ещё раз обращаю внимание: автор эффектов не я. Некоторые были в оригинальной прошивке, другие я взял из альтернативных прошивок, гуляющих по интернету. Пару раз пробовал их поднастроить, но именно со скоростью у меня самые большие трудности: по факту это не только скорость, но ещё и плавность (интервал времени между перерисовками эффекта). При неумеренных экспериментах эффекты начинают отрисовываться дёргано. Растянуть управление ими на всю ширину ползунка управления можно, но это требует времени на тестирование и большой усидчивости. Может, когда-то дойдут руки.
6. @t_igr По питанию модуля. Ранее обсуждалось, вроде на wemos стоит регулятор, который может принимать до 6 вольт. Т.е., при статической нагрузке всё должно работать, если верить китайким компонентам на слово... Но при динамической нагрузке, а матрица видимо потребляет с большими перепадами во времени, могут быть проблемы. В любом случае у меня всё на wemos'ах и китайских 3А блоках питания. Тесты предыдущих версий прошивки показывали 2-3 перезагрузки за неделю, всегда при включенной матрице. Я надеялся хотя бы чуть-чуть увеличить стабильность со стороны прошивки, но потестировать последнюю версию времени пока не было.
7. @Gogy А какие ещё есть косяки в приложении?
 
Симпатии: Понравилось Xmas
14.04.2019
24
6
3
Постараюсь ответить сразу всем (читаю вопросы по мере их поступления):
1. @Gogy Сервер времени. Хорошо, если замена помогла. В идеале лучше использовать тот, который вам физически ближе, до которого и от которого сигналы доходят быстрее. Класс точности (стратум) для лампы абсолютно не важен. В прошивке я увеличил интервал обращения к серверу до 30 минут, у Алекса был один запрос в минуту. Если по каким-то причинам сервер недоступен сразу после включения лампы, она будет пытаться достучаться раз в 5 минут до тех пор, пока не получит время. У Алекса было раз в 3 секунды. Прошивка ожидает ответ от сервера 1,5 секунды, и, если он недоступен, эффекты подтормаживают. Поэтому раньше могло быть так, что лампа 50% времени тратила на запросы и тормоза. Я посчитал, что 1,5 секунлы тормозов за 5 минут будут раздражать намного меньше. Если у вас эффекты замораживались чаще, вероятно, причина была в другом. Но я рад, что это в прошлом. Запросы раз в полчаса - это нечастые запросы. Сервера времени за такое не банят. У меня почти постоянно работали 2, а то и 3 лампы - проблем не замечал.
2. @Sinner_91 По точке доступа без матрицы. Да, будет работать. Проблема была в регулярной перезагрузке модуля. Причина судя по тому, что помогла очистка flash памяти, была в том, что прошивка пыталась вычитать что-то, что было ещё не сохранено или неправильно сохранено. Использовать esptool не обязательно, Arduino IDE тоже умеет затирать flash всё тем же esptool'ом (Инструменты > Erase Flash > All Flash Content). Рекомендую это делать при переходе к новой прошивке однократно. Вообще, хардкодить IP - это как-то... не очень хорошо. Лучше его пустым оставить, как по мне, и настроить роутер, чтоб давал лампе всегда один и тот же адрес.
3. @dune10991 Режим прошивки по воздуху уже можно включить не только двумя четверными кликами, но и кнопкой OTA из приложеия (обычное однократное нажатие). Разницы никакой нет. Пароль при прошивке... по зрелому размышлению не нужен. Всё равно случайно лампу вряд ли прошьёшь, а злонамеренно :) наверное, некому. Я его оставил, потому что когда-то планировал открыть лампе доступ из инета, и это было бы хоть какой-то защитой - iot устройства очень часто ломают.
4. @Денис321 Если лампа не может получить время, будильник работать не будет. И в приложении он будет недоступен. Почему лампа не получила время? Наверное, таки была беда с ntp сервером. Может быть, имеет смысл добавить второй сервер в прошивке, подумаю... Замените на любой другой, они легко гуглятся.
5. @CrazySpell По замечаниям о том, что куча всего не работает. Сначала убедитесь, что прошивка модуля и версия приложения - из одного архива. Это важно. Автообнаружение лампы приложением может не работать, если у вас в сети запрещены широковещательные сообщения по udp или если сеть побита на сегменты меньше чем /24 (меньше 256 адресов). Так может быть в корпоративных сетях, но в домашних всё обычно работает по умолчанию. Посмотрите в монитор порта - при нажатии кнопки поиска в приложении вы должны увидеть пришедшую команду DISCOVER и ответ на неё. По строке статуса лампы: оставлять только время пока не планирую, пока ещё работу над прошивкой буду продолжать, мне нужны отладочные данные. Если вам это сильно мешает, можете убрать в thunkable проекте. По регулировке эффектов - ещё раз обращаю внимание: автор эффектов не я. Некоторые были в оригинальной прошивке, другие я взял из альтернативных прошивок, гуляющих по интернету. Пару раз пробовал их поднастроить, но именно со скоростью у меня самые большие трудности: по факту это не только скорость, но ещё и плавность (интервал времени между перерисовками эффекта). При неумеренных экспериментах эффекты начинают отрисовываться дёргано. Растянуть управление ими на всю ширину ползунка управления можно, но это требует времени на тестирование и большой усидчивости. Может, когда-то дойдут руки.
6. @t_igr По питанию модуля. Ранее обсуждалось, вроде на wemos стоит регулятор, который может принимать до 6 вольт. Т.е., при статической нагрузке всё должно работать, если верить китайким компонентам на слово... Но при динамической нагрузке, а матрица видимо потребляет с большими перепадами во времени, могут быть проблемы. В любом случае у меня всё на wemos'ах и китайских 3А блоках питания. Тесты предыдущих версий прошивки показывали 2-3 перезагрузки за неделю, всегда при включенной матрице. Я надеялся хотя бы чуть-чуть увеличить стабильность со стороны прошивки, но потестировать последнюю версию времени пока не было.
7. @Gogy А какие ещё есть косяки в приложении?
Не знаю косяк это или так задумано (если задумано, то в чем логика?):
- после срабатывания "рассвет" автоматическая смена эффектов в "избранном" отключается,
- после отключения по таймеру автоматическая смена эффектов в "избранном" отключается,
- после отключения лампы от блока питания автоматическая смена эффектов в "избранном" отключается,
я это имел ввиду.
 
20.08.2019
10
4
3
И я сделал. Плафон найти сложнее чем лампу собрать)) Все магазины в городе обошел, а потом подсмотрел как сделал @malec
Приветствую! А подскажите что за модель светильника, где брали? По сравнению с тем, что в ЛМ, он выглядит более компактным и аккуратным, не такая длинная ножка в соотношении с плафоном... И кстати, какая высота прозрачного плафона и светильника в целом?
Спасибо!
 

gunner47

Проходящий мимо
18.06.2019
119
122
43
Не знаю косяк это или так задумано (если задумано, то в чем логика?):
- после срабатывания "рассвет" автоматическая смена эффектов в "избранном" отключается,
- после отключения по таймеру автоматическая смена эффектов в "избранном" отключается,
- после отключения лампы от блока питания автоматическая смена эффектов в "избранном" отключается,
я это имел ввиду.
Логика в том, что выключение (по кнопке или по таймеру) должно всё выключать. Если я настроил всё под себя, у следующего, кто включает лампу, не будет сюрпризов, он сразу после включения настроит только то, что хочет, и будет уверен, что эффект случайно не сменится, таймер случайно не сработает и т.д. Например, если посреди ночи нужен белый свет, то это должен быть белый свет, а не огонь через минуту, потому что перед срабатываением таймера был активен режим "избранное". Или если, ложась спать, я выставил таймер, потом, не дожидаясь, выключил лампу руками и после этого вдруг мне понадобился белый свет, я хочу быть уверен в том, что он не потухнет через мгновение от всё ещё работающего таймера - таймер должен сбрасываться при выключении. Убирать такую логику я не хочу, но можно подумать о какой-то отдельной настройке, которая позволяет не отключать "избранное" при выключении лампы по кнопке или таймеру.
Кстати, смена эффекта при работе "избранного" не запоминается лампой специально, чтобы уменьшить количество записей в EEPROM память.
 
02.08.2019
3
1
3
@gunner47, здравствуйте. Есть просьба к Вам по переделке эффекта " белый свет". (попытаюсь обьяснить на пальцах) в общем, неплохой эффект получается если добавить масштабирование т.е. при минимуме масштаба светят две центральные полосы по горизонтали с плавным затуханием до "0" в обе стороны и с возможностью регулировки яркости, при увеличении масштаба мы "растягиваем" эти две полоски до верха и низа матрицы, плюс все это можем регулировать по яркости. Такой эффект я видет в варианте для ардуино,(т.к. программировать я не умею) пробовал код от туда копипастить , и оно даже работает, но как-то коряво, яркость скачет, а при максимальном масштабе середина матрицы (по горизонтали) светит тусклее чем края. Если надо вот ссылка на тот прект
https://github.com/Norovl/GyverLamp_for_Arduino/blob/master/README.md
 
Симпатии: Понравилось Xmas
07.09.2019
3
1
6
Собрал лампу на макетке - супер штукенция!
Прошивка и программа от @gunner47, сначала время не синхронизировало, но потом еще пару раз пошил разные версии и все заработало!
Огромное спасибо @AlexGyver за проект! Ему похоже некогда доводить свои проекты до ума, поэтому за прошивку и программу отдельное спасибо @gunner47! Таймер - это "маст хев" для такой лампы!

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

Александр Симонов

Проходящий мимо
02.08.2018
185
36
38
Постараюсь ответить сразу всем (читаю вопросы по мере их поступления):
1. @Gogy Сервер времени. Прошивка ожидает ответ от сервера 1,5 секунды, и, если он недоступен, эффекты подтормаживают.
Может поменять библиотеку NTPClient на асинхронную, чтоб уж точно ничего не тормозило?
https://github.com/gmag11/NtpClient/blob/master/examples/NTPClientESP8266/NTPClientESP8266.ino
 
08.09.2019
2
1
3
Постараюсь ответить сразу всем (читаю вопросы по мере их поступления):
5. @CrazySpell По замечаниям о том, что куча всего не работает. Сначала убедитесь, что прошивка модуля и версия приложения - из одного архива. Это важно. Автообнаружение лампы приложением может не работать, если у вас в сети запрещены широковещательные сообщения по udp или если сеть побита на сегменты меньше чем /24 (меньше 256 адресов). Так может быть в корпоративных сетях, но в домашних всё обычно работает по умолчанию. Посмотрите в монитор порта - при нажатии кнопки поиска в приложении вы должны увидеть пришедшую команду DISCOVER и ответ на неё. По строке статуса лампы: оставлять только время пока не планирую, пока ещё работу над прошивкой буду продолжать, мне нужны отладочные данные. Если вам это сильно мешает, можете убрать в thunkable проекте. По регулировке эффектов - ещё раз обращаю внимание: автор эффектов не я. Некоторые были в оригинальной прошивке, другие я взял из альтернативных прошивок, гуляющих по интернету. Пару раз пробовал их поднастроить, но именно со скоростью у меня самые большие трудности: по факту это не только скорость, но ещё и плавность (интервал времени между перерисовками эффекта). При неумеренных экспериментах эффекты начинают отрисовываться дёргано. Растянуть управление ими на всю ширину ползунка управления можно, но это требует времени на тестирование и большой усидчивости. Может, когда-то дойдут руки.
Архив с гитхаба. Судя по дате, совсем свеженький. Все файлы взяты оттуда.
Я, как оказалось, мало что понимаю в WiFi. Хоть на курсы иди.
У меня пул адресов в роутере начинается с 33 (так стоит по умолчанию).
Маска 255.255.255.0
Это плохо?
Кстати, может посоветуете какой ресурс для чайников?

Про время в приложении понял. Думал, что Вы что-то пропустили. Если так надо, то вопросов нет.
Про эффекты я уже понял. Собственно, такая беда и в оригинальной версии была. Будет времени побольше попытаюсь сам поковыряться.
 
Приветствую. Поделитесь кто-нибудь ссылкой на рабочий БП 5В/3А, которым запитываете светильник у кого собрано на плате Wemos mini.
Заказывал вот этот, с ним светильник нормально не заработал.
IMG_20190913_121511.jpg IMG_20190912_162319.jpg IMG_20190912_162426.jpg
Конденсатор и диод не изменили ситуацию.
Попытался включить через DC-DC преобразователь в качестве фильтра, особо не помогло,вот так стал выглядеть эффект огонь.
IMG_20190913_113116.jpg
 
Приветствую. Поделитесь ....
А в чём именно проблема, можно подробней? Только "огонь" цветным стал или ещё что? Я тоже борюсь сейчас с одной бедой не совместимости работы ИБП 5В/3А с матрицей, по отдельности работают отлично, вместе -глючат. Кто кому больше помеху создаёт, ещё не разобрался, пока модернизирую выход ИБП -мощными фильтрами.

P.S. Проверь работу в режимах белый свет и смена цвета (да вообще на всех энергоёмких режимах), на максимальной и минимальной яркости, по регулируй яркость в режиме работы. Отпишись о результатах, будет ли стабильно работать, нет ли артефактов на матрице (вспышек, угасаний и т.п.)? Спасибо!
 
А в чём именно проблема, можно подробней? Только "огонь" цветным стал или ещё что? Я тоже борюсь сейчас с одной бедой не совместимости работы ИБП 5В/3А с матрицей, по отдельности работают отлично, вместе -глючат. Кто кому больше помеху создаёт, ещё не разобрался, пока модернизирую выход ИБП -мощными фильтрами.

P.S. Проверь работу в режимах белый свет и смена цвета (да вообще на всех энергоёмких режимах), на максимальной и минимальной яркости, по регулируй яркость в режиме работы. Отпишись о результатах, будет ли стабильно работать, нет ли артефактов на матрице (вспышек, угасаний и т.п.)? Спасибо!
На всех режимах, кроме белого есть глюки, регулировка яркость полностью не помогает, артефактов становиться меньше на энергоемких, собрал еще на одном wemos, так вообще 3 светодиода моргают во всех режимах (белом тоже) и всё. Ситуация улучшается как только проседает напряжение ближе 5 вольтам. Еще можно разъем питания в гнезде подергать и разъем матрицы, иногда помогало не надолго. Убрал все разъемы, спаял все соединения - вообще тишина на матрице. Выше еще можно почитать, писал об этом.
 
ну я тоже сейчас проверил, после переборки ИБП, и похоже дело не совсем в фильтрах, хотя они заметно помогли! сейчас при больших нагрузках по току (выше 1А) работает вроде стабильно, а при 2-3А вообще отлично! при меньших нагрузках (около 0,5А) начинаются проблемы. обнаружил что при этом только одна зависимость! напряжение на матрице при токах более 1А в районе 5,2-5,3В, при менее 1А подниматся до 5,40-5,45. в этот момент и начинается веселуха! походу надо снизить напругу. сейчас буду пробовать...

P.S. wemos D1 у меня и так питается через диод, RLC фильтр и напруга на нём меньше на 0,7-0,8В. эту цепь я сразу поставил, в начале сборки. по этому грешу только на согласование ИБП с матрицей. либо взаимные помехи, либо напряжение.

P.P.S. от настольного лабораторного БП всё работает без проблем! так, что причина только в совместимости с ИБП.

P.P.S к слову есть ещё один косяк, в прошивке Алекса и всех последователей, при расчёте макс мощности матрицы, выставленная величина справедлива только при белом свете (+/5% соответствует выставленному в программе). в режимах же других цветов (особенно зелоного), расчёт ошибочный и токовая нагрузка (при 2000мА например) поднимается до 3,3А! т.е. мой ИБП который при 3,5А уходив в защиту, корректно работает только при 2200мА в прошивке. в противном случае в режиме цвета (или режиме их смены) на определённых цветах уходит в защиту.... по этмоу белый свет получается самым тусклым из них ((((
 

gunner47

Проходящий мимо
18.06.2019
119
122
43
@gunner47, здравствуйте. Есть просьба к Вам по переделке эффекта " белый свет". (попытаюсь обьяснить на пальцах) в общем, неплохой эффект получается если добавить масштабирование т.е. при минимуме масштаба светят две центральные полосы по горизонтали с плавным затуханием до "0" в обе стороны и с возможностью регулировки яркости, при увеличении масштаба мы "растягиваем" эти две полоски до верха и низа матрицы, плюс все это можем регулировать по яркости. Такой эффект я видет в варианте для ардуино,(т.к. программировать я не умею) пробовал код от туда копипастить , и оно даже работает, но как-то коряво, яркость скачет, а при максимальном масштабе середина матрицы (по горизонтали) светит тусклее чем края. Если надо вот ссылка на тот прект
https://github.com/Norovl/GyverLamp_for_Arduino/blob/master/README.md
Дошли руки попробовать этот эффект. Выводы такие:
  • Математически эффект правильный, без плафона его даже видно, но с плафоном... мой, видимо, отлично рассеивает свет, плавного падения яркости от центральных горизонтальных полос вверх и вниз не заметно совсем, хотя яркость уходит практически в ноль
  • При малой яркости белого света матрица очень даже заметно рябит. Я не знаю точно, почему это происходит, могу только предположить, что яркость регулируется ШИМ сигналом отдельно для каждого канала (красный, зелёный, синий) и каждого диода и при малой скважности и той частоте дискретизации (не знаю, какая она, но видимо не высокая) высокий уровень сигнала на диодах становится визуально заметен. Но факт в том, что мерцание наблюдается только на белом свете и только до яркости 80-90 из 256, потом исчезает. Если вместо белого света включить один чистый, например, зелёный, он не мерцает даже на малой яркости.
Отсюда выводы:
  • Как-то уже выше писали о матрице, в которой каждый диод состоит не из 3, а из 4: rgb + белый, возможно, она для таких сценариев подходит лучше, с этой матрицей смысла в регулировке яркости белого света не много.
  • Градиент от яркого к тусклому тоже бесполезен; возможно, идея этого эффекта хороша тем, что яркость белого света всей лампы можно регулировать количеством включенных диодов на матрице, каждый из которых будет светить на высокой (может даже, максимальной) яркости.
Ещё, конечно, я мог в чём-то ошибиться, и причина совсем в другом... В общем, вот код эффекта, который я тестировал:
C++:
// ------------- белый свет (уменьшение яркости по горизинтали от центра вверх и вниз; масштаб - ширина центральной полосы максимальной яркости; яркость - общая яркость -------------
void whiteColorRoutine2()
{
  if (loadingFlag)
  {
    loadingFlag = false;
    FastLED.clear();
    delay(1);

    uint8_t centerY = max((uint8_t)round(HEIGHT / 2.0F) - 1, 0);
    uint8_t bottomOffset = (uint8_t)(!(HEIGHT & 1) && (HEIGHT > 1));                      // если высота матрицы чётная, линий с максимальной яркостью две, а линии с угасающей яркостью снизу будут смещены на один ряд
    for (int16_t y = centerY; y >= 0; y--)
    {
      CRGB color = CHSV(100, 1,
        constrain(uint8_t(                                                                // определяем яркость
          modes[EFF_WHITE_COLOR].Brightness * (y + 1) / (centerY + 1) +                   // влияние координаты Y на яркость (плавное затухаие вверх и вниз)
          modes[EFF_WHITE_COLOR].Brightness * modes[EFF_WHITE_COLOR].Scale / 100),        // влияние масштаба на яркость
          2U,                                                                             // здесь и строкой ниже 2U - минимально разрешённая яркость
          max((uint8_t)2U, (uint8_t)modes[EFF_WHITE_COLOR].Brightness)
        ));

      for (uint8_t x = 0; x < WIDTH; x++)
      {
        drawPixelXY(x, y, color);                                                         // при чётной высоте матрицы максимально яркими отрисуются 2 центральных горизонтальных полосы
        drawPixelXY(x, max((uint8_t)(HEIGHT - 1) - (y + 1) + bottomOffset, 0), color);    // при нечётной - одна, но дважды
      }
    }
  }
}

Это нужно добавить в effects.ino. А в effectTicker.ino поправить строку с вызовом новой функции для белого света:
C++:
case EFF_WHITE_COLOR:    whiteColorRoutine2();         break;

Если кто-то найдёт ошибку, отпишитесь.
В таком виде эффект использовать не вижу смысла. Возможно, имеет смысл отрисовывать только горизонтальные линии с максимальной яркостью, без градиента, и масштабом увеличивать количество таких линий от центра вверх и вниз, регулируя таким способом общую яркость. Но насколько это лучше или хуже текущей реализации белого света, судить не берусь. Попробую ещё на досуге.
 
ну я тоже сейчас проверил, после переборки ИБП, и похоже дело не совсем в фильтрах, хотя они заметно помогли! сейчас при больших нагрузках по току (выше 1А) работает вроде стабильно, а при 2-3А вообще отлично! при меньших нагрузках (около 0,5А) начинаются проблемы. обнаружил что при этом только одна зависимость! напряжение на матрице при токах более 1А в районе 5,2-5,3В, при менее 1А подниматся до 5,40-5,45. в этот момент и начинается веселуха! походу надо снизить напругу. сейчас буду пробовать...

P.S. wemos D1 у меня и так питается через диод, RLC фильтр и напруга на нём меньше на 0,7-0,8В. эту цепь я сразу поставил, в начале сборки. по этому грешу только на согласование ИБП с матрицей. либо взаимные помехи, либо напряжение.

P.P.S. от настольного лабораторного БП всё работает без проблем! так, что причина только в совместимости с ИБП.

P.P.S к слову есть ещё один косяк, в прошивке Алекса и всех последователей, при расчёте макс мощности матрицы, выставленная величина справедлива только при белом свете (+/5% соответствует выставленному в программе). в режимах же других цветов (особенно зелоного), расчёт ошибочный и токовая нагрузка (при 2000мА например) поднимается до 3,3А! т.е. мой ИБП который при 3,5А уходив в защиту, корректно работает только при 2200мА в прошивке. в противном случае в режиме цвета (или режиме их смены) на определённых цветах уходит в защиту.... по этмоу белый свет получается самым тусклым из них ((((
С тем же набором, но вместо Wemos'a подключаю плату NodeMCU и все отлично работает.
 
@t_igr, ну ХЗ тогда...

Я всё победил вроде! Снизив напряжение на ИБП при ХХ до 4,9В (на 5В ровно не подобрал пока сдм сопрошку), всё заработало просто идеально 👌 ТТТ. Ни на минимальной, на на максимальной яркости проблем нет! 👍 Так что обращайте внимание в первую очередь на уровень и стабильность выходного/входного напряжения на ИБП/матрице! Хотя и хороший фильтр на выходе ИБП лишним не будет...
Осталось только решить проблему неравномерного ограничения цветов программой. Но я совсем не селен в этом ☹️ Если только попросить кого глянуть этот момент...

@gunner47, может Вы сможете разобраться в этом? Я кстати вашу прошивку залил сейчас - отличная альтернатива! 👍 Огромное спасибо Вам за труды!
Проблема в следующем:
Например ставлю в прошивке ограничение 2100мА. Получаем на максимуме (255) - белый 2000мА; зелёный 2800мА;
При программном ограничений в 2500мА - белый 2420мА; зелёный 3240мА.
Это мои сегодняшние измерения, после установки на ИБП 4,9В. С 5,2В токи при тех же уставках - чуть выше... На других цветах (красный, синий и т.д.) токи в промежутке между указанными.
К слову на других емких эффектах (все виды радуги, лава, плазма и т.д.) уставка ограничений работает корректно +/-5%. В режиме смена цвета - ток плавает в пределах от "белого к зелёному"... :-/
 
@t_igr, ну ХЗ тогда...

Я всё победил вроде! Снизив напряжение на ИБП при ХХ до 4,9В (на 5В ровно не подобрал пока сдм сопрошку), всё заработало просто идеально 👌 ТТТ. Ни на минимальной, на на максимальной яркости проблем нет! 👍 Так что обращайте внимание в первую очередь на уровень и стабильность выходного/входного напряжения на ИБП/матрице! Хотя и хороший фильтр на выходе ИБП лишним не будет...
Осталось только решить проблему неравномерного ограничения цветов программой. Но я совсем не селен в этом ☹️ Если только попросить кого глянуть этот момент...

@gunner47, может Вы сможете разобраться в этом? Я кстати вашу прошивку залил сейчас - отличная альтернатива! 👍 Огромное спасибо Вам за труды!
Проблема в следующем:
Например ставлю в прошивке ограничение 2100мА. Получаем на максимуме (255) - белый 2000мА; зелёный 2800мА;
При программном ограничений в 2500мА - белый 2420мА; зелёный 3240мА.
Это мои сегодняшние измерения, после установки на ИБП 4,9В. С 5,2В токи при тех же уставках - чуть выше... На других цветах (красный, синий и т.д.) токи в промежутке между указанными.
К слову на других емких эффектах (все виды радуги, лава, плазма и т.д.) уставка ограничений работает корректно +/-5%. В режиме смена цвета - ток плавает в пределах от "белого к зелёному"... :-/
Поздравляю, а у меня и на плате NodeMCU перестало работать )), на макетке отлично работало, как только всё спаял и собрал перестало. Видать на общем сопротивлении цепи было снижение напряжения.
Можешь написать какого номинала sdm резистор подобрал и куда его паял?
IMG_20190912_162546.jpg
 
В последней прошивке от gunner47, если лампа изначально не подключится к точке доступа, то она не на что не реагирует, горит снизу один светодиод, белым цветом и всё. По идее, если лампа не подключается к точке доступа, то она переходит сама в точку доступа, телефоном подключаюсь к этой точке, а приложение ни в какую не видит лампу. У кого есть такое?
 
В последней прошивке от gunner47, если лампа изначально не подключится к точке доступа, то она не на что не реагирует, горит снизу один светодиод, белым цветом и всё. По идее, если лампа не подключается к точке доступа, то она переходит сама в точку доступа, телефоном подключаюсь к этой точке, а приложение ни в какую не видит лампу. У кого есть такое?
Приложение и не увидит. Подключаетесь к точке доступа лампы, в браузере вводите ip лампы (192.168.4.1), далее выбираете свою сеть и указываете пароль своего wifi. К точке доступа лампы можно подключиться из приложение если у вас в прошивке esp_mode = 0