I have designed and manufactured a custom PCB, with an ESP32 chip on it. I use my FTDI cable to upload my firmware. I have no problem to flash my firmware, and it runs with no problem. So far so good. But then, any successive attempts to flash again is a dead end as it results into a timeout (of course I still press the boot button on my PCB).
If I take a new PCB, the first flash is OK but I cannot do it again.
Note: to make thing as simple as possible, I simply use the Arduino IDE and my do-nothing code as my firmware replacement:
void setup() {
Serial.begin(115200);
//Serial.setDebugOutput(true);
Serial.println("Yo from SDL!");
}
// the loop function runs over and over again forever
int _loop = 1;
void loop() {
Serial.print("Loop #");
Serial.println(_loop++);
Serial.println();
delay(3000);
}
[UPDATED] Here is the schematic regarding the ESP32 and the GPIO0, GPIO2:
The schematic of the PCB regarding the boot loader
Do you have any clue?!