how can I make uvc controlling at  host interface

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

 Hello,

   

We are using a custom camera that is in conjunction with Aptina camera sensor  (UVC 1.1 compatible),

   

we are trying to control the camera by changing values of a few camera registers through I2C at HOST side.

   

The Aptina docements are read that they provide uvc control host interface,

   

but at first we can not enumerate camera control endpoint in our c# application on WIN7 32bit. 

   

 

   

Using an extension unit on the camera controller may be too  difficult to me at this time.

   
    it will be  greatly appreciated  if you guide  any tips or pointers on how to achieve this.   
0 Likes
10 Replies
Anonymous
Not applicable

Hi,

   

You can make your device to act as composite device with 2 interfaces.

   

One interface is standard UVC class and the other one is going to be vendor class interface. This vendor class interface can have one or two endpoints based on your requirement. This interface can be bind to your custom application using Cyusb3.sys. You can send the register address and data to that endpoint and firmware will perform I2C transfers based on that data.

   

Please let me know if you need any more details from me.

   

Thanks,

   

Sai Krishna.

0 Likes
Anonymous
Not applicable

 Hi,

   

Thank you for great idea,I fully understand about your suggest conecpt.

   

you mean that  it is really possible one single  device acts as 2 interfaces outside world,

   

one as video camera ,the other as bulk one.

   

I'll try to..

   

but to be frank  I have no idea how to share several single IO to each class interfaces.

   

Could you please let me know  some more detail how  to define 2 interface living together?

   

thank you again for your time.

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

Hi,

   

You can add extra interface to your firmware project as shown in the attachment.

   

Look for USB_DEBUG_INTERFACE macro in those files.

   

Let me know if you need any explanation related to code.

   

Thanks,

   

Sai Krishna.

0 Likes
Anonymous
Not applicable

 Thank you very much,

   

Yes!! it is all I want .

   

have a good day!!

0 Likes
Anonymous
Not applicable

You are welcome

   

Thank you. You too.

0 Likes
Anonymous
Not applicable

 HI,

   

Everthing seem to fine except one!!

   

 While Video streaming is running well,( video device is installed fine)

   

Win7 fail to  load driver of  extra interface device  appearing status of alarm icon in DeviceManager.

   

for your reference ,below are definitions of variable  in my UVC.h.

   

your additional advice will be much appreciated.

   

Thank you.

   

------------

   

#define USB_DEBUG_INTERFACE 1

   

#define CY_FX_EP_BULK_VIDEO                           0x83   

   

#define CY_FX_EP_VIDEO_CONS_SOCKET      0x03   

   

#define CY_FX_EP_CONTROL_STATUS             0x82   

   

#define  CY_FX_EP_DEBUG_CMD                        0x06 

   

#define  CY_FX_EP_DEBUG_RSP                        0x86  

   

#define CY_FX_EP_DEBUG_CMD_SOCKET   0x06  

   

#define CY_FX_EP_DEBUG_RSP_SOCKET 0x06 

0 Likes
Anonymous
Not applicable

Hi,

   

 

   

Please do the following changes to cyusb3.inf in your system so that the vendor class interface binds to cyusb3.sys

   

 

   

%VID_04B4&PID_00FA&MI_02.DeviceDesc%=CyUsb3, USB\VID_04B4&PID_00FA&MI_02

   

and

   

VID_04B4&PID_00FA&MI_02.DeviceDesc="Cypress FX3 - Image sensor debugger"

   

Here I am assuming that VID of your device is 04B4 and PID is 00FA.

   

 

   

Please refer to the attached .inf file.

   

 

   

Thanks,

   

Sai Krishna.

0 Likes
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable
0 Likes
Anonymous
Not applicable

 Dear Sai Krishna,

   

Fantastic!!

   

I have  no other word  but  just say thank you very much,

   

all the works are working simultaneously

   

-streamming video (1280 x720 60fps)

   

-looping back with endpointIN<->OUT

   

- another control endpoint0

   

you really give me happy smile on my face  since 6 month!!!

   

Thank you.

0 Likes
Anonymous
Not applicable

Hi,

   

It’s my pleasure to help you.

   

 

   

Thanks,

   

Sai Krishna.

0 Likes