Problems transmitting a simple IF sample upconverted on a USRP2

I’m attempting and failing to use a USRP2 w/RFX1800 to transmit a known
good L1 GPS signal sample to a COTS receiver for some repeatable
hardware
testing work. The code transmits without error messages however the
receiver doesn’t “track” any satellites from a cold start with a sample
of
sufficient length and I’m not sure exactly what I’m doing incorrectly so
I’ll document what I’ve done so far in hopes that someone will point out
something obvious to persons with more DSP background than myself.

Input Sample (simple amplitude IF @ 5Msamples/sec and a IF frequency of
1.25Mhz)

I convert this to a complex sample file using some C code setting Q to 0
for
all samples and scaling I from a signed char (-127:128) to a float
between
(-1:1).

I then build a basic flow in python from the sample file to a USRP2 sink
setting the center frequency CF to 1.57542G, and a interpolation of 20
to
convert the 5Msamp/sec to 100Msamp/sec. The waveform transmits for the
expected 60 sec.

Do I need to offset the CF to compensate for the IF being @ 1.25Mhz
rather
than baseband? Any other areas of gotchas, filters etc that a DSP noob
is
missing?

Thank you in advance.

Kris Lists wrote:

I then build a basic flow in python from the sample file to a USRP2
sink setting the center frequency CF to 1.57542G, and a interpolation
of 20 to convert the 5Msamp/sec to 100Msamp/sec. The waveform
transmits for the expected 60 sec.

Not sure, but as far as I can recall the frequency range of RFX1800 is
from 1600MHz to… Was it 2000 or 2100 MHz?

//Mattias

I am able to see the center lobe on a Spec A at the expected freq, and
there
are no errors from the block when tuned to this center freq.
Per the Ettus PDF the range for the RFX1800 is 1.5G to 2.1G.

-Kris

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs