cancel
Showing results for 
Search instead for 
Did you mean: 

Is it possible to do a firmware upgrade via FD-CAN with multiple STM32H7 microcontrollers in the bus?

bop0815
Associate

The system looks like this:

-one master controller STM32H7 which holds firmware of slaves

-multiple (~8) "slave" STM32H7 on the same FD-CAN bus

The slave controller firmware should be upgrades via FD-CAN ST bootloader (see AN5405)

AN5405 says "The CAN bootloader firmware supports only one node at a time. This means that it does not support CAN Network Management."

Does it mean multiple nodes/slaves are supported, but must be selected(?) by the master,

or firmware upgrade is only possible with a single node/slave in the bus?

1 ACCEPTED SOLUTION

Accepted Solutions
Javier1
Principal
5 REPLIES 5
Uwe Bonnes
Principal III

The built-in CAN Bootloader can not work on a CAN bus with multiple devices. But you can write your own bootloader.

The ROM based loaders tend to focus on production programming where the access may be limited to a single interface. Most complex/commercial products tend to have to implement a loader that's tailored to all the hardware on the board, and that which may be present or inter-operate together.

You, or one of the software engineers should be able to code an upgrade/uploading mechanism that is suited to your topology. I'd generally recommend partitioning the memory space to contain a loader and application, with the loader capable of functioning sufficient in the proposed deployment to receive and apply an update to the application.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Javier1
Principal

I had your same issue, i had to build my own bootloader

https://community.st.com/s/question/0D53W00000apgoISAQ/is-the-stm-system-bootloader-trough-canbus-just-not-woking-when-more-than-one-device-shares-the-bus

we dont need to firmware by ourselves, lets talk
bop0815
Associate

Hello Uwe, Tesla DeLorian and Javier,

thank you all for you help!

OK I see thats not possible with the ST ROM Bootloader and

we have to implement our own for that purpose.

ST Microelectronics should state this limitations more clearly in their application notes.

yes they should

we dont need to firmware by ourselves, lets talk