STM32F103C8T6 / C6T6 Blue Pill ARM Cortex-M3 Development Board Arduino STM32

Price range: $6.95 through $7.90 Inc. GST
You save (%)

SKU: N/A Category: Tags: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Description

🔵 STM32F103C8T6 / STM32F103C6T6 Blue Pill Development Board – ARM Cortex-M3 MCU

The STM32F103 “Blue Pill” development boards are compact and powerful microcontroller modules based on the STM32F1 series from STMicroelectronics. Featuring the ARM Cortex-M3 core running at 72 MHz, these boards are a cost-effective solution for learning ARM programming, developing embedded systems, or building hobby and professional electronics projects.

Available in two variants (C8T6 & C6T6), the Blue Pill board provides excellent performance, a wide range of peripherals, and compatibility with popular development tools such as STM32CubeIDE, Arduino (STM32duino), Keil, and PlatformIO.


🌟 Key Features (Shared by Both Variants)

  • Processor: ARM 32-bit Cortex-M3 core, up to 72 MHz

  • Voltage: 2.0 V – 3.6 V operating range (3.3V regulator onboard)

  • Connectivity: Mini-USB interface for power and communication

  • Peripherals:

    • I²C, SPI, USART serial interfaces

    • USB 2.0 Full-Speed

    • Timers (up to 9, depending on variant)

    • 12-bit ADC with multiple channels

  • I/O: 37 GPIO pins, extended via 20×2 header

  • Programming: Standard SWD port, supports ST-Link, J-Link, J-Link OB

  • Crystals:

    • 8 MHz high-speed crystal oscillator (PLL for 72 MHz operation)

    • 32.768 kHz low-speed Epson crystal for RTC (higher precision, reliable start-up)

  • Indicators: Power LED and user-programmable function LED

  • Form Factor: Compact LQFP-48 package (48 pins), breadboard-friendly


🔍 Variant Details

🔹 STM32F103C8T6 (Blue Pill – Performance Version)

  • Flash Memory: 64 KB

  • SRAM: 20 KB

  • Timers: 9

  • Serial Ports: 3 (USART1, USART2, USART3)

  • Ideal For: Advanced projects requiring more memory and peripheral options, robotics, IoT gateways, and industrial control systems.

🔹 STM32F103C6T6 (Blue Pill – Compact Version)

  • Flash Memory: 32 KB

  • SRAM: 10 KB

  • Timers: 3 (no Timer 4)

  • Serial Ports: 2 (no USART3)

  • Ideal For: Lightweight applications, education, cost-sensitive projects, and simpler embedded systems.


🖥️ Development Support

The STM32 Blue Pill boards are supported by a wide range of software environments:

  • STM32CubeIDE (official ST IDE with HAL libraries)

  • Arduino IDE (STM32duino) – easy programming with Arduino libraries

  • PlatformIO / Keil / IAR – for professional embedded development

  • OpenOCD + ST-Link/J-Link – full debug support

This makes the boards ideal for both beginners learning ARM development and engineers working on production-ready embedded applications.


📦 Package Includes

  • 1 × STM32F103C8T6 or STM32F103C6T6 Blue Pill Development Board (choose variant)


🚀 Applications

  • Embedded systems prototyping

  • IoT devices and gateways

  • Robotics and motor control

  • Data acquisition and monitoring

  • Industrial automation

  • Education and STEM projects


💡 Why Choose the Blue Pill?

The STM32 Blue Pill boards combine performance, affordability, and community support. Whether you choose the C8T6 for larger projects or the C6T6 for simple designs, you’re getting a reliable ARM-based platform backed by extensive tutorials and libraries.


⚠️ Note: These are compatible Blue Pill boards based on the original STM32F103 series design. Functionality matches the official ST microcontrollers, but component layout and finish may vary slightly.

📌 Code Examples – STM32F103 “Blue Pill” (C8T6 / C6T6)

⚠️ IMPORTANT – READ BEFORE USING THIS BOARD

Most STM32F103 “Blue Pill” boards — including the C8T6 and C6T6 variants — do NOT come with an Arduino-compatible bootloader preinstalled.

This means:

✅ You cannot upload code via the USB port out of the box

❗ You must program the board using an ST-Link USB programmer

Once a bootloader is flashed, you may upload via USB-Serial or USB depending on the bootloader type — but the first upload always requires ST-Link.

You will need:

  • ST-Link V2 USB Programmer

  • 4 jumper wires

  • Optionally: Arduino bootloader or STM32duino bootloader if you want USB uploads later


📌 Wiring for Flashing Bootloader (ST-Link → Blue Pill)

ST-Link Pin STM32 Pin
SWDIO SWDIO
SWCLK SWCLK
3.3V 3.3V
GND GND

⚠️ DO NOT use 5V when flashing. The SWD interface uses 3.3V only.

Once connected, you can:

  • Flash the Arduino bootloader

  • Flash the STM32duino bootloader

  • Upload firmware directly via ST-Link (no bootloader required)


📌 Arduino IDE Setup (After Bootloader Is Installed)

  1. Open Arduino IDE

  2. Go to File → Preferences

  3. Add this URL in Additional Boards Manager URLs:

https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json
  1. Install STM32 MCU Boards in Boards Manager

  2. Select board:

→ Tools → Board → STM32 Boards → “BluePill F103C8 / F103C6”

  1. Choose upload method ST-Link or Serial (if bootloader installed)


🔧 Example 1 — Blink LED (Arduino IDE)

The onboard LED is normally connected to PC13.

void setup() {
pinMode(PC13, OUTPUT);
}

void loop() {
digitalWrite(PC13, LOW); // LED usually active LOW
delay(500);
digitalWrite(PC13, HIGH);
delay(500);
}


⚡ Example 2 — PWM Output (Arduino IDE)

Use PA8 for hardware-timed PWM.

const int pwmPin = PA8;

void setup() {
pinMode(pwmPin, OUTPUT);
analogWriteFreq(1000); // 1 kHz PWM
analogWrite(pwmPin, 128); // 50% duty (0–255)
}

void loop() {}


📈 Example 3 — ADC Input (Arduino IDE)

Reads analog voltage on PA0.

const int adcPin = PA0;

void setup() {
Serial.begin(9600);
}

void loop() {
int raw = analogRead(adcPin); // 12-bit (0–4095)
float voltage = raw * (3.3 / 4095);
Serial.print("ADC: ");
Serial.print(raw);
Serial.print(" Voltage: ");
Serial.println(voltage, 3);
delay(500);
}


🛠 STM32CubeIDE (HAL) Blink Example

For customers wanting pure ARM development:

#include "main.h"

int main(void) {
HAL_Init();
SystemClock_Config();

__HAL_RCC_GPIOC_CLK_ENABLE();

GPIO_InitTypeDef GPIO_InitStruct = {0};
GPIO_InitStruct.Pin = GPIO_PIN_13;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);

while (1) {
HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_13);
HAL_Delay(500);
}
}


🧠 Notes & Tips

ST-Link is required unless a bootloader has been flashed
✔ Many boards ship with the wrong USB pull-up resistor (R10) → USB upload may fail
✔ ST-Link upload is the most reliable method
✔ C8T6 vs C6T6 difference is only flash size (64 KB vs 32 KB)
✔ Functionality and code examples are identical
✔ You can upload without installing a bootloader by using ST-Link every time

Additional information

Weight 40 g
Dimensions 260 × 160 × 20 mm
Chip

STM32F103C8T6, STM32F103C6T6

Reviews

There are no reviews yet.


Only logged in customers who have purchased this product may leave a review.