WiFi лампа-будильник. Задания на доработку

vvip

★★★★✩✩✩
18 Дек 2018
470
207
Доброго дня ООО Любезнейший ДЖИН )))
вы на гитхабе свою прошивку не обновляли??? Столкнулся с некоторыми проблемами у меня версия GyverLampWiFi_v1.00 .... к сути ...
проподает точка, зависают эфекты-часы работают нормально, (сегодня утром обнаружил зависший снегопад...) вчера заметил глюк... в динамиках чтото хрюкнуло и лампа потухла и часы стали как будто не настроены -:- с кнопки управление осталось , но точка не появилась, помогает только перезапуск или перезагрузка НОДМСУ, в начале использовал вемос(менял пины на ленту и на плеер), было подобное... вемос с матрицей ушёл дочке в портфель))), эта версия на
ESP8266 CH340G NodeMcu V3 Lua питание от 8А 12в блока через понижающий модуль 5А, в прошивке поставил ограничение на 4000мА, больше ничего не менял... если есть чтонить чтоб это не происходило готов стать Бетта тестером)))) к стати матрица в рюкзак на акумах с подзорядкой уже месяц работает и вроде не глючит, только раз зарядку профукали и вайфай не отваливается...
Разул глаза))) нашёл обнову... попробую отпишусь)))) да к стати использую только точку... другого не надо....
Ну да. Мы две недели уже с AndyIP обновление обсуждаем. Тестеры нужны, да.
Особо ценны тестеры, которые либо говорят как ошибку воспроизвести, либо сами находят причины и предлагают пути устранения ошибки.
А то в ветке обсуждения пишут - "WiFi отваливается через 7 секунд, что делать?" А у меня за год возни с этими микроконтроллерами - ни разу не отвалился и я не знаю что делать, чтоб отваливался. Поэтому ответа нет.
Ошибка с периодической перезагрузкой контроллера по wdt есть. Причина неизвестна. Как устранить - тоже понятия не имею.
Но мне она не мешает. У меня конструкция используется как настольные часы. После перезагрузки всё восстанавливается. Я замечаю то только если монитор порта включен. Обычно раз/два в сутки может перегрузиться по wdt...

Кстати, обычно все эти понижайки - не линейные. Используется какой-то импульсный преобразователь. Импульсный - значит высока вероятность всех этих шумов в линию питания и наводки на управляющий провод, если нет хорошего экранирования. А это прямая причина зависания, сбоев и пропадания WiFi. Если есть чем посмотреть шумыы, типа осциллографа - было бы интересно. Если нет - я бы поставил рядом с питанием микроконтроллера электролит на 4700 мкф и параллельно ему керамический конденсатор на 33нф. Номиналы примерные
 

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
Ну да. Мы две недели уже с AndyIP обновление обсуждаем. Тестеры нужны, да.
Особо ценны тестеры, которые либо говорят как ошибку воспроизвести, либо сами находят причины и предлагают пути устранения ошибки.
А то в ветке обсуждения пишут - "WiFi отваливается через 7 секунд, что делать?" А у меня за год возни с этими микроконтроллерами - ни разу не отвалился и я не знаю что делать, чтоб отваливался. Поэтому ответа нет.
Ошибка с периодической перезагрузкой контроллера по wdt есть. Причина неизвестна. Как устранить - тоже понятия не имею.
Но мне она не мешает. У меня конструкция используется как настольные часы. После перезагрузки всё восстанавливается. Я замечаю то только если монитор порта включен. Обычно раз/два в сутки может перегрузиться по wdt...

Кстати, обычно все эти понижайки - не линейные. Используется какой-то импульсный преобразователь. Импульсный - значит высока вероятность всех этих шумов в линию питания и наводки на управляющий провод, если нет хорошего экранирования. А это прямая причина зависания, сбоев и пропадания WiFi. Если есть чем посмотреть шумыы, типа осциллографа - было бы интересно. Если нет - я бы поставил рядом с питанием микроконтроллера электролит на 4700 мкф и параллельно ему керамический конденсатор на 33нф. Номиналы примерные
Да. Если есть проблемы по питанию или контакты плохие, а так же вполне может быть экранировка от наводок нужна, будут зависания и ребуты.
В данный момент, последняя прошивка очень стабильна. Использую NodeMCU V3 Lua (Dev Kit, чип CP2102 )+ блок питания на 5v 8А (выдает 5.2 по цешке) ограничение по току дефолтное,5А - работает сутками без проблем. Ну и еще используется ESP32 Dev kit (38 pin желтые ножки, чип CP2102) с тем же блоком питания. Проблем не наблюдается. На тесте более 3-х суток без ребутов и зависаний.
 

malec

★★★★✩✩✩
5 Фев 2019
680
257
Да. Если есть проблемы по питанию или контакты плохие, а так же вполне может быть экранировка от наводок нужна, будут зависания и ребуты.
В данный момент, последняя прошивка очень стабильна. Использую NodeMCU V3 Lua (Dev Kit, чип CP2102 )+ блок питания на 5v 8А (выдает 5.2 по цешке) ограничение по току дефолтное,5А - работает сутками без проблем. Ну и еще используется ESP32 Dev kit (38 pin желтые ножки, чип CP2102) с тем же блоком питания. Проблем не наблюдается. На тесте более 3-х суток без ребутов и зависаний.
Вечерок в радость Господа рукоблуды))) короче добрался до дому , на работе скачал новую версию, поставил иииии ...... жопа какаято((( ну для начала немного поковырял скетч,не компилировался... старые версии некоторой фигни ИДЭ показала где копать... красава что всё предусмотрел))))
но суть не в этом, первая проблема
кнопка работает, но яркость сама регулируется, тронеш в плюс до конца, тронеш ешё в минус до конца... подключить точку удалось когда лампа была в минимальной яркости и (прилогу на смарте пока не менял) пошевелиш яркость , она увеличивается , ешё шевельнёш уменьшается. Да, на всех прошивках и у гайвера заметил что если яркость увеличить на максимум, точка пропадает и щас тоже это произошло, с начала я думал что блок не вывозит, подключал к лабораторнику 20А , на самой большой яркости матрицы в "белом" ток 8А , бывает чуть + чуть - от тона белого зависит и напряжения, да ещё на вемосе заметил что если питать матрицу больше 5в всплывают артефакты... повторюсь МАТРИЦУ... в этих экспирементах что вемос, что мсу питал от юсб компа отдельно... Эти-же проблемы были на разных проектах с матрицами, на ленте не пробовал...в рюкзаке vvip на бегущей строке заметил... понизил питание матрицы до 4.5в стало стабильнее, щас матрица рюкзака работает стабильно на вемосе и ранней прошивкой от гайвера при питании 4.75в и чуть ниже средней яркости, по питалову к матрице впаял кандёр на 10000мКф...
........как решить первую проблему с яркостью???? потом остальное по тестим)))) пока хочу новую прошивку...
Да парни повторюсь я использую точку доступа к роутеру подключать не хочу,
 
Изменено:

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
Вечерок в радость Господа рукоблуды))) короче добрался до дому , на работе скачал новую версию, поставил иииии ...... жопа какаято((( ну для начала немного поковырял скетч,не компилировался... старые версии некоторой фигни ИДЭ показала где копать... красава что всё предусмотрел))))
но суть не в этом, первая проблема
кнопка работает, но яркость сама регулируется, тронеш в плюс до конца, тронеш ешё в минус до конца... подключить точку удалось когда лампа была в минимальной яркости и (прилогу на смарте пока не менял) пошевелиш яркость , она увеличивается , ешё шевельнёш уменьшается. Да, на всех прошивках и у гайвера заметил что если яркость увеличить на максимум, точка пропадает и щас тоже это произошло, с начала я думал что блок не вывозит, подключал к лабораторнику 20А , на самой большой яркости матрицы в "белом" ток 8А , бывает чуть + чуть - от тона белого зависит и напряжения, да ещё на вемосе заметил что если питать матрицу больше 5в всплывают артефакты... повторюсь МАТРИЦУ... в этих экспирементах что вемос, что мсу питал от юсб компа отдельно... Эти-же проблемы были на разных проектах с матрицами, на ленте не пробовал...в рюкзаке
vvip на бегущей строке заметил... понизил питание матрицы до 4.5в стало стабильнее, щас матрица рюкзака работает стабильно на вемосе при питании 4.75в и малой яркости...
как решить первую проблему с яркостью????
В прошивке по умолчанию установлена именно кнопка. Не сенсор а тупая кнопка.
Если у тебя сенсор - меняй строчку:
GButton butt(PIN_BTN, HIGH_PULL, NORM_OPEN);
на
GButton butt(PIN_BTN, LOW_PULL, NORM_OPEN);
В файле GyverLampWiFi_v1.01.ino
Приложение на смартфоне нужно обязательно поменять на новое - из новой прошивки. Там ведь даже протокол поменялся вроде слегка.
Если можно - фотки артефактов в студию...
 
Изменено:

vvip

★★★★✩✩✩
18 Дек 2018
470
207
@malec, вполне возможно, что при повышении яркости c увеличением тока увеличиваются шумы и пульсации по линии питания плюс наводки. Это может приводить к сбоям, зависаниям и потерям сети. Очень капризны и чувствительны к качеству питания эти ESP-шки.
Про напряжение питания и артефакты - важно согласование уровней в СИСТЕМЕ матрица-контроллер. При увеличении питания матрицы ты увеличиваешь ожидаемое диодами напряжение логической единицы в сигнале. ESP-шка с ее 3.3В логикой не может раскачать сигнал до ожидаемого уровня - отсюда неверное распознавание управляющих посылок и неверное отображение на матрице.Если кнопка сенсорная - помимо того, что написал @AndyIP - желательно использовать экранированный защищенный провод до кнопки.
 

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
@malec, вполне возможно, что при повышении яркости c увеличением тока увеличиваются шумы и пульсации по линии питания плюс наводки. Это может приводить к сбоям, зависаниям и потерям сети. Очень капризны и чувствительны к качеству питания эти ESP-шки.
Про напряжение питания и артефакты - важно согласование уровней в СИСТЕМЕ матрица-контроллер. При увеличении питания матрицы ты увеличиваешь ожидаемое диодами напряжение логической единицы в сигнале. ESP-шка с ее 3.3В логикой не может раскачать сигнал до ожидаемого уровня - отсюда неверное распознавание управляющих посылок и неверное отображение на матрице.Если кнопка сенсорная - помимо того, что написал @AndyIP - желательно использовать экранированный защищенный провод до кнопки.
С этими сенсорами вообще странная штука. У меня они работают как часы. Реагируют только на палец и на провод от наушников, когда тот случайно рядом оказался :) В остальном никаких проблем с ними не видел. Причем провода использовал самые обычные, тоненькие. Я бы сказал Очень тоненькие! Пофиг - работают как надо. На лампе у меня, у сына и на двух испытательных стендах...
И в то же время, своими глазами смотрел видео, где эти сенсоры действительно живут своей жизнью. Залипают, реагируют непонятно на что. Просто так лежит и сам по себе срабатывает :)))
Может мне удачная партия попалась, уж не знаю что и думать... :)
 

malec

★★★★✩✩✩
5 Фев 2019
680
257
В прошивке по умолчанию установлена именно кнопка. Не сенсор а тупая кнопка.
Если у тебя сенсор - меняй строчку:
GButton butt(PIN_BTN, HIGH_PULL, NORM_OPEN);
на
GButton butt(PIN_BTN, LOW_PULL, NORM_OPEN);
В файле GyverLampWiFi_v1.01.ino
Приложение на смартфоне нужно обязательно поменять на новое - из новой прошивки. Там ведь даже протокол поменялся вроде слегка.
Если можно - фотки артефактов в студию...
))) молодцы.. всё продумали сразу не заметил))), появилась проблема с приложухой, поставил из новой версии точка подключенна приложение не подключается(((
 

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
))) молодцы.. всё продумали сразу не заметил))), появилась проблема с приложухой, поставил из новой версии точка подключенна приложение не подключается(((
Вопрос... Ты прошил свою ESP, с новой прошивкой. А в файле eeprom.ino поменял значение константы #define EEPROM_OK в первой счтрочке на единицу больше например...? Если нет - то у тебя в EEPROM в данный момент полный бардак :)
измени значение 0x5C на 0x5B например и прошей заново
 

vvip

★★★★✩✩✩
18 Дек 2018
470
207
С этими сенсорами вообще странная штука. У меня они работают как часы. Реагируют только на палец и на провод от наушников, когда тот случайно рядом оказался :) В остальном никаких проблем с ними не видел. Причем провода использовал самые обычные, тоненькие. Я бы сказал Очень тоненькие! Пофиг - работают как надо. На лампе у меня, у сына и на двух испытательных стендах...
И в то же время, своими глазами смотрел видео, где эти сенсоры действительно живут своей жизнью. Залипают, реагируют непонятно на что. Просто так лежит и сам по себе срабатывает :)))
Может мне удачная партия попалась, уж не знаю что и думать... :)
Вот у меня такая история с сенсорами. Неделю промучился - живет сам по себе. Плюнул, сделал на обычной нажимной кнопке...
Погонял на макс яркости и с интенсивной передачей в режиме точки доступа.
Падает, зараза :(
Вот пример стека:
0x4021094f: loop_task(ETSEvent*) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 187
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x40218d78: _svfprintf_r at /home/earle/src/esp-quick-toolchain/repo/newlib/newlib/libc/stdio/nano-vfprintf.c line 612
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x40101220: malloc(size_t) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\umm_malloc\umm_malloc.cpp line 511
0x40100b54: pvPortMalloc(size_t, char const*, int) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\heap.cpp line 271
0x402190ad: glue2esp_linkoutput at glue-esp/lwip-esp.c line 301
0x40219349: new_linkoutput at glue-lwip/lwip-git.c line 265
0x40219754: ethernet_output at netif/ethernet.c line 312
0x40218e37: _svfprintf_r at /home/earle/src/esp-quick-toolchain/repo/newlib/newlib/libc/stdio/nano-vfprintf.c line 660
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x40100841: millis() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_wiring.cpp line 176
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x4020cb70: hour() (C:\Program Files at x86)\Arduino\libraries\Time\Time.cpp line 51
0x4020cb70: hour() (C:\Program Files at x86)\Arduino\libraries\Time\Time.cpp line 51
0x40201192: timerMinim::isReady() at C:\Temp\arduino_build_905033\sketch/timerMinim.h line 24
0x4020fc20: String::~String() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\WString.cpp line 125
0x4010089c: millis() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_wiring.cpp line 188
0x402109a0: esp_yield() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 100
0x40210fa7: __delay(unsigned long) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_wiring.cpp line 54
0x40209628: checkAlarmTime() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/clock.ino line 636
0x40201198: timerMinim::isReady() at C:\Temp\arduino_build_905033\sketch/timerMinim.h line 24
0x402071e6: clockTicker() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/clock.ino line 265
0x40201198: timerMinim::isReady() at C:\Temp\arduino_build_905033\sketch/timerMinim.h line 24
0x40207c78: doEffectWithOverlay(unsigned char) at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/custom.ino line 42
0x4020ae51: process() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/a_main.ino line 80
0x402081d0: setup() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/GyverLampWiFi_v1.01.ino line 510
0x4020b1c8: loop() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/GyverLampWiFi_v1.01.ino line 515
0x40210ad0: loop_wrapper() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 179
Вообще не логичный. Типа из loop() вызван setup(), повторяющиеся куски...
Впечатление, что внутри ядра какие-то параллельные процессы не синхронизированы, устраивают гонки, вступают в клинч и железный таймер их сбрасывает. Как будто ядро в плане многозадачности и параллельных процессов криво написано.
Но тут уже с нашей стороны вряд ли что-то исправить можно...
 

malec

★★★★✩✩✩
5 Фев 2019
680
257
@malec, вполне возможно, что при повышении яркости c увеличением тока увеличиваются шумы и пульсации по линии питания плюс наводки. Это может приводить к сбоям, зависаниям и потерям сети. Очень капризны и чувствительны к качеству питания эти ESP-шки.
Про напряжение питания и артефакты - важно согласование уровней в СИСТЕМЕ матрица-контроллер. При увеличении питания матрицы ты увеличиваешь ожидаемое диодами напряжение логической единицы в сигнале. ESP-шка с ее 3.3В логикой не может раскачать сигнал до ожидаемого уровня - отсюда неверное распознавание управляющих посылок и неверное отображение на матрице.Если кнопка сенсорная - помимо того, что написал @AndyIP - желательно использовать экранированный защищенный провод до кнопки.
про питалово я ещё пол года назад писал ... и на кнопку у меня провод в экране на этой лампе, на прошлой небыло, и на рюкзаке нет, рюкзак на первой гайверовской прошивке с питанием от батареи с повышающим модулем до 4,75в стабильно...
 

malec

★★★★✩✩✩
5 Фев 2019
680
257
Вопрос... Ты прошил свою ESP, с новой прошивкой. А в файле eeprom.ino поменял значение константы #define EEPROM_OK в первой счтрочке на единицу больше например...? Если нет - то у тебя в EEPROM в данный момент полный бардак :)
измени значение 0x5C на 0x5B например и прошей заново
чёт не догнал))) всё продумали а здесь бардак устроили))) кстати прикольные эфекты появились, а вот текст труднодоступен))) поясни по подробнее зачем и почему...
#define EEPROM_OK 0x5F // Флаг, показывающий, что EEPROM инициализирована корректными данными
#define EFFECT_EEPROM 200
так у меня
 

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
Вот у меня такая история с сенсорами. Неделю промучился - живет сам по себе. Плюнул, сделал на обычной нажимной кнопке...
Погонял на макс яркости и с интенсивной передачей в режиме точки доступа.
Падает, зараза :(
Вот пример стека:
0x4021094f: loop_task(ETSEvent*) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 187
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x40218d78: _svfprintf_r at /home/earle/src/esp-quick-toolchain/repo/newlib/newlib/libc/stdio/nano-vfprintf.c line 612
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x40101220: malloc(size_t) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\umm_malloc\umm_malloc.cpp line 511
0x40100b54: pvPortMalloc(size_t, char const*, int) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\heap.cpp line 271
0x402190ad: glue2esp_linkoutput at glue-esp/lwip-esp.c line 301
0x40219349: new_linkoutput at glue-lwip/lwip-git.c line 265
0x40219754: ethernet_output at netif/ethernet.c line 312
0x40218e37: _svfprintf_r at /home/earle/src/esp-quick-toolchain/repo/newlib/newlib/libc/stdio/nano-vfprintf.c line 660
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x40100841: millis() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_wiring.cpp line 176
0x401007bc: ets_post(uint8, ETSSignal, ETSParam) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 159
0x4020cb70: hour() (C:\Program Files at x86)\Arduino\libraries\Time\Time.cpp line 51
0x4020cb70: hour() (C:\Program Files at x86)\Arduino\libraries\Time\Time.cpp line 51
0x40201192: timerMinim::isReady() at C:\Temp\arduino_build_905033\sketch/timerMinim.h line 24
0x4020fc20: String::~String() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\WString.cpp line 125
0x4010089c: millis() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_wiring.cpp line 188
0x402109a0: esp_yield() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 100
0x40210fa7: __delay(unsigned long) at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_wiring.cpp line 54
0x40209628: checkAlarmTime() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/clock.ino line 636
0x40201198: timerMinim::isReady() at C:\Temp\arduino_build_905033\sketch/timerMinim.h line 24
0x402071e6: clockTicker() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/clock.ino line 265
0x40201198: timerMinim::isReady() at C:\Temp\arduino_build_905033\sketch/timerMinim.h line 24
0x40207c78: doEffectWithOverlay(unsigned char) at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/custom.ino line 42
0x4020ae51: process() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/a_main.ino line 80
0x402081d0: setup() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/GyverLampWiFi_v1.01.ino line 510
0x4020b1c8: loop() at D:\DIY\Arduino\Projects\GyverLampWiFi\firmware\GyverLampWiFi_v1.01/GyverLampWiFi_v1.01.ino line 515
0x40210ad0: loop_wrapper() at C:\Users\AlVa\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.6.1\cores\esp8266\core_esp8266_main.cpp line 179
Вообще не логичный. Типа из loop() вызван setup(), повторяющиеся куски...
Впечатление, что внутри ядра какие-то параллельные процессы не синхронизированы, устраивают гонки, вступают в клинч и железный таймер их сбрасывает. Как будто ядро в плане многозадачности и параллельных процессов криво написано.
Но тут уже с нашей стороны вряд ли что-то исправить можно...
:))) Жесть какая... Очень странно все это. Видимо действительно партия какая-то попадается раз на раз.
Говорю же, идеально все работает. Было всего два случая - 1. когда я прошился со значениями именно для кнопки и она стала глючить (ну это мой косяк). 2. когда провод от дешовых наушников оказался на расстоянии меньше сантиметра. Все. В остальном, все сенсоры которые я использую (на данный момент 4 штучки) работают на ура. С самыми хреновыми проводками :)
 

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
чёт не догнал))) всё продумали а здесь бардак устроили))) кстати прикольные эфекты появились))) поясни по подробнее зачем и почему...
В прошивке есть некоторые глобальные значения и константы, которые запоминаются в EEPROM (флеш память на микроконтроллере) и если прошиваешься более новой прошивкой где изменены адреса хранения или размеры этих констант, ТО нужно поменять значение константы #define EEPROM_OK на большее или меньшее. Тогда прошивка понимает, что нужно перезаписать все значения в EEPROM.
 

vvip

★★★★✩✩✩
18 Дек 2018
470
207
чёт не догнал))) всё продумали а здесь бардак устроили))) кстати прикольные эфекты появились, а вот текст труднодоступен))) поясни по подробнее зачем и почему...
#define EEPROM_OK 0x5F // Флаг, показывающий, что EEPROM инициализирована корректными данными
#define EFFECT_EEPROM 200
так у меня
Потому что ниже в loadSettings() написана конструкция
C++:
// Инициализировано ли EEPROM
bool isInitialized = EEPROMread(0) == EEPROM_OK;  
if (isInitialized) {    
  //читаем настройки из EEPROM
} else {
  // устанавливаем значения по умолчанию
}
Конда прошивка меняется и в ней меняется карта размещения параметтров в памяти или настройки подключения (имя сетии, пароль)
прошивка же не знает что что-то поменялось. Считывает байт из первой ячейки. Не совпадает - надо переинициализировать настройки
Совпадает - загружаем сохраненные и пользуем их.
Только сохраненные могут не соответствовать тому что ожидается.
Поэтому и надо сказать, что не соответствует. Изменением значение EEPROM_OK
 
  • Лойс +1
Реакции: malec

malec

★★★★✩✩✩
5 Фев 2019
680
257
ура!!! приложуха заработала САМА ничё не делал)))) аааа я каждый раз прошиваюсь с очисткой флеш и всего остального
 

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
Потому что ниже в loadSettings() написана конструкция
C++:
// Инициализировано ли EEPROM
bool isInitialized = EEPROMread(0) == EEPROM_OK; 
if (isInitialized) {   
  //читаем настройки из EEPROM
} else {
  // устанавливаем значения по умолчанию
}
Конда прошивка меняется и в ней меняется карта размещения параметтров в памяти или настройки подключения (имя сетии, пароль)
прошивка же не знает что что-то поменялось. Считывает байт из первой ячейки. Не совпадает - надо переинициализировать настройки
Совпадает - загружаем сохраненные и пользуем их.
Только сохраненные могут не соответствовать тому что ожидается.
Поэтому и надо сказать, что не соответствует. Изменением значение EEPROM_OK
Кстати - это ОЧЕНЬ полезная фича для ESP32. Так как там в Arduino IDE в настройках НЕТ опции стереть EEPROM!!!
 

malec

★★★★✩✩✩
5 Фев 2019
680
257
включил часы и понял что цифры задом на перёд))):eek: надо направление менять)))(y)
А вообще ВИП мне по функционалу твои прошивки больше нравятся, я их ещё в начале года всем сватал))))
Я каждый раз прошиваюсь с функцией алл флеш контент-это не правильно?
 
Изменено:

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
включил часы и понял что цифры задом на перёд))):eek: надо направление менять)))(y)
Есть и такая опция в начальных настройках в GyverLampWiFi_v1.01.ino
Тут уж нужно либо ручками править все под себя, либо один раз исправить и ознакомиться с работой утилиты diff :)
 

vvip

★★★★✩✩✩
18 Дек 2018
470
207
Есть и такая опция в начальных настройках в GyverLampWiFi_v1.01.ino
Тут уж нужно либо ручками править все под себя, либо один раз исправить и ознакомиться с работой утилиты diff :)
Рекомендую поставить SmartGit (https://www.syntevo.com/smartgit/download/ ) - оно сразу показывает в каких файлах что поменялось. А для массового сравнения скачать с торрента BeyondCompare - оно же позволяет правки выборочно копировать из новой версии в настроенную под себя.
Еще пользуюсь WinMerge утилиткой (https://winmerge.org/?lang=ru )
 
Изменено:

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
Рекомендую поставить SmartGit (https://www.syntevo.com/smartgit/download/ ) - оно сразу показывает в каких файлах что поменялось. А для массового сравнения скачать с торрента BeyondCompare
Надеюсь это ты для него сказал... Я под Gentoo работаю... В основном. Так что для меня git это git, svn это svn, а diff это diff. Так же как и patch это по прежнему patch... :) А массово оно там или нет - все зависит от параметров.
 

malec

★★★★✩✩✩
5 Фев 2019
680
257
подключил , тыка ,тыкал и перед конфети пропала точка к стати замечено дважды на этом месте, может совпадение???:-
UDP пакeт размером 6 от 192.168.4.2, порт 2390
Содержимое: $18 0;
UDP пакeт размером 6 от 192.168.4.2, порт 2390
Содержимое: $18 0;
Включен эффект 'Конфетти'
Включен эффект 'Водоворот'
Включен эффект 'Смена цвета'
 

AndyIP

★★✩✩✩✩✩
3 Июл 2019
91
50
подключил , тыка ,тыкал и перед конфети пропала точка к стати замечено дважды на этом месте, может совпадение???:-
UDP пакeт размером 6 от 192.168.4.2, порт 2390
Содержимое: $18 0;
UDP пакeт размером 6 от 192.168.4.2, порт 2390
Содержимое: $18 0;
Включен эффект 'Конфетти'
Включен эффект 'Водоворот'
Включен эффект 'Смена цвета'
Я правильно понял? Идет стандартная смена режимов через 60 секунд и перед конфети отваливается точка доступа?
Сейчас у себя проверю...
 

malec

★★★★✩✩✩
5 Фев 2019
680
257
Надеюсь это ты для него сказал... Я под Gentoo работаю... В основном. Так что для меня git это git, svn это svn, а diff это diff. Так же как и patch это по прежнему patch... :) А массово оно там или нет - все зависит от параметров.
Завязывайте материться при мне я раза в два вас старше))))