Skip to main content

Board pinout

ESP32-C3-DevKitM-1 Pinout

A low-cost RISC-V ESP32 with Wi-Fi and BLE and fewer pins, great for small connected sensors. It runs at 3.3V logic with 15 usable GPIO pins. Every value below is verified against the pin map Banana Board uses to check real designs.

MCU
ESP32C3
Logic
3.3V
GPIO
15
PWM
15
Analog
6
Ground pins
1

Interfaces

PWM pins15 pins
Analog inputsGPIO0, GPIO1, GPIO2, GPIO3, GPIO4, GPIO5

Watch out for

Strapping: GPIO2, GPIO8, GPIO9. These set the boot mode at reset, so pulling them the wrong way can stop the board from booting.

3.3V logic: pins are not 5V tolerant, so level-shift or divide any 5V signal into an input.

Pins by capability

A quick map of which pins do what. Colours match the pin table below.

Power
3V35V
Ground
GND
PWM
GPIO0GPIO1GPIO2GPIO3GPIO4GPIO5GPIO6GPIO7GPIO8GPIO9GPIO10GPIO18GPIO19GPIO20GPIO21
Analog / ADC
GPIO0GPIO1GPIO2GPIO3GPIO4GPIO5
Strapping
GPIO2GPIO8GPIO9

Starter circuits to learn with

Beginner projects for the ESP32-C3-DevKitM-1. The pins below come straight from its real pin map, so they are safe to wire as shown.

Blink an LED

GPIO0

Drive an LED (through a ~220Ω resistor) from GPIO0 and toggle it in loop(). The classic first sketch.

digitalWrite()

Fade an LED (PWM)

GPIO0

Use GPIO0 with analogWrite() to smoothly ramp an LED from off to full brightness.

analogWrite()

Read a potentiometer

GPIO0

Wire a potentiometer's wiper to GPIO0 and read its position with analogRead().

analogRead()

Read a button

GPIO1

Connect a push button between GPIO1 and GND, set the pin to INPUT_PULLUP, and skip the external resistor.

digitalRead() + INPUT_PULLUP

Try it without the hardware

Describe one of these circuits in the Studio and Banana Board wires it to these exact ESP32-C3-DevKitM-1 pins, validates it, and lets you simulate before you build.

Build & simulate in the Studio

Full ESP32-C3-DevKitM-1 pin map

PinGPIOCapabilitiesVoltageNotes
ENRST RESETChip enable / reset (active-low). Not a usable I/O pin.
3V33.3VPower3.3VRegulated 3.3V output rail (multiple physical 3V3 pins on the header).
5VVBUS VINPower5V5V supply from USB (VBUS).
GNDGND2GNDGround (multiple physical GND pins on the header).
GPIO00 IO0 A00DigitalPWMI2CSPIADCADC1_CH0ADC1_CH0; also XTAL_32K_P. General-purpose.
GPIO11 IO1 A11DigitalPWMI2CSPIADCADC1_CH1ADC1_CH1; also XTAL_32K_N. General-purpose.
GPIO22 IO2 A2strapping2DigitalPWMI2CSPIADCADC1_CH2Strapping pin (boot mode) — must not be pulled LOW at reset. ADC1_CH2.
GPIO33 IO3 A33DigitalPWMI2CSPIADCADC1_CH3ADC1_CH3. General-purpose.
GPIO44 IO4 A44sckDigitalPWMI2CADCADC1_CH4Default SPI SCK. ADC1_CH4; also JTAG MTMS.
GPIO55 IO5 A55misoDigitalPWMI2CADCADC2_CH0Default SPI MISO. ADC2_CH0 (single ADC2 channel); also JTAG MTDI.
GPIO66 IO66mosiDigitalPWMI2CDefault SPI MOSI; also JTAG MTCK.
GPIO77 IO77csDigitalPWMI2CDefault SPI CS/SS; also JTAG MTDO.
GPIO88 IO8 SDAstrapping8sdaDigitalPWMSPIDefault I2C SDA. Strapping pin (must be HIGH at boot) and drives the onboard addressable RGB LED.
GPIO99 IO9 SCL BOOTstrapping9sclDigitalPWMSPIDefault I2C SCL. Strapping pin wired to the BOOT button (hold LOW at reset for download mode).
GPIO1010 IO1010DigitalPWMI2CSPIGeneral-purpose GPIO.
GPIO1818 IO18 USB_D-18DigitalPWMI2CSPIUSB-Serial-JTAG D-. Repurposing breaks the native USB CDC/JTAG interface.
GPIO1919 IO19 USB_D+19DigitalPWMI2CSPIUSB-Serial-JTAG D+. Repurposing breaks the native USB CDC/JTAG interface.
GPIO2020 IO20 RX RX020U0RXDDigitalPWMI2CSPIUART0 RX — USB-to-serial upload/monitor; avoid repurposing.
GPIO2121 IO21 TX TX021U0TXDDigitalPWMI2CSPIUART0 TX — USB-to-serial upload/monitor; avoid repurposing.

19 of 19 pins shown. Data verified against the board pin map Banana Board uses to check every design.

AI PCB designer

Design an ESP32-C3-DevKitM-1 PCB from a sentence

Describe your ESP32-C3-DevKitM-1 project and Banana Board wires it to these exact pins, validates it, then places and routes a fab-ready 2-layer board.

Start vibe PCB designing

Frequently asked questions

Is the ESP32-C3-DevKitM-1 3.3V or 5V logic?

The ESP32-C3-DevKitM-1 runs at 3.3V logic. Its GPIO pins are not 5V tolerant, so use a level shifter or divider when connecting 5V signals to an input.

How many GPIO pins does the ESP32-C3-DevKitM-1 have?

The ESP32-C3-DevKitM-1 exposes 15 usable GPIO pins, plus 2 power and 1 ground pins.

Which pins are PWM-capable on the ESP32-C3-DevKitM-1?

Most GPIO pins on the ESP32-C3-DevKitM-1 can output PWM (15 pins in total).

How many analog (ADC) inputs does the ESP32-C3-DevKitM-1 have?

The ESP32-C3-DevKitM-1 has 6 ADC-capable pins: GPIO0, GPIO1, GPIO2, GPIO3, GPIO4, GPIO5.

Which pins on the ESP32-C3-DevKitM-1 are strapping pins to avoid?

GPIO2, GPIO8, GPIO9 are strapping pins that set the boot mode at reset. Using them for peripherals can stop the board from booting, so prefer other GPIOs or make sure your circuit does not pull them the wrong way at power-up.

Build it, do not just look it up

Describe your circuit in one sentence and Banana Board wires it to these exact pins, validates it, and lays out a fab-ready PCB.

Start building free