Author: strongerHuang
WeChat Official Account: strongerHuang
The STM32 is recognized by many developers due to its powerful ecosystem. This article describes the various software tools in the STM32 ecosystem, including some technical details.1. Overview of STM32 EcosystemSTM32 provides a complete set of development tools and software packages needed for development. Below is an image to understand the STM32 ecosystem tools and software from a global perspective:

It is mainly divided into two categories:1. Software Tools: These include STM32CubeMX, CubeIDE, CubeProgrammer, and CubeMonitor on the left side.2. Embedded Software Packages: STM32CubeMCU Packages and extended software packages CubeExpansions.Features of the STM32Cube Ecosystem:
-
Free to use;
-
Consistent interfaces for easy portability
-
Customizable and extensible
-
Easy to use and understand
-
Reduces development time and costs
-
······
(Of course, these are my summarized features; there are actually many more, welcome to add.) Next, I will further describe the content of each tool and software package in detail.2. STM32CubeMXSTM32CubeMX was launched in 2014, but the early versions had more bugs and were less user-friendly compared to now. Additionally, users were accustomed to the standard peripheral libraries, so the initial launch of STM32CubeMX did not gain much traction.Therefore, to promote STM32CubeMX and encourage more users to adopt it, ST gradually stopped updating and maintaining various MCU standard peripheral libraries in 2014 and 2015, directing users towards HAL and LL libraries.

STM32CubeMX is a graphical software configuration tool that can generate STM32 initialization code projects using a graphical wizard.
Features of STM32CubeMX:
1. Intuitive selection of STM32 microcontrollers (MCU) and microprocessors (MPU).
2. Rich and user-friendly graphical interface:
– Automatically resolves configuration conflicts
– Dynamic verification of peripheral and middleware functionality modes with parameter constraints
– Dynamic validation of clock tree and configuration
– Power consumption prediction
3. Generates initialization code projects, including: EWARM, MDK-ARM, TrueSTUDIO, SW4STM32, etc.
4. Generates Linux device trees for some MPUs.
5. Can run independently on Windows, Linux, and macOS, or be used as an Eclipse plugin.
For more introductions, you can refer to my article:STM32CubeMX Series Tutorial 01: Introduction to STM32Cube Products You can also refer to the latest introduction on the official website:www.st.com/stm32cubemx Of course, for the usage tutorial of STM32CubeMX, you can refer to my column:STM32CubeMX Series Tutorial3. STM32CubeIDESTM32CubeIDE was launched around April 2019, but its development history is quite long. The development of STM32CubeIDE dates back to the early Atollic TrueSTUDIO, which was a set of IDE tools for embedded development (similar to Keil, IAR). In December 2017, ST acquired Atollic, and TrueSTUDIO for STM32 was born. By April 2019, ST officially released STM32CubeIDE, which can be simply described as an “upgraded version” of TrueSTUDIO for STM32, although the changes were quite significant. Here, I recommend referring to an article I previously shared:Simple Steps to Migrate from TrueSTUDIO to STM32CubeIDE Below is a diagram to understand the development history of STM32CubeIDE:

STM32CubeIDE is a multifunctional integrated development tool (IDE) that integrates TrueSTUDIO and STM32CubeMX. It is part of the STM32Cube software ecosystem. It is an advanced C/C++ development platform with IP configuration, code generation, compilation, and debugging functions for STM32 microcontrollers. Official address:https://www.stmicroelectronics.com.cn/en/development-tools/stm32cubeide.html For more information, refer to my previously shared article:Introduction to STM32CubeIDE: Installation, Configuration, and Online Debugging4. STM32CubeProgrammerSTM32CubeProgrammer also has a long history. The early ST chip programming tool was STVP (ST Visual Programmer), which engineers familiar with pre-2010 may know, but it was gradually replaced by ST-LINK Utility. ST-LINK Utility is still used by many engineers today, but the official has replaced it with STM32CubeProgrammer and has stopped updating ST-LINK Utility. For more information, refer to an article I previously shared:Do You Know These Tools: STVD, STVP, ST-LINK Utility?
STM32CubeProgrammer has many similarities with ST-LINK Utility, but has introduced new features such as secure programming. For more information, refer to the article:Some Points About STM32CubeProgrammer5. STM32CubeMonitorSTM32CubeMonitor is a new tool launched by ST in 2020, designed to help debug and diagnose STM32 applications by reading and displaying variables in real-time.
STM32CubeMonitor also has a development history; its predecessor was STM Studio. Its main function is monitoring, such as monitoring variables:
Main Features:
• Graphical flow-based editor, no programming required to build dashboards
• Connects to any STM32 device via ST-LINK (SWD, JTAG protocols)
• Reads and writes variables in RAM in real-time while the target application is running, parsing debug information from the application executable file
• Direct mode or snapshot mode
• Focus on application behavior of interest
• Allows data logging to files and replay for detailed analysis
• Provides customizable visualization multi-probe support to monitor multiple targets simultaneously through configurable display windows (such as curves and boxes) and a variety of widgets (such as gauges, bar graphs, and charts)
• Remote monitoring, native support for multi-format display (PC, tablet, mobile)
• Direct support for Node-RED open community
• Supported operating systems: Windows, Linux Ubuntu, and macOS
(The above is translated from Youdao Dictionary and may contain errors)
For detailed information, refer to the article:Introduction to STM32CubeMonitor: Download, Installation, and Usage Tutorial
Official website:
www.st.com/stm32cubemonitor
CubeMonitor Extensions:
With the help of the Node-RED open community, STM32CubeMonitor can provide rich extension capabilities, refer to:
https://wiki.st.com/stm32mcu/wiki/STM32CubeMonitor_tool_suite_overview

1. STM32CubeMonitor-RF
Website:
www.st.com/stm32cubemonrf
STM32CubeMonRF is the abbreviation for STM32CubeMonitor-RF, a tool used for monitoring wireless devices, currently mainly used for monitoring the transmission/reception performance of STM32WB with Bluetooth (BLE) and 802.15.4 devices.
2. STM32CubeMonitor-Power
Website:
www.st.com/stm32cubemonpwr
STM32CubeMonPwr is the abbreviation for STM32CubeMonitor-Power, a tool that enables developers to quickly analyze the low-power performance of target boards.
3. STM32CubeMonitor-UCPD
Website:
www.st.com/stm32cubemonucpd
STM32CubeMonUCPD is the abbreviation for STM32CubeMonitor-UCPD, a tool for monitoring and configuring USB Type-C and Power Delivery applications.
6. STM32CubeMCU PackagesThe STM32Cube ecosystem has a wide variety of embedded software packages, but the classification is quite clear. Below is an image showing the application structure of embedded software packages:

MCU Packages refer to MCU software packages, which are the most commonly used and familiar software packages:

In the STM32CubeMX software package manager, you can view and manage (delete, add) the packages:

MCU software packages can also be divided into two categories:
-
Low-level drivers HAL and LL
-
Middleware
Among them, middleware includes both ST’s own and third-party options, with a wide variety, such as: FreeRTOS, FatFS, LwIP, Open Bootloader, Bluetooth 5 stack, Zigbee 3 stack, USB Host & Device stacks, etc.
Below is an image to comprehensively understand MCU software packages:

Support status of each package:

7. STM32ExpansionThe STM32 expansion packages are also part of the STM32Cube ecosystem. The STM32 expansion packages include those from ST as well as support for third-party expansion packages. For example:X-CUBE-AI, X-CUBE-BLE1, X-CUBE-NFC4, etc. Below is a classification:




Similarly, you can view and manage (delete, add) the STM32CubeMX software package manager:

8. ConclusionThis article summarizes all the software tools currently available in the STM32Cube ecosystem (as of October 2020) and describes related details. The details of the software tools in the STM32Cube ecosystem are quite extensive, and not all need to be mastered. Beginners can start learning from STM32CubeMX and MCU software packages (HAL), and then gradually expand their knowledge. Finally, everyone can reply in the background with “STM32Cube Ecosystem” to see more related content. Follow WeChat Official Account ‘strongerHuang’, reply with “1024” in the background to see more content, or reply “Join Group” to join the technical exchange group according to the rules.

Long press to go to the WeChat official account included in the image to follow
You can add WeChat 17775982065 as a friend, indicating: company + name, to be added to the RT-Thread official WeChat exchange group!
RT-Thread
Making the development of IoT terminals simple and fast, maximizing the value of chips. Apache2.0 license, free to use in commercial products without the need to disclose source code, no potential commercial risks.
Long press the QR code to follow us
Click to read the original text to enter the RT-Thread official development board display page
Every “look” you click, I take it seriously as a like