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.
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.
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.
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.
#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
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="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.
Dear Sai Krishna,
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!!!