Ghost watchdog
-
Hello there,
I am facing with a weird issue again.
My wipy restart from time to time.
machine.reset_cause() returns with 2 which is wdt_reset, but there is no watchdog object created in my code.
Could this watchdog coming from pybytes or is it coming from Baskerville?
Is there a way to find it?
-
sadly it's the same...
rst:0x7 (TG0WDT_SYS_RESET),boot:0x37 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:1 load:0x3fff8020,len:8 load:0x3fff8028,len:2140 ho 0 tail 12 room 4 load:0x4009fa00,len:19760 entry 0x400a05bc
-
So I repetead the process again, now I change the filesytem also. No more bootloop.
We will see about the watchdog.
-
@tttadam So I found a simular issue with a gpy I tried that solution.
I tried it and now infinite reboot... :Drst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) flash read err, 1000 ets_main.c 371 ets Jun 8 2016 00:22:57 rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) flash read err, 1000 ets_main.c 371 ets Jun 8 2016 00:22:57 rst:0x10 (RTCWDT_RTC_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) flash read err, 1000 ets_main.c 371
-
I did that.
Updated the firmware with pycom firmware updater, erased everything during the process.
BUT still reboots from time to time...ets Jun 8 2016 00:22:57 rst:0x7 (TG0WDT_SYS_RESET),boot:0x37 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:1 load:0x3fff8020,len:8 load:0x3fff8028,len:2140 ho 0 tail 12 room 4 load:0x4009fa00,len:19760 entry 0x400a05bc
-
@tttadam I would then propose to have a full flash erase of your module and see if the problem is still there (I know this is no actual solution, but has worked for me when I am seeing strange behavior)
-
Picture for proof :)
There is no watchdog in the code neither.
-
@agotsis It was False, I set it false again. So probably it was not it.
-
@tttadam what does the following code return
pycom.wdt_on_boot()
? It may be the case that the watchdog has been configured previously by another code. If this isTrue
, set it toFalse
, reboot the device and you're ok.