The following files are firmware that should work on most ESP32-based boards with 4MiB of flash, including WROOM WROVER, SOLO, PICO, and MINI modules.
This board has multiple variants available:
Otherwise, download the generic variant (under the first heading below).
Program your board using the esptool.py program, found here.
Windows users: You may find the installed program is called esptool
instead of esptool.py
.
If you are putting MicroPython on your board for the first time then you should first erase the entire flash using:
esptool.py erase_flash
esptool.py
will try to detect the serial port with the ESP32 automatically,
but if this fails or there might be more than one Espressif-based device
attached to your computer then pass the --port
option with the name of the
target serial port. For example:
esptool.py --port PORTNAME erase_flash
/dev/ttyUSB
or /dev/ttyACM0
./dev/cu.usbmodem01
.COM4
.Then deploy the firmware to the board, starting at address 0x1000:
esptool.py --baud 460800 write_flash 0x1000 ESP32_BOARD_NAME-DATE-VERSION.bin
Replace ESP32_BOARD_NAME-DATE-VERSION.bin
with the .bin
file downloaded from this page.
As above, if esptool.py
can't automatically detect the serial port
then you can pass it explicitly on the command line instead. For example:
esptool.py --port PORTNAME --baud 460800 write_flash 0x1000 ESP32_BOARD_NAME-DATE-VERSION.bin
If flashing starts and then fails partway through, try removing the --baud 460800
option to flash at the slower default speed.
If these steps don't work, consult the MicroPython ESP32 Troubleshooting steps and the esptool documentation.
Important: From the options below, download the .bin
file for your board.