1
\$\begingroup\$

I have an ESP32 dev board which doesn't boot (The chip itself is marked as "ESP32 WROOM-32"). I've played with compiling Micropython and trying to flash it, and probably did something wrong.. I mostly want to recover "factory image" now...

When I connect it to power, the on-board led will blink (somewhat dimmed, not fully on) and nothing happens. If I press BOOT/RST it doesn't do anything. esptool.py seems to work and allows me to erase/read/write flash memory or get chip/flash information. When I try to connect with rshell, I see the Trying to connect to REPL ... message which eventually ends up with No MicroPython boards connected.

For recovery, I tried taking the fresh Micropython image from the website and write at address 0x10000 and that didn't work. I also tried to clone a working ESP32 (same dev board) using read_flash from 0x00 to 0x100000 and then flash it from 0x00 and this still doesn't help. I also tried to download various images, including bootloaders and whatnot..

Can anyone give me a hint for what to do? For now - I just want it to run a plain Micropython. Any ideas for what could it be that I did wrong will be greatly appreciated for the next time I try to flash a custom version...


Update (thanks @jcaron): This is the dev-board: https://www.aliexpress.com/item/1005001636295529.html?spm=a2g0o.order_detail.order_detail_item.5.3f57f19crgN9i6 (ESP32 -38 pin).
No jumpers on board (at least nothing that I had to place/solder). I'm using the on-board micro-usb connector. I'm not sure what DFU mode is, but I sometimes have to play with the BOOT button in order for esptool to work, I'm not sure how comes it's only "sometimes"...)

\$\endgroup\$
5
  • \$\begingroup\$ It would probably help if you could tell us the actual dev board used, how you connect to it, any jumpers set or undet if there are any, and if the board “says” anything on boot. Sometimes after a flash a board may get stuck in DFU mode and you need to get it out of that mode (if the board supports auto DFU) or you could have a jumper to move. \$\endgroup\$
    – jcaron
    Commented Jan 8, 2023 at 16:27
  • \$\begingroup\$ thanks @jcaron - edited above. \$\endgroup\$
    – Zach Moshe
    Commented Jan 8, 2023 at 16:51
  • \$\begingroup\$ DFU mode (or rather bootloader mode for an ESP32) is “flashing” mode. This requires specific pins to be pulled, though some boards will have the necessary logic for esptool to do that automatically. See docs.espressif.com/projects/esptool/en/latest/esp32/… (as you’ll see in there there are quite a few possibilities depending on the actual board). Normally if the board does not support auto-bootloader mode you should hold BOOT and press RST to get in bootloader mode, and just RST for regular boot. \$\endgroup\$
    – jcaron
    Commented Jan 8, 2023 at 17:22
  • \$\begingroup\$ OK, so mine is definitely the one with the BOOT+RST buttons. That's what I have to do in order to flash a new version. \$\endgroup\$
    – Zach Moshe
    Commented Jan 8, 2023 at 18:53
  • \$\begingroup\$ I just use also codewith.mu/en/download , thonny.org (has the option to install micropython) and MicroPython v1.19.1 running fine, file "esp32-20220618-v1.19.1.bin" micropython.org/download/esp32 \$\endgroup\$
    – Antonio51
    Commented Jan 9, 2023 at 14:53

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.