- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
I am able to stream 4160x3120 @20fps over USB 2.0 with my cx3 based custom board. My goal is to capture the still but while I am trying to capture still, the app is getting stopped instead of capturing. Sometimes it is capturing image but it is totally black(it is giving unsupported format error in photos app).
I have observed UART logs which shows Commit buffer failure. Log is as follows -- AppStop AppStart AppStop... Commit buffer failure.
I have referred related threads but I couldn't solve it.
Please find What I did...
1. I am following method 2 of UVC to capture the still. I have configured it in my configuration descriptor( Class-specific Video Streaming Input Header Descriptor).
2. DMA size that I am using is 256KB (without 2-stage bootloader)
3. DMA buffer size that I am using is 48KB and buffer count is 3.
By 2 and 3 steps I would have over come the Commit buffer error but I couldn't.
I would like to know
1. Do I need to mention still capture method in each and every resolution descriptor? Though i have mentioned there also but no use.
2. I heard that increasing H-blanking will solve Commit buffer error, Can I have an alternative for this(because sensor settings are not accessible for some reasons)
3. Why the app is getting stopped while trying to capture image, does fps creating any bad influence?
Help is most appreciated.
Thank you,
Abdul.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Abdul,
Is it possible for you to share your firmware and UART debug prints (with CX3_DEBUG_ENABLED, PRINT_FRAME_INFO, and CX3_ERROR_THREAD_ENABLE enabled) for us to check?
Also, please confirm if you have followed section 2.3.5 of AN75779 for adding still capture to your application
Regards,
Rashi
Rashi
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Abdul,
Is it possible for you to share your firmware and UART debug prints (with CX3_DEBUG_ENABLED, PRINT_FRAME_INFO, and CX3_ERROR_THREAD_ENABLE enabled) for us to check?
Also, please confirm if you have followed section 2.3.5 of AN75779 for adding still capture to your application
Regards,
Rashi
Rashi
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Rashi,
Thank you for your reply, Sorry I couldn't share my firmware with you.
I have enabled CX3_DEBUG_ENABLED, PRINT_FRAME_INFO, and CX3_ERROR_THREAD_ENABLE and got log. Please find it below.
Yes, I have followed section 2.3.5 of AN75779 for adding still capture correctly.
Looking for your reply.
Thank you,
Abdul.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Abdul,
From the debug prints it looks like multiple partial buffers are received before still capture is done which leads to clear feature request from host
To confirm this can you add one more variable in this case
if(dmaBuffer.count < CX3_UVC_DATA_BUF_SIZE) {...} and print it in the for loop.
When Still capture is triggered, we see "USB Connection not detected" print - kindly let me know hen is this printed from the firmware.
Please capture the USB traces using Wireshark and share it with us for further debugging
Also, confirm the DMA buffer size is not an exact multiple of frame size used for still capture. Let me know the expected size of the still capture image frame.
Rashi
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Glad to hear that the issue was resolved when the Still trigger (SET/GET) requests were handled properly
Rashi