The notorious "flash read err, 1000" - with a twist

u063096
Posts: 34
Joined: Wed Feb 13, 2019 3:27 pm

Re: The notorious "flash read err, 1000" - with a twist

Postby u063096 » Thu Jan 28, 2021 12:07 pm

ESP_Sprite wrote:
Thu Jan 28, 2021 3:05 am
You could burn the eFuse in the ESP32 to indicate it should ignore that bootstrap pin and just use a set voltage. espefuse.py has an easy option for that, suggest you look that up if you want to go that route.
Thanks, I will have a look at it.

mabensur
Posts: 3
Joined: Wed Feb 24, 2021 9:00 pm

Re: The notorious "flash read err, 1000" - with a twist

Postby mabensur » Thu Jun 09, 2022 6:05 pm

My problem was similar and was solved by folowing the steps on https://docs.espressif.com/projects/esp ... encryption:
If flash encryption was enabled accidentally, flashing of plaintext data will soft-brick the ESP32. The device will reboot continuously, printing the error flash read err, 1000 or invalid header: 0xXXXXXX.

For flash encryption in Development mode, encryption can be disabled by burning the FLASH_CRYPT_CNT eFuse. It can only be done three times per chip by taking the following steps:

In Project Configuration Menu, disable Enable flash encryption on boot, then save and exit.

Open project configuration menu again and double-check that you have disabled this option! If this option is left enabled, the bootloader will immediately re-enable encryption when it boots.

With flash encryption disabled, build and flash the new bootloader and application by running idf.py flash.

Use espefuse.py (in components/esptool_py/esptool) to disable the FLASH_CRYPT_CNT by running:

espefuse.py burn_efuse FLASH_CRYPT_CNT
Reset the ESP32. Flash encryption will be disabled, and the bootloader will boot as usual.

Who is online

Users browsing this forum: Angorka and 50 guests