Cypress Perform

Home > Design Support > Cypress Developer CommunityTM > Cypress Forums > USB Controllers > Extension Unit of UVC

Bookmark and Share
Cypress Developer CommunityTM
Forums | Videos | Blogs | Training | Rewards Program | Community Components



Extension Unit of UVC
Moderator:
RSKV

Post Reply
Follow this topic



Extension Unit of UVC

WallaceTseng posted on 20 Oct 2011 10:57 PM PST
Member
7 Forum Posts

 Hi fellows,

I'm implementing a UVC device with user-specific commands. I enabled controls in extension unit in UVC device and try to send commands from host via DirectX.

My questions are,

1. Does the generic UVC driver on Windows XP support sending user commands or I should implement my own driver to send them to device? 

2. What's the behavior when the user controls in extension unit are enabled? What requests will I recevie when UVC setup and how to reply them?

 

Any comments are welcome and appreciated.

BR, Wallace




Re: Extension Unit of UVC

aasi posted on 20 Oct 2011 11:03 PM PST
Cypress Employee
1073 Forum Posts

When you say user-specific commands are you talking about vendor requests or class specific requests which allow you to change the parameters of the feed dynamically?

Regards,

Anand



Re: Extension Unit of UVC

WallaceTseng posted on 20 Oct 2011 12:47 AM PST
Member
7 Forum Posts

Sorry I didn't state clearly. What I meant is vendor-specific controls.



Re: Extension Unit of UVC

aasi posted on 21 Oct 2011 02:07 AM PST
Cypress Employee
1073 Forum Posts

The UVC driver is inbox to Windows and we've not really tried playing with its features. Let me see if I'm able to pull-up content on this topic and post here.

Regards,

Anand



Re: Extension Unit of UVC

WallaceTseng posted on 25 Oct 2011 05:51 AM PST
Member
7 Forum Posts

 Hi Anand,

Thank you. I'd like to share what I found for now.

I enabled a control in extension unit. During enumeration UVC device will receive GET_LEN request only. 

I found discussion regarding this as below, it says UVC device should apply an iterrupt endpoint thus Windows will send requests such as GET_INFO, GET_MIN, GET_MAX.,etc.

http://social.technet.microsoft.com/Forums/en-US/itproxpsp/thread/f2490343-92b4-42c7-ae17-ff79665372b7/

Unfortunately I still couldn't get the requests after adding the interrupt to UVC descriptor.

 

Here's what I added to descriptor

 

/* VideoControl Status Interrupt Endpoint Descriptor */

0x07,                           /* Descriptor size */

CY_U3P_USB_ENDPNT_DESCR,        /* Endpoint Descriptor Type */

0x82,        /* Endpoint address and description */

0x03,             /* Interrupt End point Type */

0x00,0x04,                      /* Max packet size = 1024 bytes */

0x01,                           /* Servicing interval */

/* Super Speed Endpoint Companion Descriptor */

0x06,                           /* Descriptor size */

 CY_U3P_SS_EP_COMPN_DESCR,       /* SS Endpoint Companion Descriptor Type */

0x00,                           /* Max no. of packets in a Burst : 1 */

0x00,                           /* Attribute: N.A. */

0x00,                           /* Bytes per interval:1024 */

0x04, 

 /* Class Specific Interrupt Endpoint Descriptor */

0x05,                           /* Descriptor size */

0x25,                           /* Class Specific Endpoint Descriptor Type */

0x03,             /* End point Sub Type */

0x40,0x00,                      /* Max packet size = 64 bytes */   

 

 

BR, Wallace



Re: Extension Unit of UVC

Poturaju posted on 10 Jan 2012 02:05 AM PST
Top Contributor
26 Forum Posts

 Hi Wallace,

Generic UVC driver of XP will not support the UVC exetension unit commands. To support UVC extension unit commands, you have to develope a UVC extension unit plug-in for Windows XP and register it with OS.

 

Please check the following link:

http://msdn.microsoft.com/en-us/library/windows/hardware/ff568656(v=VS.85).aspx

BTW, are you able to stream the UVC frames in FX3, if it so at what resolution and what is the frame rate?

Thanks

Subbarao.






ALL CONTENT AND MATERIALS ON THIS SITE ARE PROVIDED "AS IS". CYPRESS SEMICONDUCTOR AND ITS RESPECTIVE SUPPLIERS MAKE NO REPRESENTATIONS ABOUT THE SUITABILITY OF THESE MATERIALS FOR ANY PURPOSE AND DISCLAIM ALL WARRANTIES AND CONDITIONS WITH REGARD TO THESE MATERIALS, INCLUDING BUT NOT LIMITED TO, ALL IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL PROPERTY RIGHT. NO LICENSE, EITHER EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED BY CYPRESS SEMICONDUCTOR. USE OF THE INFORMATION ON THIS SITE MAY REQUIRE A LICENSE FROM A THIRD PARTY, OR A LICENSE FROM CYPRESS SEMICONDUCTOR.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms and Conditions of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms and Conditions of this site. Cypress Semiconductor and its suppliers reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.