cancel
Showing results for 
Search instead for 
Did you mean: 

Run USBX on STM32H563VIT

konsul41
Associate II

Sorry, Google Translate changed my previous post to Polish. That's probably why no one answered me.
Now the post is correct.

 

I'm creating a custom board using a used STM32H563VIT. Nice processor, but I can't understand how to create an Audo class, even if it's BT 1.0.
In the F series of processors, e.g. STM32F720, it was simple, but here it is somehow mixed up.

 

USB parts diagram:

image.png

 

I am trying to use a USB Adio class device.
For this reason, there is no AZURE RTOS in the IDE (H5).
I have configured the USB

 

image (1).png

I configured USBX as FS_Device

 

image (2).png

I took the stack size

image (3).png

After my changes

 

The device is in working order     HAL_PCD_STATE_READY

 

UINT MX_USBX_Device_Init(VOID)
{
UINT ret = UX_SUCCESS;

...
UX_PARAMETER_NOT_USED(ux_device_byte_pool_buffer);
...

return  ret;
}

However, the system does not detect the device.
What else should I do for the system to detect the device?

 

 

13 REPLIES 13

For me it doesn't detect it at all without a resistor.
In the F series (I have H) there was no need, so I didn't have it here.

 

image.png

It turns on for me.

Maybe read about :

https://github.com/eclipse-threadx/rtos-docs/blob/main/rtos-docs/usbx/usbx-device-stack-3.md

+

https://wiki.st.com/stm32mcu/wiki/Introduction_to_USBX

 

could help ...

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

Do you have a file in your project
USBX\App\ux_device_descriptors.c
Did you create it yourself?

I don't know why, but I don't have this file and it's making me cry.
There are functions in it
uint8_t *USBD_Get_Device_Framework_Speed
USBD_Get_String_Framework
and the definition of Descriptors.

Could you show what yours looks like?

Yes, as I thought, ***, 2 weeks of searching and nothing.

Yesterday I bought Nucleo -F746ZG, opened the Audio Example, installed USBX with threads, filled in the data, generated the project and compiled it.
First connection, the device is calculated correctly and works.
Works out of the box.

After two weeks of work and searching, there is only one conclusion.
The code generator for H5 is unfinished and therefore useless.
Even though all data is entered in MX, not all files are generated (in other processors they are).
First of all, there is no data regarding device descriptors and startup, which is why everything doesn't work.

If I had known this from the beginning, I would never have taken H5 and I will never make the mistake of testing new processors from STM again.