cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F405RGT6 USB DFU

Yeo
Associate

Hi, I recently designed a custom stm32F405RGT6 board. However, I was unable to use the DFU mode.

From what I understand, bootloader comes with DFU enabled. However, when I used stm32cubeprogrammer, it kept mentioning "DFU not detected". This is my schematic. I've tried reading various posts and couldn't troubleshoot the error.
What I have done so far:
1) Checked the voltage of the BOOT0 and BOOT1 pins. (BOOT0=Low, BOOT1=HIGH)

2) Installed the drivers for the COM PORT (was included with the installation of stm32cubeprogrammer.

3) Double checked for any shorts (Didn't find any)

 

Unfortunately, when laying out the connections, I forgot to route out the SWD connections. Therefore, limiting my options! Thank you so much in advance for any help I can get.

These are the schematics for my MCU.

MCU.pngUSB connection.png

2 REPLIES 2
TDK
Guru

> Checked the voltage of the BOOT0 and BOOT1 pins. (BOOT0=Low, BOOT1=HIGH)

BOOT0 should be high and BOOT1 should be low to boot into the bootloader.

TDK_0-1727262949862.png

 

 

Schematic looks okay. I don't see a bulk capacitor on VDD anywhere, should have a 4.7uF somewhere, and your VCAP caps should be 2.2 uF, not 10 uF. Probably not an issue here.

Getting started with STM32F4xxxx MCU hardware development - Application note

 

There is an internal ADC connection for VBAT, no need to make another one externally.

 

It's going to be very hard to be productive developing without a SWD port.

If you feel a post has answered your question, please click "Accept as Solution".

OOO sorry oops mixed it up. Yes Boot0 is HIGH and BOOT1 is low.

Thank you so much for the advice! Currently, I am considering modifying the board to include the routing of the SWD to header pins. Could it be possible that using the SPDT switch is causing the issue?

As I understand the procedure is to pull BOOT0 HIGH and then RESET the MCU? Currently, I switch the SPDT to pull BOOT0 HIGH then I unplug and re-plug the USB-C receptacle. Wondering if this could be causing the issue where the MCU does not enter into DFU mode?