usrp-users@lists.ettus.com

Discussion and technical support related to USRP, UHD, RFNoC

View all threads

Dropping packets when using UHD

IG
Isaac Gerg
Fri, Jan 28, 2011 10:37 PM

Hi again list,

I am using the USRP 1 with a sampling rate of 250e3. I am trying to send a
single burst that is 25000 samples long (100ms).  The burst is a a complex
sine wave with a fc=100e3 and fs=250e3.  I use the following to send the
burst.

uhd::tx_metadata_t md;
md.start_of_burst = true;
md.end_of_burst   = true;
md.has_time_spec  = false;


// Send the entire contents of the buffer
Int32 numSampsSent = m_pDev->send(&vec.front(), vec.size(),

md,uhd::io_type_t::COMPLEX_FLOAT32, uhd::device::SEND_MODE_FULL_BUFF);

My code tells me that numSampsSent is 25000.

I have another USRP1 running grc that is using the scope and trigger
mechanism.  I send the bursts at 1 second intervals.  On the scope, every
burst looks like this:
http://gergltd.com/delme/5.png

to boot, I get a "U" printed to my terminal every time I send a message.
Why would this be?  I would think that sending a 0.1s message using the
FULL_BUFF interface with nothing else going on with the USRP, that I should
be able to to do this no problem and NOT drop any data. Hmmmm....

Any ideas?  Im beggin'!

Isaac

Hi again list, I am using the USRP 1 with a sampling rate of 250e3. I am trying to send a single burst that is 25000 samples long (100ms). The burst is a a complex sine wave with a fc=100e3 and fs=250e3. I use the following to send the burst. uhd::tx_metadata_t md; md.start_of_burst = true; md.end_of_burst = true; md.has_time_spec = false; // Send the entire contents of the buffer Int32 numSampsSent = m_pDev->send(&vec.front(), vec.size(), md,uhd::io_type_t::COMPLEX_FLOAT32, uhd::device::SEND_MODE_FULL_BUFF); My code tells me that numSampsSent is 25000. I have another USRP1 running grc that is using the scope and trigger mechanism. I send the bursts at 1 second intervals. On the scope, every burst looks like this: http://gergltd.com/delme/5.png to boot, I get a "U" printed to my terminal every time I send a message. Why would this be? I would think that sending a 0.1s message using the FULL_BUFF interface with nothing else going on with the USRP, that I should be able to to do this no problem and NOT drop any data. Hmmmm.... Any ideas? Im beggin'! Isaac