ReadFromPipeOut issues when len > 524288


#1

I have written a small C++ application (see attached file) that uses the ReadFromPipeOut() method to read a chunk of data and dump it to a file. When I run this on an FPGA configured with First.bit, which has no okPipeOut’s isntalled, everything seems to work fine (the data returned is 0xff) for transfers less than 524288 (2^19) in size. However, if I try a transfer of length 524300 (just 2 more bytes), the ReadFromPipeOut() returns 524300 the first time and 523778 the second time and it continues to alternate. Furthermore, if I try to transfer a 1MB (2^20) of data, it fails and returns -1. The documentation says the max read size is much larger.

This is on linux.

Any ideas on what the problem is?


ok.txt (1525 Bytes)


#2

What Linux distribution are you using?


#3

FC5 with libusb-0.1.11-2.2


#4

Thanks. We’ve been working on a solution to the “bad configuration” under Linux and Mac OS X. We have a pending fix for that problem and are running it through our regression tests now.

Could you please send an email to support@opalkelly.com ? I would like to send back the provisional firmware update to see if it solves your problem.


#5

I am curious to know if this has been solved.

See a lengthy post to the XEM3001 threads.

I am hitting some strange behavior when my buffer size exceeds 11MB for ReadFromPipeOut with an XEM3001v2 attached to C++ code one mac OSX.

Have others tested under these conditions?

Thanks.


#6

Please see this post:

http://forums.opalkelly.com/showthread.php?t=249

Specifically, item #2 fixes the issue.


#7

Thanks for the quick response. Unfortunately I was already running firmware v. 2.5 on the XEM 3001v2. Other suggestions?