夜雨聆风学习资料网

ARTICLE · 1225186

最简单的 ESP32 固件下载软件 micropython-esp-flasher

最简单的 ESP32 固件下载软件 micropython-esp-flasher
最近发现了一些不错的 MicroPython 开发软件,逐步整理推荐给大家。
在 ESP32 下载固件时,我们最常用的软件就是乐鑫官方的 flash download tool 和 esptool。flash download tool 只能在 windows 上使用,需要选择芯片型号、下载固件、选择合适下载偏移量(每种芯片都不完全相同);esptool 可以跨平台使用,但需要通过 python 安装,通过命令行运行,要记住命令行参数和下载偏移量。
上周发现了一个更加简单易用的 ESP32 固件更新软件 micropython-esp-flasher,这是一个用 rust 开发的小软件,只有一个可执行文件,大小只有不到10M,支持 windows/Linux/macOS。它的使用非常简单,先运行软件(也可以先插入开发板在运行软件),然后插入开发板(可以不用手动按BOOT进入升级模式),软件自动识别插入的串口设备,读取芯片型号、flash大小、是否有PSRAM、对比固件版本,然后自动从网络下载对应的最新固件(下载的固件会自动保存到 firmware 目录中,以后可以直接使用而不用再次下载),将固件写入芯片,校验成功后退出,如果校验失败会自动尝试降低波特率再次写入。
简而言之,就是先运行软件,插入开发板,等待固件下载完成,就这么简单。
不用记命令行参数,不用担心选择错写入偏移量,不用手动按 BOOT 键,不用到处找固件文件。

1. 运行软件

2. 插入开发板,自动读取芯片参数

3. 从网络下载最新固件,写入芯片,完成。

软件在下载前,会等待约5秒左右, 通过按下键盘或鼠标让用户选择下载选项。
可以通过键盘或鼠标进行选择,选择是否擦除原有内容。
然后按照选择进行下载。
micropython-esp-flasher 也支持命令行参数,在命令行中最后加上 --help 就可以查看帮助。使用命令行参数可以备份芯片内容、只查看芯片信息、手动指定串口等。
./micropython-esp-flasher --help
在 windwos 下运行的界面,功能和Linux下使用一样:
目前发现的几个小问题:
  • 不支持 esp8266。
  • 部分较旧版本的 esp32 芯片无法识别。
  • 部分开发板使用 usb 接口下载时在容易出现验证失败,然后降低波特率重复写入,而实际上固件已经成功下载到芯片了。
micropython-esp-flasher 软件的下载地址:
https://github.com/rrokot/micropython-esp-flasher
目前最新版本是 0.6.0。

相关学习资料