ESP32的flash_download_tool工具使用问题记录

板卡模组:ESP32-C3-WROOM-02

下载工具:flash_download_tool,3.9.2版本

问题描述:在使用flash_download_tool工具下载程序到ESP32-C3-WROOM-02模组上后一直重启,串口打印信息如下: ESP-ROM:esp32c3-api1-20210207 Build:Feb 7 2021 rst:0x1 (POWERON),boot:0xc (SPI_FAST_FLASH_BOOT) SPIWP:0xee mode:DIO, clock div:2 load:0x3fcd6100,len:0x1428 load:0x403ce000,len:0xc04 load:0x403d0000,len:0x292c SHA-256 comparison failed: Calculated: fb2aa67ee6a1d366b5c2a9e4c40d564597dc36f1477709d8e8bbcbaaef00da37 Expected: 9b18b42e3e8e407f5e7b13f26c80172eda36d674c584e818f50843c766ebde69 Attempting to boot anyway… entry 0x403ce000 I (49) boot: ESP-IDF v4.4-dev-2313-gc69f0ec32 2nd stage bootloader I (49) boot: compile time 12:10:14 I (49) boot: chip revision: 3 I (49) boot_comm: chip revision: 3, min. bootloader chip revision: 0 I (55) qio_mode: Enabling default flash chip QIO I (59) boot.esp32c3: SPI Speed : 40MHz I (63) boot.esp32c3: SPI Mode : QIO I (67) boot.esp32c3: SPI Flash Size : 2MB I (71) boot: Enabling RNG early entropy source… E (75) flash_parts: partition 3 invalid - offset 0x150000 size 0x140000 exceeds flash chip size 0x200000 E (84) boot: Failed to verify partition table E (89) boot: load partition table error! 下载的文件名及地址请见图片: 其中第1、2、4个文件是在Arduino软件里面找的,第三个为应用程序。 本人尝试过使用arduino软件烧录后,使用flash_download_tools工具更新第1、3、4文件,程序能正常运行;更新第2个文件后就会一直重启。

问题分析:在打印信息中有这么几句话 I (55) qio_mode: Enabling default flash chip QIO I (59) boot.esp32c3: SPI Speed : 40MHz I (63) boot.esp32c3: SPI Mode : QIO I (67) boot.esp32c3: SPI Flash Size : 2MB I (71) boot: Enabling RNG early entropy source… E (75) flash_parts: partition 3 invalid - offset 0x150000 size 0x140000 exceeds flash chip size 0x200000 E (84) boot: Failed to verify partition table E (89) boot: load partition table error! 模组的实际flash大小为4MB,这里显示是2MB导致了错误 而flash_download_tool最近更新的版本去掉了选择flash大小的功能,导致无法手动选择,自动识别又不能正确识别,导致该问题

解决方法: 在使用过flash_download_tool工具下载后会自动生成一些配置文件,找到spi_download.conf文件内容即可 将文件内的“flash_size = keep”改成“flash_size = 4MB”保存后,重新打开下载工具重新下载即可

经验分享 程序员 微信小程序 职场和发展