bitluni / OsciDisplay

31 stars 13 forks source link

FastDAC fails with Guru Meditation Error: Core 0 panic'ed (Interrupt wdt timeout on CPU0) #1

Open aderusha opened 5 years ago

aderusha commented 5 years ago

Environment

IDE: Arduino IDE 1.8.8 and also VSCode + PIO Board Package: Espressif ESP32 1.0.1 MCU: LOLLIN WeMos ESP32 and also M5STACK Code: FastDACTest, OsciCam, and OsciVector all exhibit this behavior

Issue

Any use of the FastDAC causes a GME, details below.

Serial Log

CPU Clockspeed: 
240000000
Writing 1M Samples with API functions: 241954 Sa/s
Writing 1M Samples with FastDAC functions: Guru Meditation Error: Core  0 panic'ed (Interrupt wdt timeout on CPU0)
Core 0 register dump:
PC      : 0x400830dd  PS      : 0x00060034  A0      : 0x80083050  A1      : 0x3ffbe230  
A2      : 0x00000003  A3      : 0x00060023  A4      : 0x00060021  A5      : 0x00000020  
A6      : 0x00000020  A7      : 0x00000000  A8      : 0x3ff60000  A9      : 0x000004b0  
A10     : 0x3ffb9a20  A11     : 0x3ffbc158  A12     : 0x3ffba540  A13     : 0x3ffbbd48  
A14     : 0x0000000a  A15     : 0x3ffbc0b0  SAR     : 0x0000001b  EXCCAUSE: 0x00000005  
EXCVADDR: 0x00000000  LBEG    : 0x00000000  LEND    : 0x00000000  LCOUNT  : 0x00000000  
Core 0 was running in ISR context:
EPC1    : 0x400e96da  EPC2    : 0x00000000  EPC3    : 0x00000000  EPC4    : 0x400830dd

Backtrace: 0x400830dd:0x3ffbe230 0x4008304d:0x3ffbe250 0x400888c6:0x3ffbe270 0x40089753:0x3ffbe290 0x40089429:0x3ffbe2b0 0x400814ce:0x3ffbe2c0 0x400e96d7:0x00000000

Core 1 register dump:
PC      : 0x400d0ca8  PS      : 0x00060134  A0      : 0x800d18d2  A1      : 0x3ffb1f80  
A2      : 0x3ffbfce8  A3      : 0x3f400059  A4      : 0x0005cf65  A5      : 0x00001041  
A6      : 0x00000008  A7      : 0x00000001  A8      : 0x3ff48484  A9      : 0x3ffbfcac  
A10     : 0x3ffbdc9c  A11     : 0x000972db  A12     : 0x86d60400  A13     : 0x06d00000  
A14     : 0x00060120  A15     : 0x00000000  SAR     : 0x0000000a  EXCCAUSE: 0x00000005  
EXCVADDR: 0x00000000  LBEG    : 0x400014fd  LEND    : 0x4000150d  LCOUNT  : 0xfffffff5  

Backtrace: 0x400d0ca8:0x3ffb1f80 0x400d18cf:0x3ffb1fb0 0x40089665:0x3ffb1fd0

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

rst:0xc (SW_CPU_RESET),boot:0x13 (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:928
ho 0 tail 12 room 4
load:0x40078000,len:9280
load:0x40080400,len:5848
entry 0x40080698
spaivaras commented 5 years ago

Kernel panic is due to mutex lock. You can find all instances of dacPrepare and dacUnprepare and change true to false. This will disable mutex lock. This is not a fix its just a workaround. It seems that mutex is messing up watch dog. Need to investigate more for real solution. Or maybe author will :)

VictorTagayun commented 4 years ago

Same with me but the Hex data are quite different:

CPU Clockspeed: 240000000 Writing 1M Samples with API functions: 244081 Sa/s Writing 1M Samples with FastDAC functions: Guru Meditation Error: Core 0 panic'ed (Interrupt wdt timeout on CPU0) Core 0 register dump: PC : 0x40081f09 PS : 0x00060034 A0 : 0x80081b14 A1 : 0x3ffbe140
A2 : 0x00000003 A3 : 0x00060023 A4 : 0x00060021 A5 : 0x00000001
A6 : 0x00060520 A7 : 0x00000000 A8 : 0x3ff60000 A9 : 0x000004b0
A10 : 0x3ffc1868 A11 : 0x3ffd13fc A12 : 0x3ffd0e78 A13 : 0x3ffd0fec
A14 : 0x0000000a A15 : 0x3ffd1350 SAR : 0x0000001d EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000 LBEG : 0x00000000 LEND : 0x00000000 LCOUNT : 0x00000000
Core 0 was running in ISR context: EPC1 : 0x400eb786 EPC2 : 0x00000000 EPC3 : 0x00000000 EPC4 : 0x40081f09

Backtrace: 0x40081f09:0x3ffbe140 0x40081b11:0x3ffbe160 0x40089724:0x3ffbe180 0x40088313:0x3ffbe1a0 0x4008a525:0x3ffbe1c0 0x40084606:0x3ffbe1d0 0x400eb783:0x3ffd1310 0x400d4cc3:0x3ffd1330 0x40089716:0x3ffd1350 0x40088225:0x3ffd1370

Core 1 register dump: PC : 0x400d119a PS : 0x00060134 A0 : 0x800d1216 A1 : 0x3ffb1f60
A2 : 0x3ffc01e8 A3 : 0x0005b6db A4 : 0x00001023 A5 : 0x3f4010f8
A6 : 0x00000001 A7 : 0x00000000 A8 : 0x00098b66 A9 : 0x832e0400
A10 : 0x03280000 A11 : 0x3ff48484 A12 : 0x3ffc01ac A13 : 0x00000001
A14 : 0x00060f20 A15 : 0x00000000 SAR : 0x0000000a EXCCAUSE: 0x00000005
EXCVADDR: 0x00000000 LBEG : 0x400014fd LEND : 0x4000150d LCOUNT : 0xfffffff5

Backtrace: 0x400d119a:0x3ffb1f60 0x400d1213:0x3ffb1f80 0x400d22e3:0x3ffb1fb0 0x40088225:0x3ffb1fd0

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

rst:0xc (SW_CPU_RESET),boot:0x13 (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:8896 load:0x40080400,len:5816 entry 0x400806ac

Flo082002 commented 3 years ago

I have the same problem

ssshake commented 2 years ago

I am getting this issue as well and I have no idea what mutex means, just trying to learn here :D