1. What is STM32CoreMW ?
ST offers a complete, proven, and reliable MCU software solution for developers. It covers low layers, middleware, and applicative sides, as well as configuration, programming, monitoring and debugging tools.
The basic Middleware stacks that are commonly needed for applications are: RTOS, File System, USB, TCP/IP, Bootloader, JPEG and TLS. ST offers a comprehensive set of stacks and applications covering these topics. This set of Middleware stacks is called STM32 Core Middleware (STM32CoreMW for short).
STM32CoreMW solution is constructed around Microsoft Azure RTOS Middleware and other in-house (ST USB, OpenBL) and open source stacks (FreeRTOS, FatFS, LwIP, embTLS, LibJPEG). All integrated and customized for STM32 MCU devices and enriched with corresponding application examples based on STM32 evaluation boards.
2. STM32 Azure RTOS
Azure RTOS is a professional grade, highly reliable and market proven Middleware suite:
- Integrated and full featured RTOS. Learn more about ThreadX.
- Industrial grade networking stack: optimized for performance coming with many IoT protocols. Learn more about NetXDuo.
- Advanced FS/FTL: fully featured to support NAND/NOR Flash memories. Learn more about FileX and LevelX
- USB Host and Device stacks coming with many classes. Learn more about USBX.
- Safety pre-certifications (from MSFT): IEC 61508 SIL4, IEC 62304 Class C and ISO 26262 ASIL D
- Security pre-certifications (from MSFT): EAL4+ for TLS/DTLS, FIPS 140-2 for SW crypto lib
- STM32 granted production license
In order to implement FileX, LevelX, NetXDuo or USBX, an integrated RTOS is required (ThreadX). A “bare-metal” implementation is planned in the future for USBX.
AzureRTOS MW stacks are also interdependent. In fact, some USBX Host classes are using the FileX API, while other USBX device classes require the NetXDuo API. LevelX is used by FileX to support file system on NAND and NOR memories.
2.1. Azure RTOS Integration
ST offers integrated and ready to use environment to allow effortless implementation of user projects based on Azure RTOS and other CoreMW stacks.
- Ability to use Azure RTOS and other CoreMW stacks with a level of configurability directly from STM32CubeMX
- Addition of multiple application examples for standard ST evaluation boards: STM32Nucleo, Discovery Kits and Eval boards.
- Addition of material helping with migration efforts
- Addition of training material and documentation
The AzureRTOS API are HW agnostic, they run seamlessly on all supported HW and IPs. Each MW has its own low-level driver to support a specific HW IPs. These drivers are implemented using the HAL/BSP drivers to ensure portability among different STM32 MCU and boards.
2.2. Azure RTOS Applications
Multiple functional applications are provided in STM32 CubeFW package for Azure RTOS stacks. Please visit the page dedicated for each Azure RTOS stack for more details about available applications.
2.3. Azure RTOS License
Component | License | Copyright |
---|---|---|
CMSIS | Apache License 2.0 | Copyright (c) 2009-2017 ARM Limited. All rights reserved. |
CMSIS Device | Apache License 2.0 | ARM Limited - STMicroelectronics |
STM32H7 HAL | BSD-3-Clause | STMicroelectronics |
BSP STM32H7xx_Nucleo | BSD-3-Clause | STMicroelectronics |
BSP STM32H735G-DK | BSD-3-Clause | STMicroelectronics |
BSP Components | BSD-3-Clause | STMicroelectronics |
Application Projects | ST SLA0044 | STMicroelectronics |
STM32 Utilities | BSD-3-Clause | STMicroelectronics |
Azure RTOS ThreadX | Microsoft Software License for Azure RTOS | Microsoft |
Azure RTOS NetXDuo | Microsoft Software License for Azure RTOS | Microsoft |
Azure RTOS FileX | Microsoft Software License for Azure RTOS | Microsoft |
Azure RTOS LevelX | Microsoft Software License for Azure RTOS | Microsoft |
Azure RTOS USBX | Microsoft Software License for Azure RTOS | Microsoft |