Theia Adopter Story: STMicroelectronics STM32CubeMX2 - Microcontroller Configuration and Code Generation

Table of Contents

STM32CubeMX is the standard configuration tool for STMicroelectronics’ STM32 family, one of the most widely used microcontroller platforms in the world. It is a common starting point for many STM32 projects: a graphical tool that guides developers through selecting a microcontroller, assigning pins, configuring clocks and peripherals, and generating C initialization code. With STM32CubeMX2, STMicroelectronics has rebuilt this experience from the ground up on Eclipse Theia. In this article, we take a closer look at STM32CubeMX2 and how it leverages the Theia ecosystem.

About STM32CubeMX2

STM32CubeMX2, launched in March 2026 alongside the new STM32C5 series, is the next generation of STMicroelectronics’ microcontroller configuration and code generation tool. It builds on the proven CubeMX workflows while introducing a redesigned user experience and a set of new capabilities: a live code preview that reflects configuration changes in real time, a built-in diff view that shows how each change affects generated code, an improved clock tree with path highlighting and a complementary table view, an enhanced pinout experience, a pack management system for automatic dependency handling, and a more capable command-line interface for workflow automation. CubeMX2 generates code based on HAL2, STMicroelectronics’ new optimized hardware abstraction layer, and supports multiple project output formats including CMake, ewp for IAR Embedded Workbench, and csolution for Keil Studio. Rather than an incremental update, CubeMX2 is a clean-sheet rebuild: a new tool with a new technology foundation, a new UI, and a new software layer underneath. Because of this, the two tools will coexist. STM32CubeMX continues to serve the existing STM32 series, while STM32CubeMX2 supports new series starting with STM32C5.

STM32CubeMX2 file generation

STM32CubeMX2 file generation

From Java and Eclipse RCP to Modern Web

The STM32Cube tool ecosystem has deep roots in Java and Eclipse technologies. The original STM32CubeMX is a Java/JavaFX standalone application, while its companion IDE, STM32CubeIDE, is built on Eclipse RCP, one of many tools in the embedded industry that rely on the Eclipse platform. Both are actively maintained and widely used. However, when STMicroelectronics set out to build the next generation of their configuration tool, they chose to start on a modern web technology foundation, one that could support a fundamentally redesigned user experience and a more flexible architecture going forward. Eclipse Theia, the latest generation Eclipse platform for tools, is providing that foundation.

This reflects a broader industry shift. Developer tools across the spectrum are increasingly built on web technology stacks, from VS Code and the Arduino IDE to specialized tools like Samsung’s Sokatoa GPU profiler, leveraging the flexibility, rich UI capabilities, and cross-platform reach that web technologies provide. Importantly, platforms like Theia are not niche frameworks, they build on standard web technologies such as TypeScript, Node.js, and browser-based rendering. This extends to the UI layer, so custom views and editors can be implemented using mainstream web UI frameworks like React, giving tool builders access to the same rich component ecosystems and developer talent pools they would have in any modern web project.

As a platform, Theia offers a mature application shell and the depth of customization required to build a tool radically different from a standard code editor. STM32CubeMX2 is a graphical configuration tool for hardware: developers select microcontrollers, drag pins on chip diagrams, configure clock trees, set up peripherals, and generate initialization code. The user experience is entirely domain-specific and workflows combine multiple seamlessly integrated views and UI elements. This is exactly the kind of tool Theia was designed to enable. It requires no forking and no workarounds, just regular API usage of the platform. In this discipline, Theia enables a much deeper customization than other foundations in the web. And because of its web nature, it is much easier to customize and integrate different technologies compared to an Eclipse RCP Java/SWT technology stack.

Theia also provides longer-term architectural flexibility. STMicroelectronics has chosen to deliver STM32CubeMX2 as a desktop application, which is a common adoption path. At the same time, Theia’s support for desktop and browser-based runtimes from a shared codebase means the application is built on foundations that can accommodate different deployment models if needed.

STM32CubeMX2 pinout configuration

STM32CubeMX2 pinout configuration

Deep Customization, Open Ecosystem, Full Stack Control

The most notable aspect of STM32CubeMX2 is its clean user experience. What the user sees is a purpose-built tool with views for pinout configuration, clock tree visualization, peripheral setup, middleware management, code preview, and pack management, rather than an extension in an IDE with lots of UX compromises. The clear purpose is to efficiently support developers in setting up hardware projects.

Theia makes this possible by design. Unlike VS Code, where extensions operate within the boundaries of a fixed host application, or Eclipse RCP 3.x, where deep UI customization may mean fighting the platform’s assumptions, Theia’s build-time extension model lets adopters compose exactly the application they need. The CubeMX2 team assembled the platform capabilities that served their use case, the widget infrastructure, panel management, layout persistence, theming, key bindings, and built their entire domain-specific experience on top, using Theia’s dependency injection system to wire their own services cleanly into the platform.

The result is a focused, distraction-free tool where every element exists because it serves the intended use case of hardware configuration. In Theia, this requires no forking and no workarounds: you can use the regular API of a platform that was designed for this level of adaptation.

Because Theia builds on standard web technologies, the team also had full freedom of choice for each part of the UI. The clock tree editor, for example, is built with Eclipse GLSP, the Graphical Language Server Platform, giving it structured diagram editing with path highlighting and a complementary table view.

STM32CubeMX2 clock configuration

STM32CubeMX2 clock configuration

Other views use different web UI frameworks such as React, suited to their specific needs. This mix-and-match approach is one of the key advantages of building on an open web technology stack: there is no single UI framework like SWT or a specific toolkit that every view defaults to. As an example, the code preview uses the Monaco editor, the same as used in VS Code. Theia provides a ready-to-use integration for this.

All of these views are still encapsulated in native Theia widgets. Unlike webviews, which are isolated and require explicit message passing to communicate, native widgets can directly integrate with the surrounding application by accessing shared services. This makes it straightforward to implement STM32CubeMX2’s real-time feedback loop: a peripheral change instantly updates the code preview, a pin assignment cascades into clock tree changes, and updates propagate across views. At the same time, this tighter integration simplifies the overall architecture and makes it easier to maintain a consistent design across the application, since all views follow the same patterns and can directly reuse existing components and styling.

STM32CubeMX2 peripherals configuration

STM32CubeMX2 peripherals configuration

Building on Theia also gives adopters control over the full application stack in ways that go well beyond the UI. A telling example is the available command-line interface. With Theia running on Node.js, a proper headless CLI becomes architecturally straightforward. STM32CubeMX2 can be invoked from the command line for configuration, code generation, and project setup without any graphical environment, enabling clean integration into CI/CD pipelines, scripted workflows, and automation toolchains that embedded teams increasingly rely on.

STM32CubeMX2 software components configuration

STM32CubeMX2 software components

VS Code Extension Compatibility: Sharing an Ecosystem, Not a Platform

STMicroelectronics’ tooling strategy for STM32 is deliberately modular: STM32CubeMX2 handles hardware configuration and code generation, while a separate STM32CubeIDE for VS Code extension covers the coding and debugging experience. This means developers are free to use whatever editor supports VS Code extensions, whether VS Code itself, Cursor, VS Codium, Theia IDE, or others. In any tool, they get full STM32 support for the coding side of their workflow. It is a user-centric approach that avoids locking developers into a single tool for the entire development lifecycle.

Theia’s compatibility with VS Code extensions plays a key role on both sides of this strategy. Within STM32CubeMX2 itself, it means the tool can draw on the existing ecosystem of VS Code extensions for capabilities that are not domain-specific. The C syntax highlighting in STM32CubeMX2’s live code preview, for example, comes from a standard VS Code extension rather than a custom implementation. This is another case where Theia lets adopters integrate standards-based components instead of rebuilding them. Behind the scenes, VS Code extension compatibility also allows STMicroelectronics to share common functionality between their standalone VS Code extension and CubeMX2 in extension form, reducing duplication across their product line. And while STM32CubeMX2 is currently focused purely on the configuration use case, the architecture would even allow integrating coding capabilities directly into the tool in the future, an option that remains open precisely because Theia and VS Code extensions speak the same language.

Not Just an Adopter: A Strategic Contributor

What sets STMicroelectronics apart from many platform adopters is the depth of their engagement with the ecosystem. STMicroelectronics does not just build on Theia, they actively shape the platform and its surrounding projects. As a member of the Eclipse Cloud DevTools Working Group, they participate in steering the direction of Theia and related technologies such as Eclipse GLSP, ensuring that the platform continues to meet the needs of adopters building production tools at scale.

This engagement is reflected in a sustained track record of contributions that benefit the entire community. For example, STMicroelectronics contributed the first distributed version of the Theia IDE product (then known as Theia Blueprint), along with its documentation and download infrastructure. They significantly improved the documentation of both Eclipse Theia and Eclipse GLSP. They initiated support for TypeScript-based GLSP server implementations, now one of the most popular sub-components of the GLSP framework. They drove the implementation of detachable views in Theia even before this was available in VS Code, a feature long standard on the desktop but previously missing in web-based tools. They initiated the Theia Community Release, a quarterly release cadence that better serves adopters who integrate Theia into their own product release cycles.

These contributions have been recognized with multiple Eclipse Cloud DevTools Contributor Awards, reflecting STMicroelectronics’ willingness to act as a first-class citizen in the Eclipse Cloud DevTools Working Group and the broader open source community, as well as the impact their work has had across the ecosystem. For STMicroelectronics, investing in the platform is not separate from building STM32CubeMX2; it is part of the same strategy. By helping to shape Theia, they ensure it remains the right foundation for their tools, not just today, but as STM32CubeMX2 and the HAL2 ecosystem evolve.

What This Means for the Theia Ecosystem

STM32CubeMX2 is part of a growing set of Theia adopters, from GPU profiling (Samsung Sokatoa) to embedded development environments (Arduino IDE 2.0, TI Code Composer Studio) to industrial automation (logi.CLOUD) and even education (EduIDE): the range of what has been built on Theia continues to expand.

With STM32CubeMX2, STMicroelectronics shipped a production tool that allows embedded developers to benefit from a modern and well-tailored UX as well as long-term stability. That is what Theia was built for. STMicroelectronics’ choice to build STM32CubeMX2 on Theia also carries weight for the ecosystem. It demonstrates that one of the world’s largest semiconductor companies trusts the platform to underpin a tool that is central to their developer engagement strategy, used by the engineers who design the products that end up in cars, medical devices, industrial equipment, and consumer electronics worldwide.

“One of the strongest reasons for selecting the Eclipse Theia Framework was its ability to combine a familiar, easy-to-use developer experience with a highly flexible and open architecture. For the STM32CubeMX2 integration, Theia gave us a solid foundation that made the integration steps smoother while still allowing us to adapt the environment to our specific needs.”

Niklas Dahlquist, Software Principal Engineer at STMicroelectronics

We hope you enjoyed this adopter story, and we look forward to reading yours.