Skip to main content
trg
Visitor II
September 8, 2016
Question

CAN Bootloader on STM32F407 with multiple devices

  • September 8, 2016
  • 1 reply
  • 758 views
Posted on September 08, 2016 at 16:35

Hi e2e forum

I am using the built in bootloader on the STM32F407 MCU, using the CAN-bus with multiple devices connected. I realize only one device can be bootloaded at a time, so the devices not being updated are waiting for a message telling them to do so. When only one device is connected it updates fine, but as soon as a second device is connected it exits the bootloader when it receives the first bootloader command. Since the bootloader is located in the system memory, its difficult to debug the problem.

The device flashing is happening from a PC through a CAN-to-USB device. I haven't used a CAN analyser yet since it's not available at the moment, but i have used the CAN-to-USB to check that the waiting device does not send any CAN messages when the other device is bootloading.

The question is, does anyone know if it's possible to have multiple devices silently connected on the CAN-bus while using the bootloader, or does something in the built in bootloader prevent this?

Any input is greatly appreciated, thanks in advance.

Best Regards

-Torben

EDIT: I found the solution, it seems the ACK bit from the other devices mess with the bootloader, so the CAN-bus needs to be either in silent mode or disabled on the devices not being bootloaded.
    This topic has been closed for replies.

    1 reply

    slimen
    Visitor II
    September 20, 2016
    Posted on September 20, 2016 at 17:23

    Hi,

    Thanks for sharing the solution.

    Regards