colonelwatch / ESP32-fluid-simulation

Interactive fluid simulation using the "CYD" dev board, featuring an ESP32. Built in Arduino.
MIT License
22 stars 1 forks source link

ESP32 Crashing / Rebooting #1

Closed anthonyjclarke closed 1 year ago

anthonyjclarke commented 1 year ago

Wondering if anyone has seen the same, or if this is a config issue?

Code compiles and uploads fine, then reboots in a loop, Serial output as below

Board Settings as below

image

16:55:13.635 -> Rebooting... 16:55:13.635 -> ets Jul 29 2019 12:21:46 16:55:13.635 -> 16:55:13.635 -> rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) 16:55:13.668 -> configsip: 0, SPIWP:0xee 16:55:13.668 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 16:55:13.668 -> mode:DIO, clock div:1 16:55:13.668 -> load:0x3fff0030,len:1344 16:55:13.668 -> load:0x40078000,len:13964 16:55:13.668 -> load:0x40080400,len:3600 16:55:13.668 -> entry 0x400805f0 16:55:13.909 -> Initializing velocity field... 16:55:13.909 -> Initializing color fields... 16:55:14.018 -> Launching tasks... 16:55:14.409 -> 16:55:14.409 -> abort() was called at PC 0x400ec723 on core 0 16:55:14.409 -> 16:55:14.409 -> 16:55:14.409 -> Backtrace: 0x400837c5:0x3ffd6d40 0x40089e11:0x3ffd6d60 0x4008f4b9:0x3ffd6d80 0x400ec723:0x3ffd6e00 0x400ec76a:0x3ffd6e20 0x400ec6cb:0x3ffd6e40 0x400ecade:0x3ffd6e60 0x400ed2f5:0x3ffd6e80 0x400d367a:0x3ffd6ea0 16:55:14.409 -> 16:55:14.409 -> 16:55:14.409 -> 16:55:14.409 -> 16:55:14.409 -> ELF file SHA256: 3d77bcd89486d06c 16:55:14.409 -> 16:55:14.551 -> Rebooting... 16:55:14.551 -> ets Jul 29 2019 12:21:46 16:55:14.551 -> 16:55:14.551 -> rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) 16:55:14.551 -> configsip: 0, SPIWP:0xee 16:55:14.551 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 16:55:14.551 -> mode:DIO, clock div:1 16:55:14.551 -> load:0x3fff0030,len:1344 16:55:14.584 -> load:0x40078000,len:13964 16:55:14.584 -> load:0x40080400,len:3600 16:55:14.584 -> entry 0x400805f0 16:55:14.803 -> Initializing velocity field... 16:55:14.803 -> Initializing color fields... 16:55:14.911 -> Launching tasks... 16:55:15.292 -> 16:55:15.292 -> abort() was called at PC 0x400ec723 on core 0 16:55:15.292 -> 16:55:15.292 -> 16:55:15.292 -> Backtrace: 0x400837c5:0x3ffd6d40 0x40089e11:0x3ffd6d60 0x4008f4b9:0x3ffd6d80 0x400ec723:0x3ffd6e00 0x400ec76a:0x3ffd6e20 0x400ec6cb:0x3ffd6e40 0x400ecade:0x3ffd6e60 0x400ed2f5:0x3ffd6e80 0x400d367a:0x3ffd6ea0 16:55:15.326 ->

colonelwatch commented 1 year ago

Yep, looks like I can replicate this. This code works fine if compiled with v2.0.9 of the ESP32 Arduino core, but goes into this abort loop for versions v2.0.10 and v2.0.11. For now, I'll leave a disclaimer in README.md as a workaround.

I'd also like to know what changed from v2.0.9 to v2.0.10, so I'll leave this issue open.

colonelwatch commented 1 year ago

Ah, but I'd also appreciate it if you could confirm switching to v2.0.9 also stops the abort loop for you.

anthonyjclarke commented 1 year ago

Hi, thanks, confirming a switch to 2.0.9 and it all works! Love your work, thank you

09:41:15.843 -> ets Jul 29 2019 12:21:46 09:41:15.843 -> 09:41:15.843 -> rst:0x1 (POWERON_RESET),boot:0x13 (SInitializing velocity field... 09:41:15.876 -> Initializing color fields... 09:41:15.983 -> Launching tasks... 09:41:21.036 -> FPS: 11.0, Pct times: (10.5%, 64.0%, 0.0%, 25.6%, 0.0%), Touch queue sz: 0 09:41:26.092 -> FPS: 11.5, Pct times: (10.5%, 64.0%, 0.0%, 25.6%, 0.0%), Touch queue sz: 0 09:41:31.119 -> FPS: 11.5, Pct times: (10.3%, 63.2%, 0.0%, 26.4%, 0.0%), Touch queue sz: 0 09:41:36.144 -> FPS: 11.5, Pct times: (10.6%, 64.7%, 0.0%, 24.7%, 0.0%), Touch queue sz: 4 09:41:41.204 -> FPS: 11.5, Pct times: (10.3%, 63.2%, 0.0%, 26.4%, 0.0%), Touch queue sz: 0 09:41:46.208 -> FPS: 11.5, Pct times: (10.5%, 64.0%, 0.0%, 25.6%, 0.0%), Touch queue sz: 0 09:41:51.264 -> FPS: 11.5, Pct times: (10.5%, 64.0%, 0.0%, 25.6%, 0.0%), Touch queue sz: 0