ESP32-C3 SuperMini
| Chip | ESP32-C3FH4 |
| Dimmers, servos & motors | 6 PWM channels (a motor takes 2) |
| LED strips (WS2812) | up to 2 |
| Battery | no built-in sense; power it from USB or a 5 V supply, or add a two-resistor divider to read a battery (Battery props) |
| Firmware | esp32-c3-supermini, install it from your browser |
Pinout
Section titled “Pinout”The seller-style pinout with photos: esp32.co.uk.
Versions of this board
Section titled “Versions of this board”“ESP32-C3 SuperMini” is a board format, not one product, and sellers’ versions differ. Check these on the board in hand:
- The common black board has a plain blue LED on GPIO 8 (it lights when the pin is LOW) and a ceramic antenna. Its WiFi range is often reported as poor because of the antenna layout, and it varies from batch to batch. Since the mesh uses the same radio, expect weaker links than from a DevKit. People report that soldering a 31 mm wire to the antenna’s feed pad helps a lot.
- The red SuperMini Plus has a U.FL socket for an external antenna and a WS2812 pixel on GPIO 8 instead of the blue LED (some also keep the blue LED on the same pin). Assign GPIO 8 as LED strip with 1 pixel to use it.
- Header order differs between sellers. Go by the GPIO numbers printed on the board.
Which pin for what
Section titled “Which pin for what”The console marks these with ★ when you assign pins. They are advice. Any pin that can do a job is allowed.
| To connect… | Use | Why |
|---|---|---|
| Servo | 4 5 |
Quiet at power-up, so nothing twitches while the board boots. |
| DC motor (H-bridge IN1/IN2) | 6 7 |
A quiet pair side by side for IN1 / IN2 — a motor never lurches at boot. |
| Relay / on-off output | 20 |
Quiet at power-up, so a relay never clicks on during boot. |
| LED strip (WS2812) | 10 |
Any output can drive a strip; the C3 has two strip engines (RMT), so two strips at most. 3.3 V board — use a 74AHCT-type level shifter for 5 V strips. |
| LED dimmer (PWM) | 2 8 21 |
The boot-quirk pins — a flicker at power-up doesn’t matter for a light. 8 is the onboard blue LED (on = LOW) on the common board. |
| Sensor / button input | 0 1 3 9 |
GPIO 0–5 are the low-power pins: the only ones that can wake the board from deep sleep on battery. All have internal pull-ups, so buttons need no resistor. 0–4 also read analog. |
Every pin
Section titled “Every pin”| Pin | GPIO | Can be | Note | |
|---|---|---|---|---|
0 |
0 | ✅ good | input, output, pull-up, pull-down, analog, wakes from sleep | |
1 |
1 | ✅ good | input, output, pull-up, pull-down, analog, wakes from sleep | |
2 |
2 | ⚠️ caution | output | STRAPPING: must be HIGH at power-up or the board will not boot. Outputs only, and nothing that holds it low at reset (a PIR’s output idles low) |
3 |
3 | ✅ good | input, output, pull-up, pull-down, analog, wakes from sleep | |
4 |
4 | ✅ good | input, output, pull-up, pull-down, analog, wakes from sleep | also JTAG TMS — harmless for anything this board does |
5 |
5 | ✅ good | input, output, pull-up, pull-down, wakes from sleep | its analog input is ADC2, which the radio blocks — digital only here |
6 |
6 | ✅ good | input, output, pull-up, pull-down | |
7 |
7 | ✅ good | input, output, pull-up, pull-down | |
10 |
10 | ✅ good | input, output, pull-up, pull-down | |
20 |
20 | ✅ good | input, output, pull-up, pull-down | UART0 RX — unused here (the console runs on USB) |
8 |
8 | ⚠️ caution | output | STRAPPING + the onboard blue LED (on = LOW; a WS2812 pixel on the Plus). Outputs only; anything holding it low at reset blocks flashing |
9 |
9 | ⚠️ caution | input, pull-up, pull-down | STRAPPING + the BOOT button: low at reset = download mode. A button here is fine (don’t hold it while resetting); inputs only |
21 |
21 | ⚠️ caution | input, output, pull-up, pull-down | UART0 TX: the boot ROM prints here at power-up — fine for a light or strip, not for a relay or motor. The console uses USB, not this pin |
18 |
18 | ⛔ reserved | USB D− — the console and the flasher live on the USB port | |
19 |
19 | ⛔ reserved | USB D+ — the console and the flasher live on the USB port |