cancel
Showing results for 
Search instead for 
Did you mean: 

USB Superspeed Peripherals

Anonymous
Not applicable

I just encounter a weird phenomenon---uncovering the sensor will cause backflow and make streaming stuck

I am now working on FX3 + Aptina sensor, using AN75779 based code. The output window is 1280*760, 2 bytes per pixel, 30 fps, so the frame size is 1280*960*2 = 2457600, since DMA buffer is 16384-12=16368, so for each frame, total 2457600/16368 = 150 full buffers are captured and reported in CyFxUvcApplnDmaCallback, plus 2400 bytes partial buffer.

When this FX3+sensor is plugged to the host(NOTE: covering the sensor with a card, or anything not transparent). viewed from the serial console, it just shows the exact number described above, and continous video shows in Amcap, seems everything work fine.

pastedImage_1.png

removing the cover, however, the streaming stops immediatly, and I also  find full/partial buffer is not as expected, that is why the streaming got stuck.

pastedImage_0.png

I presume it's probably related to sensor exposure, but even if I turn on/off sensor AEC(auto exposure control), it's always this case.

can anyone explain why uncovering the sensor can cause this error?

消息编辑者为:michael gao

0 Likes
Reply
1 Solution
alamandaa_16
Moderator
Moderator

Hi,

-The Backflow(overrun error)error comes, when the DMA buffers get filled and the GPIF is still trying to write the data. If the host is reading the data slower than the data being written at the GPIF interface, then the DMA buffers will get filled and give this Backflow(overrun error).

Regards,

Anil Srinivas.

View solution in original post

0 Likes
Reply
2 Replies
alamandaa_16
Moderator
Moderator

Hi,

-The Backflow(overrun error)error comes, when the DMA buffers get filled and the GPIF is still trying to write the data. If the host is reading the data slower than the data being written at the GPIF interface, then the DMA buffers will get filled and give this Backflow(overrun error).

Regards,

Anil Srinivas.

View solution in original post

0 Likes
Reply
Anonymous
Not applicable

hi anni,

Thanks for your reply.

As per my understanding, the time diagram is only for simulation. In my case, only a couple of buffers(16368 bytes) offset between with/withoud card, so I really doubt I can see any difference from the timing diagram. Or, if it's possible, could you please guide me how to do it?

0 Likes
Reply