ESP32 safe pin finder
Which GPIO pins can you actually use? Choose your board and what you're connecting, and see which pins work, which have catches, and which to leave alone.
| Pin | Status | Can do | Notes |
|---|
What the colors mean
Safe pins have no boot-time role and no hidden wiring. Use these first.
Caution pins work, but something about them can bite you: they're read at boot, they're input-only, they drive an onboard LED, or analog reads stop working while Wi-Fi is on.
Avoid pins are wired to flash memory or the USB serial chip. Using them crashes the board or breaks flashing.
Strapping pins, explained
At power-up, the ESP32 samples a handful of pins to decide whether to run your program or wait for new firmware. If an external part — a relay board's pull-up, a sensor that idles high — holds one of those pins the wrong way at that moment, the board won't boot normally. Once it's running, strapping pins behave like any other GPIO, which is why the problem only shows up after a power cut.
ADC2 and Wi-Fi
On the classic ESP32 and the C3, the second analog converter (ADC2) is shared with the Wi-Fi radio. In ESPHome, where Wi-Fi is always on, analog sensors belong on ADC1 pins: GPIO32–39 on the ESP32, GPIO0–4 on the C3.