cancel
Showing results for 
Search instead for 
Did you mean: 

B-L475E-IOT01A is not able to enumerate as USB DFU class.

Keyur Thumar
Associate III

I am using B-L475E-IOT01A (STM32L475VGTx) dev kit and this article for DFU and I am getting following issue.

  • device is not able to enumerate as USB DFU class on my windows 10 PC

I am using flash decription as show in the tutorial.

#define FLASH_DESC_STR   "@Internal Flash  /0x08000000/02*016Ka,02*016Kg,01*064Kg,03*128Kg"

For replacing flash mem read,write api I have taken a reference from STM32L476G-EVAL DFU_Standalone example.

  • bootloader code is not able jump to app location.

In my driver SCB->VTOR is not set so not changed app start location.

Can anyone please suggest what could be the reason for this ?

13 REPLIES 13
Keyur Thumar
Associate III

I have further debugged with this using STLink. Bootloader stucks into waiting for HSE is ready or not.

0693W00000Nr18tQAB.png 

Also Debugged Led App Seperately. If I start that application from 0x8000000 it works preffect but If I change address to 0x8008000 it stucks in HAL_Delay as shown below in while

0693W00000Nr1B8QAJ.png 

Keyur Thumar
Associate III

Hey @Imen DAHMEN​ 

Can you please help me out here.

I have been able to detect device as STM32 DownLoad Firmware Update in my device manager. But DfuSeDemo tool is not able to detect the device(B-L475E-IOT01A). I am using STM32CubeIDE as my developement environment.

I have followed this article.

0693W00000NrD4sQAF.png 

@#askST Embedded World​ 

Keyur Thumar
Associate III

Hello Community,

I have tried with STM32F469 discovery kit with example provided in STM32Cube Repo.

But result is same. My PC can detect the device but DfuSe Demo App can't.

Can anyone help me out here ?

From the UM0412 User manual, It says that

Compatible HID device is a HID class device providing the HID detach feature (USAGE_PAGE 0xFF00 and USAGE_DETACH 0x0055) in its report descriptor.

0693W00000NrFyJQAV.pngCan anyone guide me on how to use this ?

Keyur Thumar
Associate III

Hello guys I am able to detect the device in DfuSe Tool by installing the drivers.

Got the solution from this

But now I am getting this. It stucks at 24% everytime.

0693W00000NrGORQA3.png

Imen.D
ST Employee

Hello @Keyur Thumar​ ,

Which bootloader version is used ?

Maybe that the problem is related to the bootloader version.

Please check your configuration with boot mode and the Known limitations described in the AN2606 related to your device and bootloader version.

0693W00000NrMKLQA3.jpg 

0693W00000NrMKQQA3.jpg0693W00000NrMKaQAN.jpgHave you checked with STM32Programmer?

Maybe this post can help you.

When your question is answered, please close this topic by choosing Select as Best. This will help other users find that answer faster.

Imen

When your question is answered, please close this topic by clicking "Accept as Solution".
Thanks
Imen
Keyur Thumar
Associate III

Thanks @Imen DAHMEN​ for the response.

I have followed this video tutorial and created application for bootloader. I have not used read out protection into that.

This video doesn't show any timer configuration as suggested by AN2606 - Timer 17

I couldn't found any source code for bootloader version 10.x or 9.x. Can you please provide the source ?

My bootloader code can be found here

Thanks again.

Keyur Thumar
Associate III

@Imen DAHMEN​ 

I have checked with STM32CubeProgrammer. It can not detect my device as USB.

0693W00000NrUsfQAF.png

Keyur Thumar
Associate III

Thanks you for the response.

Now I am able to DFU on my device, but after full chip erase and bootloader flashing.

After I have done DFU once, after that I am not able to do it again. It again stucks at some random percentage. To do it again, I have to erase full chip using STMCubeProgrammer, reflash the bootloader and then I can do the DFU.

@Imen DAHMEN​ 

Keyur Thumar
Associate III

@Imen DAHMEN​ 

ALso I am getting errors like below in DfuSe Tool.

0693W00000NrWXoQAN.png