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, проблема с загрузкой скетча
Читайте (ЧИТАЙТЕ! Не пишите!) эти темы, там уже есть решение вашей проблемы.
Здесь подобные вопросы считаются оффтопом и молча удаляются, а авторы получают баллы нарушений.
 
Изменено:

Crazoff

✩✩✩✩✩✩✩
3 Июл 2020
17
1
@Сотнег, эффект Метаболз в Вашей прошивке нормально работает? Раньше этот эффект вызывал самопроизвольное выключение лампы после нескольких минут работы. Или если кто то прошивал пожалуйста проверьте работу этого эффекта.
Действительно ввключается
 

Quezis

✩✩✩✩✩✩✩
20 Июл 2020
2
0
собрал наконец данную лампу, есть какой-то глюк и я не знаю как его решить, когда включаешь nodemce вместе с подсоединенным пином Din матрицы, то на плате загорается светодиод и она вроде как работает но приложение еге видит и лампа не включается,как-только отпаяешь этот пин, все нормально, и приложении видит плату и кнопка работает, помогите пожалуйста
 

Сотнег

★★★★★★★
15 Янв 2020
4,341
1,492
@stepko,
эффект проявляется как результат деления на ноль.
Возможно, косяк в коде функции inoise8()
При работе с большими числами там где-то деление на ноль возникает...
 

Сотнег

★★★★★★★
15 Янв 2020
4,341
1,492
@Crazoff,
попробуйте строчку
byte color = 1000U / dist;
заменить на код:
C-like:
      byte color;
      if (dist == 0)
       color = 255U;
      else
       color = 1000U / dist;
 
  • Лойс +1
Реакции: Belokota

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
@Сотнег, в смысле byte color = 1000U / dist? Где dist <=3.
Переменная типа byte может принимать значение 0-255. Там не деление на 0, а переполнение переменной. Для хранения 1000U нужно uint16_t.
А все эти функции типа map8() и другие ***8() работают только с тмпом byte или uint8_t (что равнозначно), в диапазоне 0-255. 1000U ими вообще обработано быть не может (даже как аргумент принять), без переполнения переменной. Для таких значение там вроде есть функции ***16().

Пс. Может компилятор и правильно поймет
byte color = 1000U / dist, но стоит делать вот так
byte color = (1000U / dist); Тогда он точно поймет вас правильно.

*** Про "правильность" компилятора для esp вообще можно петь песни. ;) Хотите, я вам парочку приколов расскажу, если интересно?
 
Изменено:
  • Лойс +1
Реакции: stepko

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@kostyamat, переполнение там по-барабану, а вот деление на 0 вроде было, если память не изменяет, правил месяц или пару назад.
* ну конечно же в другом варианте прошивки
 

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
@kDn, ну так если функции передать значение, которое даже в аргумент не лезет, то там что угодно получится, предугадать не берусь, даже деление на 0.
*** В одном из эффектов, деление на 0 было явно забито в математику, и ниче esp в эксепшин не вываливалась, что меня несколько удивляло. Я то, конечно, поправил, но сам факт "дуракоустойчивости" удивил.
 

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
ну так если функции передать значение, которое даже в аргумент не лезет, то там что угодно получится, предугадать не берусь, даже деление на 0.
Остаток от деления по модулю разрядной сетки там получится. Но это не критично.
Т.е. нечто вида:

C++:
uint8_t var = 4;
var = 1000 / var;
к ошибке не приведет ни при каких раскладах, даже если допустить что 1000 будет неявно приведено к uint8_t, можете проверить при желании во всем диапазоне var (кроме 0) как с явным так и без явного приведения типов
 

kostyamat

★★★★★★✩
29 Окт 2019
1,098
632
@kDn, даже проверять не буду, верю. Но... Это не приведет к падению контроллера, но ошибка в эффекте гарантирована.
Для того, чтобы такие вещи не происходили, про размерность переменных нужно помнить. Второе - стоит писать byte var = (1000 / 4) тогда никакие неявные приведения к типу не страшны.
А еще, нужно помнить, что компилятор esp очень фривольно относится к всяким преобразованиям/ приведениям к типу. Атмеловский сразу за такие вещи наказывает, как минимум варнингом во всю морду, а этому хоть бы хны. С одной стороны - вывод в консоль не такой страшный при компиляции, а с другой - потом полжизни можешь искать "а почему оно так себя ведет?" и не понимать ошибки.
Еще, компилятор esp при объявлении переменной не присваевает ей 0 (как это делает атмеловский) и жутко обижается при компиляции, мол "переменная не инициализировна должным образом" (потому и ругается на библиотеки, которые изначально пришли с ардуино). Но зато спокойно и молча принимает вот такую конструкцию
for (byte i; i < b, i++) (что атмеловский не примет никогда)
И вы можете убиться об стену долго не понимая почему ваш for не работает. А потому что ваш i равен мусору в ячейке ОЗУ, выделенной под него в момент объявления. Мля, ДАЖЕ ВАРНИНГА НЕТУ!
Вот такие пироги, мдя...
 
Изменено:

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
Еще, компилятор esp при объявлении переменной не присваевает ей 0
И не должен. Инициализация нулем гарантирована только для статических или глобальных переменных, но вовсе не для кучи/стека - для них это дело программиста.
 

Crazoff

✩✩✩✩✩✩✩
3 Июл 2020
17
1

@Crazoff,
Как проявляется эффект?
Может перегрев матрицы?
Собрал лампу всего пару дней назад. Сегодня погоняю, попробую найти зависимость. Показалось, что при открытом приложении не выключается, при свернутом гаснет. Засеку время работы эффекта, может через равные промежутки выключается. Возможно это даст какое то понимание процесса.
 

Сотнег

★★★★★★★
15 Янв 2020
4,341
1,492
@Crazoff, 15 минут примерно.
Но понимания это не дало.
Попробуйте сразу строчку на код заменить, если не сложно.
Я на предыдущей странице дал.
 

Сотнег

★★★★★★★
15 Янв 2020
4,341
1,492
@Quezis,
не на тот пин, разве что, цепляете.
в оригинальной схеме DIN - исходящий контакт.
Плате без разницы, припаяно там что-то или нет.
 
  • Лойс +1
Реакции: stepko

Сотнег

★★★★★★★
15 Янв 2020
4,341
1,492
Прошивка 69 эффектов в 1 proper
Ссылка на загрузку архива с прошивкой: https://download.ru/files/vAB7aFmZ
@Palpalych , @Belokota
В Метаболзе наконец-то исправлен глюк с перезагрузкой лампы.
@kDn у себя исправил месяцем ранее, но это был эксклюзив для его прошивки, видимо.

Что нового:
  • В эффекте Белый свет сделано более плавное изменение площади свечения бегунком Масштаб (может, и зря).
  • В эффекте Метаболз наконец-то исправлена проблема перезагрузки лампы при длительной работе эффекта.
 
Изменено:
  • Лойс +1
Реакции: Belokota, Burai и stepko

kDn

★★★★★✩✩
18 Ноя 2019
1,103
437
@kDn у себя исправил месяцем ранее, но это был эксклюзив для его прошивки, видимо.
В смысле эксклюзив? Я обычно в коммитах пишу чего делаю, также оставляю сообщение в ветке. Просто вообще-то еще 100500 разных багов и других недороботок есть, так что на мелкие правки я вообще внимания не обращаю. Исправил и забыл сразу же... Все эти эффекты еще много раз могут переделываться, как чиниться, так и ломаться. Что у нас и происходит. Код открыт и доступен, так что ни о каких эксклюзивах речи не идет.
 
  • Лойс +1
Реакции: stepko

Crazoff

✩✩✩✩✩✩✩
3 Июл 2020
17
1
Замечательно, спасибо.
Залил крайнюю прошивку (proper). Теперь при попытке включить Белый свет (0 режим), лампа виснет и перегружается, (если судить по белому светику) остаётся в офф режиме. От кнопки включается последний режим. Метаболз, после 5 минут, вспышки артефактов.Попробую видео поймать, если нужно. Вот как-то так.Остальные режимы пока вроде в норме.
https://ru.files.fm/u/24g32543

Перезалил, Метаболз пока норм.(может глюк). Режим 0 не работает
 
Изменено:

Crazoff

✩✩✩✩✩✩✩
3 Июл 2020
17
1
@Crazoff, извиняюсь, накосячил.
Перезалил архив.
Сейчас попробую. Артефакты подтверждаю. Возможно питание хреновенькое, но не должно. Погоняю в других режимах, яркость добавлю.

Сейчас попробую. Артефакты подтверждаю. Возможно питание хреновенькое, но не должно. Погоняю в других режимах, яркость добавлю.
Залил. Режим 0 заработал, Но автоматически увеличивается яркость до макс. Убавляешь, снова увеличивается. 😁
 

Crazoff

✩✩✩✩✩✩✩
3 Июл 2020
17
1
@Crazoff,
с питанием у вас совсем стало плохо.
Кнопка залипла, матрица мерцает.
Аааа. Проверял без кнопки, она на разъёме. Не подключил после прошивки. Извиняюсь, сейчас проверю.
Всё норм. Спасибо за оперативность.