Skip to main content
Explorer II
October 12, 2023
Question

STM32H7 DFU jump to application doesn't work

  • October 12, 2023
  • 3 replies
  • 2066 views

Controller: STM32H743ZIT6
Custom Board
STM32CubeProgrammer, STM32CubeIDE

Hi, since a few months we have an issue with flashing our Microcontroller application.
We are using automatic firmware flashing over DFU-Util on a Linux based system, which is connected over USB to our STM32H7 custom board. We use the ST propritary Bootloader over USB DFU which is preinstalled.
After installing the firmware the device should jump into application with the following command:

$dfu-util -a 0 -s 0x08000000:leave <location-to-binary>.bin

That doesn't work.

What we have tried:

  • Uncomment USER_VECT_TAB_ADDRESS in system_stm32h7xx.c
  • Check location of flash code in linker script, that is 0x08000000
  • Reproduce it with STM32CubeProgrammer, same issue (log added)
  • An older revision of our board with a STM32F4 doesn't have this problem
  • Checked BOOT pins, BOOT0 should be set to Ground, not sure if these matters

Workaround:
After flashing the controller we make a hard reset, the application starts as usual.

Possible solution:
The error no longer exists with the latest Boards we produced. To examine the difference between old an new boards, we reviewed additional boards and noticed that older ones have bootloaderversion V9.0 installed and new ones V9.1

Question:
Is it possible that any sideeffect of the fixes in V9.1 fixes our problem or is the AN2606 not up to date?

    This topic has been closed for replies.

    3 replies

    Technical Moderator
    October 17, 2023
    PStoc.3Author
    Explorer II
    October 18, 2023

    Hello @Imen.D ,
    thanks for your reply. This two topics I haven't seen before and they are a good hint.
    But I think the topics doesn't fit as good, because the most DFU-commands works reproducibly and stably. Only the DFU-leave command doesn't jump to application.

    Visitor II
    November 28, 2023

    Hi,

    have you found a solution?
    I have the same issue.
    I'm using a STM32H723 controller and the dfu leave doesn't seam to work.
    The dfu bootloader is exited, but the applicaiton is not started.

     

    Visitor II
    November 28, 2023

    Hi.

    sry: uncommenting USER_VECT_TAB_ADDRESS fixed my issue

    #define USER_VECT_TAB_ADDRESS

     fixed my issue.