Matrix Voice ESP32 constant rebooting

I just received a new Matrix Voice ESP32. I have snips working ok with the rpi, but when I try to flash the ESP32, it never completes a boot. Here is the dump:
I (12) boot: ESP-IDF v4.0-dev-459-gba1ff1692 2nd stage bootloader
I (12) boot: compile time 11:07:17
I (12) boot: Enabling RNG early entropy source…
I (17) boot: SPI Speed : 40MHz
I (21) boot: SPI Mode : DIO
I (25) boot: SPI Flash Size : 4MB
I (29) boot: Partition Table:
I (33) boot: ## Label Usage Type ST Offset Length
I (40) boot: 0 nvs WiFi data 01 02 00009000 00004000
I (47) boot: 1 otadata OTA data 01 00 0000d000 00002000
I (55) boot: 2 phy_init RF data 01 01 0000f000 00001000
I (62) boot: 3 factory factory app 00 00 00010000 00100000
I (70) boot: 4 ota_0 OTA app 00 10 00110000 00100000
I (77) boot: 5 ota_1 OTA app 00 11 00210000 00100000
I (85) boot: End of partition table
I (89) boot: Defaulting to factory image
I (94) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x31c30 (20p
I (174) esp_image: segment 1: paddr=0x00041c58 vaddr=0x3ffbdb60 size=0x03558 ( d
I (180) esp_image: segment 2: paddr=0x000451b8 vaddr=0x40080000 size=0x00400 ( d
I (181) esp_image: segment 3: paddr=0x000455c0 vaddr=0x40080400 size=0x0aa50 ( d
I (208) esp_image: segment 4: paddr=0x00050018 vaddr=0x400d0018 size=0xa0dac (6p
I (439) esp_image: segment 5: paddr=0x000f0dcc vaddr=0x4008ae50 size=0x09584 ( d
I (467) boot: Loaded app from partition at offset 0x10000
I (467) boot: Disabling RNG early entropy source…
Guru Meditation Error: Core 0 panic’ed (LoadProhibited). Exception was unhandl.
Core 0 register dump:
PC : 0x4016db33 PS : 0x00060730 A0 : 0x8012c18b A1 : 0x3
A2 : 0x00000000 A3 : 0x000000fe A4 : 0x00000001 A5 : 0x0
A6 : 0x00000000 A7 : 0x00000000 A8 : 0x8012bcb1 A9 : 0x3
A10 : 0x00000020 A11 : 0x4012b86c A12 : 0x3ffe3ae8 A13 : 0x0
A14 : 0x00000000 A15 : 0x00000000 SAR : 0x0000001b EXCCAUSE: 0x0
EXCVADDR: 0x00000000 LBEG : 0x4000c46c LEND : 0x4000c477 LCOUNT : 0x0

Backtrace: 0x4016db33:0x3ffe3b00 0x4012c188:0x3ffe3b20 0x400d1c01:0x3ffe3b50 0x0

Appears to be trying to load from address 0.

I suggest cloning this repo:

Then, put the backtrace line in a file dump.txt en execute the following line in the Decoder folder:
python -p ESP32 -t ~/.platformio/packages/toolchain-xtensa32 -e <path_to>firmware.elf -f dump.txt

Where you should change <path_to> to where the elf file is you want to debug. Assuming you also have the toolchain installed in ~/.platformio/packages/toolchain-xtensa32

Hey @greypanda,

Welcome to the community!

Did you follow this guide to first flash your ESP32?


Exactly. I’m going to replace my desktop computer tomorrow, so
I’ll try again then.

i received my MatrixVoice this week an i have the same issue like
I have executed every step from your guide and the Matrix Voice is still in the boot loop.

I have some other boards wit the ESP32 and have no problems with them.

Best Regards


I will test this and see. Unexpected errors can occur if there have been updates to the Espressif libraries.

We are at a conference this week so I will get back to you by the end of the week.


In the file platformio.ini change this line:

platform = espressif32


platform = espressif32@1.9.0

I also noticed an issue with a newer framework, see my file here:

1 Like

@Romkabouter Tank you!

I have compiled two different programs with the ‘espressif32@1.9.0’ setting and it doesn’t work. It still comes to the boot loop. Does the Rasbian version play a role? I am using Rasbian Buster

Unfortunately it doesn’t work with Rasbian Stretch either. I can’t even get a simple “Hello World” running. Could it be that my Matrix Voice is damaged?

I’ve solved the problem.

Setting the platform to ‘espressif32@1.9.0’ and update the pio libs with
pio update
pio lib update

Now my MatrixVoice is running:grinning:

@Romkabouter Tank you!