Page 1 of 2

A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Tue Apr 02, 2019 11:15 am
by GeorgeFlorian1
Hello !

After the yesterday's fiasco, today I've been trying to upload any sketch to a new, out-of-the-box ESP32-EVB. But it doesn't work.

I keep getting:
A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

What's happening ? Maybe the ESP32-Wroom-32 is burned out, but this one is new, never touched.

The ESP32-EVB is only connected to the PC via a USB Cable.
These are the Arduino IDE settings:
https://i.postimg.cc/J4DR3jrC/Screensho ... -14-31.png

Re: A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Tue Apr 02, 2019 12:01 pm
by idahowalker
Have you tried holding down the EN button during sketch upload?

I found some but not all ESP's require the EN button to be held down before and until the upload has started. That is till, I added a powered USB hub. Once I added in a powered USB hub the need for sometimes holding down the EN button during a sketch upload went away. Also, have you looked at the basic schematic for the ESP module? You will notice that there is a direct connection from the 5V line to the USB port and your computer. If something happens to your ESP32, the happening can be fed back into your computer if directly connected; another reason to have that added layer of protection of a powered USB hub.

Re: A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Tue Apr 02, 2019 1:18 pm
by GeorgeFlorian1
idahowalker wrote:
Tue Apr 02, 2019 12:01 pm
Have you tried holding down the EN button during sketch upload?

I found some but not all ESP's require the EN button to be held down before and until the upload has started. That is till, I added a powered USB hub. Once I added in a powered USB hub the need for sometimes holding down the EN button during a sketch upload went away. Also, have you looked at the basic schematic for the ESP module? You will notice that there is a direct connection from the 5V line to the USB port and your computer. If something happens to your ESP32, the happening can be fed back into your computer if directly connected; another reason to have that added layer of protection of a powered USB hub.
I've always pressed the EN Button on the ESP32 boards. With the ESP32-Wroom-32 and now with the ESP32-EVB.

With the EVB the trick seems to be to keep holding down the BUT1, then press on RST1, then release BUT1 and it starts uploading. This sometimes works on Arduino IDE. On PlatformIO IDE I couldn't figure how to upload code.

You're saying that I can harm the PC if I connect the ESP directly to it via a USB Cable ? I never thought of that.

Re: A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Tue Apr 02, 2019 7:41 pm
by idahowalker
GeorgeFlorian1 wrote:
Tue Apr 02, 2019 1:18 pm
You're saying that I can harm the PC if I connect the ESP directly to it via a USB Cable ? I never thought of that.
I have experienced the 5V regulator supplying the ESP32 5V, deciding to put out a higher voltage, than 5V. If you look at the ESP32 schematic, you'll see that the 5V from the USB plug is directly tied to the ESP5V supply line. So, when the 5V regulator decided to put more then 5V onto the 5V line, the ESP32 died, the >5V was felt on my pc's USB 5V line. Which does wonders for the operation of the PC. My case, I feel I got lucky and will not, from that point on, connect any uController directly to my PC. Instead all uController connections to my PC are through a powered hub. I call it wearing a rubber.

Re: A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Fri Apr 05, 2019 8:42 am
by GeorgeFlorian1
idahowalker wrote:
Tue Apr 02, 2019 7:41 pm
GeorgeFlorian1 wrote:
Tue Apr 02, 2019 1:18 pm
You're saying that I can harm the PC if I connect the ESP directly to it via a USB Cable ? I never thought of that.
I have experienced the 5V regulator supplying the ESP32 5V, deciding to put out a higher voltage, than 5V. If you look at the ESP32 schematic, you'll see that the 5V from the USB plug is directly tied to the ESP5V supply line. So, when the 5V regulator decided to put more then 5V onto the 5V line, the ESP32 died, the >5V was felt on my pc's USB 5V line. Which does wonders for the operation of the PC. My case, I feel I got lucky and will not, from that point on, connect any uController directly to my PC. Instead all uController connections to my PC are through a powered hub. I call it wearing a rubber.
https://i.postimg.cc/ZnxrcQMb/esp-pin.jpg

Measuring the Voltage Regulator that's on the ESP I noticed that between pin 1 and 3 there are 4.35V when the ESP is connected to the PC using a USB Cable. Is that normal ?

Re: A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Fri Apr 05, 2019 12:04 pm
by boarchuz
That's Vin and GND for the AMS1117. 4.35V seems a little low - you would expect USB to be around 5V +-0.25 - but there might be a diode or something in between to explain that drop. Regardless, it should enough for the voltage regulator to produce a ~3.3V output (probe Vout and GND with the multimeter if you want to check).

Re: A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Fri Apr 12, 2019 2:18 pm
by karansoi
GeorgeFlorian1 wrote:
Tue Apr 02, 2019 11:15 am
Hello !

After the yesterday's fiasco, today I've been trying to upload any sketch to a new, out-of-the-box ESP32-EVB. But it doesn't work.

I keep getting:
A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

What's happening ? Maybe the ESP32-Wroom-32 is burned out, but this one is new, never touched.

The ESP32-EVB is only connected to the PC via a USB Cable.
These are the Arduino IDE settings:
https://i.postimg.cc/J4DR3jrC/Screensho ... -14-31.png
By the end of compile connect GPIO0 to GND and keep it till end of upload.
See if you are able to upload. After upload you remove this connection. You can use a jumper wire.

Re: A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Tue Apr 16, 2019 7:55 am
by GeorgeFlorian1
karansoi wrote:
Fri Apr 12, 2019 2:18 pm
By the end of compile connect GPIO0 to GND and keep it till end of upload.
See if you are able to upload. After upload you remove this connection. You can use a jumper wire.
I am using the 30 pins ESP32: https://i1.wp.com/randomnerdtutorials.c ... =966&ssl=1

There is no GPIO0 on this board.

Re: A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Tue Apr 16, 2019 8:42 am
by boarchuz
The Boot button is 0.

I'd suggest opening your serial monitor. Then hold down Boot, don't be shy, you can't do it too early and there's no harm in holding it longer than necessary. Give the reset button a good click and you should see some output saying that it's in download mode.

Make sure that works before attempting to program it. Then close serial.

When you program it, it will probably try to do this automatically. You can give it a helping hand by holding down the Boot button all-the-while to make sure that it boots into download mode (it's ok to release once it starts uploading). If it doesn't reset automatically (ie. if it doesn't start uploading), click the reset button to do it yourself, while still holding down Boot of course.

That should be fairly fool-proof.

Re: A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Posted: Tue Apr 16, 2019 11:20 am
by GeorgeFlorian1
boarchuz wrote:
Tue Apr 16, 2019 8:42 am
The Boot button is 0.

I'd suggest opening your serial monitor. Then hold down Boot, don't be shy, you can't do it too early and there's no harm in holding it longer than necessary. Give the reset button a good click and you should see some output saying that it's in download mode.

Make sure that works before attempting to program it. Then close serial.

When you program it, it will probably try to do this automatically. You can give it a helping hand by holding down the Boot button all-the-while to make sure that it boots into download mode (it's ok to release once it starts uploading). If it doesn't reset automatically (ie. if it doesn't start uploading), click the reset button to do it yourself, while still holding down Boot of course.

That should be fairly fool-proof.
Tried this a long time ago. I got nothing and still getting nothing. I really think the ESP is busted.

I've always had to press on BOOT button to be able to upload code the ESP. Now I got a new Wrover-B DevKitV4 and I still have to keep BOOT pressed.