Xinyuan-LilyGO / TTGO_TWatch_Library

MIT License
902 stars 289 forks source link

After uploading, watch bootloops for ~20 minutes #189

Closed CustomCheat closed 1 year ago

CustomCheat commented 1 year ago

After i upload my sketch, the watch sometimes does restart and works just fine, but after like 3-4 uploads it is in a bootloop for ~20 minutes or so, after that it boots up. Output from serial monitor: First it does this:

rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (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:0x3fff0018,len:4 load:0xffff03fc,len:-65281 1150 mmu set 00010000, pos 00010000 rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (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:0x3fff0018,len:4 load:0x3fff001c,len:1044 load:0x40078000,len:10124 load:0x40080400,len:5856 csum err:0x9f!=0x00 ets_main.c 384 ets Jul 29 2019 12:21:46

After that it just spams this:

rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (SPI_FAST_FLASH_BOOT) invalid header: 0xffffffff invalid header: 0xffffffff invalid header: 0xffffffff invalid header: 0xffffffff invalid header: 0xffffffff invalid header: 0xffffffff invalid header: 0xffffffff ets Jul 29 2019 12:21:46

I did reflash the watch, but it didn't help. It is a hell for development to wait 10-20 minutes until the watch boots up. The only thing I found online, is that the flash image may be too big, but I dont think it's the case.

UPDATE: after uploading, I have to remove the cable, and after restarting the device, it works. But i still have to reboot it manually.

lewisxhe commented 1 year ago

Will it restart automatically after 10~20 minutes of normal operation? What firmware do you use? Can you run the simple firmware and try whether it will restart automatically. For your log above, if it appears after normal operation, it is likely that the internal data of flash is lost or damaged. If you can, please try to brush in a simple test program to test whether it can run normally for a period of time. If not, it can be determined that there is a problem with the watch

CustomCheat commented 1 year ago

I have the V2 watch and i flashed the V2 firmware, using a windows VM. One thing that stood out was that the FINISHED was not in green, but in blue. Does that effect anything? I did erase the watch before flashing. I tried upload the GPS display sketch and it does upload and run normally on the first try(mind you it shows invalid location, but that doesnt matter for now) But after the second upload of the same sketch, the watch doesnt show anything and spams the RTCWDT_RTC_RESET and some mmu set sometimes. Sometimes rebooting solves it, sometimes it doesnt work for ~10 minutes, then it works like nothing happened. It does this when uploading a sketch, after that everything works. I had the display of the watch turned on for 25 minutes and it works, so the only problem is the uploading. (If there's a problem with the watch, I can still return it at warranty) Screenshot of flashing: https://ctrlv.link/crDk

Output again: rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (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:0x3fff0018,len:4 load:0x3fff001c,len:1044 load:0x40078000,len:10124 load:0x40080400,len:5856 csum err:0xda!=0x86 ets_main.c 384 ets Jul 29 2019 12:21:46

rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (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:0x3fff0018,len:4 load:0x3fff001c,len:1044 load:0x40078000,len:10124 load:0x40080400,len:5856 csum err:0xad!=0x86 ets_main.c 384

rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (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:0x3fff0018,len:4 load:0x3fff001c,len:1044 load:0x3010aa10,len:814787216 1150 mmu set 00010000, pos 00010000 1150 mmu set 00020000, pos 00020000 1150 mmu set 00030000, pos 00030000 1150 mmu set 00040000, pos 00040000 1150 mmu set 00050000, pos 00050000 1150 mmu set 00060000, pos 00060000 1150 mmu set 00070000, pos 00070000 1150 mmu set 00080000, pos 00080000 1150 mmu set 00090000, pos 00090000 1150 mmu set 000a0000, pos 000a0000 1150 mmu set 000b0000, pos 000b0000 1150 mmu set 000c0000, pos 000c0000 1150 mmu set 000d0000, pos 000d0000 1150 mmu set 000e0000, pos 000e0000 1150 mmu set 000f0000, pos 000f0000 1150 mmu set 00100000, pos 00100000 1150 mmu set 00110000, pos 00110000 ets Jul 29 2019 12:21:46 And now this is getting spammed The watch probably tries to boot for some time and then it just suceeds for some reason. I let it sit for a little, with the cable connected and when the watch turns on this is the output: rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (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:0x3fff0018,len:4 load:0x3fff001c,len:1044 load:0x40078000,len:10124 load:0x40080400,len:5856 csum err:0x36!=0x86 ets_main.c 384 ets Jul 29 2019 12:21:46

rst:0x10 (RTCWDT_RTC_RESET),boot:0x33 (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:0x3fff0018,len:4 load:0x3fff001c,len:1044 load:0x40078000,len:10124 load:0x40080400,len:5856 entry 0x400806a8 Another thing is that it uses DIO mode, not QIO. I read that can mess with the checksum. And that would indicate this line: csum err:0x36!=0x86

I have tried probably anything, and I dont know what more can I do. If you dont come up with something, I'm contacting the seller, because I think its a hardware problem.

CustomCheat commented 1 year ago

Seller sent a new watch, will see if the issues are still there.

CustomCheat commented 1 year ago

Watch seems to work. Closing, for now.