AT 固件

[English]

本文档包含以下小节:

备注

若需下载其他芯片系列的发布版固件,请在页面左上方的下拉菜单栏选择相应的芯片,即可跳转至该芯片的文档进行下载。

AT 固件简介

ESP-AT 固件包含了若干个特定功能的二进制文件:

  • factory/factory_xxx.bin 是这些特定功能的二进制文件的合集。您可以仅烧录 factory/factory_xxx.bin 到起始地址为 0 的 flash 空间中,或者根据 download.config 文件中的信息将若干个二进制文件烧录到 flash 中对应起始地址的空间中。

  • at_customize.bin 提供了用户分区表,该表列出了 ble_data.bin 分区、SSL 证书分区、MQTT 证书分区以及 factory_param_XXX.bin 分区和其它一些分区的的起始地址和分区大小。您可以通过 AT 命令 AT+FSAT+SYSFLASH 来读和写该文件中罗列的分区里的内容。

  • factory_param_XXX.bin 指明了不同 ESP32-C2 模组之间的硬件配置(见下表)。请确保您的模组使用了正确的固件。更多有关该参数文件的信息请参考 修改参数的固件

ESP32-C2 模组的硬件配置

模组

UART 管脚(TX、RX、CTS、RTS)

Factory Parameter Bin

ESP32C2-4MB 系列

  • GPIO7

  • GPIO6

  • GPIO5

  • GPIO4

factory_param_ESP32C2-4MB.bin

  • ble_data.bin 在 ESP32-C2 工作于 Bluetooth LE 服务端的时候提供蓝牙服务;

  • server_cert.binserver_key.binserver_ca.bin 是 SSL 服务端示例证书;

  • client_cert.binclient_key.binclient_ca.bin 是 SSL 客户端示例证书;

  • mqtt_cert.binmqtt_key.binmqtt_ca.bin 是 MQTT SSL 客户端示例证书;

如果某些功能没有使用到,则不需要将相应的二进制文件下载到 flash 中。

我该选哪种类型的固件?

ESP-AT 固件有以下几种类型,其中下载或准备固件的工作量自上而下依次递增,支持的模组类型也自上而下依次递增。

官方发布版固件(推荐)

官方发布版固件 又称“发布版固件”、“官方固件”、“默认固件”,为乐鑫官方团队测试并发布的固件,固件会根据内部开发计划周期性发布,此种固件可直接基于乐鑫 OTA 服务器升级固件。如果 官方发布版固件 完全满足您的项目需求,建议您优先选择 官方发布版固件。如果官方固件不支持您的模组,您可以根据 硬件差异,选择和您的模组硬件配置相近的固件进行测试验证。

GitHub 临时固件

GitHub 临时固件 为每次将代码推送到 GiHub 时都会生成但并未达到固件发布周期条件的固件,或者说是开发中的固件,包括 官方发布版固件 的临时版本和适配过但是不计划正式发布的固件,其中前者可直接基于乐鑫 OTA 服务器升级固件。

  • 获取途径:请参考 如何从 GitHub 下载最新临时版本 AT 固件

  • 优点:

    • 实时性强,新的特性和漏洞修补都会实时同步出来。

    • 包含一些非正式发布的固件,如基于 SDIO 通讯的固件、基于 SPI 通讯的固件。

    • 获取固件工作量小。

  • 缺点:基于非正式发布的 commit 生成的固件未经过完整的测试,可能会存在一些风险,需要您自己做完整的测试。

修改参数的固件

修改参数的固件 指的是只修改参数区域而并不需要重新编译的固件,适用于固件功能满足项目要求、但只有某些参数不满足的情况下,如出厂波特率、UART IO 管脚的等参数的变更,此种固件可直接基于乐鑫 OTA 服务器升级固件。

  • 关于如何修改参数文件,请参考 如何生成出厂参数二进制文件

  • 优点:

    • 不需要重新编译固件。

    • 固件稳定、可靠。

  • 缺点:需要基于发布版的固件修改,更新周期长,覆盖的模组有限。

自行编译的固件

当您需要进行二次开发时可采用此种方式。需要自己部署 OTA 服务器以支持 OTA 功能。

  • 关于如何自行编译固件,请参考 编译 ESP-AT 工程

  • 优点:功能、周期自己可控。

  • 缺点:需要自己搭建环境编译。

获取固件后,接来下做什么?

当您获取到固件后,请参考 硬件连接固件下载及烧录指南 连接 PC 和 ESP 设备、并将固件烧录至设备。