“The International Data Corporation (IDC) predicts that the number of connected IoT devices will reach 41.6 billion by 2025, as more industry organizations realize the value of data generated by digital devices. When most people think of IoT devices, they usually think of connected sensors or cameras used in smart home technology. These devices usually run on a basic central processing unit or other operating system. However, not all IoT devices have real CPUs and instead rely on microcontrollers.
The International Data Corporation (IDC) predicts that the number of connected IoT devices will reach 41.6 billion by 2025, as more industry organizations realize the value of data generated by digital devices. When most people think of IoT devices, they usually think of connected sensors or cameras used in smart home technology. These devices usually run on a basic central processing unit or other operating system. However, not all IoT devices have real CPUs and instead rely on microcontrollers.
Devices run by microcontrollers are often older, such as smoke detectors, without the ability to connect directly to the cloud. This partnership helps securely connect these basic IoT devices to the cloud and paves the way for more advanced applications.
Microsoft and ST recently announced a key collaboration around Azure RTOS and most of its components, which will be an important part of the STM32Cube ecosystem, the toolset and software unit used to facilitate development. Simply put, Microsoft has partnered with ST to ensure that their operating software can effectively utilize the STM32 microcontroller, and ST aims to allow developers to quickly enjoy the operating system and its many middleware and stacks. STM32 will remain a platform open to all RTOSs, which means users wishing to use FreeRTOS, Zephyr, Mbed or any other operating system for embedded systems can still do so. However, the outcome of the partnership with Microsoft enhances ST’s current solution, providing a comprehensive set of features and allowing teams to quickly meet certain industry certifications.
RTOS will gain a firm foothold in IoT era
Compared with the general operating system, the RTOS real-time operating system has the biggest feature of “real-time”. If there is a task to be executed, the real-time operating system will execute the task immediately (in a short period of time), and there will be no long-term delay. This feature ensures the timely execution of each task.
Often mentioned together with real-time operating systems, there is also the concept of embedded operating systems, but in fact these are two completely different things. Although most real-time operating systems are embedded operating systems, embedded operating systems are not. All in real time.
There are some common misconceptions about real-time operating systems, such as: fast speed, high throughput, compact code, small code size, and so on. In fact, these are not features of real-time operating systems, other operating systems can also do.
RTOS systems are not a new concept, but they are constantly evolving. Other brands in this space include Wind River VxWorks, Blackberry QNX and the open source Amazon FreeRTOS.
In 2019 Microsoft acquired Express Logic, a leader in IoT RTOS and edge devices powered by microcontrollers. With this acquisition, Express Logic’s ThreadX RTOS is integrated with other aspects of the Azure IoT cloud service to form Azure RTOS.
ST launched the STM32Cube in 2014. It consists of software libraries and development tools, providing designers with a complete toolbox from which to participate in every step of project development. The STM32Cube utilities and software packages are free to use and have a very business friendly license. In most cases, libraries come with source code, and developers can not only see how we implement certain functions, but also reuse them in applications, simplifying work and reducing time-to-market. ST blogs often mention some examples of using STM32Cube software to alleviate the inherent complexity of embedded systems programming, such as Nytec Inc.’s Connected X.0 or Germany’s Autolabs and Chris.
What will be the experience of Azure RTOS on STM32?
Azure RTOS is the only free embedded system operating system that offers many certifications including safety certifications (IEC 61508 SIL 4, ISO 26262 ASIL D, IEC 62304 Medical Class C) and EAL4+, FIPS 140-2. Therefore, users looking to enter the industrial, automotive or medical markets can take advantage of Microsoft products from the ST Partner Program to benefit from these standards and provide their customers with greater assurance. In addition, ST will work with Microsoft to ensure that Azure RTOS leverages key IP in STM32 MCUs, such as ST’s hardware encryption core. As a result, teams not only benefit from an RTOS that meets stringent security standards, but also enjoy hardware optimizations that allow them to more effectively protect their systems and users.
Plus, the transition from proof-of-concept to final product can be a daunting task. Therefore, to reduce time-to-market, all STM32 MCUs will receive a free Azure RTOS evaluation and production license. Developers will be able to modify the source code and publish it. In addition, ST will update or release new STM32Cube embedded software packages and tools to take advantage of the Azure RTOS middleware and stack.
What will Azure RTOS bring to STM32Cube?
At the core of Azure RTOS, ThreadX RTOS has powerful scheduling capabilities and other features. Microsoft explains how RTOSs traditionally allow any thread with a higher priority to preempt, i.e. take over a currently running thread with a lower priority. ThreadX provides more granularity, allowing developers to greatly optimize performance by setting thresholds to prevent preemption and reduce context switches. Similarly, it also provides event chaining, which supports specific actions when an event occurs. Thus, threads waiting for events can be started automatically, facilitating development and reducing required resources.
Offering Azure RTOS as one of the STM32Cube middleware means that users will more easily benefit from Azure RTOS, while still enjoying the best of what the ST development platform has to offer. For example, Azure RTOS also ships with FileX, a file system that provides advanced features such as fault tolerance or wear leveling on NAND and NOR flash. NetX and NetX Duo are networking stacks that provide TCP/IP, IPv4, and IPv6, as well as many of the higher-level protocols used in IoT, such as MQTT or COAP. There is also a USBX, which is convenient to use the USB interface as a host or device.
Which ones haven’t changed?
Because ST’s TouchGFX framework makes the embedded GUI more accessible, ST will not use the GUIX component of Azure RTOS. Likewise, ST will continue to support, use and develop the new STM32CubeMonitor instead of Microsoft’s TraceX. As such, this collaboration is very beneficial to engineers and industry leaders who can gain more features without losing the tools and environments they rely on.
Extended Reading – Azure RTOS: Favored by semiconductor Manufacturers
Azure RTOS (formerly ThreadX RTOS) is one of the most widely deployed RTOSs for MCU-based devices in the world, with many semiconductor companies working with it.
Renesas’ extensive secure embedded design experience will be combined with easy and seamless out-of-the-box support for Microsoft Azure RTOS across the Renesas microcontroller (MCU) and microprocessor (MPU) portfolio. Renesas Electronics Corporation reports that it is able to simplify the device-to-cloud experience for IoT developers. This collaboration will help deliver complete chip-to-cloud IoT based on Renesas smart and security devices and Microsoft Azure IoT building blocks including Azure RTOS, Azure IoT Device SDK for C, IoT Plug and Play, IoT (IoT) Solutions Center and IoT Center.
It is currently integrated with the Renesas Synergy Software Package (SSP). This new work extends Azure RTOS to the wider Renesas MCU (RA and RX) and MPU (RZ/A) product lines, starting with off-the-shelf integrations to the new Renesas RA Flexible Software Package (FSP).
NXP Semiconductors has partnered with Microsoft to bring Microsoft’s Azure real-time operating system (RTOS) to the broader EdgeVerse processing solution. This collaboration will allow NXP’s developer community to access Azure RTOS capabilities using MCUXpresso tools and software.
Azure RTOS support is currently available for 32-bit LPC and i on many NXPs. The MX RT crossover microcontrollers (MCUs), but according to a released statement that expands the availability of the MCUXpresso software development kit (SDK).
NXP has previously used FreeRTOS in both RTOS and kernel, introducing several different open source applications and partnerships for middleware. But with Azure RTOS, users have a fully integrated middleware, tools for file management, graphical user interface, security, networking and wired connectivity.
Arguably, the Azure RTOS integration will help simplify the development cycle, helping teams select the right processors, deploy secure intelligent edge devices, build local area networks and connect to the cloud – all of which will provide Industrial Internet of Things (IoT) products Faster time to market.