STM32Cube is an STMicroelectronics original initiative to significantly improve developer productivity by reducing development effort, time and cost. STM32Cube covers the whole STM32 portfolio.
STM32Cube includes STM32CubeMX, a graphical software configuration tool that allows the generation of C initialization code using graphical wizards.
It also comprises the STM32CubeU5 MCU Package composed of the STM32Cube hardware abstraction layer (HAL) and the low-layer (LL) APIs, plus a consistent set of middleware components (Azure® RTOS USBX, FileX/LevelX,ThreadX, NetX Duo, USB Power Delivery, TFM/STSAFE, mbed-crypto, Touch library, Network library, and OpenBootloader). All embedded software utilities are delivered with a full set of examples running on STMicroelectronics boards.
The STM32Cube HAL is an STM32 embedded software layer that ensures maximized portability across the STM32 portfolio, while the LL APIs make up a fast, light-weight, expert-oriented layer which is closer to the hardware than the HAL. HAL and LL APIs can be used simultaneously with a few restrictions.
Both the HAL and LL APIs are production–ready, checked with CodeSonar® static analysis tool, and developed in compliance with MISRA C® guidelines, following a process certified according to IEC 61508 systematic capability 2 level (SC2). Reports are available on demand.
STM32CubeU5 gathers in one single package all the generic embedded software components required to develop an application on STM32U5 microcontrollers. Following STM32Cube initiative, this set of components is highly portable to other STM32 Series. In addition, the low-layer APIs provide an alternative, high-performance, low-footprint solution to the STM32CubeU5 HAL at the cost of portability and simplicity.
HAL and LL APIs are available in open-source BSD license for user convenience.
STM32U5 devices support Arm® PSA security model. A Trusted Firmware M (TFM/STSAFE) reference code is provided within STM32Cube to implement the following security functions: Secure Boot, Secure Firmware Update, secure storage, resource isolation, secure execution, cryptographic engine and software IP protection.