I am using a USRP1 with UHD directly in C++, and several times I got the
following error within a few seconds after starting my application:
The receive packet handler caught an exception.
recv buffer smaller than vrt packet offset
I haven’t seen this error before, and after rebooting the USRP it went
away. Still, I would like to know what the problem was.
Essentially, my USRP code looks like this:
int nread = 0;
while(nread < SIZE)
nread += streamer->recv(rx_streamer::buffs_type(buffer+nread,
I tried with SIZE=4096 and SIZE=65536 before rebooting the USRP. Could
there be a problem with this implementation, for example if recv returns
a value close to SIZE so that the next call is made with a small buffer
size? The UHD version is UHD_003.004.003-276-unstable.
Thanks in advance for any help,