Chat freely about anything...

User avatar
By Eduardo Pinheiro
#41860 When I have errors in the code that makes my esp8266 crash, I receive messages like this:
rst cause:4, boot mode:(1,7)

It's clear to me the cause numbers. Not clear to me what does the boot mode values really mean.

I read in this link https://github.com/esp8266/esp8266-wiki/wiki/Boot-Process#esp-boot-modes that the first value of the boot mode:(x,y) is referred to the three low bits of x {MTDO, GPIO0, GPIO2} but I couldn't figure out what the y means. This is still confusing to me as sometimes in the place of x appears 1 or 3 depending of the situation and in the place of x appears 6 or 7.

Can you help me understand it?

Thanks in advance.

Best,
User avatar
By Barnabybear
#45850 Hi, I think the 'y' value is the location of the boot file that was used.

From the end of this document. http://esp8266.ru/esp8266-pin-register-strapping/

7 SDIO HighSpeed V2 IO Uart1 Booting
6 SDIO LowSpeed V1 IO Uart1 Booting
5 SDIO HighSpeed V1 IO Uart1 Booting
4 SDIO LowSpeed V2 IO Uart1 Booting
3 FLASH BOOT
2 Jump Boot
1 UART Boot
0 Remapping
User avatar
By MartianMartin
#45871
Barnabybear wrote:Hi, I think the 'y' value is the location of the boot file that was used.

From the end of this document. http://esp8266.ru/esp8266-pin-register-strapping/

7 SDIO HighSpeed V2 IO Uart1 Booting
6 SDIO LowSpeed V1 IO Uart1 Booting
5 SDIO HighSpeed V1 IO Uart1 Booting
4 SDIO LowSpeed V2 IO Uart1 Booting
3 FLASH BOOT
2 Jump Boot
1 UART Boot
0 Remapping


I received the following response from a Espressif support engineer: "You just focus on 1st character. Y is not a pricise judgement."

Still, I would like to know what it means as it may help my debugging efforts... During normal, working operation I always get y=2, is this the case for you? According to the enumeration that you posted '2' corresponds to 'Jump Boot' and I'm not even sure what that means as there is no jump drive. Unless there is a memory location on the ESP8266 ROM with those titles...?