不同系列的 ESP 产品对应的软件 CHIP ID 是什么?

不同系列的 ESP 产品对应的软件 CHIP ID 信息请参考 esp-idf/components/bootloader_support/include/esp_app_format.h

如下:

c 复制代码
typedef enum {
    ESP_CHIP_ID_ESP32 = 0x0000,  /*!< chip ID: ESP32 */
    ESP_CHIP_ID_ESP32S2 = 0x0002,  /*!< chip ID: ESP32-S2 */
    ESP_CHIP_ID_ESP32C3 = 0x0005, /*!< chip ID: ESP32-C3 */
    ESP_CHIP_ID_ESP32S3 = 0x0009, /*!< chip ID: ESP32-S3 */
    ESP_CHIP_ID_ESP32C2 = 0x000C, /*!< chip ID: ESP32-C2 */
    ESP_CHIP_ID_ESP32C6 = 0x000D, /*!< chip ID: ESP32-C6 */
    ESP_CHIP_ID_ESP32H2 = 0x0010, /*!< chip ID: ESP32-H2 */
    ESP_CHIP_ID_ESP32P4 = 0x0012, /*!< chip ID: ESP32-P4 */
    ESP_CHIP_ID_ESP32C5 = 0x0013, /*!< chip ID: ESP32-C5 */
    ESP_CHIP_ID_INVALID = 0xFFFF /*!< Invalid chip ID (we defined it to make sure the esp_chip_id_t is 2 bytes size) */
} __attribute__((packed)) esp_chip_id_t;

当应用固件与芯片型号不匹配时,通常会报告如下错误:

c 复制代码
// For example : The Chip is ESP32, the firmware is ESP32-C3
E (7515) esp_https_ota: Mismatch chip id, expected 0, found 5

注意:这里的 expected 0, found 5 都是十进制打印,因此需要将 CHIP ID Number 由两字节的十六进制转换为十进制,即:

芯片型号 ESP32 ESP32-C2 ESP32-C3 ESP32-C5 ESP32-C6 ESP32-S2 ESP32-S3 ESP32-H2 ESP32-P4
CHIP ID 0x0 0xC 0x5 0x13 0xD 0x2 0x9 0x10 0x12
打印结果 0 12 5 19 13 2 9 16 18
相关推荐
笨笨饿1 小时前
69_如何给自己手搓一个串口
linux·c语言·网络·单片机·嵌入式硬件·算法·个人开发
爱编码的小八嘎2 小时前
C语言完美演绎9-16
c语言
她说彩礼65万3 小时前
C语言 文件
linux·服务器·c语言
努力努力再努力wz9 小时前
【MySQL进阶系列】一文打通事务机制:从锁、Undo Log 到 MVCC 与隔离级别
c语言·数据结构·数据库·c++·mysql·算法·github
薇茗9 小时前
【初阶数据结构】 左右逢源的分支诗律 二叉树1
c语言·数据结构·算法
eDEs OLDE10 小时前
CC++链接数据库(MySQL)超级详细指南
c语言·数据库·c++
广州山泉婚姻10 小时前
C语言三种基本程序结构详解
c语言·开发语言
上弦月-编程10 小时前
【C语言】函数栈帧的创建与销毁(底层原理)
c语言·开发语言
Hhy_110710 小时前
【从零开始学习数据结构 ④】:栈 ——后进先出的艺术
c语言·数据结构·学习·visual studio
爱编码的小八嘎10 小时前
c语言完美演绎9-17
c语言