Page 1 of 1

ESP32-U4WDH - ESP32-MINI-1 - Dual core not working

Posted: Wed Aug 06, 2025 12:07 am
by thalesmaoa
Hi everyone! First-time posting here.

I've been trying to reduce the size of my board, so I replaced the generic ESP32 module (which works fine) with the smaller ESP32-MINI-1 module (chip: ESP32-U4WDH).

However, I ran into trouble:
When I upload my ESPEasy-based firmware, the module keeps resetting due to the watchdog timer.
It only boots properly if I use the "solo" version of ESPEasy.

To clarify:

The same code works fine on the generic ESP32.

If I upload a simple Blink sketch, the mini version works — and both cores seem active.

I’ve already tried modifying esptool settings, flash frequency, QIO/DIO modes, PSRAM configs, CPU frequency, and more — nothing seems to work.

I suspect the issue is related to the bootloader or memory layout, but I’ve hit a wall.

Are there any critical hardware differences between the generic ESP32 and the ESP32-U4WDH that I might be missing?

Any ideas, insights, or suggestions would be greatly appreciated!

Thanks in advance!

Re: ESP32-U4WDH - ESP32-MINI-1 - Dual core not working

Posted: Thu Aug 07, 2025 11:59 am
by AloePacci
If you read the data sheet of that model, you will see that it is uni-core, so not dual core available. You should change your ESP device if you want dual core

https://www.mouser.es/datasheet/2/891/E ... 991551.pdf
Check section 7.

So i guess no task running at core 2.

you could use some functions to check processing and stack overhead to provide more information about available and occupied resources.

Also, "generic ESP" is a broad field, knowing what model was used will be helpfull to compare.

Re: ESP32-U4WDH - ESP32-MINI-1 - Dual core not working

Posted: Fri Aug 08, 2025 9:45 am
by thalesmaoa
Hi AloePacci. I appreciate your reply. Old versions were indeed single core. Recent versions are dual core.

I am able to program and use dual core. The problem is related to an ESP32 generic program not being compatible.

I've been trying a lot of things. I have some findings, but I don't understand them yet.

Basically, if I do this, it boots.

Code: Select all

gpio_num_t PSRAM_CLK = GPIO_NUM_NC;
gpio_num_t PSRAM_CS  = GPIO_NUM_NC;
Any help is appreciated.