wolfBoot support for the STM32C0 in 2024
We have added wolfBoot support for the new STM32C0. This is a low cost MCU similar to the STM32G0 based on a Cortex-M0 (48MHz). It is a very low cost general purpose 32-bit MCU with up to 32KB flash and 12KB RAM.
Our wolfBoot secure bootloader is the only solution available for this platform thanks to our small code size. Most STM32 parts are supported with wolfBoot out of the box.
The default STM32C0 configuration uses RSA 2048-bit and SHA2-256 and is less than 10KB. This leaves 10KB for the application partition, 10KB for the update partition and one 2KB sector for swap.
STM32C0 documentation and build steps can be found here.
See our video series with ST for a tutorial on using wolfBoot.
wolfBoot Features:
Written in C for bare-metal use Small footprint to run on small embedded devices Memory safety (no malloc/free) Support for on-board or external SPI flash Simple partitioning and header scheme Abstracted HAL design for CPU speed and flash Bootloader handles swapping and loading of partitions Key tools for key generation/import and signing Encrypted updates Delta updates (only differences)Signature algorithms supported:
ECC (SECP256R1,SECP384R1) RSA (2048/3072/4096) ED25519 ED448 Post Quantum LMS and XMSSFirmware image integrity using hash digest:
SHA2-256 SHA2-384 SHA3-384Flexible partition scheme determined at build-time:
Bootloader (10-30KB) Application Update Swap (1 sector) And custom partition ID’sReliable Firmware update mechanism:
Independent from the update transport mechanism Fallback to a previous version when the update fails Resume interrupted swap operations during update, in case of power failureSupport for STM hardware crypto acceleration:
STM32 HASH/AES/PKA ST33TP* TPM 2.0 using wolfTPM STSAFEIf interested in trying our wolfBoot on the STM32C0 or curious about post-quantum signature support in wolfBoot please contact facts@wolfSSL.com or call us at +1 425 245 8247.
Download wolfSSL Now