ESP32 MicroPython General Tutorial
Last revision 2026/01/16
This tutorial guides readers on installing MicroPython on ESP32, covering firmware download, supported boards, and practical coding examples.
MicroPython Firmware Download
To run MicroPython on the ESP32, you need to first burn the firmware:
- Download the required MicroPython firmware:
- Note: Please download firmware in xxx.bin format.
- Burn the firmware via Flash Download Tool:
- Flash Download Tool Usage Tutorial
- Note: Unless specified otherwise, the burning address for MicroPython firmware is "0x00".
MicroPython Support List
ESP32
https://micropython.org/download/ESP32_GENERIC/
For the following main controllers, use the generic firmware version:
- DFR0654: FireBeetle 2 ESP32-E
- DFR0654-F: FireBeetle 2 ESP32-E (Welded Pin Header)
For the following main controllers, use the "Support for SPIRAM / WROVER" firmware version:
- DFR1139: FireBeetle 2 ESP32-E (N16R2)
- DFR1140: FireBeetle 2 ESP32-UE (N16R2)
ESP32-C3
https://micropython.org/download/ESP32_GENERIC_C3/
- DFR0868: Beetle ESP32-C3
- DFR1063: Romeo mini Controller (ESP32-C3)
ESP32-C6
https://micropython.org/download/ESP32_GENERIC_C6/
- DFR1075: FireBeetle 2 ESP32-C6
- DFR1117: Beetle ESP32-C6
ESP32-S3
https://micropython.org/download/ESP32_GENERIC_S3/
For the following main controllers, use the "Support for Octal-SPIRAM" firmware version:
- DFR0975: FireBeetle 2 Board ESP32-S3 (N16R8)
- DFR0975-U: FireBeetle 2 Board ESP32-S3-U (N16R8)
- DFR1154: ESP32-S3 AI Smart Camera Module
- DFR0994: Romeo ESP32-S3
For the following main controllers, use the "4MiB flash" firmware version:
- DFR1145: FireBeetle 2 ESP32-S3 (N4)
MicroPython firmware with camera driver, supporting the following main controllers:
Download MicroPython Firmware
- DFR0975: FireBeetle 2 Board ESP32-S3 (N16R8)
- DFR0975-U: FireBeetle 2 Board ESP32-S3-U (N16R8)
ESP32-P4
ESP32-P4 MicroPython Firmware
Note: The firmware burning address is 0x2000.
- DFR1172: FireBeetle 2 ESP32-P4
- DFR1237: FireBeetle 2 ESP32-P4 Kit
MicroPython Compiler Usage
- Download and install thonny.
- Open the software and configure the interpreter (Run->Configure interpreter...):

- Copy the code into the editor, save it to the MicroPython device as
main.py.
Note: Modify the LED pin to match your development board.
import time
from machine import Pin
led = Pin(15, Pin.OUT)
while True:
led.value(1)
time.sleep(1)
led.value(0)
time.sleep(1)

- Reboot the ESP32 to see the LED blink.
More MicroPython Tutorials
Was this article helpful?
