Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Code only works once, until reset #1

Open
gigawatts opened this issue Jun 6, 2020 · 0 comments
Open

Code only works once, until reset #1

gigawatts opened this issue Jun 6, 2020 · 0 comments

Comments

@gigawatts
Copy link

This sketch only seems to work once. Let me explain.

I flash your code, unmodified, to an ESP32 (in this case, its a CAN32 board, using a ESP32-WROOM-32U module, using the SparkFun ESP32 Thing board profile in the Arduino IDE), it starts fine. I connect to it from a phone, and I can send/receive messages without any issues. I can disconnect from the ESP AP, reconnect, and it still works. So far so good.

However, If I restart the ESP32 (reset button or power cycle), as soon as my phone tries to reconnect to it, I get the following error over and over in the serial term:

Rebooting...
ets Jun  8 2016 00:22:57

rst:0xc (SW_CPU_RESET),boot:0x17 (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:10044
load:0x40080400,len:5900
entry 0x400806ac
Guru Meditation Error: Core  0 panic'ed (InstrFetchProhibited). Exception was unhandled.
Core 0 register dump:
PC      : 0x00000000  PS      : 0x00060e30  A0      : 0x80107389  A1      : 0x3ffcc720  
A2      : 0x3ffd6ff8  A3      : 0x3ffd77e8  A4      : 0x3ffd6df8  A5      : 0x3ffd6cf8  
A6      : 0x0201a8c0  A7      : 0x0c01a8c0  A8      : 0x8010722c  A9      : 0x3ffcc6e0  
A10     : 0x3ffd7008  A11     : 0x3ffd77e8  A12     : 0x3ffcc72c  A13     : 0x00000044  
A14     : 0x00000001  A15     : 0x00000006  SAR     : 0x00000010  EXCCAUSE: 0x00000014  
EXCVADDR: 0x00000000  LBEG    : 0x4000c349  LEND    : 0x4000c36b  LCOUNT  : 0x00000000  

ELF file SHA256: 0000000000000000000000000000000000000000000000000000000000000000

Backtrace: 0x00000000:0x3ffcc720 0x40107386:0x3ffcc760 0x40115261:0x3ffcc780 0x4011a1e9:0x3ffcc7c0 0x4011f4a2:0x3ffcc7e0 0x40107d8f:0x3ffcc800 0x4008e0b9:0x3ffcc830

Rebooting...
ets Jun  8 2016 00:22:57

rst:0xc (SW_CPU_RESET),boot:0x17 (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:10044
load:0x40080400,len:5900
entry 0x400806ac
Guru Meditation Error: Core  0 panic'ed (InstrFetchProhibited). Exception was unhandled.
Core 0 register dump:
PC      : 0x00000000  PS      : 0x00060e30  A0      : 0x80107389  A1      : 0x3ffcc720  
A2      : 0x3ffd79e0  A3      : 0x3ffd83d0  A4      : 0x3ffd7cb4  A5      : 0x3ffd7c94  
A6      : 0x0201a8c0  A7      : 0x0c01a8c0  A8      : 0x8010722c  A9      : 0x3ffcc6e0  
A10     : 0x3ffd79f0  A11     : 0x3ffd83d0  A12     : 0x3ffcc72c  A13     : 0x00000044  
A14     : 0x00000001  A15     : 0x00000006  SAR     : 0x00000010  EXCCAUSE: 0x00000014  
EXCVADDR: 0x00000000  LBEG    : 0x4000c349  LEND    : 0x4000c36b  LCOUNT  : 0x00000000  

ELF file SHA256: 0000000000000000000000000000000000000000000000000000000000000000

Backtrace: 0x00000000:0x3ffcc720 0x40107386:0x3ffcc760 0x40115261:0x3ffcc780 0x4011a1e9:0x3ffcc7c0 0x4011f4a2:0x3ffcc7e0 0x40107d8f:0x3ffcc800 0x4008e0b9:0x3ffcc830

Rebooting...

If I turn off WiFi on my phone, so it does not attempt a connection, the sketch boots fine, but repeats the boot loop seen above as soon as a client tries to connect again.

The only way I have found to get the code to work again (once) is to erase the ESP32's flash with esptool.py --port COM3 erase_flash, then flash the code to the ESP32 again. Again, that only works once, until the board is reset.

Update: After typing up all of the above, I found this, which seems extremely relevant: espressif/arduino-esp32#2025 (comment)

And it seems this suggestion fixes the problem: espressif/arduino-esp32#2025 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant