乐鑫技术交流
直播中

123

10年用户 826经验值
擅长:可编程逻辑
私信 关注
[问答]

ESP32S3 wroom模组无法烧写大于4MB的文件怎么解决?

如下日志,我买了几个ESP32S3模组的开发板,一个是ESP32-S3-DevKitC-1 v1.1,一个是ESP32-S3-Korvo-2 V3.0。我在烧写带语音识别的代码时,启用有一个4150KB的模组镜像。我发现在烧写的时候,32MB模组的flash大小都读取不到,那么在烧写的时候就烧写失败,日志如下。麻烦确认一下是什么问题,是否可以通过修改配置文件解决。

--------------------------ESP32-S3-Korvo-2 V3.0------的日志-------
PS D:softwareEspressifframeworksesp-idf-v4.4.1> esptool.py -p COM22 flash_id
esptool.py v3.3-dev
Serial port COM22
Connecting....
Detecting chip type... ESP32-S3
Chip is ESP32-S3
Features: WiFi, BLE
Crystal is 40MHz
MAC: 7c:df:a1:e7:7a:a8
Uploading stub...
Running stub...
Stub running...
Manufacturer: c8
Device: 4018
Detected flash size: 16MB
Hard resetting via RTS pin...
--------------------------------------------ESP32-S3-DevKitC-1 v1.1--------------32MB版本的开发板日志----------------
PS D:softwareEspressifframeworksesp-idf-v4.4.1> esptool.py -p COM5 flash_id
esptool.py v3.3-dev
Serial port COM5
Connecting....
Detecting chip type... ESP32-S3
Chip is ESP32-S3
Features: WiFi, BLE
Crystal is 40MHz
MAC: 7c:df:a1:e1:10:c4
Uploading stub...
Running stub...
Stub running...
Manufacturer: c2
Device: 8039
Detected flash size: Unknown
Hard resetting via RTS pin...

-------------------------------------烧写失败的日志-----------------------------------
esptool.py v3.3-dev
Serial port COM5
Connecting....
Chip is ESP32-S3
Features: WiFi, BLE
Crystal is 40MHz
MAC: 7c:df:a1:e1:10:c4
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Warning: Could not auto-detect Flash size (FlashID=0x3980c2, SizeID=0x39), defaulting to 4MB

A fatal error occurred: File model.bin (length 4251648) at offset 2752512 will not fit in 4194304 bytes of flash. Use --flash_size argument, or change flashing address.
                                       

回帖(1)

李平

2024-6-14 17:08:57
根据您提供的信息,您正在尝试烧录一个大于4MB的文件到ESP32-S3模组。首先,我们需要了解ESP32-S3模组的Flash大小。ESP32-S3模组通常有8MB和16MB的Flash版本。如果您使用的是8MB的模组,那么您将无法烧录大于4MB的文件。

解决这个问题的方法如下:

1. 确认您的ESP32-S3模组的Flash大小。您可以查看模组的数据手册或询问供应商以获取确切的Flash大小。

2. 如果您的模组是8MB的Flash版本,您需要购买一个具有更大Flash容量的模组,例如16MB。

3. 如果您的模组是16MB的Flash版本,但仍然无法烧录大于4MB的文件,您可以尝试以下方法:

   a. 确保您使用的是最新版本的Espressif ESP-IDF框架。您可以通过以下命令更新ESP-IDF框架:
      ```
      cd ~/esp/esp-idf
      git pull
      ```

   b. 检查您的`sdkconfig`配置文件,确保以下配置正确:
      ```
      CONFIG_ESPTOOLPY_FLASHSIZE=16MB
      ```

   c. 如果您使用的是`make`命令进行烧录,确保您的命令包含正确的Flash大小参数:
      ```
      make flash FLASH_SIZE=16MB
      ```

   d. 如果您使用的是`esptool.py`命令进行烧录,请确保您的命令包含正确的Flash大小参数:
      ```
      esptool.py --port COM22 write_flash -z --flash_size 16MB 0x0 your_app.bin
      ```


举报

更多回帖

发帖
×
20
完善资料,
赚取积分