Skip to main content

// application note

AN0001 Programming STM32 microcontrollers over I3C with the Binho Supernova

STM32H5 series microcontrollers include an I3C interface in the system bootloader programmed into ROM, allowing internal flash memory to be erased, programmed and verified over a two-wire I3C bus with no debug probe attached. This application note describes that interface, the connections required between a Binho Supernova USB host adapter and the target, and the procedure for programming a device. A complete reference utility written in Python accompanies the document. Measured results are given for an STM32H503 on a NUCLEO-H503RB board.

Products
Binho Supernova
Protocols
I3C
Topics
STM32 Bootloader Flashing
Revision
Rev 1.0 · August 29, 2026

// outcomes

What you'll walk away with

This document describes:

  • the structure of the I3C system bootloader protocol, including the mechanism used to report command status
  • the connections required between a Binho Supernova and an STM32 target
  • the procedure for identifying, erasing, programming and verifying a device
  • a reference host utility, supplied with this document, that implements the procedure

Programming through the Open Bootloader application, in-application programming, and secure firmware update mechanisms are outside the scope of this document.

// background

Background

The system bootloader programmed into the ROM of every STM32 microcontroller provides a means of programming internal flash memory over a serial interface, without a debug probe and without any user code present on the device. The interfaces offered by the bootloader vary by device and are listed per part number in AN2606.

On STM32H5 series devices the list includes I3C. This is useful in two situations. In the first, an I3C bus is already routed on the board to reach sensors or other peripherals, and the same two wires can carry a firmware update, removing the need for a dedicated programming header. In the second, several targets share one bus and are addressed individually through dynamic address assignment, without strapping resistors or fixture reconfiguration between boards.

// applicable devices

Applicable devices

The bootloader interfaces available on a device are device-specific. An I3C peripheral does not imply an I3C bootloader. Table 1 lists the STM32 families whose bootloader is documented to offer I3C, with the device identifier returned by the Get ID command.

Family Example parts Device ID Basis
STM32H5 STM32H503 0x474 Verified on hardware for this document
STM32H5 STM32H523, STM32H533 0x478 RM0481
STM32H5 STM32H562, STM32H563, STM32H573 0x484 STMicroelectronics Open Bootloader configuration
STM32H7R, STM32H7S STM32H7S78 0x485 STMicroelectronics Open Bootloader configuration
STM32U3 STM32U385 0x454 STMicroelectronics Open Bootloader configuration

STM32N6 series devices include an I3C peripheral, but the STMicroelectronics Open Bootloader distribution does not provide an I3C interface for that family.

Important: Only the STM32H503 was exercised on hardware during preparation of this document. The remaining entries in Table 1 are recognized by the reference utility but have not been tested. AN2606 is the authoritative source for the bootloader interfaces available on a given part number and must be consulted before this method is designed into a product.

// what's covered

What's covered in the note

  1. 01 Introduction
  2. 02 System overview
  3. 03 Hardware setup
  4. 04 Software setup
  5. 05 Bootloader protocol
  6. 06 Programming procedure
  7. 07 Confirming the update on the target
  8. 08 Reference utility
  9. 09 Measured results
  10. 10 Troubleshooting

The full procedure, measured results, and reference code are in the PDF and the assets archive.

// materials

What you'll need

Binho Supernova Binho Supernova USB host adapter for I3C, I2C, SPI & UART View product
Software Mission Control 3 or the Cosmic SDK (Python, C / C++ / C#). Get the software
Files The reference scripts and assets used in this note. Download the assets

// our edge

We don't just follow the I3C spec.

We don't watch from the sidelines. Plugfest after plugfest, our team is in the room where vendor I3C implementations come together — finding edge cases, debugging quirks, and validating real silicon against the spec.

Binho at the MIPI I3C Plugfest in Taipei, 2024
MIPI I3C Plugfest · Taipei, 2024
Martin from Binho at the MIPI I3C Plugfest in Warsaw, 2025
Martin · MIPI I3C Plugfest · Warsaw, 2025

// track record

We've been doing this for years.

Long enough to know where the gotchas live.

MIPI Alliance

// 01 · standards

We help write the spec.

Binho is a MIPI Alliance Contributor Member, actively shaping I3C — a foundational protocol for cutting-edge embedded systems.

200+

// 02 · tools

We build the tools.

200+ semiconductor companies use Binho tools to develop, validate, and ship devices with I3C protocol support.

5

// 03 · plugfests

We prove it in the field.

We've verified our tools at the past 5 MIPI I3C Plugfests — and helped others verify theirs too.

// trusted by engineering teams at

+ hundreds more

// newsletter

Get new application notes

New notes, firmware releases, and tool updates from Binho. No spam, unsubscribe anytime.

Put it on the bench

Every step in AN0001 was run on the Binho Supernova. Get the hardware to reproduce it, or talk to our engineers about your I3C bring-up.