cancel
Showing results for 
Search instead for 
Did you mean: 

USB Audio Device Class not working on STM32L4R9AI Discovery Kit

Isan
Associate

Hi,

Currently, I am working on a project where we need to transfer data from PC to uC (STM32L4 series) at a high rate (real-time application). So, we have decided to use USB 2.0. First, we tried the communication device class, but it wasn't fast enough. So, now we are trying using the audio device class (also because of synchronization). I am using STM32CubeMX to initialize the discovery kit with STM32L4R9AI as a USB device with audio device class. I have generated the code, made no changes to it, and simply flashed the code and connected the USB in the hope that it will be recognized as an audio device (I have shared the *code as a zip file). But in device manager, it is always shown as a virtual COM port. I can't understand if it is a driver problem on the PC side or if the error lies on the uC side. I have tried uninstalling the device in device manager and again plugging in. But nothing works. I am also finding difficulties in with the documentation(couldn't find proper documentation). Any help would be appreciated. Thanks in Advance.

Best Regards,

Isan

* The code in the zip file contains no drivers, binaries, debug files. Only the main files(.ioc, core, etc) to show the setup.

Unbenannt.PNG

1 ACCEPTED SOLUTION

Accepted Solutions
Isan
Associate

Hi STM Community,

I have already found the solution. I have changed the Product ID to some random value and it worked. I was earlier working with CDC Class(Virtual COM Port). And I guess somehow my PC was expecting that this device(DISCO-board) with the same Vendor and Product ID needs to be VCOM device. So, I would say if you are working with USB and with different classes, then make sure to change Product ID of your stm device for every class and not start directly working with the one given in STMCubeMX (.ioc). But still, I'm not an expert in USB or USB-Enumeration process, but altleast these were my observations.

Best Regards,

Isan

View solution in original post

1 REPLY 1
Isan
Associate

Hi STM Community,

I have already found the solution. I have changed the Product ID to some random value and it worked. I was earlier working with CDC Class(Virtual COM Port). And I guess somehow my PC was expecting that this device(DISCO-board) with the same Vendor and Product ID needs to be VCOM device. So, I would say if you are working with USB and with different classes, then make sure to change Product ID of your stm device for every class and not start directly working with the one given in STMCubeMX (.ioc). But still, I'm not an expert in USB or USB-Enumeration process, but altleast these were my observations.

Best Regards,

Isan