The ESP32-C3 Super Mini is a wildly popular, ultra-compact RISC-V development board. Because it shrinks the standard ESP32-C3 DevKit footprint down to roughly 22x18mm, it sacrifices some broken-out pins and silkscreen clarity. Getting the ESP32-C3 Super Mini pinout right is critical: the board operates on strict 3.3V logic, uses native USB on specific GPIOs, and has hardware strapping pins that will trap your firmware in bootloops if miswired. Below is the definitive bench reference for this board.

Complete ESP32-C3 Super Mini Pinout & Symbol Reference

The following table maps the physical header pins to their internal GPIO numbers, primary symbols, and electrical constraints. This assumes the standard native-USB-C variant of the Super Mini (which lacks an external CH340 UART bridge and routes USB directly to the SoC).

Header Pin GPIO / Symbol Primary Function Voltage / Type Practical Notes & Constraints
1 5V Power Input 5.0V DC (In) Feeds the onboard LDO. Do not draw high current from this pin; it is an input, not a regulated output.
2 GND Ground 0V Reference Common ground for all logic and power. Tied directly to the USB-C connector shell.
3 3V3 Regulated Power 3.3V DC (In/Out) Output of the onboard LDO. Can power low-draw sensors (e.g., BME280). Max safe draw is typically ~500mA depending on the clone's LDO.
4 GPIO2 General I/O 3.3V Logic Standard GPIO. Safe for I2C SDA or general digital read/write.
5 GPIO3 General I/O 3.3V Logic Standard GPIO. Often used for I2C SCL or PWM outputs.
6 GPIO4 General I/O / SPI 3.3V Logic Can be mapped to SPI (FSPIHD) or standard GPIO.
7 GPIO5 General I/O / SPI 3.3V Logic Can be mapped to SPI (FSPICS0) or standard GPIO.
8 GPIO6 General I/O / SPI 3.3V Logic Can be mapped to SPI (FSPICLK) or standard GPIO.
9 GPIO7 General I/O / SPI 3.3V Logic Can be mapped to SPI (FSPID) or standard GPIO.
10 GPIO8 Strapping Pin / I/O 3.3V Logic Boot Mode Select: Must be HIGH (3.3V) for normal flash execution. LOW forces SPI boot mode. Add a 10k pull-up if floating.
11 GPIO9 Strapping Pin / I/O 3.3V Logic Boot Log Select: Controls ROM boot log output. Best left floating or pulled HIGH for standard operation.
12 GPIO10 General I/O / SPI 3.3V Logic Can be mapped to SPI (FSPICS1) or standard GPIO.
13 TX0 (GPIO21) UART0 TX 3.3V Logic Default hardware UART transmit. Used for serial debug output.
14 RX0 (GPIO20) UART0 RX 3.3V Logic Default hardware UART receive.

Note: GPIO18 and GPIO19 are internally routed to the USB-C connector as D- and D+ respectively. They are not broken out to the header pins on the Super Mini and cannot be used as standard GPIOs. GPIO12 and GPIO13 are reserved for the internal SPI flash.

Wiring Harness Color Codes & Regional Standards

When building custom JST-XH, Molex, or Dupont wiring harnesses to connect external DC power supplies and sensor buses to the ESP32-C3 Super Mini, you must adhere to a consistent color code. Mixing standards leads to reverse-polarity faults that will instantly destroy the 3.3V LDO and the RISC-V core. Below is how regional standards apply to low-voltage DC control wiring.

Function IEC 60446 (EU / Global Standard) NEC / North American Telecom Old UK Legacy (Pre-Harmonization)
DC Positive (+5V / +3.3V) Brown Red Red (or Yellow for control)
DC Negative / Ground (0V) Blue Black Black (or Blue for control)
Protective Earth / Shield Green/Yellow Stripe Green (or Bare Copper) Green
Signal / Data (I2C, SPI) White, Grey, or Pink White, Orange, or Yellow White or Orange

Which standard applies to you? If you are building equipment for commercial sale or deployment in the EU/UK, IEC 60446 is legally mandated for all DC power wiring. In North America, while the NEC strictly governs AC mains and Class 1 circuits, Class 2 low-voltage control wiring (like sensor harnesses) defaults to the Red/Black telecom convention. Never mix IEC Brown (Positive) with NEC Black (Negative) in the same harness; a brown wire from an IEC sensor plugged into a red/black custom rig will cause a dead short.

Safe Interpretation When Markings Are Faded or Missing:
Cheap clone boards often have illegible silkscreen. To safely identify pins without a schematic:
1. Find GND: Set your multimeter to continuity mode. Probe the outer metal shell of the USB-C connector. Any header pin that reads 0.0 ohms to the shell is GND.
2. Find 3V3: Set your meter to diode test mode. Place the black probe on a known GND pin and touch the red probe to suspected power pins. The 3V3 pin will typically show a forward voltage drop of 0.3V to 0.5V due to the ESD protection diodes on the power rail. The 5V pin will usually read open (OL) or a much higher drop due to the LDO's internal topology.
3. Find TX/RX: Power the board via USB and use an oscilloscope or logic analyzer. The TX pin will show a 3.3V idle state with periodic 115200-baud pulse trains (boot logs) upon reset.

Rows People Get Wrong (And How to Avoid Bricking Your Board)

Based on bench failures and community debugging, these are the most common misinterpretations of the ESP32-C3 Super Mini pinout:

  • Assuming 5V Tolerant GPIOs: The ESP32-C3 is strictly a 3.3V device. Feeding a 5V signal from an Arduino Uno or a 5V HC-SR04 ultrasonic sensor directly into GPIO2-GPIO10 will fry the input protection diodes and permanently short the pin to VDD. Always use a bidirectional logic level converter (like a BSS138 MOSFET circuit) or a simple resistor voltage divider (e.g., 2kΩ and 3.3kΩ) for 5V sensor inputs.
  • Ignoring Strapping Pin RC Delays: GPIO8 and GPIO9 are sampled by the ROM bootloader during the first few milliseconds of power-on. If you connect a sensor with a high capacitive load (like a long wire or a large decoupling capacitor) to GPIO8, the pin may read LOW during boot, forcing the chip into SPI download mode instead of running your firmware. Keep strapping pins free of heavy capacitive loads.
  • Overloading the 5V Pin: The 5V header pin on the Super Mini is typically wired directly to the USB-C VBUS. If you are powering the board from a PC USB port, you only have ~500mA total. The ESP32-C3 Wi-Fi transmit spikes can draw 350mA alone. If you connect a 200mA servo or a high-draw LED strip to the 5V pin, you will trip the host PC's USB overcurrent protection or melt the board's thin PCB traces. Power external loads from a separate buck converter, sharing only the GND.
  • Missing the Native USB Quirk: Unlike older ESP32 boards that use a CH340 or CP2102 chip, the Super Mini uses native USB via GPIO18/19. If your firmware crashes the USB stack or you disable USB-CDC in the Arduino IDE tools menu, the board will vanish from your OS device manager. You must manually hold the BOOT button (GPIO9/Strapping) while tapping the RESET button to force the ROM bootloader to re-enumerate the USB port.

Frequently Asked Questions

How do I put the ESP32-C3 Super Mini into bootloader mode?

Because the Super Mini lacks an auto-reset circuit for the UART/USB bootloader, you must trigger it manually. Press and hold the BOOT button (which pulls GPIO9 low), then momentarily press and release the RESET button. Finally, release the BOOT button. The board will enumerate on your PC as a USB serial device (usually /dev/ttyACM0 on Linux or COMx on Windows) ready to receive a new firmware flash via the Arduino IDE or ESP-IDF.

Can I use 5V sensors with the ESP32-C3 Super Mini GPIOs?

No, not directly. The ESP32-C3 Super Mini GPIOs operate at 3.3V and are not 5V tolerant. Connecting a 5V output from a sensor (like a standard 5V Arduino or a 5V relay module feedback pin) will destroy the GPIO. You must step the 5V signal down to 3.3V using a logic level shifter, an optocoupler, or a resistor voltage divider before it reaches the ESP32-C3 header pins.

Why is my ESP32-C3 Super Mini not showing up on USB?

If the board is not recognized by your operating system, first check your USB-C cable; many cheap cables are "charge only" and lack the D+/D- data lines required for GPIO18/19 native USB communication. Second, ensure you have the correct USB-CDC drivers installed (native USB on Windows 10/11 usually enumerates automatically, but Windows 7 requires manual Zadig/libusb setup). Finally, if the board is stuck in a crashed firmware loop, perform the manual BOOT + RESET button sequence to force the hardware ROM bootloader to take over the USB interface.