ESP32 learning hubFROM YOUR FIRST CONNECTION TO YOUR FIRST PROGRAM

Get started with Arduino IDE.

One clear path from a board on your desk to “Hello, ESP32!” on your screen. Use a computer for installation; keep this guide open on any device.

First, check which board you haveYou can install the editor now. Confirm the board before choosing a board profile or firmware.
Identify my board
Board:
STEP 03 / CONNECT YOUR BOARD

Three things on your desk.

Board:
  • Your ESP32 development board.
  • A USB cable that carries data, with the right connector for your board.
  • A Windows, macOS, or Linux computer with an internet connection.

Disconnect external circuits for this first test. Connect the board directly to your computer. A power LED confirms power, but does not prove the cable carries data.

Classic ESP32 uses a USB-to-UART bridge. Select its serial port; native USB CDC settings do not apply.

No USB port showing up?
Check the cable, serial port and board settings
Illustration · Check the cable, serial port and board settings
STEP 04 / INSTALL

Install Arduino IDE.

Board:

Installing the editor is shared. The board profile, firmware and examples below follow your board choice.

Download Arduino IDE for your operating system, install it, and open the editor.

  1. Open Preferences and find “Additional boards manager URLs”.
  2. Add the Espressif package URL below, keeping any existing URLs.
  3. Open Boards Manager, search for esp32, and install esp32 by Espressif Systems.
https://espressif.github.io/arduino-esp32/package_esp32_index.json
Open Arduino download
Arduino IDE · ESP32 Boards ManagerView full size ↗
Screenshot · Arduino IDE · ESP32 Boards Manager
STEP 05 / CONFIGURE

Match the settings to your board.

Board:

Choose ESP32 or ESP32-S3 above to see its settings. For another family, use its exact board reference.

ESP32 · arduino · 4MB configuration and successful uploadView full size ↗
Screenshot · ESP32 · arduino · 4MB configuration and successful upload
STEP 06 / WRITE YOUR FIRST PROGRAM

Say hello. See it working.

This test uses serial output instead of an LED, so it doesn’t depend on which LED your board has.

hello_esp32.ino
void setup() {
  Serial.begin(115200);
  delay(1500);
}

void loop() {
  Serial.println("Hello, ESP32!");
  delay(1000);
}
ESP32 · arduino · 4MB configuration and successful uploadView full size ↗
Screenshot · ESP32 · arduino · 4MB configuration and successful upload
STEP 07 / RUN & CHECK

Send it to your board.

  1. Paste the code into a new sketch and save it.
  2. Click Upload and wait for it to finish.
  3. Open Serial Monitor and select 115200 baud.
You should see “Hello, ESP32!” once a second.
That confirms your editor can send a program to the board and read its output.
No output or upload failed? Troubleshoot
ESP32 · arduino · Hello, ESP32!View full size ↗
Screenshot · ESP32 · arduino · Hello, ESP32!
YOU’RE READY FOR THE NEXT STEP

Make something happen.

Check the tutorial’s required components and your board’s pinout before wiring.