espressif / ESP8266_RTOS_SDK

Latest ESP8266 SDK based on FreeRTOS, esp-idf style.
http://bbs.espressif.com
Apache License 2.0
3.35k stars 1.57k forks source link

Failed to verify partition table (GIT8266O-506) #929

Open GarMingLi opened 4 years ago

GarMingLi commented 4 years ago

Environment

Problem Description

After I execute the command 'make Flash 'to burn the firmware, I execute the' Make Monitor 'to run the program.The following error occurs:

I (66) boot: compile time 12:28:27
I (75) qio_mode: Enabling default flash chip QIO
I (75) boot: SPI Speed      : 40MHz
I (76) boot: SPI Mode       : QIO
I (80) boot: SPI Flash Size : 4MB
E (84) flash_parts: partition 0 invalid magic number 0x3333
E (90) boot: Failed to verify partition table
E (95) boot: load partition table error!
user code done
nsfilho commented 4 years ago

What partition table are you using? You can see in make menuconfig or if it's a custom, please send us the partition.csv and we try to help you.

best regards, ns.

nsfilho commented 4 years ago

@GarMingLi are you solved your problem? If yes, please share with us how and the steps 😄 . Probably this could help someone in future.

GarMingLi commented 4 years ago

@nsfilho When I changed the QIO of SPI Mode to DIO, the problem was solved.

MY201314MY commented 3 years ago

@nsfilho When I changed the QIO of SPI Mode to DIO, the problem was solved.

Well Done!

alexpalade commented 3 years ago

Thanks @GarMingLi, your solution fixed this for my NodeMCU (set SPI mode to DIO).

captainzkx commented 3 years ago

Thanks,the problem was solved for my NodeMCU.

HHyeon commented 3 years ago

@nsfilho When I changed the QIO of SPI Mode to DIO, the problem was solved.

I was middle in figure it out those error that you mentioned. in nodeMCU 0.9, to using rtos sdk , that need to change SPI Mode QIO to DIO Apparently. thank you. I solved my that error thanks to you.

pzarzycki commented 1 year ago

I had similar issue on 8266 platform after disabling option Enable ‘nano’ formatting options for printf/scanf family option configuration for components / newlib. Clean build did not help.

Error message:

flash_parts: partition 0 invalid magic number 0x6f5c

Switching option Serial flasher config / Flash SPI mode to DIO fixed the issue, as suggested above.

Pz1c commented 1 year ago

Hi guys I got same error "flash_parts: partition 0 invalid magic number 0x867a" with my esp32-wroom-32 chip when try to configure Secure Boot v1 only one change for default settings was enlarge bootloader partition size buil/partition-table-flash_args


--flash_mode dio --flash_freq 40m --flash_size 4MB
0xd000 partition_table/partition-table.bin

build/flash_args.in

--flash_mode dio --flash_freq 40m --flash_size 4MB
0x20000 $<TARGET_PROPERTY:__idf_build_target,EXECUTABLE_NAME>.bin
0xd000 partition_table/partition-table.bin

appreciate any help)

P.S. Flash SPI mode already DIO

P.P.S. looks like I got error from doc In case the bootloader is encrypted but partition table is re-updated with plaintext partition table image the bootloader will fail to read the partition table and following type of failure will be displayed: https://docs.espressif.com/projects/esp-idf/en/release-v4.1/security/flash-encryption.html

P.P.P.S this table generated during build

# ESP-IDF Partition Table
# Name, Type, SubType, Offset, Size, Flags
nvs,data,nvs,0x11000,16K,
otadata,data,ota,0x15000,8K,
phy_init,data,phy,0x17000,4K,
factory,app,factory,0x20000,1M,
ota_0,app,ota_0,0x120000,1M,
ota_1,app,ota_1,0x220000,1M,
nvs_key,data,nvs_keys,0x320000,4K,encrypted