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

ЗДЕСЬ ОБСУЖДАЕМ ТОЛЬКО ДАННУЮ ПРОШИВКУ
ВСЕ ЧТО НЕ ПО СИЯ ТЕМЕ И ПРОШИВКЕ, ВСЕ СНОСИТСЯ НА@@@!

Очень просим не делать репост "ЦИТИРОВАНИЕ" сообщений! Делать только в КРАЙНЕЙ необходимости, удаляя лишний текст (у нас не ЧАТ)!
Иначе опять будет 160 страниц и 0 пользы ....

Для ответа КОНКРЕТНОМУ пользователю, достаточно нажать " ОТВЕТ"

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


ПО ВОПРОСАМ РАБОТЫ ПРИЛОЖЕНИЯ ОТ KOTEYKA ИДЕМ В ЭТУ ТЕМУ

Голосовое управление лампой Гайвера, через Яндекс Алису (прошивка Gunner47).

Яндекс диск Файл ПДФ. Актуально на 27.01.2020г
наш сервер НЕ ОБНОВЛЯЕТСЯ, от 27.01.2020г
Прошивка gunner47 v.2 "86 эффектов в 1" или уже больше - разработку ведет @Сотнег
Прошивка gunner47 v.2.X_web : веб-интерфейс (без необходимости перепрошивки) - разработку ведет @alvikskor
Прошивка от Shaitan с поддержкой mp3 и пульта (тут не обсуждается. Обсуждается в теме прошивки)
Прошивка FireLamp with Remote Control - разработку ведет @SlingMaster

Для тех у кого умный дом Home Assistant есть отличный компонент

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

Комментарии

mechanic

★★★★✩✩✩
Команда форума
31 Июл 2018
403
206
ЗДЕСЬ ОБСУЖДАЕМ ТОЛЬКО ДАННУЮ ПРОШИВКУ
ВСЕ ЧТО НЕ ПО СИЯ ТЕМЕ И ПРОШИВКЕ, ВСЕ СНОСИТСЯ НА@@@!

Очень просим не делать репост "ЦИТИРОВАНИЕ" сообщений! Делать только в КРАЙНЕЙ необходимости, удаляя лишний текст (у нас не ЧАТ)!
Иначе опять будет 160 страниц и 0 пользы ....

Для ответа КОНКРЕТНОМУ пользователю, достаточно нажать " ОТВЕТ"

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


ПО ВОПРОСАМ РАБОТЫ ПРИЛОЖЕНИЯ ОТ KOTEYKA ИДЕМ В ЭТУ ТЕМУ

Голосовое управление лампой Гайвера, через Яндекс Алису (прошивка Gunner47).

Яндекс диск Файл ПДФ. Актуально на 27.01.2020г
наш сервер НЕ ОБНОВЛЯЕТСЯ, от 27.01.2020г
Прошивка gunner47 v.2 "86 эффектов в 1" или уже больше - разработку ведет @Сотнег
Прошивка gunner47 v.2.X_web : веб-интерфейс (без необходимости перепрошивки) - разработку ведет @alvikskor
Прошивка от Shaitan с поддержкой mp3 и пульта (тут не обсуждается. Обсуждается в теме прошивки)
Прошивка FireLamp with Remote Control - разработку ведет @SlingMaster

Для тех у кого умный дом Home Assistant есть отличный компонент

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

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
@Сотнег, ну тогда через буфер меньшего размера, как у нас в Кубиках. Я там "Магму" в Соулмейт апдейтнул. Ссылка та же. Вы этого хотели?
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@kostyamat,
и с буферами трудоёмко и без буферов трудоёмко. Не знаю, кто захочет запариваться.

Магма плещется от 0% до 60% объёма, а хочется от 30 до 50 примерно.
Это примерно как в Тикси Ленде эффект №8, но чтобы не настолько однообразно и без мерцаний на стыке.
 

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
@Сотнег,
Короче. Пошел я сегодня к соседу. У него старый роутер Dlink 315. Грузится, почти, минуту. Но в процессе загрузки сначала появляется глобальный интернет, а потом WiFi. Чтобы эмулировать мой случай, я выдернул из него WAN. А через 30 секунд подключил. И в этом случае я получил такую картину

22:11:13.513 -> Рабочий режим лампы: ESP_MODE = 1
22:11:13.513 -> Случайный выбор эффектов: RANDOM_ON = 1
22:11:13.553 -> Старт в режиме WiFi клиента (подключение к роутеру)
22:11:13.553 -> Подключение к WiFi сети: dlink
22:11:54.186 -> IP адрес: 192.168.0.101
22:11:54.186 -> Порт UDP сервера: 8888
22:11:54.226 -> Статус Error: 1
22:11:54.226 -> IP адрес NTP: 255.255.255.255
22:12:24 Появился интернет
22:12:54.321 -> IP адрес NTP: 193.70.94.182
22:12:54.321 -> Подключение к интернету установлено
Работает без пинга. То есть, таки, сильно зависит от роутера. Проверьте ещё у себя по возможности.
 
  • Лойс +1
Реакции: Сотнег

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
@alvikskor,
А сегодня обнаружил нюанс. После соседа, с моим роутером тоже всё заработало. После экспериментов оказалось, что если время ожидания подключения к WiFi ( константа ESP_CONN_TIMEOUT) более 50 секунд (а я её использую ещё и для повторной проверки подключения к интернет, если перед этим подключения не было), то после восстановления соединения с глобальным интернетом при очередной проверке возвращается правильный адрес NTP. Если это время меньше, то возвращается 255.255.255.255. Причём, бесконечно. Короче Поставил ESP_CONN_TIMEOUT = 60 и убрал ping. Раз 20 пробовал перегружать роутер. Всё работает. :)))
 
  • Лойс +1
Реакции: Сотнег

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@alvikskor, по-моему, логика закончилась.

а я её использую ещё и для повторной проверки подключения к интернет
Финальный код дайте.

И что получается,
такими строчками не отделаться?
Код:
#define ESP_CONN_TIMEOUT (60)
...
Код:
if (!WiFi.hostByName(NTP_ADDRESS, ntpServerIp, RESOLVE_TIMEOUT) || ntpServerIp[0] == 0 || ntpServerIp == IPAddress(255U, 255U, 255U, 255U))
 

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
@Сотнег,
В принципе, отделались именно так. Но чтобы к этому прийти...
Это весь проект. Я там немного поправил функцию void showWarning() . Добавил в неё управление MOSFET. А то в момент включения питания и при выключенном кнопкой лампе предупреждения не работали. Сделал Вкл/Выкл случайный выбор параметров эффектов в цикле с сохранением в EEPROM. Управление пока через секретные команды rnd=on / rnd=off При управлении через приложение (если Koteyka добавит) RND_ON / RND_OFF соответственно. Единственное, я пока не разобрался где вставить передачу переменной random_on приложению. Подскажете?
 

Вложения

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@alvikskor,
я не захотел связываться с дополнительным параметром статуса лампы.

Если его добавлять в общую строку статуса - это светит проблемами с совместимостью,
а если отдельно запрашивать - будет как с Циклом неудобно.

Но я переживу любой вариант.
Решайте с @Koteyka 🐱 и @Максим Казачков.
 

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
Если его добавлять в общую строку статуса - это светит проблемами с совместимостью,
а если отдельно запрашивать - будет как с Циклом неудобно.
Было бы не плохо, ели бы Вы пояснили где формируется эта строка статуса и из чего состоит. И почему неудобно передавать вместе с другими параметрами цикла. А за одно - где эти параметры формируются и отправляются.
И еще. Подскажите где порыться, что бы убрать вывод времени бегущей строкой на выключенной лампе. Хочется видеть его каждые 15 минут, но только когда работают эффекты.
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
Было бы не плохо, ели бы Вы пояснили где формируется эта строка статуса и из чего состоит.
void sendCurrent(char *outputBuffer)
там построчно видно, из чего состоит.

И почему неудобно передавать вместе с другими параметрами цикла.
Это в другом месте:
static void SetStatus(char* statusText)

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

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

где порыться, что бы убрать вывод времени бегущей строкой на выключенной лампе. Хочется видеть его каждые 15 минут, но только когда работают эффекты.
Заменить строку
if ((needToPrint && thisTime != lastTimePrinted) || onDemand)
на
if ((ONflag && needToPrint && thisTime != lastTimePrinted) || onDemand)
 

alvikskor

★★★✩✩✩✩
18 Янв 2021
388
130
Днепр. Украина
@Сотнег,
Заменить строку
Ага. Спасибо.
Передавать вместе с той или с другой строчкой неудобно тем,
что в приложении придётся определять строку старого и нового формата
для поддержки совместимости со старыми прошивками.
Как я понял, в строке Outbound UDP packet: FAV 1 5 10 0 выделенная 1 отвечает за вкл/выкл цикла. 0 - выкл, 1 - вкл. Почему нельзя сделать 1 - вкл без случайных параметров, а 2 - вкл со случайными параметрами. Формат строки (количество символов) не меняется. Нужно только парсинг чуть доработать и на экран еще один переключатель вывести, например, радом с "Не отключать режим "Цикл"" в настройках цикла.
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
Почему нельзя сделать 1 - вкл без случайных параметров, а 2 - вкл со случайными параметрами.
Это пускай авторы приложений отвечают, почему нельзя, или делают включатель такой же с тремя статусами.
Я свои варианты реализации накидывать не стану. И без меня хватит идей.
 

gafar65

✩✩✩✩✩✩✩
25 Дек 2020
16
1
Прошивка 86in1 Огонь 2020 почему то синего цвета, ползунком устанавливаю нормальный цвет, но через какое то время, закономерности не понял, опять становится синим, уже два раза перешивал, тоже самое. На 85in1 такого не было
 

nowigator22

✩✩✩✩✩✩✩
20 Мар 2021
4
0
Всем привет! Собрал лампу, работает. Сенсорная кнопка откликается (led), но не дает никаких команд. Прошивка от gunner47_v2.86in1. Плата wemos d1 mini.
Как решить проблему?
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@nowigator22, в теории кнопку могли отключить программно для зашиты от попугаев и кошек (есть функция в приложении),
но, скорее всего, вы её неправильно припаяли или влезли в настройки кнопки в прошивке.
 

gafar65

✩✩✩✩✩✩✩
25 Дек 2020
16
1

@Сотнег,
Ну да выбрано несколько эффектов и они крутятся в цикле.

Но даже я просто выбираю из списка, только этот эфект...и огонь синего цвета
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@gafar65,
в прошивке на вкладке Constants.h есть настройка.
Если включен режим Цикл, эффекты будут включаться на случайных настройках.
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
И только этот огонь, все другие огни ,всегда нормального цвета.
Давайте искать подробнее...

На какие конкретно состояния сбиваются настройки?
Всегда ли на одни и те же?

Какое приложение вы используете?

На какие состояния вы выставляете настройки перед тем, как они сбиваются?

Проще, если в картинках.
 

nowigator22

✩✩✩✩✩✩✩
20 Мар 2021
4
0
@nowigator22, в теории кнопку могли отключить программно для зашиты от попугаев и кошек (есть функция в приложении),
но, скорее всего, вы её неправильно припаяли или влезли в настройки кнопки в прошивке.
Припаяна правильно! А больше нигде не лазил, не спец в настройках прошивки что-то менять.

Сразу при включении на нижней строке бегают два синих цвета! когда подключаюсь по вайфаю, пропадает!
 
Изменено:

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@nowigator22,
и правильно бегают.
Вы прочитайте в описании прошивки Часто возникающие вопросы.
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
@Сотнег,
Это весь проект. Я там немного поправил функцию void showWarning() . Добавил в неё управление MOSFET. А то в момент включения питания и при выключенном кнопкой лампе предупреждения не работали. Сделал Вкл/Выкл случайный выбор параметров эффектов в цикле с сохранением в EEPROM. Управление пока через секретные команды rnd=on / rnd=off При управлении через приложение (если Koteyka добавит) RND_ON / RND_OFF соответственно.
Я переварил ваши правки. Корректный вариант в обновлённом архива с прошивкой.
Выключение мосфета я взял из "пятикратного нажатия кнопки". Надеюсь, правильно работает.

Главная ошибка - у вас нельзя было включить рандомные настройки эффекту,
если пришла прямая команда от приложения, а рандом для режима Цикл выключен.
Исправил.

Ну и вообще всё разрулил по красоте.
Секретные команды для =0, =1, =Z делать не стал. Ключевое слово random=.

Если будете использовать, проверьте пожалуйста,
не подвисает ли лампа снова, пока ждёт роутера?
(время ожидания нужно с 7U на 60U поменять, ну и остальные ваши настройки тоже)
 

Сотнег

★★★★★★★
15 Янв 2020
4,346
1,492
По наработкам @alvikskor добавил функцию "ВКЛ/ВЫКЛ" выбора случайных настроек через "секретные команды".
Прошивка 86² эффектов в 1
Ссылка на загрузку архива с прошивкой: https://download.ru/files/BBv5BG58
копия на другом сервере: https://cloud.mail.ru/public/W6TV/buiNFCQ2B
Главное:
Теперь в режиме автоматического переключения эффектов (в режиме Цикл) эффекты включаются на случайных, но удачных настройках.
Не знаю, как я раньше жил без этого... И можно это отключить, если не требуется через "секретные команды".

Что ещё нового:
  • Убран запрет на установку времени ожидания подключения к роутеру более 7 секунд (для этого нужно брать библиотеки из архива с прошивкой). Функцию доделывал @alvikskor и, похоже, довёл до ума. Но время нужно ставить не менее 60 секунд.
  • Количество команд "RND_" от приложения для управления режимом случайных настроек увеличилось ещё на две (а приложение такое пока ещё не появилось @Koteyka 🐱 , @Максим Казачков ).
 
Изменено: