cancel
Showing results for 
Search instead for 
Did you mean: 

STM32H747I-DISCO USB DFU Mode

HassaanSaleem-101
Associate II

Hey everyone, I'm working with the STM32H747I-DISCO board and trying to get it into USB DFU mode to flash firmware using STM32CubeProgrammer. However, the board isn't being detected, and I couldn’t find clear instructions in the documentation about how to properly enter DFU mode. If anyone has managed to get this working or knows the correct steps, I'd really appreciate your guidance. Thanks in advance!

15 REPLIES 15

Hello,

The AN2606 is a reference for all STM32 bootloader. Other application notes are specific (AN2606 page 26):

– AN3154: CAN protocol used in the STM32 bootloader
– AN3155: USART protocol used in the STM32 bootloader
AN3156: USB DFU protocol used in the STM32 bootloader
– AN4221: I2C protocol used in the STM32 bootloader
– AN4286: SPI protocol used in the STM32 bootloader
– AN5405: FDCAN protocol used in the STM32 bootloader
– AN5927: I3C protocol used in the STM32 bootloader

The hardware to be used is described in the AN2606 and there is no specific bootloader document for ST boards as the bootloader is silicon specific not to the board.

And starting a project from STM32CubeMx based on the STM32H747I-DISCO board, the USB FS is not enabled by default. Only USB HS is enabled:

mALLEm_0-1744967915506.png

Hope it's clear now.

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.

Right, thank you for your responses, I really appreciate that, if I have any other query related to it, I'll surely reach you out.

Hello,

If one of the replies answered your question please accept it as solution.

For any other query (not related to DFU usage on that board) I suggest to open a new thread.

Thank you and welcome again to this community.

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.

Hi @HassaanSaleem-101 @mƎALLEm 

You can find an example provided for this board to enter DFU mode using USB HS interface. 
However, you cannot access ST's bootloader interface through this HS interface. You need to ensure that bootloader mode is not entered by checking with a tool like STM32CubeProgrammer.

After that, you can adjust USBD_DFU_APP_DEFAULT_ADD, specifying the address from where user's application will be downloaded.

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.


Thank you @FBL I was not aware of that example.

@HassaanSaleem-101 

So in conclusion: 

1- You cannot use the AN2606 as reference for this board for ST bootloader.

2- You can use the example provided by my colleague @FBL as a "custom bootloader" and no need to use the boot pin in this case.

Did @FBL comment answer your question?

 

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
ST Employee

@HassaanSaleem-101 

This is an article how to use USB DFU ST bootloader on Nucleo-H742ZI: How can I use STM32CubeProgrammer to access the USB-DFU bootloader on my STM32 board? 

It doesn't apply to the board you have (point 1 in my previous comment) but at least to know how to use the USB DFU ST bootloader and its process.

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.