Table of Contents

STM32 "Blue Pill"

Some quick notes about setting up a STM32F103C8T6 "Blue Pill" for development on Arduino.1)

This page describes the process for settings things up with the Arduino_STM32 tools originally developed by Roger Clarke. These tools are now effectively unsupported.

The main alternative that is supported is the Arduino_Core_STM32 project. I don't know how much of what's below transfers to Arduino_Core_STM32.

Setup

Hardware

In addition to a “Blue Pill,” you will need a 3.3V USB to serial converter.

Lots of pins on the STM32F103C8T6 are purported to be 5V tolerant. The main DC isn't, and I don't know if TX/RX are. So, play it safe and use a 3.3V serial converter. I used a SparkFun Serial Basic configured for 3.3V. Only the TX and RX pins and, optionally, power will be used, so you should be able to use a standard FTDI board as well.

Mind the voltages!

Some serial converter boards put out 5V as VCC even when set to 3.3V mode. Applying 5V to the 3.3V main supply line of a Blue Pill will kill it. Carefully check your 3.3V serial converter board to see whether the VCC output is 3.3V or 5V.

There is a 5V input on the Blue Pill and a USB connector that can power the board from 5V. These go through a small 3.3V regulator.

Connections

Arduino environment

Do once:

Project config

Under the Tools menu, make the following selections:

Programming

To re-upload, push reset and upload.

To put the device into “use” mode, move the BOOT0 jumper back to the 0 position (i.e., to GND, away from the microcontroller IC).

Pinout

From here (Wayback Machine snapshot).3)

Resources

STM32duino

The stm32duino.com domain went down some time ago, apparently because it exceeded the host's traffic limit. The forums are now back online, but not the wiki. You can use the Wayback Machine snapshot links to access unavailable pages.

Other

3)
An alternative pinout diagram is available here (Wayback Machine snapshot).