ESP32-MicroPython 编译固件
说明
1.如果出现了错误大部分都是网络错误
2.最好使用一个新的虚拟环境,预防软件冲突
软件环境
ESP-IDF版本
5.4.1
操作系统
Ubuntu 24.04.2 LTS 64位
Ubuntu 24.04.2 LTS 64位官方版下载丨最新版下载丨绿色版下载丨APP下载-123云盘
提取码:v4Ie
🧾 MicroPython 固件编译流程(ESP32)
📁 一、准备工作
1. 安装依赖项
确保系统已安装以下软件包
sudo apt update
sudo apt install git make cmake gcc g++ python3 python3-pip python3-venv
查看是否安装
packages=("git" "make" "cmake" "gcc" "g++" "python3" "pip3")
for pkg in "${packages[@]}"
do
if command -v $pkg &> /dev/null
then
echo "$pkg 已安装"
else
echo "$pkg 未安装"
fi
done
2. 设置 ESP-IDF 开发环境
双击打开主目录,右击在终端中打开,并输入一下命令
mkdir esp
cd esp
git clone -b v5.4.1 --recursive https://github.com/espressif/esp-idf.git
cd esp-idf
git checkout v5.4.1
git submodule update --init --recursive
./install.sh esp32
✅ 此操作将安装 ESP-IDF v5.4.1 版本及其所需的工具链。
运行

结果 如果显示了错误的话需要删除整个esp文件

3.设置环境变量
. ./export.sh

🔁 二、获取并配置 MicroPython 源码
cd ..
git clone https://github.com/micropython/micropython.git
cd micropython
如果错误需要删除 esp/micropython文件,然后在esp文件夹中,右击在终端中打开输入
git clone https://github.com/micropython/micropython.git
cd micropython
运行结果
1. 编译交叉编译器 mpy-cross
make -C mpy-cross

2. 进入 ESP32 端口目录
cd ports/esp32
3. 初始化子模块
git submodule update --init --recursive

🔨 三、编译固件
1. 清理之前的编译结果(可选)
make clean

2. 开始编译 MicroPython 固件
在编译之前我将st7735.py 文件放入了esp/micropython/ports/esp32/modules/文件夹下
make


✅ 编译完成后,生成的固件文件为:
build-ESP32_GENERIC/firmware.bin
🧪 四、Thonny IDE 烧录 MicroPython 固件到 ESP32
1.配置串口和选择固件

2.进行验证
🗃️ 五、固件信息与存放位置
-
固件文件路径:
esp/micropython/ports/esp32/build-ESP32_GENERIC/firmware.bin -
自定义模块添加路径(如需打包进固件):
-
esp/micropython/ports/esp32/modules/在该目录下可以添加
.py或 C 扩展模块源文件,使其集成到固件中。
🔄 六、重新编译流程(快速操作)
make clean
make
📝 总结
| 步骤 | 命令 |
|---|---|
| 获取 ESP-IDF | git clone -b v5.4.1 --recursive https://github.com/espressif/esp-idf.git |
| 安装 ESP-IDF | ./install.sh esp32 |
| 获取 MicroPython | git clone https://github.com/micropython/micropython.git |
| 编译 mpy-cross | make -C mpy-cross |
| 初始化 ESP32 子模块 | git submodule update --init --recursive |
| 清理编译 | make clean |
| 编译固件 | make |
| 固件路径 | build-ESP32_GENERIC/firmware.bin |
| 添加模块路径 | modules/ 目录 |



浙公网安备 33010602011771号