Meet your hardware

Let's get familiar with the hardware we'll be working with.


We'll refer to this board as "F3" throughout this book.

What does this board contain?

  • A STM32F303VCT6 microcontroller. This microcontroller has

    • A single core ARM Cortex-M4F processor with hardware support for single precision floating point operations and a maximum clock frequency of 72 MHz.

    • 256 KiB of "Flash" memory. (1 KiB = 1024 bytes)

    • 48 KiB of RAM.

    • many "peripherals": timers, GPIO, I2C, SPI, USART, etc.

    • lots of "pins" that are exposed in the two lateral "headers".

    • IMPORTANT This microcontroller operates at (around) 3.3V.

  • An accelerometer and a magnetometer (in a single package).

  • 8 user LEDs arranged in the shape of a compass

  • A second microcontroller: a STM32F103CBT. This microcontroller is actually part of an on-board programmer and debugger named ST-LINK and is connected to the USB port named "USB ST-LINK".

  • There's a second USB port, labeled "USB USER" that is connected to the main microcontroller, the STM32F303VCT6, and can be used in applications.

The Serial module

We'll use this module to exchange data between the microcontroller in the F3 and your laptop. This module will be connected to your laptop using an USB cable. I won't say more at this point.

The Bluetooth module

This module has the exact same purpose as the serial module but it sends the data over Bluetooth instead of over USB.