-
Notifications
You must be signed in to change notification settings - Fork 71
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
UX Device Class VIDEO Device Descriptor class #54
Comments
Why is this invalid? |
Hi @builder60, Thank you for your post. You are right about the fact that, within the function This is also the case of the applications provided with the STM32CubeU5 firmware, as shown in the example below: Lines 381 to 383 in adf6b6e
However, if you have a look a couple of lines after, you will notice that these attributes are updated in compliance to the document you mentioned, as shown below: Lines 431 to 437 in adf6b6e
I hope this makes things clearer. Do not hesitate otherwise. With regards, |
The update does not happen if there is only one class as in the case of the VIDEO class. The VIDEO class requires the settings because there is more than one interface (Video Control Interface + Video Stream Interface) which requires IAD. |
I understand better your point. I'll give it another try with |
Hi @builder60, After further analysis, it looks like the ux_device_descriptors.c file is some kind of template used by I forwarded your report to our development teams. Let's wait for their feedback and see. With regards, |
ST Internal Reference: 193901 |
Caution
The Issues are strictly limited for the reporting of problem encountered with the software provided in this project.
For any other problem related to the STM32 product, the performance, the hardware characteristics and boards, the tools the environment in general, please post your report to the ST Community in the STM32 MCUs dedicated page.
Describe the set-up
NUCLEO-U5A5ZJ-Q
STM32CubeMX v6.12.1
Describe the bug (skip if none)
Select USBX->UX Device HS->Device Class HS->VIDEO and generate code.
The generated file USBX/App/ux_device_descriptors.c (line 381) creates a device descriptor with bDeviceClass = 0, bDeviceSubClass = 0, and bDeviceProtocol = 0.
Please refer to section 3.2 Device Descriptor of "UVC v1.5 Class specification" available at https://www.usb.org/document-library/video-class-v15-document-set
Extracted from that document:
"...since the device uses an Interface Association
Descriptor in order to describe the Video Interface Collection, it must set the bDeviceClass,
bDeviceSubClass and bDeviceProtocol fields 0xEF, 0x02 and 0x01 respectively. This set of
class codes is defined as the Multi-interface Function Class codes."
Perhaps line 432 of the ux_device_descriptors.c file should also consider the presence of the IAD descriptor?
How to reproduce the bug (skip if none)
Additional context
If you have a first analysis, an enhancement, a fix or a patch, thank you to share your proposal.
Screenshots
If applicable, add screenshots to help explain your problem.
The text was updated successfully, but these errors were encountered: