移除ESP32的MicroPython并刷入官方固件恢复初始功能
恢复ESP32出厂WiFi/蓝牙功能的解决方案
前置准备
- 确认
esptool.py已安装,未安装则执行:pip install esptool - 下载适配ESP32-D0WD-V3型号的官方AT固件(出厂默认搭载的固件,原生支持WiFi、蓝牙功能,需匹配你的闪存容量)
操作步骤
1. 全闪存擦除
执行命令彻底清除所有残留固件:
python3 esptool.py --port /dev/ttyUSB0 erase_flash
Windows系统需将/dev/ttyUSB0替换为实际串口端口(如COM3)
2. 刷入AT固件
找到下载的AT固件包(通常包含bootloader.bin、partitions_at.bin、boot_app0.bin、esp-at.bin),用以下命令按指定地址刷入(以4MB闪存为例,地址遵循官方标准):
python3 esptool.py --port /dev/ttyUSB0 write_flash -z 0x1000 bootloader.bin 0x8000 partitions_at.bin 0xe000 boot_app0.bin 0x10000 esp-at.bin
- 0x1000:bootloader存储地址
- 0x8000:分区表存储地址
- 0xe000:boot_app0存储地址
- 0x10000:AT主固件存储地址
若闪存容量不是4MB,需对应调整固件版本与刷入地址。
3. 验证恢复效果
刷写完成后重启ESP32,用串口工具(波特率115200、数据位8、停止位1、无校验)连接设备,发送AT指令,若收到OK响应,说明固件正常运行,WiFi与蓝牙功能已恢复至出厂状态。
关于之前异常的补充说明
你之前刷入Arduino代码后出现乱码与启动异常,原因大概率是:
- 串口波特率不匹配(代码中
Serial.begin()的波特率与串口工具设置不一致) - 未完整刷入Arduino bootloader导致启动流程异常
内容的提问来源于stack exchange,提问作者DB ms
相关产品推荐
相关产品推荐

