1. Product Overview
The Shutao STM32F103C6T6 ARM STM32 Minimum System Development Learning Board Module is a compact and versatile development platform designed for embedded systems learning and prototyping. It features an STM32F103C6T6 microcontroller, offering a 72MHz operating frequency, 32KB of Flash memory, and 10KB of RAM.
Key features include:
- Microcontroller: STM32F103C6T6 (ARM Cortex-M3)
- Operating Frequency: 72MHz
- Memory: 32KB Flash, 10KB RAM
- Power Supply: 2.0-3.6V for core, I/O
- Reset Functionality: Power-On Reset (POR) / Power-Down Reset (PDR)
- Clock Sources: 4-16MHz external crystal, 32.768KHz internal crystal
- Connectivity: Micro USB connector for power and USB communication
- I/O Ports: All I/O ports are led out in two rows for easy access
- Power Input/Output: Dedicated 5V and 3.3V power input/output interfaces for external power or common ground treatment with other modules
- Debugging: SWD (Serial Wire Debug) simulation debug download interface for convenient and fast debugging
- Pin Headers: Double pin headers are provided, but not welded by default, allowing users to choose their preferred welding direction based on application scenarios.

Figure 1: Top view of the STM32F103C6T6 development board, showing the microcontroller, USB port, reset button, and pin headers.
2. Setup Instructions
Follow these steps to set up your STM32F103C6T6 development board:
- Prepare Pin Headers: The board comes with un-welded pin headers. Solder the pin headers according to your project requirements. Ensure proper orientation and secure connections.
- Power Connection: Connect the board to a power source using the Micro USB port. A standard Micro USB cable (not included) can be used to connect to a computer or a 5V USB power adapter. The board can also be powered via the 5V or 3.3V power input pins.
- Driver Installation: Depending on your operating system and development environment (e.g., Arduino IDE, STM32CubeIDE), you may need to install specific USB drivers for the STM32 microcontroller. Refer to the documentation of your chosen IDE for driver installation instructions.
- Development Environment Setup: Install your preferred Integrated Development Environment (IDE) such as STM32CubeIDE, Keil MDK, IAR Embedded Workbench, or configure the Arduino IDE for STM32 development. Ensure the necessary toolchains and compilers are installed.
- Connect for Programming/Debugging: For programming and debugging, connect the board to your computer via the Micro USB port. For advanced debugging, connect an SWD debugger (e.g., ST-Link) to the SWD interface pins on the board.

Figure 2: Top view of the development board highlighting its dimensions (52.8mm x 22.3mm).
3. Operating Instructions
Once the board is set up and your development environment is ready, you can begin programming and operating the STM32F103C6T6 module.
- Power On: Connect the Micro USB cable to the board and your computer. The PWR LED on the board should illuminate, indicating power is supplied.
- Boot Mode Selection: The board typically has BOOT0 and BOOT1 pins (often configured via jumpers or pull-up/pull-down resistors) to select the boot mode (e.g., Flash memory, System memory, SRAM). Ensure these are set correctly for your programming method. For typical application execution from Flash, BOOT0 should be low and BOOT1 can be low or high. For programming via serial bootloader, BOOT0 should be high.
- Programming:
- Via USB (Serial Bootloader): If using the built-in serial bootloader, set the BOOT0 pin high and BOOT1 low. Use a serial programming tool (e.g., STM32CubeProgrammer) to upload your compiled firmware via the Micro USB port.
- Via SWD Debugger: Connect an SWD debugger (e.g., ST-Link) to the SWD pins (SWDIO, SWCLK, GND, 3.3V). Use your IDE (e.g., STM32CubeIDE, Keil) to compile and upload code directly to the Flash memory. This method also allows for real-time debugging.
- Via Arduino IDE: If using the Arduino IDE with STM32 support, follow the specific instructions for uploading sketches to STM32 boards, which often involves setting boot jumpers and using a USB-to-serial converter or an ST-Link.
- Resetting the Board: Press the 'RESET' button on the board to restart the microcontroller and execute the loaded program from the beginning.
- I/O Usage: Utilize the exposed I/O pins for connecting sensors, actuators, and other peripheral components. Refer to the STM32F103C6T6 datasheet for detailed pinout and peripheral mapping.

Figure 3: Bottom view of the development board, showing the SWD interface pins (3V3, SWDIO, SWCLK, GND) and various passive components.
4. Maintenance
Proper maintenance ensures the longevity and reliable operation of your development board:
- Handle with Care: Electronic components are sensitive. Avoid dropping the board or subjecting it to physical shock.
- Static Discharge Protection: Always handle the board in an ESD-safe environment. Use an anti-static wrist strap and mat to prevent electrostatic discharge, which can damage sensitive components.
- Keep Dry: Protect the board from moisture and liquids. Store it in a dry environment.
- Cleanliness: Keep the board free from dust and debris. Use a soft, dry brush or compressed air for cleaning. Avoid using liquids or harsh chemicals.
- Power Off When Not in Use: Disconnect power when the board is not in use to prevent unnecessary wear and potential damage.
5. Troubleshooting
If you encounter issues with your STM32F103C6T6 development board, consider the following troubleshooting steps:
- No Power/LED Off:
- Check the Micro USB cable connection.
- Ensure the power source (computer USB port or adapter) is functional.
- Verify that the power input pins (5V/3.3V) are receiving the correct voltage if using an external supply.
- Programming Errors:
- Bootloader Issues: Some users have reported occasional issues with the bootloader when uploading code multiple times. Try resetting the board or re-entering the bootloader mode (e.g., by adjusting BOOT0/BOOT1 jumpers) before attempting to upload again.
- Ensure correct boot mode selection (BOOT0/BOOT1 pins) for your programming method.
- Verify that the correct drivers are installed for your operating system and IDE.
- Check that the correct COM port (for serial programming) or debugger is selected in your IDE.
- Ensure your firmware is compiled without errors and is compatible with the STM32F103C6T6.
- If using an SWD debugger, ensure it is properly connected and recognized by the IDE.
- Program Not Running:
- After uploading, press the 'RESET' button to ensure the new program starts execution.
- Verify that the boot mode is set to execute from Flash memory (BOOT0 low).
- Check your code for logical errors or infinite loops that might prevent proper execution.
- Peripheral Malfunction:
- Double-check your wiring connections to external components.
- Verify that the correct I/O pins are configured in your software.
- Ensure external components are powered correctly and are compatible with the board's voltage levels.
6. Specifications
| Feature | Specification |
|---|---|
| Microcontroller | STM32F103C6T6 (ARM Cortex-M3) |
| Processor Speed | 72 MHz |
| Flash Memory | 32 KB |
| RAM | 10 KB |
| Operating Voltage | 2.0V - 3.6V |
| External Crystal | 4-16 MHz |
| Internal Crystal | 32.768 KHz |
| USB Ports | 1x Micro USB (for power/communication) |
| Debugging Interface | SWD |
| Power Input/Output | 5V and 3.3V pins |
| Operating System Support | FreeRTOS (example) |
| Item Weight | 0.634 ounces (approx. 18g) |
| Package Dimensions | 3.7 x 2.6 x 0.51 inches (approx. 9.4 x 6.6 x 1.3 cm) |
| Model Number | 13511-1 |
| Series | STM32F103C6T6 |
| Brand | Shutao |
7. Warranty and Support
Specific warranty information for this product is not provided in the available documentation. For any warranty claims or technical support, please contact the seller or manufacturer directly through your purchase platform.
When contacting support, please provide your purchase details, product model (STM32F103C6T6), and a clear description of the issue you are experiencing.