The STM32C091, STM32C092, and STM32C051 are ushering in a new era for the STM32C0 series by broadening its appeal to markets that probably didn’t think they could use such a cost-effective solution. By offering as much memory as what is available on some STM32G0 and by also providing FDCAN support, the STM32C09x can target industrial appliances that require more memory and even a simple UI. Similarly, the STM32C051 vastly increases its memory capacity from the STM32C031 to offer a new price-per-performance ratio that will ensure even more teams adopt a 32-bit architecture to future proof their application. Put simply, ST begins 2025 by making modern IoT systems more accessible.
Table of Contents
What’s new?
STM32C091 and STM32C092
The STM32C091 and STM32C092 are nearly identical, except that the latter has an FDCAN controller, whereas the former has none. The distinction is highly symbolic because it addresses the many industrial applications that are moving to 32-bit applications while benefiting from a cost-effective MCU with higher memory. Indeed, both STM32C09x come with up to 256 KB of Flash, two I2C and two SPI buses, four USARTs interfaces, and one 12-bit ADC with up to 19 channels. The STM32C09x also has more general-purpose timers than the other models to enable more complex applications. Moreover, the new devices have a DMA controller with two more channels (7 total) due to the additional memory.
Interestingly, the presence of the FDCAN controller means that the STM32C092 has 30 KB of RAM, while the STM32C091 has 36 KB. The difference is due to the fact that we need to reserve 6 KB of RAM for the FDCAN IP. However, if an industrial application requires FDCAN for robotics applications, factory automation, or to target other markets like medical equipment, the RAM tradeoff is never a problem since it means being able to use an interface that’s rare at this price point. The STM32C092 also has 6 KB of RAM more than the STM32C071, thus still ensuring developers get more headroom for their application.
As we saw with the STM32C071 (more on that later), the memory capabilities of the STM32C091 and STM32C092 also allow them to run small graphical user interfaces. ST is thus continuing to broaden the reach of its entry-level series by ensuring that it can run more applications and fit more use cases. As users keep demanding displays and visual representations of the features they interact with, being able to run a simple UI on a cost-effective MCU means that engineers don’t have to use an additional co-processor, make the PCB layout more complex, and can enjoy a lower bill of materials.
STM32C051
The STM32C051 doubles the memory of the STM32C031, thus bringing the flash to 64 KB and the RAM to 12 KB. However, it does all this while keeping the same die size, packages, and pin-outs, which makes it a “fun” device for engineers. Instead of spending weeks or months optimizing every single module, refactoring entire chunks of code, and agonizing over every data type, the STM32C051 gives new breathing room to developers to ship their applications early and reduce their memory footprint later. In the age of rapid prototyping and soft launches, this flexibility is a necessity. That’s why we are releasing this new part number: so more developers can easily move to the 32-bit world.
An age-old challenge: creating entry-level applications
The STM32C0
The STM32C0 is a new microcontroller for entry-level applications with a price that can fit bills of materials that previously required inexpensive 8-bit MCUs. Hence, the device increases the accessibility of the STM32 family of devices while offering significant computational throughput thanks to a Cortex-M0+ running at 48 MHz and scoring 114 points in CoreMark. Depending on the configuration, the STM32C0 series will also oscillate between 16 KB of Flash and 6 KB of RAM to 128 KB of Flash and 24 KB of RAM. ST also provides a wide range of packages to ensure PCBs that rely on a small 8-bit microcontroller retain their form factor.
The entry-level challenge
8-bit microcontrollers continue to play an exciting role in the industry, and ST remains dedicated to its STM8 series. Some companies need the EEPROM available in our 8-bit MCUs, while others depend on the AEC-Q10x automotive qualification of some of our devices. However, in many instances, designers choose an 8-bit MCU only because of pricing concerns. Their applications work well enough with 8-bit registers, meaning their primary focus is the bill of materials. The problem is that choosing an 8-bit architecture can have costly long-term consequences.

One of the challenges when working on an entry-level application is the limited upgradability. While prioritizing a low BoM, many successful projects often need more memory, computational throughput, pins, etc. However, 8-bit architectures have stricter restrictions and thus provide far fewer upgrade possibilities. The inherent limitations on 8-bit MCUs may also mean that a company has to qualify multiple devices instead of having one component that can fit numerous applications. Finally, as the industry inevitably marches toward 32-bit systems, using an 8-bit device may prevent developers from using software stacks or existing codes that would vastly shorten their time to market.
STM32C071
More memory, same small package
The STM32C071 is now commercially available to the public and represents the first massive memory upgrade as it quadruples the memory configuration of the STM32C031 thanks to 128 KB of flash and 24 KB of RAM. Put simply, products that had to adopt significantly more expensive devices because of memory constraints can now exist in entry-level markets, thus making them vastly more competitive. And because we anticipate many of these systems to use USB to deliver power, we added a crystal-less USB controller. Indeed, engineers can use the internal clock, thus alleviating the need for an external crystal, which increases the bill of materials and the complexity of the PCB layout.
Moreover, despite incorporating significantly more RAM and Flash, STM32C071s are still available in the same tiny TSSOP20 package (6.5 mm x 4.4 mm). This has led some ST customers to jump on the new device because it opens the door to vastly more complex applications in space-constrained USB peripherals for PCs. Previously, this amount of RAM and flash demanded larger silicon dies that didn’t fit into such a housing. However, thanks to ST’s lithographic expertise, the STM32C071 can provide substantially more memory while using the same package as a STM32C031.
GUIs for all
Another important capability heralded by the STM32C071 is the ability to drive UIs that previously required more expensive devices. Indeed, a basic bill of materials with a 2.4 TFT display without touch capabilities, an STM32C071, 4 MB of external flash, and a 2-layer PCB can hover at about US$ 5, thus opening a lot more systems to a GUI. In our rice cooker UI demo, which aims to mimic a real-world scenario, the TouchGFX code takes only 102 KB, while the partial frame buffer and UI framework need 20.8 KB of RAM. Assets need nearly 900 KB of external flash, but the presence of the SPI interface means that the STM32C071 has enough bandwidth to prevent bottlenecks.
In fact, the industry enthusiasm around this launch is best exemplified by the release of new development boards with integrated displays by Riverdi and TSD. As we already shared on the blog, Riverside is famous for its STM32 Embedded Displays, and the company already updated its portfolio with a new model featuring the STM32C071. Similarly, TSD released its “Knob”. The round display targets small embedded systems with consumer-facing interfaces. Both companies use a 240 x 240 IPS display.
Consequently, the STM32C071 is highly symbolic because it brings more functionalities and capabilities from the STM32G0 down to the STM32C0. Besides the USB controller, the additional SPI, and the I2C interface, we also get a 32-bit timer. After all, it’s been our strategy all along: make more features accessible to all systems. The STM32C071 is, therefore, a new roadmap enabler as it bridges the gap between entry-level MCUs and the STM32G0 that teams must use to provide the same feature-set to their customers. That’s why we also ensured pin-out compatibility between the STM32C071 and the STM32G0 and now offer a new 64-pin package for the new STM32C0.
A new solution: a 32-bit device as an alternative to an 8-bit MCU
How is ST helping developers transition to 32-bit?

ST understands that despite all the benefits of a 32-bit architecture, financial and physical constraints may force some teams to use an 8-bit alternative. That’s why the STM32C0 has packages and a price rivaling 8-bit MCUs. Put simply, it opens engineers to new markets by enabling them to transition without blowing up their BoM or existing designs. Given ST’s guarantee of reliability, our device’s ability to support operating temperatures of up to 125ºC, and many peripherals, the STM32C0 is the most affordable MCU today.
Furthermore, ST ensured that transitioning from an 8-bit architecture to a 32-bit one would be as efficient and straightforward as possible. For example, we published an application note with guidelines for moving from an STM8L or STM8S to an STM32C0. It delves into peripheral migration and even shows that moving to a 32-bit architecture often means an increase in code size of only 6% to 15% in most cases. ST also organized a webinar available on demand, and the STM32 development environment can greatly optimize operations. Tools like STM32CubeMX and STM32CubeIDE, debug software like STM32CubeProgrammer, or STM32Cube expansion packages optimize workflows and even help reuse code or modules.
How is the STM32C0 facilitating the transition?

The STM32C0 wasn’t only designed to encourage engineers to transition from 8-bit systems but to breed more capable entry-level applications. Consequently, we worked on improving the feature density. The STM32C0 thus has one of the smallest packages for a general-purpose MCU thanks to its 3 mm x 3 mm 20-pin QFN housing, which is only possible because the die is so tiny. ST also offers an 8-pin SO8N version or a particularly thin WLCSP12 package. Similarly, the STM32C0 has power consumption modes significantly lower than other 8-bit devices, which means it’s possible to create more efficient designs.
How is the STM32C0 a stepping stone to more powerful systems?

The most astute readers will have recognized that the new STM32C0 takes essential cues from the STM32G0, which uses the same Cortex core. Consequently, ST ensured developers could quickly move from the STM32C0 to the STM32G0. For instance, the new MCU has the same single Vdd and Vss power supply line found on the STM32G0, simplifying PCB designs and reducing costs. The STM32C0 also includes a highly accurate internal high-speed RC oscillator at 48 MHz. As a result, designers don’t need to add an external one, which lowers the overall BoM. The two devices also share a similar ADC and timers, and a consistent pinout configuration facilitates the move from one to the other.
How to get started with the STM32C0?
First Steps
The best way to experiment with the STM32C0 is to get one of the development boards. The NUCLEO-C092RC and NUCLEO-C051C8 will allow engineers to start a project with the latest members of the STM32C0 family. As the name implies, the NUCLEO-C092RC features the STM32C092, which supports FDCAN and even includes an FDCAN connector so developers can start their proof-of-concert with the interface right away. The MCU on the NUCLEO-C092RC also offers 256 KB of flash while the NUCLEO-C051C8 offers a 48-pin package and 64 KB of flash.
We are also thrilled to provide the NUCLEO-C071RB. Thanks to its 128 KB of flash and its 24 KB of RAM, it is possible to drive a small 320 x 240 display using an SPI interface, thus making it one of the most cost-effective ways to bring a graphical user interface to appliances and other white goods. In fact, ST is offering a rice cooker UI demo application that can run on the new Nucleo boards and the X-NUCLEO-GFX01M2 that many developers use when starting a project on TouchGFX.
The NUCLEO-C031C6 is a traditional Nucleo-64 system with an Arduino Uno V3 connector to allow users to stack expansion cards. The STM32C0316-DK uses the same STM32C031 device but in a bundle that comes with the STLINK-V3MINIE, the first STLINK probe to use a USB-C port. The board also features a DIP28 connector compatible with the ATMEGA328 8-bit microcontroller. Interestingly, the board can also welcome STM32G0 devices. It thus serves as a transition tool to migrate to 32-bit applications and more easily experiment with a more powerful MCU.
The STM32C0116-DK is a smaller platform that uses the STM32C011 in a DIL20 module so teams can remove and share the module from one board to the next. ST is, therefore, offering a new approach to prototyping to make workflows more practical by creating a portable and interchangeable solution.