Page 1 of 1

MD5 sum error when flashing code in second time

Posted: Wed Mar 11, 2020 11:26 am
by Aniket Patel
Hi all,
I have removed the shield(upper cover) on the ESP32-WROVER module and replaced the internal 4 MB flash with 16 MB flash(CYPRESS S25FL127S) to increase the esp32 module flash size. when first time flashing this module then module successfully flashing and working fine, but when I flash the second time then module gives MD5 error in the console log.

But when I erase the entire flash and then upload the code It works fine.

ESP32 module Flashing Log:-

Code: Select all

aniket@aniket-Desktop:~/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/GIT/Git_Common_checkout/Ayla-B_Bridge/Firmware/source/development/B_Bridge_app(ABB_807)$ make flash monitor
Toolchain path: /home/aniket/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
Toolchain version: crosstool-ng-1.22.0-80-g6c4433a
Compiler version: 5.2.0
Python requirements from /home/aniket/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/esp-idf/requirements.txt are satisfied.
Flashing binaries to serial port /dev/ttyUSB0 (app at offset 0x10000)...
esptool.py v2.6
Serial port /dev/ttyUSB0[attachment=1]Screenshot from 2020-03-11 16-33-46.png[/attachment][attachment=1]Screenshot from 2020-03-11 16-29-33.png[/attachment]
Connecting....
Chip is ESP32D0WDQ5 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: c8:2b:96:99:fc:fc
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Auto-detected Flash size: 16MB
Compressed 8192 bytes to 31...
Wrote 8192 bytes (31 compressed) at 0x0000a000 in 0.0 seconds (effective 4085.8 kbit/s)...
Hash of data verified.
Compressed 20192 bytes to 12241...
Wrote 20192 bytes (12241 compressed) at 0x00001000 in 0.1 seconds (effective 1121.9 kbit/s)...
Hash of data verified.
Compressed 1522352 bytes to 919134...
Wrote 1522352 bytes (919134 compressed) at 0x00010000 in 20.6 seconds (effective 590.4 kbit/s)...
File  md5: 3ed193a4092b48460b8d8ecee91103ea
Flash md5: fcaa9b9e393954c0162ef7ca16b0bb22
MD5 of 0xFF is f4e89d1ccdf97d3d2d6db9691a1abd8d

A fatal error occurred: MD5 of file does not match data in flash!
/home/aniket/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/esp-idf/components/esptool_py/Makefile.projbuild:62: recipe for target 'flash' failed
make: *** flash Error 2
aniket@aniket-Desktop:~/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/GIT/Git_Common_checkout/Ayla-B_Bridge/Firmware/source/development/B_Bridge_app(ABB_807)$ make erase_flash
Toolchain path: /home/aniket/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
Toolchain version: crosstool-ng-1.22.0-80-g6c4433a
Compiler version: 5.2.0
Python requirements from /home/aniket/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/esp-idf/requirements.txt are satisfied.
Erasing entire flash...
esptool.py v2.6
Serial port /dev/ttyUSB0
Connecting........_____....._
Chip is ESP32D0WDQ5 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: c8:2b:96:99:fc:fc
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Erasing flash (this may take a while)...
Chip erase completed successfully in 41.0s
Hard resetting via RTS pin...
aniket@aniket-Desktop:~/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/GIT/Git_Common_checkout/Ayla-B_Bridge/Firmware/source/development/B_Bridge_app(ABB_807)$ make flash
Toolchain path: /home/aniket/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc
Toolchain version: crosstool-ng-1.22.0-80-g6c4433a
Compiler version: 5.2.0
Python requirements from /home/aniket/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/esp-idf/requirements.txt are satisfied.
Flashing binaries to serial port /dev/ttyUSB0 (app at offset 0x10000)...
esptool.py v2.6
Serial port /dev/ttyUSB0
Connecting........_____....._
Chip is ESP32D0WDQ5 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: c8:2b:96:99:fc:fc
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Auto-detected Flash size: 16MB
Compressed 8192 bytes to 31...
Wrote 8192 bytes (31 compressed) at 0x0000a000 in 0.0 seconds (effective 4097.8 kbit/s)...
Hash of data verified.
Compressed 20192 bytes to 12241...
Wrote 20192 bytes (12241 compressed) at 0x00001000 in 0.1 seconds (effective 1122.4 kbit/s)...
Hash of data verified.
Compressed 1522352 bytes to 919134...
Wrote 1522352 bytes (919134 compressed) at 0x00010000 in 21.3 seconds (effective 572.6 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 135...
Wrote 3072 bytes (135 compressed) at 0x00008000 in 0.0 seconds (effective 1550.0 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...
aniket@aniket-Desktop:~/Projects/Ayla_B_bridge/Software/B_Bridge_Firmware/GIT/Git_Common_checkout/Ayla-B_Bridge/Firmware/source/development/B_Bridge_app(ABB_807)$ 

Re: MD5 sum error when flashing code in second time

Posted: Thu Mar 12, 2020 8:32 am
by ESP_Sprite
Not sure if we support that flash; it may have a different sector erase command. If it does, erasing flash 'on the fly' like what happens when you over-write flash won't work and you will get data errors.

Re: MD5 sum error when flashing code in second time

Posted: Fri Mar 13, 2020 6:27 am
by Aniket Patel
ESP_Sprite wrote:
Thu Mar 12, 2020 8:32 am
Not sure if we support that flash; it may have a different sector erase command. If it does, erasing flash 'on the fly' like what happens when you over-write flash won't work and you will get data errors.
Hi ESP_sprite,
Thanks for your quick reply, currently we have changed 16 MB flash from CYPRESS S25FL127S to Winbond W25Q128FW then I have tested the device. It's working fine.