Hi again Kaleem - I apologize for never getting anything out to the
list. I've been swamped with work & life. Here is the gist of how to
do a static freq_xlating_fir_filter -- probably imperfect since this
is from memory:
Instead of: USRP.source() -> WHATEVER
You do : USRP.source() -> gr.freq_xlating_fir_filter_XXX() -> WHATEVER
The trick here is to get the bandwidth [BW] correct once samples reach
WHATEVER. In the former, you set the decimation rate in the
USRP.source(). In the latter, you have to set the decimation in the
XLATING filter, and then reverse compute a USRP decimation rate that
allows enough BW for the FIR filter part of the XLATING block.
For the USRP, the ADC is running at 64 MS/s, with decimation in
4:2:256 IIRC, allowing for BWs of 16 MS/s down to 250 kS/s.
Suppose you want 250 kS/s at WHATEVER. Then you want more than 250 kS/
s BW before the XLATING filtering in order to do the filtering ...
maybe 500 kS/s would suffice ... really depends on how precise
filtering you want to do. Anyway, you set the XLATING frequency shift
to the negative of what you've seen via comparison of a spectrum
analyzer and the transmitted signal. And you set the decimation of
the filter to 2 (in this case) to get the BW correct at WHATEVER (in
this case: and set the USRP's decimation to 128 to get the sample rate
of 500 kS/s as the output of USRP.source()). Of course, you'll need
to create the low-pass filter coefficients first, to pass those in to
the XLATING block on instantiation.
Try this out & play with the parameter to figure out what works for
your particular HW setup ... in my testing, each USRP required a
different frequency shift; some were "small" while others were
"large". But as long as you keep track of which USRP requires which
offset, they are pretty much static & can be used time and again with
reasonable precision.
Hope this makes sense, and is reasonably correct. - MLD
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio