cancel
Showing results for 
Search instead for 
Did you mean: 

"Built in DFU firmware"... Not working?

devinw
Associate II

It is my understanding from watching this video from ST:

 

https://www.youtube.com/watch?v=Kx7yWVi8kbU

That many STM32 chips come with a built in bootloader in ROM that can be accessed by pulling the BOOT0 pin high.

 

However, I just took a couple of brand new STM32 blue pills out of the package and was not able to see the USB device enumerated, and when I opened STM32 Cube Programmer and select USB, it sees nothing and says "NO DFU DEVICE FOUND"

 

The blue pills are a super basic board and have jumpers to pull BOOT0 and BOOT1 high, so I would think this would work. ST Application Note AN3156 says that the STM32 chip on this board support the DFU built in bootloader, so I'm not sure what's going on here. Anyone have any light to shed on this?

11 REPLIES 11
Dor_RH
ST Employee

Hello @devinw,

Here are some steps that can help you resolve issues related to DFU firmware:

  • Check BOOT0 and BOOT1 Pins:

   Ensure that the BOOT0 pin is set to high (1) and BOOT1 pin is set to low (0).

  • Connect USB Cable:

 Connect the USB cable to the board and your computer. Ensure the cable is a data cable and not just a charging cable.

  • Device Manager (Windows)

 On Windows, open Device Manager and check if any new devices appear when you connect the STM32 board.

  • Driver Installation:

 Ensure that the necessary drivers for STM32 DFU mode are installed. You can download the STM32 USB drivers from the STMicroelectronics website.

  • STM32CubeProgrammer:

Open STM32CubeProgrammer and select the USB interface. If the device is not detected, try refreshing the connection or restarting the software.

Also, you can refer to:

- ST Application Note AN3156 provides detailed information on the STM32 bootloader and might offer additional insights.

- STM32CubeProgrammer User Manual can help you understand how to use the software effectively.

I hope my answer has helped you. When your question is answered, please select this topic as solution that answered you, it will help others find that answer faster.

Thanks for your contribution.

Dor_RH

AScha.3
Chief II

>That many STM32 chips come with a built in bootloader in ROM that can be accessed by pulling the BOOT0 pin high.

More or better: all cpus...have a bootloader.

>I just took a couple of brand new STM32 blue pills out of the package and was not able to see the USB device enumerated

AScha3_0-1721822908598.png

Read AN2606 about bootloader and its capabilities in different STM32 series.

 

So : you can start the bootloader (boot0 hi ) on a BluePill , but need a serial/TTL to USB adapter to connect to the uart1 on the F103C8 ( or CB) . No bootloader here on USB -> PC.

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

Thanks for the suggestions. I'm actually on MacOS, so I would think drivers wouldn't be necessary as with Windows with, if it is class-compliant, but maybe that's an issue too?

 

Ascha.3 below suggests that for this chip that only USART1 is supported so a USB-serial adapter would be required.

USB connector on board not equal to app MCU have USB. And AN2606 list all info about system bootloaders.

Then better is change Not working to Not exist DFU...

I'm not basing my information on the fact that the board simply has a USB connector... I'm basing it on the video (produced by ST themselves linked in my OP), and AN3156 which says that this chip has a built in DFU boatloader which allows USB enumeration (and subsequent update via STMCube Programmer).

Your video 0:31 time show same info as AN2606 = only 105 107 have DFU. No 103 (bluepill).

But FYI for 103 exist user custom DFU bootloader projects...

MM1_0-1721844008130.png

 

Yeah i saw that, but that video's 9 years old and if you pull the newest version of AN3156 off the ST site (rev 15) from feb 2024, that table has changed:

 

Screenshot 2024-07-24 at 1.08.51 PM.png

As i already told you :

So : you can start the bootloader (boot0 hi ) on a BluePill , but need a serial/TTL to USB adapter to connect to the uart1 on the F103C8 ( or CB) . No bootloader here on USB -> PC.

 

+

bootloader on F103CB = yes . But on uart , not on usb . So difficult to understand ?

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

Yes, I understand. Just saying, that this is not mentioned in the newest version of AN3156, nor does the video linked mention that some chips won't support USB on the DFU FW.