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

Сообщение изъято на правах администрации
ВНИМАНИЕ !!!
те кто живой и хочет увидеть ссылку на свое исполнение, прошу централизовать все свои доработки и сообщения. Далее в теме пишем сообщение с ссылкой на ваше сообщение (с проектом), с пометкой @mechanic .


В данной ветке обсуждаются только сия проект. Общие вопросы, доработки и проблемы, не относящиеся к конкретным прошивкам!. Вопросы по прошивкам решаем в темах самих прошивок. Здесь такие разговоры оффтоп.
Всякий любой вопрос не по теме сразу удаляется БЕЗ объяснения причины!
Для этого есть соответствующие ветки форума. Вопрос почему удалили мой пост? также удаляется.

  • Общаясь на форуме будьте взаимно вежливы!
  • Обратите внимание на то, что у нас принято говорить Спасибо путём повышения репутации, нажав на кнопочку
    .
  • Если есть претензии то нажмите кнопку .
  • Запрещено писать красным цветом в ваших постах - этот цвет только для Модераторов .
  • Вопросы, ответ на которые есть в шапке или в FAQ, будут удаляться. За повторный вопрос пользователь может быть наказан.
  • Убедительная просьба придерживаться тематики ветки, избегать флуда и оффтопа!
Очень часто при первом запуске лампы, при подключении к сети лампы не открывается менеджер сетей WIFI.
Помогает комментирование строки #define ESP_USE_BUTTON (отключение кнопки) и заливка скетча выставив Erase flash в All Flash Content
После того, как вы подключили лампу к сети эту строку можно раскомментировать и залить скетч с параметром Erase flash установленным в Only Sketh
Наш участник собрал много полезной информации по блокам питания для лампы. Качественное питание - необходимое условие надёжной работы любого устройства. Изучаем: https://community.alexgyver.ru/threads/nebolshoj-opus-po-bp-dlja-gyverlamp-wifi-lampa-budilnik.3523/

ВНИМАНИЕ! Если у вас не компилируется или не загружается скетч - значит вы сделали что-то неправильно. Специально для вас созданы две темы:
ESP8266, проблема с компиляцией скетча
ESP8266, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 

Комментарии

recoshet

★✩✩✩✩✩✩
15 Июн 2019
1
14
Сообщение изъято на правах администрации
ВНИМАНИЕ !!!
те кто живой и хочет увидеть ссылку на свое исполнение, прошу централизовать все свои доработки и сообщения. Далее в теме пишем сообщение с ссылкой на ваше сообщение (с проектом), с пометкой @mechanic .


В данной ветке обсуждаются только сия проект. Общие вопросы, доработки и проблемы, не относящиеся к конкретным прошивкам!. Вопросы по прошивкам решаем в темах самих прошивок. Здесь такие разговоры оффтоп.
Всякий любой вопрос не по теме сразу удаляется БЕЗ объяснения причины!
Для этого есть соответствующие ветки форума. Вопрос почему удалили мой пост? также удаляется.

  • Общаясь на форуме будьте взаимно вежливы!
  • Обратите внимание на то, что у нас принято говорить Спасибо путём повышения репутации, нажав на кнопочку
    .
  • Если есть претензии то нажмите кнопку .
  • Запрещено писать красным цветом в ваших постах - этот цвет только для Модераторов .
  • Вопросы, ответ на которые есть в шапке или в FAQ, будут удаляться. За повторный вопрос пользователь может быть наказан.
  • Убедительная просьба придерживаться тематики ветки, избегать флуда и оффтопа!
Очень часто при первом запуске лампы, при подключении к сети лампы не открывается менеджер сетей WIFI.
Помогает комментирование строки #define ESP_USE_BUTTON (отключение кнопки) и заливка скетча выставив Erase flash в All Flash Content
После того, как вы подключили лампу к сети эту строку можно раскомментировать и залить скетч с параметром Erase flash установленным в Only Sketh
Наш участник собрал много полезной информации по блокам питания для лампы. Качественное питание - необходимое условие надёжной работы любого устройства. Изучаем: https://community.alexgyver.ru/threads/nebolshoj-opus-po-bp-dlja-gyverlamp-wifi-lampa-budilnik.3523/

ВНИМАНИЕ! Если у вас не компилируется или не загружается скетч - значит вы сделали что-то неправильно. Специально для вас созданы две темы:
ESP8266, проблема с компиляцией скетча
ESP8266, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 

somon

★★★✩✩✩✩
20 Авг 2019
140
123
@gunner47,
Про IP. Если не сложно, то был бы очень признателен! Я просто столкнулся с этим, когда таскал макет из дома на работу и обратно, на стадии настройки. Так вот в офисной сетке, в приложении не находилась лампа, только вручную! Дома всё ок! И учитывая что я затеял "всем" родным подарки на НГ наделать, то ХЗ у кого какая сеть, и будет ли там всё автоматом находиться..? 🤭
Ну и как идею можно развить тогда с выводом текста, в виде отдельного (или дополненного/наложенного эффекта), с набивкой строки из приложения! 👍

Про версии. Не знал, что это "боль". Я вообще пока гитом на ВЫ (даже раза в три повыше...))). Пусть идёт как есть тогда. А может на Алекса 1.5 тогда, все Ваши обновки можно подтянуть будет?

Про кнопку. 🤭 Я понял. Значит это касалось тех счастливчиков, не поставивших кнопку, не читавших ветку и не закоментировав её в прошивке? Т.е. фича работает только с механической кнопкой (или точнее её отсутствием без программной правки)? С сенсорной у меня были не удачные попытки... Или я не так понял алгоритм? 🤔
 

t_igr

★★✩✩✩✩✩
19 Июл 2019
74
55
вопрос: почему на разных режимах раз в 3-8 секунд всполохи лишнего? (на матрице зеленого цвета красные светодиоды моргают, на блуждающем кубике- всполохи около кубика)???
От чего запитываете матрицу? Очень похоже из-за повышенного напряжения поданного на матрицу с БП, попробуйте запитать матрицу от источника который выдает ровно 5 вольт, например powerbank. Выше писали об этом.
 

t_igr

★★✩✩✩✩✩
19 Июл 2019
74
55
Да, вы правильно понимаете. Только попытки синхронизации времени будут повторяться до первой успешной. Вопрос в том, какой способ определения наличия интернета самый дешёвый по времени и реализации. И ещё вопрос: насколько часто может встретиться ситуация, в которой упадёт подключение на участке от вашего провайдера к указанному ntp серверу, но останется живое соединение к dns серверу вашего провайдера. По-моему это очень редкий случай. Вначале я хотел вместо резолва имени сделать ping, но, погуглив, понял, что это ёмкая по времени операция (фризы будут заметнее), к тому же недавно поменялись библиотеки (навскидку не помню какие, но помню, что оттуда исчез стандартный метод для пинга - народ ругается и делает самописные его замены). А если на вход пингу подать dns имя, а не ip, то перед пингом всё равно будет dns резолв.
В самом худшем случае ожидаемый результат должен быть таким:
  • если при старте зарезолвить имя ntp сервера не получилось, то функции будильника становятся недоступны, попытки получить время должны повторяться 1 раз в 5 минут (чтоб не мозолить глаза фризами)
  • если в процессе работы исчез интернет/стал недоступен сервер времени, то никаких фризов быть не должно, потому что время уже должно быть получено ранее, оно просто не будет обновляться... самое худшее что может случиться - будет ошибка будильника при переходе с летнего на зимнее время и наоборот там, где есть такой переход
Иное поведение нужно признать ошибкой и исправить.
В самом лучшем случае нужно перейти на асинхронную библиотеку для получения времени. Кто-то добрый и умный писал о ней выше, но я ещё не разбирался. При ней должны исчезнуть всякие фризы.
Согласен случай с пропаданием интернета, но живым dns маловероятен. Но случаев и причин пропадания интернета очень много: от обрывов линии до нулевого баланса счета)).
Добавил в GENERAL_DEBUG Serial.println(ntpServerIp). Так вот при пропадании инета (провод отключен от роутера) роутер продолжает отвечать на запрос WiFi.hostByName и возвращает IP 62.149.2.126, и это продолжается пока не перезагрузишь роутер, перезагрузка светильника бесполезна. Возможно роутер где-то у себя в ОЗУ хранит этот адрес, т.к. его уже запрашивали до этого.
Проверил на трёх разных роутерах. На двух стабильно такая ситуация, но третий роутер(asus) возвращал ntpServerIp = 10.0.0.1, и даже после перезагрузки его по питанию.
ntp_ip.pngcmd.png

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

space1988

✩✩✩✩✩✩✩
16 Июл 2019
6
3
Всем привет.
Пользуюсь прошивкой от @gunner47 и постоянно слежу за форумом. Есть предложение как победить проблему с пропаданием интернета и фризами. Предлагаю поставить дополнительно модуль RTC и зделать синхронизацию времени по приложению со смартфона. Это решит проблему с фризами и позволит пользоваться будильником если лампа в режиме точки доступа, а также не будет необходимости выставлять часовой пояс (это актуально если нужно переходить с летнего на зимнее время и обратно). Модуль питается от батарейки и ее хватит лет на 5 минимум. Точность хода у него приличная. Можно оставить синхронизацию времени, но хотя бы раз в неделю.

Я к сожалению не программист.... Если бы умел то помог.

@gunner47 огромное спасибо за старания и труды, благодаря тебе лампа радует глаз
 

Максим-ka

✩✩✩✩✩✩✩
14 Июл 2019
8
1
От чего запитываете матрицу? Очень похоже из-за повышенного напряжения поданного на матрицу с БП, попробуйте запитать матрицу от источника который выдает ровно 5 вольт, например powerbank. Выше писали об этом.
запитываю данную сборку от БП DPS5020. до этого 5 сборок работало без проблем (ставлю 5 вольт и 3 ампера)
 

somon

★★★✩✩✩✩
20 Авг 2019
140
123
Всем привет! Рассказываю об изыскания в библиотеке к проекту FastLed 3.2.9.

Ещё раз ОРОМНАЯ благодарность @gunner47, что не равнодушен и поддерживает/развивает проект среди простых смертных! 👍

Как он и советовал полез я в настройки файла power_mgt.cpp, и опытно - расчётным путем пришёл к такому виду значений:
static const uint8_t gRed_mW = 10 * 5; // 10mA @ 5v = 50mW
static const uint8_t gGreen_mW = 10 * 5; // 10mA @ 5v = 50mW
static const uint8_t gBlue_mW = 10 * 5; // 10mA @ 5v = 50mW
static const uint8_t gDark_mW = 1 * 5; // 1mA @ 5v = 5mW

Возможно правильнее все-же будет указать по 11мА на диод, которые я на мерил при работе без ограничения токов (шаг в 1мА даёт существенную разницу в результатах. А с дробными числами я не успел попробовать) . И поскольку тестил я на полоске из 8 пикселей, то в пересчёте на 256, вроде как должно будет получится правильно. Будет лампа под рукой, проверю и сообщу дополнительно...
В любом случае, все мои тесты (с ограничением тока на 1000; 2000 и 3000мА показали, что при установке одинаковых значений токов (которые равны фактически потреблямым светодиодами в RGB режимах, без ограничений по току), расчёт программы начинает работать изумительно корректно! 👍 Т.е. В относительных цифрах, стабильность потребляемых токов в RGB цветах и их переходу по радуге +/- 1,5%. А в режиме полного белого цвета + 3÷4% к потреблению в режиме RGB! Как и должно быть! 👍
Доволен как слон 🐘! 😉 👌

З. Ы. Что курили создатели библиотеки, когда тестили ледики и писали код, остаётся загадкой... 🤭
 

Максим-ka

✩✩✩✩✩✩✩
14 Июл 2019
8
1
запитываю данную сборку от БП DPS5020. до этого 5 сборок работало без проблем (ставлю 5 вольт и 3 ампера)
беру свои слова обратно- блок питания дает наводки. странно, конденсатор стоит в параллель, 5 сборок собрал на нем...
где то в видео Алекс дополнительно в параллель ставил еще керамический кондер
 

t_igr

★★✩✩✩✩✩
19 Июл 2019
74
55
беру свои слова обратно- блок питания дает наводки. странно, конденсатор стоит в параллель, 5 сборок собрал на нем...
где то в видео Алекс дополнительно в параллель ставил еще керамический кондер
Конденсатор от помех и наводок не спасёт, он только сгладит при резком падении напруги. Алекс ставил дополнительно диод на ногу 5В.
scheme5-2.jpg
 
  • Лойс +1
Реакции: greckoff

gunner47

★★★★★✩✩
18 Июн 2019
253
393
В свежей версии прошивки:
  • Бегущая строка с IP адресом лампы по пятикратному клику по физической кнопке (из прошивки от Алекса версии 1.5).
  • Как уже было замечено раньше, новая константа в Constants.h - "#define ESP_RESET_ON_STASRT (false)". Когда она false, запрещает затирание WiFi настроек при старте с зажатой кнопкой. Как показала практика, от этой опции больше вреда. Кому она нужна, замените на true.
  • Белый свет регулируется ползунком скорости, меняется оттенок с холодного на тёплый и наоборот.
  • Появилась возможность сохранять состояние (вкл/выкл) избранного в энергонезависимую память, не сбрасывается перезагрузкой модуля и выключением матрицы (ни, кнопкой, ни приложением, ни таймером).
Кому интересно, прошивайтесь и обновляйте приложение.
Об остальных вопросах помню, но пока нет времени:
  1. Нужен надёжный способ синхронизации времени. Пока не склонен добавлять часы реального времени, т.к. мне, например, нужен переход на зимнее время и обратно; т.е., интернет/смартфон под боком, проще брать время оттуда. Но это не точно :) Посмотрим.
  2. Вроде есть проблемы с Белым светом, нужно потестировать.
  3. MQTT. Начал пилить, но тут версия от Алекса прям в перпендикуляр вышла...
Спасибо всем, кто участвует.
 

somon

★★★✩✩✩✩
20 Авг 2019
140
123
@t_igr, @Максим-ka,
Не парни! Диод не решит проблему, хотя будет полезен ещё как защита от переполюсовки. Если фонит БП, то на мусорку его. Если же большие ВЧ пульсации, то надо LC фильтр городить...
На матрицу можно поставить лишь доп ёмкость от 1000мкф (если на БП не хватает), а на еэспешку можно добавить НЧ/ВЧ С фильтр, после диода (см. На фото):
IMG_20190924_221250.jpg IMG_20190924_221425.jpg

С двух сторон на контактах питания 5В, стоят две ёмкости - 10мкф керамика и 470мкф электролит +диод на входе.
Ещё плюс схемы, можно шить через USB модуль без подключения БП, не переживая ни за что!
 
Изменено:
  • Лойс +1
Реакции: t_igr

старый юный техник

✩✩✩✩✩✩✩
21 Сен 2019
19
0
доброго времени суток. собрал все по схеме, спаял соединил, загрузил скетч (версия от gunner47). вроде все нормально шло. но после настройки wifi плата не переподключается к роутеру, и матрица вообще признаков жизни не подает. такая же ситуация если просто точку доступа оставить, и в приложении не находит лампу. подскажите что я делаю не так?
p.s после получения матрицу проверяли варварским методом просто тыкая питание на контакты,светодиоды работали. будет очень обидно если каким то образом матрицу угробил
 

somon

★★★✩✩✩✩
20 Авг 2019
140
123
@старый юный техник, вечер добрый!
Не совсем понятно, что имеется ввиду - "после настройки wifi плата не переподключается к роутер"?
Собрали всё по схеме? Кнопка есть /на месте? От чего запитана схема, на какое напряжение? По идее если всё собрано правильно и сделано (залито/настроено) по инструкции, то всё работает без танцев с бубном...
Проверьте, всё ли сделали как описано в проекте и комментах прошивки...
Успехов! 👍
 

старый юный техник

✩✩✩✩✩✩✩
21 Сен 2019
19
0
@старый юный техник, вечер добрый!
Не совсем понятно, что имеется ввиду - "после настройки wifi плата не переподключается к роутер"?
Собрали всё по схеме? Кнопка есть /на месте? От чего запитана схема, на какое напряжение?
Успехов! 👍
имелась ввиду настойка сети wifi при первичном подключении к плате. собирал точно по схеме, плата nodemcu. блок питания 5v3a, сколько реального значения он выдает не имеется возможности проверить. и как можно проверить матрицу на работоспособность?
 

tsabak

✩✩✩✩✩✩✩
2 Сен 2018
81
8
@старый юный техник, Матрица вообще по барабану на подключение и настройки платы, можно ее не подключать. Если при первом подключении появляется точка то прошивается нормально, потом ПРАВИЛЬНАЯ настройка вайфая (с чем соединить и пароль) и перезагрузка. После точка пропадает а ip 192.168.1.66 типа смотреть в роутере новый клиент появится. Ну на крайняк можете перепрошить с полным стиранием так надежней.
 

tsabak

✩✩✩✩✩✩✩
2 Сен 2018
81
8
А ты вообще как смотришь подключилась нет? и да ...и как можно проверить матрицу на работоспособность? никак.
Она начнет сама работать если живая.
 

t_igr

★★✩✩✩✩✩
19 Июл 2019
74
55
@старый юный техник, подключите usb к node и посмотрите что пишет в монитор порта, укажите скорость 115200 вроде для node. На короткое время можно запитать всё от usb, и матрицу и плату, если запустится матрица, убавьте сразу яркость на минимум и затем выберете энергоемкий эффект, например Снег. У меня тоже встречаются некоторые проблемы с node, она ни в какую, последнее время, не перепрошивается по воздуху, что я только не делал, не проходит авторизация. Прошиваю через usb. При первом старте иногда приходится по два раза конфигурить подключение к сети вайфай, с первого раза не получается(не сохраняются что ли настройки) и я вновь вижу развернутую сеть LedLamp. Со второго раз как правило всё запускается. Ещё сейчас бывает когда просто включаю лампу в розетку и матрица не включается по прошествии некоторого времени, просто отключаю питание и включаю заново и всё работает.
 

tsabak

✩✩✩✩✩✩✩
2 Сен 2018
81
8
В Constants.h есть такое:
// --- ESP (WiFi клиент) ---------------
const uint8_t STA_STATIC_IP[] = {}; // статический IP адрес: {} - IP адрес определяется роутером; {192, 168, 1, 66} - IP адрес задан явно (если DHCP на роутере не решит иначе); должен быть из того же диапазона адресов, что разадаёт роутер

поменяй на 192.168.0.66 типа того
 
  • Лойс +1
Реакции: greckoff

tsabak

✩✩✩✩✩✩✩
2 Сен 2018
81
8
и да захочешь потом по воздуху шить пароль, он такой же 31415926
не сразу берет выкабеливается пару раз потом нормально все я шил от 18.09
 
  • Лойс +1
Реакции: greckoff