В свое время я с благодарностью воспользовался советом kumekay и ввел дополнительно несколько переменных, которые можно задать через Wi-Fi - по аналогии, например, с переменной blynk_token в скетче метеостанции. Скетчи с новыми переменными успешно работали.
Потом я занялся подключением других датчиков в схему метеостанции, но после возврата к старым скетчам выяснилось, что они не работают. После загрузки в ESP - wdt reset.
В Инете прочитал, что причиной сообщения wdt reset могут быть:
- переполнение оперативной памяти,
- кривые или "прожорливые" библиотеки,
- кривой пользовательский код,,
- слишком навороченная программа, с которой ESP не справляется.
Два последних пункта отпадают - скетчи раньше работали.
В приложении - код метеостанции с добавлением новой переменной address.
В скетче я минимизировал количество переменных, чтобы уменьшить загрузку памяти. Глобальные переменные используют 39972 байт (48%) динамической памяти, оставляя 41948 байт для локальных переменных.
На мой взгляд, наиболее вероятной причиной этой проблемы является автообновление библиотек в Arduino IDE, которое остановил с опозданием.
Я, конечно, тестировал скетч со старыми версиями некоторых библиотек, но как только расскомметирую строку 267: strcpy(address, json["address"]) то все то же - wdt reset. Как выйти на работающую комбинацию библиотек? - не представляю (если причина в комбинации).
Ниже - информация с монитора Arduino IDE при загрузке проблемного скетча. Возможно она что-то прояснит.
Помогите решить проблему.
*WM: Adding parameter
*WM: blynk_token
*WM: Adding parameter
*WM: address
*WM:
*WM: AutoConnect
*WM: Connecting as wifi client...
*WM: Using last saved values, should be faster
*WM: Connection result:
*WM: 3
*WM: IP Address:
*WM: 192.168.1.100
WiFi connected
IP address: 192.168.1.100
Load config...
Exception (28):
epc1=0x4000bf0e epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000
ctx: cont
sp: 3fff1010 end: 3fff1310 offset: 01a0
stack>>>
3fff11b0: 3fffdad0 3fff022c 3fff2c3c 4020c5e9
3fff11c0: 3ffe89c8 3fff11c0 3fff11cc 3fff11dc
3fff11d0: 3fff2c3c 00000002 3fff2c49 00000000
3fff11e0: 3fff2c59 00000002 3fff2c65 40201c2c
3fff11f0: 00000018 00000008 3ffefae0 40201d40
3fff1200: 3fff004c 3ffefae0 3ffefb44 402015c9
3fff1210: 3fff1260 00000000 3ffefae0 4020ba34
3fff1220: 00000009 00000011 3fff022c 40201e06
3fff1230: 19082e00 00ffffff 0101a8c0 00000000
3fff1240: 00000007 0000000f 3ffefae0 40201ea3
3fff1250: 00000007 00000007 3ffefae0 4020ba64
3fff1260: 3ffeffec 00070010 3ffefae0 40201834
3fff1270: 3fff1c56 0000005a 3ffefae0 3fff02e8
3fff1280: 3fffdad0 00000010 3ffefae0 00000028
3fff1290: 3ffe94f0 00000000 000003e8 4010020c
3fff12a0: 3fff2bfc 3fff1c4c 3fff12d0 4010068c
3fff12b0: 3ffe889c 3ffe889c 3ffefae0 3fff02e8
3fff12c0: 3fffdad0 3ffe889c 3fff022c 4020d265
3fff12d0: 00000000 00000000 00000000 feefeffe
3fff12e0: feefeffe feefeffe feefeffe 3fff02e8
3fff12f0: 3fffdad0 00000000 3fff02e0 4021537c
3fff1300: feefeffe feefeffe 3fff02f0 40100718
<<<stack<<<
ets Jan 8 2013,rst cause:2, boot mode:(1,3)
ets Jan 8 2013,rst cause:4, boot mode:(1,3)
wdt reset