Embedded hardware reference for engineers and makers

STM32F103C8T6 Blue Pill Pinout & Reference

44-pin interactive pinout

This 44-pin STM32F103C8T6 Blue Pill explorer links the physical DIP-40 headers and SWD port to a searchable table. Select any pad or row to see its GPIO, 5V-tolerance status, peripheral roles, and hardware advisories.

  • STMicroelectronics / Open Source
  • Verified source
  • Updated Sep 2026

Interactive pinout diagram

  • GPIO
  • Power
  • Ground
  • Analog
  • Control
  • Bus

Tap a row of pins to see it up close

STM32F103C8T6 Blue Pill Pinout Vector DiagramInteractive vector pinout diagram of STM32F103C8T6 Blue Pill (top view) showing pin headers, power rails, components, and hardware interfaces.8.000 MHz HSE Crystal CST U23.3V10µF10µFUSBRESETBOOTPWRPC13Y1Y2U2SWDVBATPC13PC14PC15PA0PA1PA2PA3PA4PA5PA6PA7PB0PB1PB10PB11NRST3.3VGNDGND3.3VGND5VPB9PB8PB7PB6PB5PB4PB3PA15PA12PA11PA10PA9PA8PB15PB14PB13PB123.3VSWDIOSWCLKGND

BOARD SUMMARY

STM32F103C8T6

STM32F103C8T6 Blue Pill

STM32F103C8T6

STMicroelectronics / Open Source
MCU
STM32F103C8T6
CPU core
ARM Cortex-M3 32-bit RISC
Clock speed
72 MHz
SRAM
20 KB
Flash
64 KB
Logic voltage
3.3 V
Form factor
44-pin, USB 2.0 Full-Speed Device (12 Mbps)

Before you wire

5 V logic — level-shift 3.3 V peripherals

  • Selective 5V Tolerance: Only designated digital pins are 5V-tolerant (FT). All analog ADC input pins (PA0-PA7, PB0, PB1) and PC13-PC15 are strictly 3.3V maximum.
  • BOOT Configuration Jumpers: For standard user Flash execution, both BOOT0 and BOOT1 must be set to 0. Set BOOT0=1 to enter the built-in UART system bootloader.
  • Active-Low User LED: The onboard user LED on PC13 is wired to 3.3V through a current-limiting resistor. Driving PC13 LOW turns the LED ON; driving HIGH turns it OFF.
  • JTAG Pin Remapping: Pins PB3, PB4, and PA15 default to JTAG debug signals. To use them as general-purpose GPIOs, JTAG must be disabled via software remapping.

Pin table

Showing 44 of 44 pins
STM32F103C8T6 Blue Pill pin table: physical pin, name, GPIO, functions, ADC, touch, default role, flags
PinNameGPIOFunctionsADCDefault roleFlags
1 j1VBAT—
power
—3.3 V Poweralways_on_power
2 j1PC13—
gpio
—GPIOConnected to active-low onboard green/blue user LED (PC13). Driving LOW illuminates the LED.Not 5V tolerant. Maximum voltage is 3.6V.
3 j1PC14—
gpiortc
—GPIOvoltage_3v3_strict
4 j1PC15—
gpiortc
—GPIOvoltage_3v3_strict
5 j1PA0—
gpiouartpwmadc
ADC12_CH0GPIOvoltage_3v3_strict
6 j1PA1—
gpiouartpwmadc
ADC12_CH1GPIOvoltage_3v3_strict
7 j1PA2—
gpiouartpwmadc
ADC12_CH2GPIOvoltage_3v3_strict
8 j1PA3—
gpiouartpwmadc
ADC12_CH3GPIOvoltage_3v3_strict
9 j1PA4—
gpiouartspiadc
ADC12_CH4GPIOvoltage_3v3_strict
10 j1PA5—
gpiospiadc
ADC12_CH5GPIOvoltage_3v3_strict
11 j1PA6—
gpiospipwmadc
ADC12_CH6GPIOvoltage_3v3_strict
12 j1PA7—
gpiospipwmadc
ADC12_CH7GPIOvoltage_3v3_strict
13 j1PB0—
gpiopwmadc
ADC12_CH8GPIOvoltage_3v3_strict
14 j1PB1—
gpiopwmadc
ADC12_CH9GPIOvoltage_3v3_strict
15 j1PB10—
gpiouarti2c
—GPIO
16 j1PB11—
gpiouarti2c
—GPIO
17 j1NRST—
reset
—Reset / Enable
18 j13.3V—
power
—3.3 V Power
19 j1GND—
gnd
—Ground
20 j1GND—
gnd
—Ground
1 j23.3V—
power
—3.3 V Power
2 j2GND—
gnd
—Ground
3 j25V—
power
—5.0 V Powervoltage_3v3_strict
4 j2PB9—
gpioi2cpwmcan
—GPIO
5 j2PB8—
gpioi2cpwmcan
—GPIO
6 j2PB7—
gpiouarti2cpwm
—GPIO
7 j2PB6—
gpiouarti2cpwm
—GPIO
8 j2PB5—
gpioi2cpwm
—GPIO
9 j2PB4—
gpiospipwm
—GPIOonboard_component_shared
10 j2PB3—
gpiospipwm
—GPIOonboard_component_shared
11 j2PA15—
gpiospipwm
—GPIOonboard_component_shared
12 j2PA12—
gpiopwmcanusb
—GPIOnative_usb_active
13 j2PA11—
gpiopwmcanusb
—GPIO
14 j2PA10—
gpiouartpwm
—GPIOboot_strapping
15 j2PA9—
gpiouartpwm
—GPIOboot_strapping
16 j2PA8—
gpiopwm
—GPIO
17 j2PB15—
gpiospipwm
—GPIO
18 j2PB14—
gpiospipwm
—GPIO
19 j2PB13—
gpiospipwm
—GPIO
20 j2PB12—
gpioi2cspi
—GPIO
1 swd3.3V—
power
—3.3 V Power
2 swdSWDIO—
gpioswd
—GPIOonboard_component_shared
3 swdSWCLK—
gpioswd
—GPIOonboard_component_shared
4 swdGND—
gnd
—Ground

Grounded reference

Board overview

The STM32F103C8T6 "Blue Pill" is an iconic, ultra-low-cost 32-bit ARM Cortex-M3 development board operating at 72 MHz with 64 KB Flash, 20 KB SRAM, dual 12-bit ADCs, USB 2.0 Full-Speed, and hardware CAN.

Power inputs

  • Micro-USB port: Supplies 5V VBUS power directly to the onboard 3.3V LDO regulator and provides Full-Speed USB communication.
  • 5V Header Pin: External 5V input rail feeding the onboard LDO regulator. Warning: Do not connect external 5V simultaneously with USB.
  • 3.3V Header Pins: Regulated 3.3V system power output from the onboard LDO, or direct 3.3V power input if external 5V/USB is omitted.
  • VBAT Pin: Dedicated battery backup supply pin (1.8V to 3.6V) powering the Real-Time Clock (RTC) and 42 16-bit backup registers when main VDD is removed.

Hardware Variants, Clones & Traps

  • USB Pull-Up Resistor (R10): Many cheap clone boards feature an incorrect 4.7kΩ or 10kΩ pull-up on D+ (PA12) instead of 1.5kΩ, preventing host USB enumeration.
  • Hidden 128 KB Flash: Genuine STM32F103C8 chips frequently contain 128 KB of working Flash memory instead of the official 64 KB rating.
  • Silicon Clones (CS32, CKS32, GD32): Numerous clone manufacturers produce pin-compatible variants that may have differing PLL configurations or USB bootloader timings.

Before you wire

  • Selective 5V Tolerance: Only designated digital pins are 5V-tolerant (FT). All analog ADC input pins (PA0-PA7, PB0, PB1) and PC13-PC15 are strictly 3.3V maximum.
  • BOOT Configuration Jumpers: For standard user Flash execution, both BOOT0 and BOOT1 must be set to 0. Set BOOT0=1 to enter the built-in UART system bootloader.
  • Active-Low User LED: The onboard user LED on PC13 is wired to 3.3V through a current-limiting resistor. Driving PC13 LOW turns the LED ON; driving HIGH turns it OFF.
  • JTAG Pin Remapping: Pins PB3, PB4, and PA15 default to JTAG debug signals. To use them as general-purpose GPIOs, JTAG must be disabled via software remapping.

Safe GPIO pins

Use the pin table to distinguish 5 V-tolerant digital pins from pins limited to the 3.3 V domain.

ADC and analog pins

ADC-capable inputs are limited to the analog supply domain and must not be treated as 5 V-tolerant inputs.

I2C, SPI and UART pins

The board exposes multiple UART, SPI, I2C, USB, CAN, timer, and SWD/JTAG signals through alternate pin functions.

Strapping and boot pins

BOOT0 and BOOT1 select the startup memory mode; use the normal documented jumper state for user flash execution.

Input-only pins

GPIO direction and 5 V tolerance vary by pin; consult the interactive table before wiring.

STM32F411CEU6 Black Pill pinoutArduino Mega 2560 Rev3 pinoutArduino Pro Mini pinoutNodeMCU v2 Amica (ESP8266) pinout

Help keep this page accurate

Checked this pinout against your board or connector? Confirm it, or report a pin, voltage or orientation that does not match.

Opens a public form on GitHub with this page already filled in; a free GitHub account is needed. How reports and confirmations work