量产 Flash 下载工具
产品从研发进入量产阶段后,需要稳定、高效地将同一固件镜像批量烧录到大量设备。乐鑫为 Windows 平台提供 Flash 下载工具,支持 Develop 与 Factory 两种工作模式,并可在产线上并行烧录多台设备。
工具详细说明请参阅 Flash 下载工具用户指南。
概述
Flash 下载工具是乐鑫官方 GUI 工具,用于将 .bin 固件写入 flash,避免量产部署时使用繁琐的命令行操作。
- 下载地址:Flash 下载工具
- 支持系统:Windows 10 / Windows 11(64 位)
工作模式
启动工具后,选择芯片型号(例如 ESP32-S31)及工作模式:
| 工作模式 | 适用场景 | 说明 |
|---|---|---|
| Develop | 研发、调试、小批量烧录 | 使用绝对路径配置固件。一次烧录一台设备。支持多个 .bin 文件、偏移地址、芯片信息(Read Efuse、flash ID)及整片 flash 擦除。 |
| Factory | 量产、代工交付 | 使用相对路径配置固件。界面默认锁定,减少误操作。支持多通道并行烧录(例如一拖四或一拖八)。 |
在 Factory 模式下,如需修改下载路径或 SPI flash 参数,请点击 LockSettings。
硬件接线
批量烧录 ESP32-S31 前,请按芯片进入下载模式的要求完成接线。
下载接口
ESP32-S31 支持通过内置 USB 或 UART0 烧录固件。
[!NOTE] 量产推荐方案:使用内置 USB Serial/JTAG 接口。 无需外置 USB 转串口芯片(如 CP2102、CH340),可简化产测夹具设计。
- 方案 A:内置 USB Serial/JTAG(推荐)
- 将
GPIO14 (USB_D+)与GPIO13 (USB_D-)连接至 USB 接口或产测主板。 - 无需外置转串芯片,支持最高 12 Mbps 或 480 Mbps 稳定传输(取决于所用接口)。
- 将
- 方案 B:UART0
- 将
GPIO58 (U0TXD)与GPIO59 (U0RXD)连接至外置 USB 转 TTL 模块的 RXD 与 TXD。
- 将
Strapping 管脚
上电进入下载模式时,需满足以下 Strapping 管脚电平:
| 管脚 | 功能 | 下载模式电平 | 夹具设计 |
|---|---|---|---|
| GPIO61 | 启动模式控制 | 低电平 (0) | 在复位瞬间于产测夹具上将该管脚接地,使芯片自动进入下载模式。 |
| GPIO60 | ROM 日志控制 | 悬空 / 弱上拉 (1) | 保持默认状态,勿加强下拉。 |
量产测试硬件
乐鑫提供量产烧录与 RF 测试硬件,便于工厂部署。详见 产测配件概述。
ESP-FactoryTB2
面向大规模量产的 UART 测试底板。
- 提供稳定的多路 USB 串口与供电保护。
- 作为 PC 与模块测试夹具之间的通信桥梁,承载高速批量烧录数据。
- 具备电气保护与隔离,防止待测板异常损坏 PC 的 USB 口。
模块测试夹具
针对乐鑫模组的压合式测试夹具。
- 通过弹簧探针接触模组测试焊盘或邮票孔,无需焊接。
- 对 ESP32-S31 模组,应选用能引出电源(VDD/GND)、UART(TXD/RXD)及控制管脚(
CHIP_PU/ GPIO61)的专用夹具。
ESP-BAT32
低成本的 RF 黄金样机,用于产线 RF 筛选。
- 作为标准发射/接收源,评估吞吐量、RSSI 及 RF 质量。
- 适合在每条产线做 100% 合格/不合格 RF 筛选,无需每台配备完整 RF 综测仪。
准备合并固件
研发阶段,ESP-IDF 会分别生成 bootloader.bin、partition-table.bin、ota_data_initial.bin 及应用 .bin 等镜像。
量产交付时应提供 单一合并二进制文件。操作员只需加载一个 .bin 文件,地址设为 0x0。
方法 1:Flash 下载工具 CombineBin
- 以 Develop 模式打开工具。
- 加载各分区
.bin并填写正确的 flash 偏移地址。 - 勾选待合并文件,确认 SPI SPEED、SPI MODE、FLASH SIZE 与硬件一致。
- 点击 CombineBin。
- 工具会生成
./combine/target.bin。
方法 2:esptool.py merge_bin
适用于 CI/CD 流水线:
esptool.py --chip esp32s31 merge_bin -o factory_merged.bin --flash_mode dio --flash_size 8MB 0x2000 bootloader.bin 0x10000 partition-table.bin 0x12000 ota_data_initial.bin 0x20000 app.bin
偏移地址需与分区表一致。
Factory 模式烧录步骤
准备好 factory_merged.bin 后,按以下步骤配置批量烧录。
步骤 1:启动 Factory 模式
打开 flash_download_tool.exe,设置:
- ChipType:
ESP32-S31 - WorkMode:
Factory
步骤 2:加载固件与 SPI 参数
- 固件路径:选择
factory_merged.bin。 - 下载地址:
0x0(勾选启用)。 - SPI flash 参数(须与模组一致):
- SPI SPEED:
40MHz或80MHz - SPI MODE:
DIO或DOUT - FLASH SIZE:例如
8MB或16MB
- SPI SPEED:
[!NOTE] 在工具版本 >= 3.9.10 中,SPI SPEED 与 SPI MODE 可能为只读,须与固件编译配置一致。
步骤 3:配置 COM 口
- 通过工业 USB Hub 连接多台待烧录设备。
- 为每个通道分配 COM 口。
- 波特率设为
921600或1152000,以缩短烧录时间。

步骤 4:开始烧录
- 点击 START(全局或单通道)。
- 烧录过程中各通道显示 DOWNLOADING。
- 成功显示 PASS,失败显示 FAIL 及错误码。
- 更换下一块板卡。工具可检测串口插拔,也可再次点击 START。
锁定 Factory 配置
为防止产线操作员误改 flash 容量、波特率或固件路径,可锁定配置文件:
-
打开工具安装目录下的
configure文件夹。 -
编辑
esp32s31/multi_download.conf(或对应芯片的配置文件)。 -
添加或修改:
[SECURE] lock_setting_password = true -
保存并重启工具。路径、地址及 SPI 参数变为只读,仅 COM 口选择与 START / STOP 可编辑。
故障排查
SYNC fail / Waiting for packet header
芯片未进入下载模式。
- 确认上电瞬间 GPIO61 为低电平。
- 检查 UART TX/RXD 或 USB D+/D- 接线。
- 确认 3.3 V 供电在烧录启动时至少可提供 600 mA。
MD5 check fail
回读校验失败,常见于长线缆干扰或 flash 损坏。
- 降低波特率(例如从
1152000降至921600)。 - 缩短夹具与模组之间的线缆。
量产建议
- 产线使用探针夹具,避免手工焊接排线。
- 多通道烧录时使用带独立电源的工业 USB Hub。
- 启用串口插拔自动启动,减少重复点击 START。