ESP32-P4 DevKit Bricked due to Bootloader Flash

Started by HarrisonCreates, February 22, 2025, 02:05:05 AM

Previous topic - Next topic

HarrisonCreates

Hi everyone, I'm feeling pretty stupid right now because I wanted to try programming the ESP32P4 DevKit that Olimex sells via Arduino's IDE instead of ESP-IDF. I got it to blink an LED, which was great, but wasn't getting anything from the serial monitor, so I figured I had to flash the booloader using Esptool in Arduino IDE to get that to work.

Well, I flashed the bootloader, and now the board won't recognize as a COM device. When I do the BOOT/EN ROM reset, I get COM4 to come back, but am told the device isn't functioning correctly. Nothing I do is bringing it back. Is there something I might be missing? It can't be that easy to brick this board

LubOlimex

#1
I doubt you can break the bootloader via software means. Probably just wrong settings in Arduino IDE. Even if you broke something you can still force the bootloader by holding the boot button and reset.

You didn't need to change anything via Esptool... Support for ESP32-P4 chip and modules was added in Arduino IDE in the package version 3.1.x. All you had to do to use the board with Arduino was to ensure you have the package version 3.1.0 or 3.1.1, maybe to update your ESP32 package from Tools -> Boards -> Board Manager and click update on ESP32 package (by Espressif Systems).

Make sure to set options accordingly:


Now while this work with blinking LED example, you have to understand that some of the examples might not work properly and some of the peripherals are not yet supported in Arduino IDE. Some of the examples I tested didn't work at all. Keep an eye here:

https://github.com/espressif/arduino-esp32/issues/10278

Anyway, in this archive you can find the binaries we use to program the board before leaving the factory, so might give it a try restoring the board with them:

https://ftp.olimex.com/TEMP/ESP32-P4/camera_lcd_test.7z

From this command line you can see the addresses each of the three binaries go:

ESPTOOL --chip esp32p4 -p /dev/ttyACM? -b 460800 --before=default_reset --after=hard_reset write_flash --flash_mode dio --flash_freq 80m --flash_size 2MB 0x2000 bootloader.bin 0x10000 camera_lcd.bin 0x8000 partition-table.bin

Let me know how it goes.
Technical support and documentation manager at Olimex