Home / Pinout / ESP32-H2
ESP32-H2 pinout & GPIO reference
The answer when you need low-power mesh and no Wi-Fi. Dual 802.15.4 + BLE radio makes it a natural Thread / Zigbee end device. GPIO 7–14 belong to the RTC domain and are the only pins that can wake the chip from deep sleep; all other GPIOs can only wake it from light sleep.
Data verified:2026-10-20 · Cross-checked against Espressif datasheets and the ESP-IDF programming guide. Always confirm with the official document before finalizing a design.
Official documentation:link 1 · link 2
Verify against official docs:Module-level UART0 pin mapping (differs per module) · How many GPIOs are actually broken out on each module
Key specifications
| Core | 32-bit RISC-V single-core |
|---|---|
| Clock | Up to 96 MHz |
| SRAM | 320 KB SRAM · 128 KB ROM · 4 KB RTC SRAM |
| Wireless | No Wi-Fi · Bluetooth 5 (LE) + IEEE 802.15.4 (Thread / Zigbee / Matter) |
| USB | USB Serial/JTAG (GPIO26/27) |
| ADC | 12-bit SAR, up to 5 channels (GPIO1–5) |
| DAC | None |
| Touch | None |
| GPIO | 28 physical GPIOs: 0–27 (~19 usable on SiP-flash variants) |
| Strapping | GPIO2 / GPIO3 / GPIO8 / GPIO9 / GPIO25 |
Traps that cost you a board respin
- GPIO 15–21 serve SPI flash and are not fanned out at all on SiP-flash variants.
- GPIO 26/27 default to USB Serial/JTAG; the driver disables USB-JTAG if you use them as GPIO.
- Only GPIO 7–14 can wake the chip from deep sleep — every other GPIO wakes it from light sleep only. Pin your wake button to these.
- Strapping pins are GPIO2 / 3 / 8 / 9 / 25, with GPIO8 and GPIO9 controlling the boot mode.
- There is no Wi-Fi: getting to the cloud requires a border router or a separate wireless chip.
Full GPIO table
| GPIO | Status | Alternate functions |
|---|---|---|
GPIO0 | Usable | General GPIO |
GPIO1 | Usable | ADC1_CH0 |
GPIO2 | Usable | StrappingADC1_CH1 |
GPIO3 | Usable | StrappingADC1_CH2 |
GPIO4 | Usable | ADC1_CH3 |
GPIO5 | Usable | ADC1_CH4 |
GPIO6 | Usable | Not fanned out on SiP-flash variants |
GPIO7 | Usable | RTC GPIO · can wake from deep sleep |
GPIO8 | Usable | Strapping (boot mode)RTC GPIO |
GPIO9 | Usable | Strapping (default pull-up 1)RTC GPIO |
GPIO10 | Usable | ANA_CMPR_CH0 reference voltageRTC GPIO |
GPIO11 | Usable | ANA_CMPR_CH0 in-phase inputRTC GPIO |
GPIO12 | Usable | RTC GPIO · can wake from deep sleep |
GPIO13 | Usable | RTC GPIO · can wake from deep sleep |
GPIO14 | Usable | RTC GPIO · can wake from deep sleep |
GPIO15 | Unusable | SPI0/1 · flash |
GPIO16 | Unusable | SPI0/1 · flash |
GPIO17 | Unusable | SPI0/1 · flash |
GPIO18 | Unusable | SPI0/1 · flash |
GPIO19 | Unusable | SPI0/1 · flash |
GPIO20 | Unusable | SPI0/1 · flash |
GPIO21 | Unusable | SPI0/1 · flash |
GPIO22 | Usable | General GPIO |
GPIO23 | Usable | U0RXD (module-level mapping) |
GPIO24 | Usable | U0TXD (module-level mapping) |
GPIO25 | Usable | Strapping (JTAG source) |
GPIO26 | Usable | USB D− (USB Serial/JTAG) |
GPIO27 | Usable | USB D+ (USB Serial/JTAG) |
Individual GPIO pages
Related
ESP32 PinoutClassic · ESP32-D0WD / WROOM / WROVERESP32-S3 PinoutXtensa LX7 dual-core · native USB · vector extensionsESP32-C3 PinoutRISC-V single-core · low cost · native USBESP32-S2 PinoutXtensa LX7 single-core · native USB OTG · no BluetoothESP32-C6 PinoutRISC-V dual-core · Wi-Fi 6 · Thread / Zigbee / MatterESP32-P4 PinoutRISC-V dual-core 400 MHz · 55 GPIOs · MIPI-CSI/DSI · no wireless
Chip comparisonESP32 / S2 / S3 / C3 / C6 / H2 / P4
Peripheral guidesI²C · SPI · UART · RMT · LEDC · deep sleep