cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F4 USB composite device driver MISSING!

bmak
Senior

Hi!

I currently work on USB composite device (CDC + MSC). I putted together a program with help from:

The thing is, i don't know if my program works, because THE DRIVER IS MISSING.

I can't find the driver that win 10 would accept.

When I use only CDC or MSC it works fine, but together not.

I'm using STM32F407VG (custom board and discovery board).

I tried these drivers:

The device shows up as "Maple".

Anyone had this problem? Is it the fault of the drivers or my program?

Thanks and have a nice day 🙂

UPDATE:

It wasn't windows problem, it was the problem with my code. If you dont know how to do composite device i recommend to you this link:

  HAL_PCDEx_SetRxFiFo(&hpcd_USB_OTG_FS, 0x80);
    HAL_PCDEx_SetTxFiFo(&hpcd_USB_OTG_FS, 0, 0x40);
    HAL_PCDEx_SetTxFiFo(&hpcd_USB_OTG_FS, 1, 0x40);
    HAL_PCDEx_SetTxFiFo(&hpcd_USB_OTG_FS, 2, 0x20);
    HAL_PCDEx_SetTxFiFo(&hpcd_USB_OTG_FS, 3, 0x20);

Only changes I did to match my STM32F407 was this in USBD_LL_Unit():

After that everything worked 🙂

Also, if you are using custom board with STM32 and external STLink connected, ALWAYS remember to disconnect it when testing your code! I'm sure it will save you a lot of issues 🙂

1 ACCEPTED SOLUTION

Accepted Solutions
bmak
Senior

Solution in update 🙂

View solution in original post

7 REPLIES 7
bmak
Senior

Also, i tried changing stmcdc.inf file (like it is written at the end of this post https://sudonull.com/post/68144-CDC-MSC-USB-Composite-Device-on-STM32-HAL

) but it didn't help. The driver didn't want to be installed.

Pavel A.
Evangelist III

What exactly Win10 shows in device manager?

Unknown device, name "Maple". I don't have screenshot.

Pavel A.
Evangelist III

Does it show some problem such as "error reading descriptor"?

If it is composite, try "View devices by container" to see all sub-functions.

No, the problem is I don't have the right driver. Win10 reads its name, PID, VID, but it shows as "unkown device".

What should I see from getting the view by containers? How it should help?

Well, I think that the problem maybe isn't in the driver, but in my program. Sometimes it shows problem "error reading descriptor", sometimes it shows as COM port, but it fails reading SD card.

bmak
Senior

Solution in update 🙂