I am designing my own dev board with a WROOM32, but having quite a inconsistent behavior while programming.
Precisely I get the following error:
Chip is ESP32D0WDQ6 (revision 0)
Features: WiFi, BT, Dual Core
Configuring flash size...
Warning: Could not auto-detect Flash size (FlashID=0x0, SizeID=0x0), defaulting to 4MB
Flash params set to 0x0220
Compressed 20624 bytes to 12167...
Wrote 20624 bytes (12167 compressed) at 0x00001000 in 1.1 seconds (effective 151.8 kbit/s)...
A fatal error occurred: Timed out waiting for packet header
When I read the terminal it sasys:
and if enter boot mode it says:
rst:0x1 (POWERON_RESET),boot:0x5 (DOWNLOAD_BOOT(UART0/UART1/SDIO_FEI_REO_V2))
waiting for download
I know that this has been discussed before, but cant find a proper solution in either.
There has been said that this tend to occur when the power is not enough, but Iam powering with 3V3@3A lab PW, and my oscilloscope doesn't shows any spike when programming.
Last friday I put a 10nF ceramic cap very close to GND(1)-VCC(2) and all of the suden it worked! but then, today I reconnected I it was failing again.
So I am suspecting that the problem must be the filtering caps, but, then again, cant find a proper arrangement. I have try the common 10u+0.1u, one electrolytic, one ceramic; or one electrolytic one polyester (respectively). Have also try somo big bulk 100u and even 220u electrolytic, but nothing.
maybe I need those filter caps AND some big bulk cap next to the PS entry?
Iam also suspecting of the central thermal pad. I added to the design and the PCB but didn't connect or solder anything.
Of course it could be that the module is damaged, but it's a little bit hard to unsolder it without breaking the board .
thanks in advance!