Page 1 of 1

ESP32 Flash Download Tool produces "flash read err, 1000" on boot

Posted: Sat May 12, 2018 9:43 am
by senthil313
1. Develop the code using Arduino
2.Change output format(.ino) into (.bin).
3.select esp32 flash download tool shown in image below.
Esp32_Flash.JPG
Esp32_Flash.JPG (86.97 KiB) Viewed 26202 times
Esp32_Flash.JPG
Esp32_Flash.JPG (86.97 KiB) Viewed 26202 times
4.upload the code,it will loading then finally it shows "FINISH".
5.After then reset the module it shows the error

rst:0x1 (POWERON_RESET),boot:0x16 (SPI_FAST_FLASH_BOOT)
flash read err, 1000
Falling back to built-in command interpreter.
OK

6.how to overcome from this.please give suggestion for flash download tool for esp32 using .bin file.
7.whether the tool is also used for production level...

Re: ESP32 Flash Download Tool produces "flash read err, 1000" on boot

Posted: Mon May 14, 2018 3:20 am
by ESP_Angus
Hi senthil,

I've split your post into a new thread because it doesn't relate to the discussion in the previous thread.

The "flash read err, 1000" indicates that the ESP32 didn't find a bootloader binary at offset 0x1000.

If using Arduino binaries, you need to flash:
  • Either ./tools/sdk/bin/bootloader_qio.bin or ./tools/sdk/bin/bootloader.bin (for QIO vs DIO mode) at offset 0x1000
  • ./tools/partitions/default.bin at offset 0x8000
  • Your app's .bin at offset 0x10000
Another way to find this information is to go to Arduino Preferences and enable "Verbose Upload". In the Arduino console it should show the full command being sent to esptool.py (the command line version of the Flash Download Tool), with filenames and offsets.

Re: ESP32 Flash Download Tool produces "flash read err, 1000" on boot

Posted: Mon May 14, 2018 5:08 am
by senthil313
Hi Angus,

Thanks for your reply.
I test as per your reference.
Flash -QIO - bootloader_qio.bin for 0x1000
partitions -> default.bin for 0x8000
.bin of source for 0x10000

After programming it show
Flash_window.JPG
Flash_window.JPG (76.09 KiB) Viewed 26171 times
Ard_Reset.JPG
Ard_Reset.JPG (22.05 KiB) Viewed 26171 times
kindly give any other solution ...

Re: ESP32 Flash Download Tool produces "flash read err, 1000" on boot

Posted: Mon May 14, 2018 8:15 am
by ESP_Angus
Try changing the "SPI Mode" in the UI from QIO to DIO. The bootloader (bootloader_qio.bin) will be loaded in DIO mode and then it enables QIO mode. This how Arduino ESP32 and ESP-IDF both enable QIO mode.

If this doesn't work, QIO may not be compatible at all. Try flashing bootloader.bin instead (in DIO mode).

Angus

Re: ESP32 Flash Download Tool produces "flash read err, 1000" on boot

Posted: Tue May 15, 2018 4:55 am
by senthil313
Hi Angus,
I change the SPI mode to DIO for bootloader_qio.bin...
After reset the device, it shows that ....

and also i tried bootloader.bin in DIO mode ...

rst:0x1 (POWERON_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0010,len:4
load:0x3fff0014,len:708
load:0x40078000,len:0
load:0x40078000,len:12168
entry 0x40078a68
user code done

finally it shows user code done...i think...the code is loaded...but it will needs any configurations?

Re: ESP32 Flash Download Tool produces "flash read err, 1000" on boot

Posted: Tue May 15, 2018 7:22 am
by ESP_Angus
This looks like it's loading the bootloader binary but then it's exiting. I'm not sure why this would be.

Check the Verbose Upload output in Arduino (see a couple of posts back) and make sure the files & offsets you're flashing match the files & offsets given there.

Re: ESP32 Flash Download Tool produces "flash read err, 1000" on boot

Posted: Tue May 29, 2018 12:07 pm
by senthil313
Dear Angus,
The problem is solved...now its working ...
After enable Verbose... watch the compile process...
then upload as per memory locations...

Thanks for your support...

Re: ESP32 Flash Download Tool produces "flash read err, 1000" on boot

Posted: Thu Jun 09, 2022 6:03 pm
by mabensur
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.