Page 1 of 1

BREAK instr on I2S clock change

Posted: Tue May 16, 2017 4:51 pm
by BuddyCasino
I have not yet been able to reproduce it consistently, but every now and then, this happens when I change the sample rate:

Code: Select all

Guru Meditation Error: Core  1 panic'ed (Unhandled debug exception)
Debug exception reason: BREAK instr
Register dump:
PC      : 0x40115058  PS      : 0x00060336  A0      : 0x8011cc94  A1      : 0x3fff7800
A2      : 0xffffec86  A3      : 0x00000000  A4      : 0x0000ffff  A5      : 0x00000000
A6      : 0x00005dc0  A7      : 0x3ffd1a2c  A8      : 0x80115054  A9      : 0x3fff7870
A10     : 0x40107b90  A11     : 0x3ffb8994  A12     : 0x3f408d2c  A13     : 0x0000001f
A14     : 0x00000001  A15     : 0x3fff7a20  SAR     : 0x00000004  EXCCAUSE: 0x00000001
EXCVADDR: 0xffffec86  LBEG    : 0x400014fd  LEND    : 0x4000150d  LCOUNT  : 0xfffffffd

0x40115058: render_samples at /Users/michaelboeckling/Documents/eclipse/esp8266/ESP32_Alexa/components/audio_renderer/./audio_renderer.c:85 (discriminator 1)

Backtrace: 0x40115058:0x3fff7800 0x4011cc94:0x3fff78c0 0x4011cc94:0x3fff7900 0x40168ea0:0x3fff7920 0x40168f48:0x3fff79e0 0x4011cbfa:0x3fff7a00

0x40107b90: vprintf at /Users/ivan/e/newlib_xtensa-2.2.0-bin/newlib_xtensa-2.2.0/xtensa-esp32-elf/newlib/libc/stdio/../../../.././newlib/libc/stdio/vprintf.c:35

0x40115058: render_samples at /Users/michaelboeckling/Documents/eclipse/esp8266/ESP32_Alexa/components/audio_renderer/./audio_renderer.c:85 (discriminator 1)

0x4011cc94: render_sample_block at /Users/michaelboeckling/Documents/eclipse/esp8266/ESP32_Alexa/components/mp3_decoder/./mp3_decoder.c:196

0x4011cc94: render_sample_block at /Users/michaelboeckling/Documents/eclipse/esp8266/ESP32_Alexa/components/mp3_decoder/./mp3_decoder.c:196

0x40168ea0: synth_full at /Users/michaelboeckling/Documents/eclipse/esp8266/ESP32_Alexa/components/mad/./synth_stereo.c:743 (discriminator 2)

0x40168f48: mad_synth_frame at /Users/michaelboeckling/Documents/eclipse/esp8266/ESP32_Alexa/components/mad/./synth_stereo.c:938

0x4011cbfa: mp3_decoder_task at /Users/michaelboeckling/Documents/eclipse/esp8266/ESP32_Alexa/components/mp3_decoder/./mp3_decoder.c:160
Any idea what could cause this?

Re: BREAK instr on I2S clock change

Posted: Wed May 17, 2017 1:30 am
by ESP_Sprite
FWIW we also ran into this at Espressif. Something to do with the floating point unit, but the error itself doesn't make sense. I'm planning to look into this this week.

Re: BREAK instr on I2S clock change

Posted: Wed May 17, 2017 8:20 am
by BuddyCasino
And I thought the line numbers were off (they usually are btw.), it happens on a line that multiplies an uint32_t with a float, yielding a uint32_t.
Thanks!

Re: BREAK instr on I2S clock change

Posted: Mon Aug 28, 2017 8:58 pm
by kcl7746
any luck figuring this out?

Re: BREAK instr on I2S clock change

Posted: Tue Aug 29, 2017 2:27 am
by ESP_Sprite
If I recall correctly, this got fixed a long time ago (although my recollection on this is hazy). Do you still get this problem?

Re: BREAK instr on I2S clock change

Posted: Tue Aug 29, 2017 5:20 am
by BuddyCasino
It is fixed.

Re: BREAK instr on I2S clock change

Posted: Sat Mar 10, 2018 9:05 am
by huyhl248
How did you do? I used this https://github.com/earlephilhower/ESP8266Audio for my ESP32 and got error:

Code: Select all

ets Jun  8 2016 00:22:57

rst:0x10 (RTCWDT_RTC_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:2
load:0x3fff0010,len:4
load:0x3fff0014,len:588
load:0x40078000,len:0
load:0x40078000,len:9880
entry 0x400789d8
Connecting to WiFi
...Connecting to WiFi
...Connecting to WiFi
Connected
Running for 4562 ms...
STATUS(buffer) '2' = 'Refilling buffer'
Guru Meditation Error: Core  1 panic'ed (Unhandled debug exception)
Debug exception reason: BREAK instr 
Please give me advice!
Thanks.

Re: BREAK instr on I2S clock change

Posted: Mon Mar 12, 2018 8:42 am
by ESP_Sprite
Hard to say from this brief log output. You can at least try to set the log to be more verbose and re-run,maybe it spits out a bit more info then.