UM TinyC6

Ultra-small ESP32-C6 board with USB-C and low power - perfect for Thread, BLE, and Wi-Fi mesh network projects.

USB-C Native USB
UM TinyC6 board
35 × 17.8 mm
ESP32-C6
RISC-V MCU
160MHz
clock
8MB
flash
512KB
SRAM
18· 9 ADC
GPIO
BLE 5.3+ WiFi
radio
On this page

Pinout

19 pins · 2.54 mm pitch
View:
PinGPIOLabelsStatusCapabilitiesNotes
11A0T1safeadc · touch
22A1T2safeadc · touch
33A2T3safeadc · touch
44A3T4VBAT_SENSEstrappingadc · touch
55A4T5strappingadc · touch
66SDAA5T6strappingadc · touch · i2c
77SCLA6T7strappingadc · touch · i2c
88A7T8strappingadc · touch
99A8T9strappingadc · touch
1010VBUS_SENSEsafe-
1116TXuartuart
1217RXuartuart
1318SSstrappingspi
1419SCKstrappingspi
1520MISOSDIsafespi
1621MOSISDOsafespi
1722RGB_PWRsafe-
1823RGB_DATAsafe-
19-LED_BUILTINsafe-

Start with these

8 pins with no boot or system involvement
A0T1A1T2A2T3VBUS_SENSEMISOSDIMOSISDORGB_PWRRGB_DATA

Freely assignable - no strapping, flash, USB or JTAG duties. Ideal first picks for buttons, sensors and LEDs.

Fine - with a little care

sampled at boot or shared with debug/serial
PinLabelWhat to knowRole
A3MTMSUsed during boot; required for JTAG debugging; flash data in internal-flash models.Strapping
A4MTDIUsed during boot; required for JTAG debugging; flash data in internal-flash models.Strapping
SDAMTCKRequired for JTAG debugging; connected to flash clock in internal-flash models.JTAG
SCLMTDORequired for JTAG debugging; connected to flash data in internal-flash models.JTAG
A7GPIO8Determines boot mode; pulling low at reset can prevent normal boot.Strapping
A8GPIO9Pulling low on reset forces the ESP32-C6 into download mode instead of normal boot.Strapping
TXU0TXDDefault UART0 transmit pin; using it may interfere with serial console or programming.UART
RXU0RXDDefault UART0 receive pin; using it may interfere with serial console or programming.UART

Only if you know the tricks

wired to flash or USB - expect a fight
PinLabelWhat to knowRole
SSFSPIQConnected to internal flash; using as GPIO can disrupt flash operations.Flash
SCKFSPIDConnected to internal flash; using as GPIO can disrupt flash operations.Flash
These are recommendations, not hard rules - with the right pull-ups, timing and boot-state awareness most pins can be made to work. When in doubt, start green.
Pinout notes The UM TinyC6 breaks out 19 pins in total: 18 GPIO for your project. For peripherals, I²C is mapped to SDA on GPIO6 and SCL on GPIO7; the SPI bus ( MOSI , MISO…

The UM TinyC6 breaks out 19 pins in total: 18 GPIO for your project.

For peripherals, I²C is mapped to SDA on GPIO6 and SCL on GPIO7; the SPI bus (MOSI, MISO, SCK, SS) is broken out in full; TX/RX on GPIO16 and GPIO17 cover serial logging and flashing.

On the analog side there are 9 ADC-capable pins for sensors and battery monitoring and 9 capacitive-touch inputs.

If you want zero surprises, A0, A1, A2, VBUS_SENSE and 4 more are free of any such role - the safest first picks. 8 of the exposed pins carry boot-time or system duties on the ESP32-C6 (A3, A4, SDA and 5 more).

Getting started

flash your first firmware in ~2 minutes
Tool:
1
Connect over USB
Native USB - no driver, no serial chip. Not detected? Hold BOOT while plugging in.
2
Flash with your tool
Arduino IDE, PlatformIO, ESPHome or esptool - copy the settings on the right.
3
Verify it runs
The blink example uses GPIO1 - swap for your board's LED pin if different.
Tools → Board settings Copy
Board:            Tinyc6
USB CDC On Boot:  Enabled
Flash Size:       8MB · QIO
Upload Speed:     921600

// blink
pinMode(1, OUTPUT);
digitalWrite(1, LOW);   // on (often inverted)
platformio.ini Copy
[env:um_tinyc6]
platform = espressif32
board = esp32-c6-devkitc-1
framework = arduino
monitor_speed = 115200
upload_speed = 921600
device.yaml Copy
esp32:
  board: esp32-c6-devkitc-1
  variant: um_tinyc6
  framework:
    type: esp-idf

# blink - GPIO1
output:
  - platform: gpio
    pin: 1
    id: led_out
light:
  - platform: binary
    name: "LED"
    output: led_out
shell Copy
esptool.py --chip esp32c6 --port /dev/ttyACM0 \
  write_flash 0x0 firmware.bin
Build details: sketch space 1310720 B · data 327680 B · QIO

Specifications

ESP32-C6 · 35 × 17.8 mm
Compute
MCU
ESP32-C6 · RISC-V
Clock
160 MHz
SRAM · Flash
512 KB · 8MB
Radio
Wi-Fi
802.11 ax b/g/n
Bluetooth
5.3 LE
Antenna
3D
I/O
GPIO · ADC
18 · 9
UART · I²C · SPI
2 · 2 · 2
PWM
6 channels
Power
USB
USB-C
Serial
Native (CDC)
Boot address
0x0
Flashing
Upload · OTA
esptool_py · esp_ota
Flash · Boot mode
QIO · QIO
Sketch · Data
1.25 MB · 320 KB
17.8 mm35 mm
35 × 17.8 mm · pin pitch 2.54 mm
The UM TinyC6 uses esptool_py for firmware uploads, esp_ota for over-the-air (OTA) updates. Flash mode is QIO with QIO boot mode. The maximum sketch size is 1.25 MB with 320 KB available for data.

About this board

At its core is the ESP32-C6 - a RISC-V part adding Wi-Fi 6 plus Thread/Zigbee radios.

Expect to pay about $17.00 - above the ~$10 typical for ESP32-C6 boards.

Onboard you'll find an addressable RGB LED (GPIO23), battery charging (TP4065) via JST-PH 2.0, status LEDs (Power, Charge) and Reset/Boot buttons.

It flashes over native USB - no serial-converter driver needed, which isn't a given among ESP32-C6 boards.

  • USB-C with reverse back-feed protection
  • LiPo charging ~300mA via TP4065 (JST-PH pads on back)
  • 3D high-gain antenna; u.FL external-antenna variant also available
  • VBAT voltage sense on GPIO4, 5V (VBUS) presence detect on GPIO10
  • Castellated edge + through-hole headers

Where to buy

prices are typical street prices
UM TinyC6
UM TinyC6
$17.00per unit, typical

Resources

Similar boards