Overview
Sample & Buy
Solutions
Resources
Tools & Software
Quality & Reliability
eDesignSuite
Get Started
Partner products
Sales Briefcase
  • STM32CubeMX is a graphical tool that allows a very easy configuration of STM32 microcontrollers and microprocessors, as well as the generation of the corresponding initialization C code for the Arm® Cortex®-M core or a partial Linux® Device Tree for Arm® Cortex®-A core), through a step-by-step process.

    The first step consists in selecting either: an STMicrolectronics STM32 microcontroller, micropocessor or a development platform, which matches the required set of peripherals, or an example running on a specific development platform.
    For microprocessors, the second step allows to configure the GPIOs and the clock setup for the whole system, and to interactively assign peripherals either to the Arm® Cortex®-M or to the Cortex®A world. Specific utilities, such as DDR configuration and tuning, make it easy to get started with STM32 microprocessors. For Cortex®-M core, the configuration includes additional steps that are exactly similar to those described for microcontrollers.
    For microcontrollers and microprocessor Arm® Cortex®-M, the second step consists in configuring each required embedded software thanks to a pinout-conflict solver, a clock-tree setting helper, a power-consumption calculator, and an utility that configures the peripherals (such as GPIO or USART) and the middleware stacks (such as USB or TCP/IP).
    The default software and middleware stacks can be extended thanks to enhanced STM32Cube Expansion Packages. STMicrolectronics or STMicrolectronics' partner packages can be downloaded directly from a dedicated package manager available within STM32CubeMX, while the other packages can be installed from a local drive.
    Moreover, a unique utility in STM32CubeMX delivery, STM32PackCreator, will help developers to build their own enhanced STM32Cube Expansion Packages.
    Eventually the user launches the generation that matches the selected configuration choices. This step provides the initialization C code for the Arm® Cortex®-M, ready to be used within several development environments, or a partial Linux® device tree for the Arm® Cortex®-A.
    STM32CubeMX is delivered within STM32Cube.

    Key Features

    • Intuitive STM32 microcontroller and microprocessor selection
    • Rich easy-to-use graphical user interface allowing the configuration of:
      • Pinout with automatic conflict resolution
      • Peripherals and middleware functional modes with dynamic validation of parameter constraints for Arm® Cortex®-M core
      • Clock tree with dynamic validation of the configuration
      • Power sequence with estimated consumption results
    • Generation of initialization C code project, compliant with IAR™, Keil® and STM32CubeIDE (GCC compilers) for Arm®Cortex®-M core
    • Generation of a partial Linux® Device Tree for Arm® Cortex®-A core (STM32 microprocessors)
    • Development of enhanced STM32Cube Expansion Packages thanks to STM32PackCreator
    • Integration of STM32Cube Expansion packages into the project
    • Availability as standalone software running on Windows®, Linux® and macOS® (macOS® is a trademark of Apple Inc. registered in the U.S. and other countries.) operating systems and 64-bit Java Runtime environment

Get Software

Latest from ST

STM32MCU WIKI SOFTWARE BANNER

STM32MCU WIKI

discover STM32 software toolchain

Development Tools

    • Part Number

      Integrated Development Environment for STM32

      STM32CubeMX Eclipse plug in for STM32 configuration and initialization C code generation

      Since version 4.13, TouchGFX is delivered as an X-Cube-TouchGFX package

Embedded Software

    • Part Number

      STM32Cube MCU Package for STM32F0 series (HAL, Low-Layer APIs and CMSIS, USB, File system, RTOS, Touch Sensing - and examples running on ST boards)

      STM32Cube MCU Package for STM32F1 series (HAL, Low-Layer APIs and CMSIS, USB, TCP/IP, File system, RTOS, Graphic - and examples running on ST boards)

      STM32Cube MCU Package for STM32F2 series (HAL, Low-Layer APIs and CMSIS, USB, TCP/IP, File system, RTOS, Graphic - and examples running on ST boards)

      STM32Cube MCU Package for STM32F3 series (HAL, Low-Layer APIs and CMSIS, USB, File system, RTOS, Touch Sensing, Graphic - and examples running on ST boards)

      STM32Cube MCU Package for STM32F4 series (HAL, Low-Layer APIs and CMSIS, USB, TCP/IP, File system, RTOS, Graphic - and examples running on ST boards)

      STM32Cube MCU Package for STM32F7 series (HAL, Low-Layer APIs and CMSIS, USB, TCP/IP, File system, RTOS, Graphic - and examples running on ST boards)

      STM32Cube MCU Package for STM32G0 series (HAL, Low-Layer APIs and CMSIS, USB PD, File system, RTOS - and examples running on ST boards)

      STM32Cube MCU Package for STM32G4 series (HAL, Low-Layer APIs and CMSIS, USB, File system, RTOS, Graphic - and examples running on ST boards)

      STM32Cube MCU Package for STM32H7 series (HAL, Low-Layer APIs and CMSIS, USB, TCP/IP, File system, RTOS, Graphic - and examples running on ST boards)

      STM32Cube MCU Package for STM32L0 series (HAL, Low-Layer APIs and CMSIS, USB, File system, RTOS, Touch Sensing - and examples running on ST boards)

      STM32Cube MCU Package for STM32L1 series (HAL, Low-Layer APIs and CMSIS, USB, File system, RTOS, Touch Sensing, Graphic - and examples running on ST boards)

      STM32Cube MCU Package for STM32L4 series and STM32L4 Plus series (HAL, Low-Layer APIs and CMSIS, USB, TouchSensing, File system, RTOS, Graphic - and examples running on ST boards)

      STM32CubeMP1 Package for STM32MP1 series (HAL, Low-Layer APIs and CMSIS, OpenAMP for Inter processor communication, and examples running on ST boards)

      STM32Cube MCU Package for STM32WB series (HAL, Low-Layer APIs and CMSIS, USB, File system, RTOS, BLE, Thread and Zigbee stacks - and examples running on ST boards)

      AI expansion pack for STM32CubeMX

      AlgoBuilder firmware template generator expansion for STM32Cube

      Bluetooth Low Energy software expansion for STM32Cube

      Sensor and motion algorithm software expansion for STM32Cube

      Dynamic NFC/RFID tag IC software expansion for STM32Cube

00 Files selected for download

Technical Documentation

    • Description Version Size Action
      DB2163
      STM32 configuration and initialization C code generation
      15.0
      507.54 KB
      PDF
      DB2163

      STM32 configuration and initialization C code generation

    • Description Version Size Action
      AN5418
      How to build a simple USB-PD sink application with STM32CubeMX
      2.0
      9.68 MB
      PDF
      AN5426
      Migrating graphics middleware projects from STM32CubeMX 5.4.0 to STM32CubeMX 5.5.0
      1.0
      479.43 KB
      PDF
      AN5418

      How to build a simple USB-PD sink application with STM32CubeMX

      AN5426

      Migrating graphics middleware projects from STM32CubeMX 5.4.0 to STM32CubeMX 5.5.0

    • Description Version Size Action
      UM2739
      How to create a software pack enhanced for STM32CubeMX using STM32 pack creator tool
      1.0
      3.37 MB
      PDF
      UM1718
      STM32CubeMX for STM32 configuration and initialization C code generation
      32.0
      25.02 MB
      PDF
      UM2739

      How to create a software pack enhanced for STM32CubeMX using STM32 pack creator tool

      UM1718

      STM32CubeMX for STM32 configuration and initialization C code generation

    • Description Version Size Action
      RN0094
      STM32CubeMX release 6.0.1
      52.0
      1.02 MB
      PDF
      RN0094

      STM32CubeMX release 6.0.1

Presentations & Training Material

    • Description Version Size Action
      STM32 and STM8 software development tools 04.2020
      1.78 MB
      PDF
      STM32Cube ecosystem overview - Making STM32 development easier 1.2
      5.55 MB
      PDF

      STM32 and STM8 software development tools

      STM32Cube ecosystem overview - Making STM32 development easier

Publications and Collaterals

    • Description Version Size Action
      STM32Cube: Tools to support STM32 development 20.07
      2.74 MB
      PDF

      STM32Cube: Tools to support STM32 development

Legal

    • Description Version Size Action
      SLA0048
      Mix Ultimate Liberty+OSS+3rd-party V1 - SOFTWARE LICENSE AGREEMENT
      6.7
      87.58 KB
      PDF
      SLA0048

      Mix Ultimate Liberty+OSS+3rd-party V1 - SOFTWARE LICENSE AGREEMENT