I have a Beagle Board running Gnuradio(3.2.1). I copied the
gnuradio-examples folder from Gnuradio (3.2.2) on the Beagle Board
When I run the usrp_benchmark_usb, I get a maximum throughput of
4MB/sec, instead of 32MB/sec on my regular Linux desktop.
Here is my problem: On the Beagle Board, I am getting lots of dropped
packets, most false packets, u0 and uU when running benchmark_tx/rx, and
My first assumption is that I have a USB bottleneck. Am I correct?
I have tried to resolve these problems using a few options so far:
Option 1. Reducing the rate (I modified the gnuradio examples files
accordingly), so I am pretty sure I am reducing the rate of
transmission. [The verbose statements for Requested bit rate and Actual
bitrate are the same]. That did not resolve my problems. Why?
Option 2. Changing buffer size. I am trying to tweak the buffer size(by
modifying fusb_block_size and nblocks) , but I do not know how to check
that the change actually occured in realtime.
(a) Where can I find the real value of the realtime buffer size so I can
print it in verbose. I tried to trace it down, but eventually hit a
(b) How do you think I can change the buffer size and rate in order to
satisfy a maximum throughput of 2MB/sec and still get reliable data?
© I know that buffer size is B*N, where B is a multiple of 512 bytes.
I also know that a large N can cause latency, but I want to disregard
any latency issues for now.
Will I resolve anything by changing B and N? I have attempted a few
combinations of B, N and rate, still no solutions.
Any suggestions to resolve these issues are welcome.