- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Enviroment:
SDK 1.3.4
firmware based on UVC AN75779
input signal 720x576 YUV at 25fps. (from Analog device ADV7280A)
Test port: USB 2.0 High speed
I have implemented an usb frame grabber with the starting point the AN75799.
I have a custom extension unit in order to get the status of some structure from the board.
I'm using the uvc_extension_app.exe to read the interface with a polling of 10ms.
I'm using amcap to for the video rendering.
After a while, usualy after 10 / 20 minute the extension unit return error .
If I remove the USB cable and reconnect it, the device doesn't works.
This behaviour happen when I have the video streaming and extension interface working all together
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
>> I'd like to known what is the behaviour of the USB stack in case the PC is not able to consume all the bulk video frame....
>> Is it possible a buffer overflow? How can I avoid this situation?
When the host is accessing the data from the device and device buffers are full, there will be device buffer overflow and you will see Commit buffer failure error (-71). Whenever there is a commit buffer failure, we stop the application in which we do reset the endpoint and dma channel. You may refer AN75779 application note firmware for this.
There are some issues with simaltaneous Bulk-IN and Control-IN Transfers in USB 2.0, please refer the following KBA.
EZ-USB® FX3™ Issues With Simultaneous Bulk-IN and Control-IN Transfers In USB 2.0 – KBA92475
Note that CyU3PUsbSuspendInEpChannels API is being called internally in CyU3PUsbSendEP0Data API in the SDK.
Hence, you don't need to add any work around in the firmware.
Regards,
Sridhar
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Can you please check the functionality in USB 3.0 and check, if feasible?
Regards,
Sridhar
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Sridhar,
I'm sorry, my board doesn't has an USB 3.0 connector.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Sridhar,
I'd like to known what is the behaviour of the USB stack in case the PC is not able to consume all the bulk video frame....
Is it possible a buffer overflow? How can I avoid this situation?
Best regards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
one more info:
when the extension unit return error, the video streaming doens't works.
I need to reset the device.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I made a test with the eval board,
with USB3.0 the problem seem to not appear.
with USB 2.0 the problem happen
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
>> I'd like to known what is the behaviour of the USB stack in case the PC is not able to consume all the bulk video frame....
>> Is it possible a buffer overflow? How can I avoid this situation?
When the host is accessing the data from the device and device buffers are full, there will be device buffer overflow and you will see Commit buffer failure error (-71). Whenever there is a commit buffer failure, we stop the application in which we do reset the endpoint and dma channel. You may refer AN75779 application note firmware for this.
There are some issues with simaltaneous Bulk-IN and Control-IN Transfers in USB 2.0, please refer the following KBA.
EZ-USB® FX3™ Issues With Simultaneous Bulk-IN and Control-IN Transfers In USB 2.0 – KBA92475
Note that CyU3PUsbSuspendInEpChannels API is being called internally in CyU3PUsbSendEP0Data API in the SDK.
Hence, you don't need to add any work around in the firmware.
Regards,
Sridhar
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
CyU3PUsbSuspendInEpChannels API is being called internally in CyU3PUsbSendEP0Data API in the SDK.
Hence, you don't need to add any work around in the firmware.
We will update the document EZ-USB® FX3™ Issues With Simultaneous Bulk-IN and Control-IN Transfers In USB 2.0 – KBA92475
Is the issue -71 issue solved?
Regards,
Sridhar