STM32 MCU software development tools

Accelerate your development thanks to STM32Cube software tools

1-Configuration

STM32CubeMX log

STM32CubeMX

STM32CubeMX is a graphical tool that simplifies the configuration of STM32 microcontrollers and microprocessors. It also generates initialization C code for the Arm® Cortex®-M core or a partial Linux® Device Tree for the Arm® Cortex®-A core through a step-by-step process.

  • Peripheral and middleware configuration
  • Project and init code generation​
  • Project generation for Keil, IAR, & STM32CubeIDE​
  • Power consumption calculation​
Discover STM32CubeMX
Discover STM32CubeMX

2-Coding: Edit / Compile / Debug

STM32CubeIDE log

STM32CubeIDE

STM32CubeIDE is the Eclipse-based free of charge all-in-one integrated development tool for STM32 Microcontrollers.​ STM32CubeIDE is suitable for users who prefer easy-to-get-started over full flexibility and control.

Find your board, download the associated embedded software, configure your hardware features and peripherals and generate your project with a few simple clicks.

You can then start developing your application using the STM32CubeIDE for editing, building, and debugging​.

  • Configuration
  • Edit
  • Compile​
  • Debug​
Discover STM32CubeIDE
STM32CubeIDE log

STM32Cube for Visual Studio Code

STM32Cube for VS Code is a free, lightweight development tool for STM32 microcontrollers. VS Code is flexible and extensible but requires a basic understanding of CMake.

Import an STM32CubeMX project or start from scratch, enjoy the powerful C/C++ editing features of VS Code, and compile your code with the fast CMake/Ninja-based build system.

You can then start developing your application using the STM32Cube for VS Code for editing, building, and debugging​.

  • Edit
  • Compile
  • Debug​
  • Automation​
Discover STM32Cube for VS Code
PARTNER

IAR Embedded Workbench

  • STM32CubeMX supported​
  • Code editing, debugging...
  • Binary programming​
  • Extended tracing​​
  • Performance & footprint​
  • Functional safety ready​
  • Professional support​
Discover IAR workbench Discover IAR workbench
PARTNER

Arm KEIL MDK

  • STM32CubeMX supported​
  • Code editing, debugging...
  • Binary programming​
  • Extended tracing​​
  • Performance & footprint​
  • Functional safety ready​
  • Professional support​
Discover Arm Keil MDK Discover software
PARTNER
FREE

Arm KEIL MDK

  • STM32CubeMX supported​
  • Code editing, debugging...
  • Binary programming​
  • Performance & footprint​
  • Professional support​
Discover ARM Keil MDK (Free) Discover ARM Keil MDK (Free)

3-Programming

STM32CubeProgrammer

STM32CubeProgrammer

STM32CubeProgrammer (STM32CubeProg) is an all-in-one multi-OS software tool for programming STM32 products.

It provides an easy-to-use and efficient environment for reading, writing, and verifying device memory through both the debug interface (JTAG and SWD) and the bootloader interface (UART, USB DFU, I2C, SPI, and CAN).

  • Binary programming
  • Hardware options setting
  • Secure programming
Discover STM32CubeProgrammer
Discover STM32CubeProgrammer

4-Monitoring

STM32CubeMonitor

STM32CubeMonitor

The STM32CubeMonitor family of tools helps fine-tune and diagnose STM32 applications at runtime by reading and visualizing their variables in real time.

In addition to specialized versions (power, RF, USB-PD), the versatile STM32CubeMonitor provides a flow-based graphical editor to build custom dashboards simply and quickly add widgets such as gauges, bar graphs, and plots.

  • Monitoring
  • Real-time valuable visualization
  • Specific for RF, power, and USB-PD
Discover STM32CubeMonitor
Discover STM32CubeMonitor
alt

Find all STM32 software development tools

Our STM32 family of 32-bit Arm® Cortex® core-based microcontrollers and microprocessors are supported by a comprehensive set of software tools.

Try our selector

Software development tools from our partners

Visit our partner list

Open.

30+

authorized partners.

Rich.

60+

software tools references.