cancel
Showing results for 
Search instead for 
Did you mean: 

STM32 UART/SPI bootload STM32G474 with raspberry pi CM5

Spam4tea
Associate

Hello - I have a product I am commercially developing for a company - an industrial sensor system - STYM32G474 x 8 - using them for their very fast ADC - all good so far. I am using a SPI bus to get all the data back to as Linux SBC (pi CM5 for now - might change next year - needs 2 cameras and NVME).

I would like to update all the STM32G474 over UART (for now) then over to SPI for production - using the raspberry pi cm5.

Is there an open source C++ / python program that can do this from ST? - something like the old "https://github.com/stm32duino/stm32flash" but supports the newer chips? perhaps OpenOCD would work but that is even more connectors etc.

5 REPLIES 5
Andrew Neil
Super User

@Spam4tea wrote:

Is there an open source C++ / python program that can do this from ST?


I don't know, but the protocols are documented:

AN3155, USART protocol used in the STM32 bootloader 

AN4286, SPI protocol used in the STM32 bootloader

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.
mƎALLEm
ST Employee

Hello,


@Spam4tea wrote:

Is there an open source C++ / python program that can do this from ST? 


To my knowledge there is no open source HOST bootloader made by ST.

As stated by @Andrew Neil you need to develop your own Host bootloader based on the ST bootloader specifications described in the provided application notes.

Yu can also inspire from other developers work:

https://github.com/glegrain/STM32-SPI-Bootloader-host

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

@mƎALLEm wrote:

Yu can also inspire from other developers work:

https://github.com/glegrain/STM32-SPI-Bootloader-host


@Spam4tea - and here's a USART one: https://github.com/stm32-hotspot/stm32-host-programmer-usart 

 

PS:

See also: STM32CubeProgrammer on Raspberry Pi (or other ARM-based Host).

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.

@Andrew Neil wrote:


@Spam4tea - and here's a USART one: https://github.com/stm32-hotspot/stm32-host-programmer-usart 


That one is indeed made by ST ;)

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.
Maxime_BELAVAL
ST Employee

Hello,
Thank you for your patience, we know this has been a long-awaited request!

We're happy to share that Raspberry Pi support for STM32CubeProgrammer will be available in June 2026 with version 2.23.

Please refer to this Developer News for more information: [Coming June 2026] Raspberry Pi support for STM32CubeProgrammer

We also encourage you to share your feedback with us by commenting on the Dev News, as it helps us prioritize future improvements and developments.

Thank you all,
Max