Affordable and flexible platform to ease prototyping using a STM32F031K6T6 microcontroller.


The STM32 Nucleo board provides an affordable and flexible way for users to try out new ideas and build prototypes with any STM32 microcontroller line, choosing from the various combinations of performance, power consumption and features.

The Arduino™ connectivity support and ST Morpho headers make it easy to expand the functionality of the STM32 Nucleo open development platform with a wide choice of specialized shields.

The STM32 Nucleo board does not require any separate probe as it integrates the ST-LINK/V2-1 debugger/programmer.

Microcontroller features

  • STM32F031K6T6 in LQFP32 package
  • ARM®32-bit Cortex®-M0 CPU
  • 48 MHz max CPU frequency
  • VDD from 2.0 V to 3.6 V
  • 32 KB Flash
  • 4 KB SRAM
  • Timers Advanced Control (1)
  • Timers General Purpose (5)
  • SPI/I2S (1)
  • I2C (1)
  • USART (1)
  • 12-bit ADC with 13 channels (1)
  • GPIO (25) with external interrupt capability
  • RTC

Nucleo features

  • Two types of extension resources
    • Arduino Uno Revision 3 connectivity
    • STMicroelectronics Morpho extension pin headers for full access to all STM32 I/Os
  • On-board ST-LINK/V2-1 debugger/programmer with SWD connector
    • Selection-mode switch to use the kit as a standalone ST-LINK/V2-1
  • Flexible board power supply
    • USB VBUS or external source (3.3 V, 5 V, 7 - 12 V)
    • Power management access point
  • User LED (LD3)
  • One push button: RESET
  • USB re-enumeration capability: three different interfaces supported on USB
    • Virtual Com port
    • Mass storage (USB Disk drive) for drag'n'drop programming
    • Debug port

Nucleo pinout

Arduino-Nano-compatible headers



Only the labels written in blue/white or green/white (i.e. PA_4, PB_5, A0, D14, LED1...) must be used in your code. The other labels are given as information (alternate-functions, power pins, ...).

You can find more details on the available pins and labels in the following files (link to the latest mbed-dev library version):


By default the PA_5 (A4) and PA_6 (A5) pins can only be used as Input floating (ADC function). Remove SB16 and SB18 solder bridges in order to use these pins as Digital output and have access to other functions (DigitalOut, SPI, PWM, etc...). Refer to the user manual for more details.

Supported Shields

Gravitech 7 Segment Display for Arduino Nano

Nucleo ST-LINK/V2 driver installation and firmware upgrade

  • Install the ST-LINK/V2 driver before connecting the Nucleo board to your PC the first time. Follow this LINK for all details.
  • For optimum performances, ensure that the Nucleo ST-LINK/V2 firmware is upgraded to the latest version. Follow this LINK for all details.

Technical references

For more information, please refer to:

Known limitations

The following section describes known limitations of the platform. Note that general issues are tracked into the mbed repository available on GitHub.

  • ARM mbed RTOS not compatible with this platform (code size is too big).

Tips and Tricks

Find more information in ST WIKI pages.

 Buy Now