STM32Cube is a set of tools and embedded software bricks available free of charge to enable fast and easy development on the STM32 platform which simplifies and speeds up developers’ work.
A large number of code use examples are also included making it even easier to get started.
STM32Cube consists of the following components that can be used together or independently:
- The STM32CubeMX graphical user interface and initialization code generator that:
- Provides graphical wizards to generate initialization C code and includes a utility tool for assisting developers with pin multiplexing, clock tree setting, peripheral configurations and setting up the middleware
- Generates IDE-ready projects for a wide selection of integrated development environment toolchains
- Calculates the power consumption for user-defined application sequences
- Directly imports STM32Cube embedded software libraries from st.com
- Keeps STM32CubeMX software up-to-date thanks to an Integrated updater
- STM32Cube MCU and MPU Packages for each individual STM32 MCU and MPUs series that include:
- The hardware abstraction layer (HAL) enabling portability between different STM32 devices via standardized API calls
- Low-layer (LL) APIs, a light-weight, optimized, expert oriented set of APIs designed for both performance and runtime efficiency
- A collection of middleware components including RTOS, USB library, file system, TCP/IP stack, touch-sensing library or graphics library (depending on the STM32 series)
- For STM32 MPUs only, the BSP drivers are based on HAL drivers and provide an API Set to the evaluation board and 3rd party components.

Featured Videos
Guided tour into STM32 ODE and how it can help developers turn bright ideas into great products
The STM32 Open Development Environment is a flexible, easy and affordable way to develop innovative devices and applications. It is based on STM32 Nucleo boards and STM32Cube software.
-
STM32CubeWB
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)
-
STM32CubeF2
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)
-
STM32CubeH7
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)
-
STM32CubeG0
STM32Cube MCU Package for STM32G0 series (HAL, Low-Layer APIs and CMSIS, USB PD, File system, RTOS - and examples running on ST boards)
-
STM32CubeL0
STM32Cube MCU Package for STM32L0 series (HAL, Low-Layer APIs and CMSIS, USB, File system, RTOS, Touch Sensing - and examples running on ST boards)
-
STM32CubeF1
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)
-
STM32CubeL1
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)
-
STM32CubeF0
STM32Cube MCU Package for STM32F0 series (HAL, Low-Layer APIs and CMSIS, USB, File system, RTOS, Touch Sensing - and examples running on ST boards)
-
STM32CubeF3
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)
-
STM32CubeF4
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)
-
STM32CubeL4
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)
-
STM32CubeF7
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)