The STM32F103 chip is a very cheap and commonly available 32 bit microcontroller well suited for hobby projects or embedded applications. The chip can be programmed either in C or in WiringC from the Arduino IDE.

The commonly found variant of this chip on ebay and banggood at the time of writing is the STM32F103C8T6 which typically sells for around $2 per development board.

sourced from

5 pack of STM32F103C8T6

The base features of the STM32F103C8T6 include:

  • Maximum clock speed of 72MHz
  • Single clock cycle multiplication and division
  • 64k flash program memory
  • 3.3v logic
  • 37GPIO ports
  • 16 external interrupts

In comparison to the typical arduino board, the stm32f103 chips have much more performance for the price as well as some interesting features.

Some cool features that the STM32F103C8T6 has are:

  • various low power modes
  • 3 channel pwm outout from timer 1
  • 4 timers
  • plenty of interrupts


One of the downsides of these chips is that the common board for them, the "blue pill", does not have a programmer included which then requires the use of either a st-link or jtag programmer. It is also possible to use a serial connection to program the board however it is a little more complicated.

The programming of the board will be the topic of the next blog post.
Programming the STM32F103 over serial

Components Featured in this post:
5 pack of STM32F103C8T6