ESP32 Dev Kit V1(30-pin, 36-pin and 38-pin)

The ESP32 Dev Kit C V1 is a Wi-Fi and Bluetooth–enabled microcontroller development board based on the ESP32 SoC from Espressif Systems. It integrates a dual-core 32-bit Tensilica Xtensa LX6 processor, operating up to 240 MHz, and is designed for IoT, wireless communication, and real-time embedded applications.

Offical Pinout

There are three popular variants of this board based on the number of pins exposed: 30 pins, 36 pins, and 38 pins.

*The above two image source

*38-pin variant pinout image source

GPIOTypeADCSpecial Notes / Default FunctionsSafe to Use?
VINPower5V input from external supply
5VPower5V from USB
3V3PowerRegulated 3.3V output
GNDPowerGround
ENControlReset/Chip enable (LOW = reset)
GPIO0DigitalADC2_CH1Boot pin (LOW = flashing mode)Careful
GPIO1DigitalUART0 TX (programming/logs)Avoid if using Serial
GPIO2DigitalADC2_CH2Boot strapping pinCareful
GPIO3DigitalUART0 RXAvoid if using Serial
GPIO4DigitalADC2_CH0Yes
GPIO5DigitalDefault SPI CS, boot strappingYes
GPIO6Connected to SPI flashNo
GPIO7Connected to SPI flashNo
GPIO8Connected to SPI flashNo
GPIO9Connected to SPI flashNo
GPIO10Connected to SPI flashNo
GPIO11Connected to SPI flashNo
GPIO12DigitalADC2_CH5Boot strapping (flash voltage)Risky
GPIO13DigitalADC2_CH4Yes
GPIO14DigitalADC2_CH6Default SPI CLKYes
GPIO15DigitalADC2_CH3Boot strappingCareful
GPIO16DigitalUART2 RXYes
GPIO17DigitalUART2 TXYes
GPIO18DigitalSPI SCKYes
GPIO19DigitalSPI MISOYes
GPIO21DigitalDefault I2C SDAYes
GPIO22DigitalDefault I2C SCLYes
GPIO23DigitalSPI MOSIYes
GPIO25DigitalADC2_CH8DAC1Yes
GPIO26DigitalADC2_CH9DAC2Yes
GPIO27DigitalADC2_CH7Yes
GPIO32DigitalADC1_CH4Yes
GPIO33DigitalADC1_CH5Yes
GPIO34Input onlyADC1_CH6No output capabilityInput only
GPIO35Input onlyADC1_CH7No output capabilityInput only
GPIO36 (VP)Input onlyADC1_CH0No output capabilityInput only
GPIO39 (VN)Input onlyADC1_CH3No output capabilityInput only
  • *GPIO: Please check your variant pin mapping before referring to the table above. For example, 30 pin variant doesn’t have GPIO pins 0,6,7,8,9,10,11 exposed

Pin functions

  • GPIO36–39 → Input-only ADC pins
  • GPIO34–39 → No internal pull-up/down resistors
  • GPIO25 & GPIO26 → DAC outputs
  • GPIO21 (SDA) → Default I2C data
  • GPIO22 (SCL) → Default I2C clock
  • GPIO23 (MOSI) → SPI MOSI
  • GPIO19 (MISO) → SPI MISO
  • GPIO18 (SCLK) → SPI clock
  • GPIO5 → SPI CS (commonly used)
  • EN → Chip enable/reset
  • VIN → 5V input when not USB powered
  • 3V3 → Regulated 3.3V output

Specifications

FeatureDetails
SoCEspressif ESP32
CPUDual-core Xtensa LX6 (up to 240 MHz)
Wi-Fi802.11 b/g/n
BluetoothClassic + BLE
FlashTypically 4 MB
GPIO pinsUp to 30+ exposed
ADC18 channels (12-bit)
DAC2 channels
Logic level3.3V
Operating voltage3.0–3.6V
Power input5V via Micro-USB or VIN

Compatibility

  • Variants with 30, 36 or 38 pins exposed
  • Boards with different USB connectors are available (Micro-USB vs USB-C)
  • Arduino IDE, MicroPython compatible
  • Supports ESP-IDF (official SDK)
  • Breadboard-friendly form factor
  • 3.3V logic level
  • Wi-Fi + Bluetooth onboard
  • Touch-sensing GPIOs
  • Some pins are restricted during boot

Important usage notes

  • GPIOs operate at 3.3V only and are not 5V tolerant
  • GPIO6–11 are connected to the onboard flash and should not be used
  • Some pins affect boot mode:
    • GPIO0, GPIO2, GPIO12, and GPIO15 must be in the correct states during boot
  • GPIO34–39 are input-only pins
  • ADC2 pins cannot be used while Wi-Fi is active
  • Avoid drawing high current from the 3.3V pin

Helpful Resources

  • Introduction to ESP32 DevKit V1:

Leave a Comment