Custom PCB boot looping
Posted: Tue Mar 03, 2020 11:06 am
I am just in the processing of assembling some ESP32 based PCBs that I had manufactured and I am noticing some weird behaviour. When the chip has nothing in flash memory, I am able to talk to the bootloader (CP2102 USB bridge) and the power is stable. When a program is flashed to the chip, the ESP32 goes into a boot loop and the only way I can recover is to enter the bootloader using EN/IO0 and erase the flash.
There is an LED on the power supply and this begins flickering as soon as the chip boots into a program. Unfortunately I don't have access to a scope at the moment so I can't provide much more information than that.
If I hold the EN pin low and release, the serial output suggests the chip tries to boot and then the serial port drops communications. Serial output below
I have attached a schematic below. Note that I have removed the LED on IO12, with the pin having no external pull down (however pulling this pin low doesn't seem to resolve the boot issue).
I'm think the problem may be with the power supply struggling to power the chip through boot (could confirm with scope), or something I have missed with the strapping pins. Can anyone help to clear this up? Thanks in advance.
There is an LED on the power supply and this begins flickering as soon as the chip boots into a program. Unfortunately I don't have access to a scope at the moment so I can't provide much more information than that.
If I hold the EN pin low and release, the serial output suggests the chip tries to boot and then the serial port drops communications. Serial output below
Code: Select all
// rst:0x1 (POWERON_RESET),boot:0x33 (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:2
// load:0x3fff0030,len:4
// load:0x3fff0034,len:7168
// ho 0 tail 12 room 4
// load:0x40078000,len:14864
// load:0x40080400,len:4568
// entry 0x400806f0
I'm think the problem may be with the power supply struggling to power the chip through boot (could confirm with scope), or something I have missed with the strapping pins. Can anyone help to clear this up? Thanks in advance.