Forum › Code & flashing

ESP32 will not upload: "Failed to connect" and other errors

💬 0 · 👁 4
ESP32 Projects team Team

The most common beginner problem: the Arduino IDE compiles the sketch, but the upload fails. Here is a proven checklist. If your case is different, reply with the full error text.

"A fatal error occurred: Failed to connect to ESP32: No serial data received"

The board did not enter the bootloader.

  1. Hold BOOT, start the upload in the IDE and release BOOT when Connecting.... appears.
  2. If that works every time, the board's auto-reset is weak. A 10 µF capacitor between EN and GND fixes it.
  3. Disconnect everything from GPIO0, GPIO2, GPIO12 and GPIO15 — these are strapping pins, and a pull in the wrong direction breaks boot. More in the ESP32 pinout article.

The port does not show up at all

  • A charge-only cable is the number one cause. Try another, known data cable.
  • Driver: CP2102 (Silicon Labs) or CH340 (WCH). macOS and Windows 11 usually have them; older systems need an install.
  • On ESP32-C3 / S3 with native USB the port exists only while the firmware is alive. If the sketch hangs: hold BOOT, press RESET, release BOOT. See first steps with the ESP32-C3 SuperMini.

"Brownout detector was triggered" after flashing

Not enough power: a hub port, a long thin cable, or a servo or LED strip also running from 3.3 V. Power the load separately and connect the grounds.

The upload stops halfway

Lower the speed: Tools → Upload Speed → 115200.


If nothing helps, start a topic with the board name, your OS, the ESP32 core version (Tools → Board → Boards Manager) and the full upload log.

Sign in with Google to start topics and reply. Sign in with Google

Be kind, stay on topic, no ads and no piracy.