不同系列的 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
相关推荐
小雪崩25 分钟前
嵌入式学习 day25:哈希表及排序与查找
linux·c语言·数据结构·学习·排序算法
yiqiefeimeng1 小时前
C语言指针难倒90%人?买房比喻让你瞬间开窍
c语言·学习·编程·指针·比喻
caimouse2 小时前
ReactOS 窗口系统分析(5):可见区域与窗口 DC — vis.c + windc.c
c语言·开发语言
_Narcissus_3 小时前
动态规划初探(含完整代码实现)
c语言·数据结构·c++·算法·动态规划·背包问题·最短路径
Cerman3 小时前
QEMU启动OVMF shell超时分析
c语言·windows·经验分享
_Narcissus_5 小时前
枚举和模拟算法笔记
c语言·数据结构·c++·笔记·算法·模拟·枚举
Fa_Mian_Tuan5 小时前
最小生成树之Kruskal算法(超详细原理+完整可运行C语言代码)
c语言·开发语言·数据结构·笔记·算法·图论
老当益壮梁奶奶6 小时前
Linux软件编程学习笔记(二)Linux文件IO编程入门:从fopen到fgetc
linux·c语言·c++·笔记·学习
sunoo-2296 小时前
C 语言文件 IO 全攻略:从基础函数到实战踩坑(BMP 读取 + 词典查询)
linux·c语言·前端·笔记·vscode·学习
LuminousCPP8 小时前
栈和队列专题(四):LeetCode 232. 用栈实现队列|双栈分工 + 按需迁移 + 摊还 O(1)
c语言·数据结构·笔记·算法·leetcode