Hi Genius people,
I am new to UVC. I have little bit experience with USB devices. I am using EZ-USB FX3 board (dev kit with a MIPI sensor).
What i am trying is to create 2 separate devices with a YUV 1080p stream from each. I am trying to prototype this and followed the "USBVideoClassBulk.zip" sample code.
(This sample produces the MJPEG stream).
I modified the descriptors to have 4 interfaces with 1 control and 1 streaming interface for each stream. But my device enumeration fails and I get "reset" request from the Windows PC. Can any one help me with some tips and sample descriptors.
I really appreciate all the help and support.
Solved! Go to Solution.
- Please let know if the device came up on the device manager without any error mark.
- In case there is an error shown up on the device manager, share the screenshot of the same.
- Also, share the descriptor file that you have used in your project.
Kindly, note that FX3 has got one PCLK output that can be used for the GPIF interface. In case you are connecting two image sensors on the GPIF interface, it has to be taken care that both the sensors use the same clock. FX3 does not treat the image sensors as two separate devices, rather it acts as a pass through for the data between the GPIF interface and the USB interface.
Thanks for headsup on the CLK and GPIF interface side. I have not started
Also, i am trying this in 2 steps. First i like to get one one device with
one streaming, then i try to get 2 devs (/dev/video0 and /dev/video1) with
one stream each.
I am trying to bring-up the YUY2 stream over UVC. For example: 176x144
resolution. As of now I am trying to pass the buffer with "0" as data.
I had a silly error in the descriptor, now i can see the device enumerates
correctly. But I don't see the data transfer when I start the stream. If i
use the default mode (MJPEG stream as default in code example), the
Herein attached the code. Am i making some mistake ?
Sample has mjpeg. I am trying to do YUY2 data (just 0 or 0xFF which should give green or megenta frames). I am not using the sensor for now. Hence not doing any additional stuff related to MIPI
But please, tell me.
It's yuv422 format or yuv simple?
How convert rgb image to this format?
In wich function created frame picture?
But, please, send me, how I find the start of frame.
I don't understand where is frame beginning.
I want show (for simple) static picture, but don't understood how sinchronize with start of frame.
Please look for the definition of UvcAddHeader function block in the attached firmware. It contains the addition of proper header information which indicates the host if it is the EOF (End Of Frame). In this example, the EOF is detected based on the bytes of data that is transferred. If the bytes transferred equals the frame size, the EOF field in the UVC header is set.