Skip to content
My Account

Guide

ESP32-C61 Pinout

The complete pin reference for the ESP32-C61: Espressif’s budget Wi-Fi 6 chip, and the exact pins you can safely reuse.

  • Single-core RISC-V
  • Wi-Fi 6 + Bluetooth LE
  • 30 GPIOs
  • 4–8 MB flash
No ratings yet, be the first.

Overview

The ESP32-C61 launched after this site’s existing photo and diagram library was put together, so there’s no product photo or illustrated pinout diagram here yet, only verified spec and GPIO tables sourced directly from the official datasheet. Despite being a very recent chip, the datasheet is already a released, non-preliminary v1.1, not a draft.

No 802.15.4 radio on this chip, so Thread and Zigbee aren’t possible here: that needs an ESP32-C6 or C5 instead. It’s easy to assume otherwise since the name looks similar to the C6, but this is a plain Wi-Fi 6 + Bluetooth part, not a Thread/Zigbee one.

Wi-Fi 6, not Thread Wi-Fi 6 and Bluetooth LE only, no 802.15.4 radio, despite the C61 name looking like a sibling of the Thread/Zigbee-capable C6.
Not every GPIO is equal GPIO3, GPIO4, GPIO7, GPIO8 and GPIO9 are strapping pins, check their boot-time state before using them as outputs.
External flash again Unlike the MINI-1/C2 modules, GPIO14–GPIO21 are wired to an external flash (and optional PSRAM) chip, leave them alone.

Getting started

Board support for such a new chip can lag behind the official Arduino/ESP-IDF releases, check your installed ESP32 board package version supports the C61 before assuming a problem is your wiring.

1. What you need A USB cable that fits your board and a computer. No extra power supply needed, USB power is enough.
2. Install the software Install the free Arduino IDE, then add the latest ESP32 board package via Boards Manager (search “esp32”, by Espressif Systems).
3. Upload your first sketch Open File → Examples → Basics → Blink, pick your board and port, then click Upload. If it hangs on “Connecting…”, hold the BOOT button until it starts.

Hello World: blink an LED

The microcontroller equivalent of “Hello World”: GPIO24 toggles once a second, shown here in two different environments. Wire an LED (with a resistor) to GPIO24, a plain general-purpose pin with no other job on this chip.

#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/gpio.h"

#define LED_PIN GPIO_NUM_24

void app_main(void)
{
    gpio_reset_pin(LED_PIN);
    gpio_set_direction(LED_PIN, GPIO_MODE_OUTPUT);

    while (1) {
        gpio_set_level(LED_PIN, 1);
        vTaskDelay(pdMS_TO_TICKS(1000));
        gpio_set_level(LED_PIN, 0);
        vTaskDelay(pdMS_TO_TICKS(1000));
    }
}

ESP-IDF: build and flash with idf.py build flash monitor. Arduino IDE: install ESP32 board support first, see “Getting started” above.

Specifications

Official Espressif specifications for the ESP32-C61 chip and the ESP32-C61-WROOM-1 module.

Compute

ChipESP32-C61
CPUSingle-core RISC-V, up to 160 MHz
SRAM320 KB
Flash / PSRAM4 or 8 MB flash, optional 2 or 8 MB PSRAM (variant-dependent)

Radio

Wi-Fi802.11ax (Wi-Fi 6), 2.4 GHz
Bluetooth5 LE
AntennaOn-board PCB (U.FL variant available)

Physical

Operating voltage3.0V – 3.6V
Dimensions18 × 25.5 × 3.1 mm (WROOM-1)
Operating temperature−40°C – +85°C
GPIOs30 on the chip (fewer usable once flash/PSRAM pins are excluded)
ESP32-C61-WROOM-1 development board dimensioned front and side view: 58.15 mm long, 32-pin header at 2.54 mm pitch, RF shield can, PCB antenna and two USB-C connectors
The ESP32-C61-WROOM-1 development board: 58.15 mm long, 32-pin header at 2.54 mm pitch, two USB-C connectors.

No illustrated pinout diagram yet, this chip is too new for this site’s asset library. The module itself has the same footprint as the WROOM-32D and the C6-WROOM-1: 18 by 25.5 by 3.1 mm.

GPIO quick reference

This is the full chip-level pin list. A specific WROOM-1 board may not break out every one of these to a header pin.

GPIO Special function ADC Boot state
0 Free
1 ADC1_CH0 ADC1 Free
2 SPI FSPIQ Free
3 JTAG MTMS, ADC1_CH1 ADC1 Strapping
4 JTAG MTDI, ADC1_CH2 ADC1 Strapping
5 JTAG MTCK, ADC1_CH3 ADC1 Free
6 JTAG MTDO, SPI FSPICLK Free
7 SPI FSPID Strapping
8 SPI FSPICS0, zero-cross detect 0 Strapping
9 Strapping
10 UART0 RX (default) Free
11 UART0 TX (default) Free
12 USB D− Free
13 USB D+ Free
14 SPI flash (SPICS1) — reserved Reserved
15 SPI flash (SPICS0) — reserved Reserved
16 SPI flash (SPIQ) — reserved Reserved
17 SPI flash (SPIWP) — reserved Reserved
18 VDD_SPI (flash power) — reserved Reserved
19 SPI flash (SPIHD) — reserved Reserved
20 SPI flash (SPICLK) — reserved Reserved
21 SPI flash (SPID) — reserved Reserved
22 SDIO DATA2 Free
23 SDIO DATA3 Free
24 Free
25 SDIO CMD Free
26 SDIO CLK Free
27 SDIO DATA0 Free
28 SDIO DATA1 Free
29 Free
Strapping pins GPIO3, GPIO4, GPIO7, GPIO8, GPIO9
Default UART TX: GPIO11, RX: GPIO10
USB Serial/JTAG D−: GPIO12, D+: GPIO13
Reserved for flash/PSRAM GPIO14–GPIO21

Flashing pins (UART0)

Used by a USB-to-serial adapter (or the onboard one) to upload firmware.

Function Pin Description
TXD0 GPIO11 ESP32-C61 → PC (output)
RXD0 GPIO10 PC → ESP32-C61 (input)
EN EN pin Resets the chip
BOOT GPIO9 Hold low at reset, together with GPIO8, to enter UART download mode

Safety notes

Before you wire anything up

  • Never reassign the flash/PSRAM pins (GPIO14–GPIO21), the module won’t boot.
  • GPIO3, GPIO4, GPIO7, GPIO8 and GPIO9 are strapping pins, check their boot-time state before using them as outputs.
  • GPIO12 and GPIO13 are the USB Serial/JTAG D−/D+ pins, avoid reassigning them if you rely on the built-in USB console.
  • Stay within the datasheet’s absolute maximum current rating per GPIO, don’t assume it matches the classic ESP32’s figure, this is a different chip.
Advertisement

More guides

Keep building.

From ESP32 HomeKit accessories to Arduino and ATtiny reference guides, there’s more where this came from.

All guides