I have on USRP and I’m simultaneously sending an receiving data from it
using the UHD interface. Im trying to determine if I am sending my
samples
at all. I am sending all 100’s using COMPLEX_FLOAT32 interface. I have
a
basixRX and basicTX boards. Both are hooked up on the A side of the
USRP.
I have a cable connecting TX-A to RX-A with an attenuator in the middle.
I
transmit but do not seem to see my signal. Here is a dump from my
program.
I have on USRP and I’m simultaneously sending an receiving data from it
using the UHD interface. Im trying to determine if I am sending my samples
at all. I am sending all 100’s using COMPLEX_FLOAT32 interface. I have a
basixRX and basicTX boards. Both are hooked up on the A side of the USRP.
I have a cable connecting TX-A to RX-A with an attenuator in the middle. I
transmit but do not seem to see my signal. Here is a dump from my program.
When you say you’re sending “all 100’s using COMPLEX_FLOAT32
interface”, what exactly do you mean? Do you mean the value 100 in
decimal repeatedly? If so, this is a DC signal with no frequency
content, and DC offset correction could be wiping it out. If not, can
you elaborate more on the data values that you’re sending?
I have on USRP and I’m simultaneously sending an receiving data from it
using the UHD interface. Im trying to determine if I am sending my samples
at all. I am sending all 100’s using COMPLEX_FLOAT32 interface. I have a
If you mean like float value = 100, then that may yeild weird results.
Values are scaled between -1 and +1, so try an amplitude of 0.3. And
since you are sending a constant, make sure to tune the TX frequency to
something in the range of the daughtercards, howabout 100khz?
Yes, I was sending all 1000 for each sample. I completely forgot that
the DC
component may be wiped. However, I also tried sending gaussian noise
(mu=0, sig=1)*100 and still didnt see the signal.
Im going to take a closer look at the interface to determine which
daughterboard and output is used (A or B) and also try to rx the signal
with
another USRP.
Im receiving constantly and sending only here and there… should i be
using the
multiusrp interface (Im only using 1 USRP but the basic rx and tx
dboards)?
Currently, Im using the single one.
Also, do send out a stream of data here and there what should my code
look like?
Right now, I have:
Int32 s = pVec->size();
uhd::tx_metadata_t md;
md.start_of_burst = false; //never SOB when continuous
md.end_of_burst = true;
//send the entire contents of the buffer
// This should be the only place where data is sent over the air!
m_pDev->send(&((*pVec)[0]), s, md,uhd::io_type_t::COMPLEX_FLOAT32,
Yes, I was sending all 1000 for each sample. I completely forgot that
the DC component may be wiped. However, I also tried sending
gaussian noise (mu=0, sig=1)*100 and still didnt see the signal.
If you’re sending gaussian noise, that’ll be really hard to see as well,
since it won’t be different from the inherent noise, right?
Try sending a pure tone of perhaps 10KHz, and have the hardware
up-convert that to 4MHz, so you should see on an FFT
display a strong signal at 4.010MHz.
–
Marcus L.
Principal Investigator
Shirleys Bay Radio Astronomy Consortium
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.