Are you facing the issue on Win7 or Win10?
If it's on Win7 can you try setting the burst length field in the ISOC endpoint descriptor to 1?
Thanks for your inform.
I'm using Win8.1, so burst length also set to 1.
Anyway..after modifying some functions in UVC.c, I succeed in streaming start.
But video output is only black screen.
I think that actual frame data seems to be not being transmitted.
The endpoint configuration is as follows.
.isoPkts = 1 .burstlen = 1 .pcktSize = 0x400
and the dma channel setting is the same as the original example one.
I did not make any modifications.
Is it necessary to have different frame processing in isoc mode than in bulk mode?
Please let me know which part needs to be fixed.
Thanks in advance.
Can you use the attached code to compare your code. You can uncomment "USE_ISOCHRONOUS_ENDPOINT" in cyfx3_uvc.h and check. This firmware has two parts UVC/USB and FX3's CPU. GPIF, I2C, SPI, etc. blocks are not used and hence it is the simplest form of FX3 UVC firmware. The CPU fills the buffers with a predefined color and commits it to the USB.
In the attached firmware we can get 1 burst packet and 3 such bursts in a micro frame on a Window 7, 8.1 PC. With Win10 PC, we can get upto 15 burst packets and 3 such bursts in a micro frame. But the firmware needs to be modified.
Fx3UvcDemo_BULK_ISO.rar 1.1 MB