You are here

How to Implement an Image Sensor Interface Using EZ-USB® FX3™ in a USB Video Class (UVC) Framework | Cypress Semiconductor

How to Implement an Image Sensor Interface Using EZ-USB® FX3™ in a USB Video Class (UVC) Framework

Summary: 4 Replies, Latest post by alberto.ferraro_1631716 on 05 May 2016 05:06 AM PDT
Verified Answers: 0
Last post
Log in to post new comments.
miaozhou_1499856's picture
7 posts

Based on the introduction <How to Implement an Image Sensor Interface Using EZ-USB® FX3™ in a USB Video Class (UVC) Framework >,

it streams images on Linux. But it has a black screen on Windows. We can capture endpoint data from usb bushound tool, but still no image.

mady's picture
Cypress Employee
964 posts


There are many reasons why you would see a black screen on windows. Make sure your descriptors match with the actual configuration. Also please make sure that the glProbeCtrl values are correct. If this still didn't work, please create a Tech Support case.


- Madhu Sudhan


I've tried to modify the firmware project "USB Video Class" provided with the FX3 SDK to streaming video from an OV5640 camera (YUY2, 15fps, resolution 640x480 and, for the moment, at USB 2 speed). The USB communication (analyzed with a protocol analyzer) seems to run in the right mode: after the first phase of descriptor collection and pre-streaming dialog between the host and the camera this one sends continuos payload to the host (with the right dimension 16KB and the right UVC video data header, EOF, FID,...). But the host application (for example AMCap, that runs on a windows 10 pro 64-bit based platform) display a black screen, and I'm sure that the content of the payloads changes if I rotate the camera. I observed with USBview application the error "*!*ERROR:  no Color Matching Descriptor for this format" at the end of the Video Streaming Uncompressed Format Type Descriptor as shown in the attachment. 
Where could be the problem? What can I do to resolve it?       

Thank you.

zhoumiao_buaa_1617001's picture
4 posts

Change the value of wTotalLength in the "Video Class-Specific VS Video Input Header Descriptor":  0x0029  ----> 0x0047.

wTotalLength = Input Header Descriptor +  VS format descriptor + VS frame descriptor

Thanks a lot.

Log in to post new comments.