Negative values sent to usrp.sink_c?

I generated a data file in which each complex sample is stored as a
32-bit value, with real and imaginary values ranging from 32000 to
-32000.

If I connect a file source directly to a file sink, then I “receive” the
transmit data just fine. However, if I put a USRP in between them, then
it appears that the negative values in my data are being converted to
positive before being transmitted.

I’ve attached a plot of my transmit data (transmit.jpg), and my received
data (received.jpg). As you can see, the fourth pulse shows up as
positive instead of negative. Does anyone have any ideas why? It seems
like I’m making some simple mistake or an incorrect assumption, but I
can’t figure it out. I’ve attached my python script, and data file for
examination.

By the way, if it of any consequence, I have terminators on the RFX-2400
Tx/Rx and RX2 ports, and am receiving the bleed-through.

Thanks,
Lee

Lee P. wrote:

data (received.jpg). As you can see, the fourth pulse shows up as
positive instead of negative. Does anyone have any ideas why? It seems
like I’m making some simple mistake or an incorrect assumption, but I
can’t figure it out. I’ve attached my python script, and data file for
examination.

Are you doing any carrier tracking? Have you modified your RFX board to
be fully coherent? I.e. disabled the onboard clocks as in

http://comsec.com/wiki?USRPClockingNotes

Ignore the text where it says " On the back of the MOTHERBOARD,"

Matt

On Mon, 2006-07-31 at 13:17 -0700, Matt E. wrote:

Are you doing any carrier tracking?

No I am not. At the time I wrote the post, I didn’t think I needed it
since my pulses came back looking pretty good except for the whole
“positive values only” thing. However, my data looks a lot better when
I:

a) use the tune() method instead of the set_freq() method to set the
carrier frequency.

b) find the carrier in the received data via an FFT, then modulate the
data down to DC. (essentially carrier tracking).

Have you modified your RFX board to
be fully coherent? I.e. disabled the onboard clocks as in

http://comsec.com/wiki?USRPClockingNotes

No. I was hoping to avoid the extra phase noise that would be added (as
indicated
in the webpage) by keeping the original configuration. I can see now,
that I might not be able to do that.

Thanks,
-Lee