In general, the standard UVC host applications cannot stream the RAW format video.
Please refer this KBA: Streaming RAW10 Format Input Data to 16/24-bit Output Format in CX3 MIPI CSI-2 - KBA224387 for more details on this.
As per the UART Logs, there are commit buffer failures. This happens when the host is streaming the data at slower rate than that of image sensor.
Please test the application in Bulk Mode and confirm whether the data is streaming fine.
Since the standard Amcap cannot stream the RAW 10 format, you may not see the video in both bulk and isoc modes.
Hence, you can confirm the correct frame size by probing the PCLK, HSYNC and VSYNC test pins and capturing the WireShark trace.
Thanks for your reply.
The sensor output data is raw10, but it transfer as YUYV, 16bit in Cypress. And it is normal when use bulk mode with Amcap, so I think it maybe something wrong when i change to isochronous mode.
- Change the define of CY_FX_EP_ISO_VIDEO_SS_MULT 1.
- Make the 'Bytes per interval' field of Super speed companion descriptor as
0x00, 0x04 * (CY_FX_EP_ISO_VIDEO_SS_MULT) * (CY_FX_EP_ISO_VIDEO_SS_BURST) //This is 3KB in your case
- UVC Probe control settings should be updated with the maximum payload size calculated using BURST length and MULT settings. The maximum payload size should be (CY_FX_EP_ISO_VIDEO_SS_BURST) * (CY_FX_EP_ISO_VIDEO_SS_MULT) * (Max Endpoint size).
- According the firmware that you have shared, UVC headers are not being added by CX3. So, they must be added by an FPGA? - Please confirm. If yes, then there is no need to call CyCx3UvcAppAddHeader()
- Please remove DebugPrints in DmaCallback.
A similar issue is addressed in this thread: CX3 Isochronous mode . Please have a look.