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!

1 ACCEPTED SOLUTION

Accepted Solutions

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.


View solution in original post

15 REPLIES 15
MM..1
Chief III

Normal way is use boot0 pin , more complicated and STLink required is opt bits and config...

Bootloader starts is described in AN2606

FBL
ST Employee

Hi @HassaanSaleem-101 and welcome to ST Community 

I suggest you the following application note USB DFU protocol used in the STM32 bootloader.

You need to short the BOOT0 pin to Vdd to enter the bootloader mode and ensure that the boot address is set correctly.

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

Hello,

According to the AN2606 the pins to be used for DFU are PA11 and PA11 in USB full speed:

mALLEm_1-1744913324175.png

But according to the STM32H747I-DISCO board schematic only USB HS is available on the board and PA11/PA12 are used for other purpose:

mALLEm_2-1744913518889.png

So unfortunately you cannot use DFU mode with this board.

@FBL could you confirm?

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, could you confirm the location of the boot0 pin, where might the boot pin lie on the STM32H747I-DISCO board. I have read the documents but there is nothing mentioned about the boot pin related to dfu, and I have also checked the board, but I couldn't find a dedicated pin or a jumper related the boot pin. In the schematic there is an R192 which connects with the Boot0, do we have to short it? We tried shorting it with a jumper wire but it didn't work. If you know anything about this issue, then kindly let me know about it, thanks.

boot pin schematic.png

Starting system bootloader is described in Table 2 Patterns AN2606. And yes R192 is pinout for solder wired button switch or jumper. But as mƎALLEm

USB on this board isnt connected to DFU USB pins. Then for use it you require change board and add connector for USB FS.

Better and simpler is try use one UART based on AN2606 and load firmware  over it and (any USB UART bridge for PC), when STLink isnt ok.

 

Yes that's the Boot pin but as I said you cannot use DFU mode on this board.

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.

I checked the document, there is nothing specifically mentioned related to shorting to the Boot pin to enter the dfu mode, I have also read other documents and over there as well nothing has been mentioned regarding this. We still tried the shorting the boot pin but it didn't work out. Is there any other method or anything else we should/need to try to make the STM32H747I-DISCO board into dfu mode? If you know, then kindly let me know.  

@HassaanSaleem-101 

Are you seeing my replies?

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.

yes, I have just seen your replies, thank you for your response, I was just going through the document https://www.st.com/resource/en/application_note/an2606-stm32-microcontroller-system-memory-boot-mode-stmicroelectronics.pdf that you shared, is there any validation for this other than this document related to the USB HS and USB FS for this STM32H747I-DISCO board, because in the case of USB FS, in the ioc I have the option to go into USB FS mode.