ESP32 无线烧录器:用浏览器无线烧录 ESP32
烧录 ESP32 固件的工具不少——esptool.py、浏览器版的 esptool.js、乐鑫官方的桌面烧录工具——但不管用哪个,目标芯片都得通过 USB 线直连到电脑。目标板在机箱里、在移动平台上、或者就是不在桌边,这些场景都得物理和电脑接线。
ESP32 无线烧录器把这两件事一起省掉:浏览器里操作,不需要装任何软件;目标板通过 UART 接到中间设备,通信走 Wi-Fi,不需要 USB 直连。
支持:
- UART 连接目标芯片(所有型号)
- USB 直连目标芯片(中间设备为 ESP32-S3 时)
- 分区读写
- 寄存器读写
- Stub 模式加速
- 压缩传输
- 串口 / USB 转 TCP(可对接第三方工具)
不支持:
- JTAG 调试
- OpenOCD 调试
工作原理
整个系统由两块 ESP32 组成:一块运行无线ESP32烧录器固件(中间设备),另一块是你要烧录的目标芯片。中间设备通过 Wi-Fi 向局域网内的浏览器提供操作界面。
浏览器 → Wi-Fi → 无线ESP32烧录器 → UART → 目标 ESP32
→ USB (S3) → 目标 ESP32在浏览器里选好固件文件和目标地址,点击烧录后,固件会通过 Wi-Fi 传输到中间设备,再经由 UART 或 USB 写入目标芯片的 Flash。写入完成后会自动做完整性校验,确认烧录无误。如果中途出错,界面上会显示具体原因。
接线说明
中间设备通过 UART 和控制引脚连接目标板,需要四类连接:串口数据线(TX/RX)、复位控制(EN)、烧录模式控制(IO0)和共地(GND)。
所有引脚均可通过设置页重新配置,不一定要按默认值来。
功能介绍
ESP32 无线烧录器 界面分四个标签页,覆盖从烧录到调试的常用操作。
烧录 — 烧录操作
烧录标签页以烧录分组的方式组织任务。一个分组里可以包含多个条目,每个条目对应一个 .bin 文件和它的目标地址。比如你可以把 bootloader(0x0)、分区表(0x8000)、应用固件(0x10000)放在同一个分组里,一次点击完成全部烧录,不需要分三次操作。
分组和条目都可以保存下来,下次烧录同一套固件时直接复用。右上角的历史记录按钮可以查看过往的操作记录和当前队列状态。
顶部的连接和复位按钮用来连接目标芯片或触发复位,不需要手动拨动 IO0 和 EN 引脚。

工具 — 寄存器读写
工具标签页提供寄存器分组功能,可以对目标芯片的寄存器地址执行批量读写操作。适合调试阶段需要反复检查或设置某几个寄存器值的场景,把常用的操作保存成一个分组,下次一键执行。

监视器 — 串口监控
连接目标板后,可以在这里实时查看串口输出。烧录完成后不需要重新操作,直接切到监视器标签页就能看到启动日志,确认固件运行是否正常。遇到问题时,串口输出通常是第一个参考来源。
底部输入框支持发送文本或带转义字符(\n、\x 等)的原始数据,也可以开启定时循环发送。界面右下角显示收发字节计数,方便确认数据有没有到达目标芯片。
串口同时支持转发到 TCP,可以在设置页配置 TCP Server 端口,让 VOFA+ 等第三方工具直接连入。

设置
设置页分三个部分:
探针配置 — 连接参数:
- 传输方式:UART(所有型号)或 USB(仅 ESP32-S3),默认自动识别,也可以手动指定
- 波特率:烧录时使用的串口速率,默认 460800;连接不稳定时可以降低
- RX / TX / 复位 / 启动 引脚编号:与上面接线表对应,有冲突时在这里修改,不需要重新编译固件
设备模式 — 烧录模式:
- 默认使用 Stub 模式(目标芯片加载一段辅助程序后再烧录),速度比 ROM 模式快
- 如果目标芯片的 Stub 加载出现问题,可以关闭 Stub 加载器,退回 ROM 模式
烧录选项:
- 烧录后校验:烧录完成后自动验证写入内容,默认开启
- 烧录后复位:烧录完成后自动复位目标芯片,默认开启
- 烧录后监控:烧录完成后自动跳到监视器页面
- 启用压缩:传输时对固件数据进行压缩,默认开启,对较大固件有一定加速效果
此外,页面底部有一个擦除全片 Flash 的按钮,会清除目标芯片上所有的 Flash 内容,使用前请确认。

支持的目标芯片
下面这些 ESP32 系列都可以作为烧录目标,接在中间设备的 UART 上:
经典: ESP32
S 系列: ESP32-S2 ESP32-S3
C 系列: ESP32-C2 ESP32-C3 ESP32-C6
H 系列: ESP32-H2
P 系列: ESP32-P4
覆盖了目前 ESP-IDF 支持的主流量产芯片。中间设备本身目前支持 ESP32、ESP32-C3 和 ESP32-S3 三种型号运行无线ESP32烧录器固件。
与传统方案对比
| 传统烧录工具 | ESP32 无线烧录器 | |
|---|---|---|
| 电脑端需要 | USB 驱动或 Python 环境 | 仅浏览器 |
| 目标板距离 | USB 线长度 | Wi-Fi 覆盖范围内 |
| 目标板需要在手边 | 是 | 否 |
| 多人共享 | 否 | 是 |
| 串口监控 | 单独工具 | 集成在同一界面 |
传统工具在直连场景下依然是最可靠的选择。ESP32 无线烧录器并不是要取代它,而是在没法或不方便直连时提供一个替代选项。
快速上手
需要准备的硬件:
- 一块运行无线ESP32烧录器固件的 ESP32(中间设备),支持 ESP32、ESP32-C3、ESP32-S3
- 一块目标 ESP32(需要烧录的板子)
步骤:
给中间设备烧录固件:打开 在线固件目录,用 Chrome 或 Edge 浏览器,USB 连接中间设备,选择无线ESP32烧录器固件,按提示完成烧录。这一步只需要做一次。
配置 Wi-Fi:中间设备上电后会广播名为
无线DAP的热点(密码:12345678)。连上热点,浏览器打开192.168.1.1,填入路由器的 Wi-Fi 名称和密码,保存。之后设备会自动连接这个 Wi-Fi,不需要每次重新配置。连接目标板:根据中间设备的型号,参考上面的接线表连好 UART TX/RX、RESET、BOOT 和 GND,一共五根线。
打开 ESP32 无线烧录器 界面:在同一个 Wi-Fi 下,浏览器访问中间设备的 IP 地址,点击 ESP32 无线烧录器 标签页。
烧录:在烧录标签页点击"添加分组",再点"添加条目",选择
.bin文件并填入目标地址,然后点击烧录,等进度完成即可。
如果连接失败,先检查 TX/RX 有没有交叉连接,以及 RESET 和 BOOT 引脚是否接对了目标板上对应的 EN 和 IO0。大部分问题出在接线上。
这个功能目前还在持续开发中,可能会有一些还不完善的地方,欢迎体验和反馈。遇到问题或者有改进建议,可以加入 QQ 群(642246000)交流。
如果你同时需要无线调试 STM32,可以看看 无线 DAP-LINK。
