On Mon, Dec 19, 2005 at 04:08:38PM -0500, David Scaperoth wrote: > > On Dec 19, 2005, at 3:48 PM, David wrote: > > >I am currently trying to implement a coherent receiver with the same > >results that it sounds like Blue Sky has gotten. We have tried many > >things to compensate for the offset, but there still seems to be shift > >form 20Hz to 3kHz depending on the channel desired. > > >I have tried your suggested set_freq method found in the > >usrp_nbfm_rcv.py file, but to no avail. Perhaps I have misunderstood > >your advice.
> >Currently I input a sinusoid (22MHz) from a signal generator directly > >to the basic Rx board. I down convert the signal to an intermediate > >frequency of 1MHz (sampling at 4MS/s across the USB) and then using > >the xlating filter as a low pass filter (decimating to 250kS/s), I > >attempt to downconvert the signal with the offset calculated using the > >usrp.tune function. > > > >unfortunately when I attempt to use 22MHz as my center frequency, the > >usrp.tune function doesn' t see any error...when I use a less rounded > >number (22.0003MHz), I get a calculated offset, but I am still left > >300Hz or so from baseband. That sounds right. This all comes down to the accuracy of the various crystals in the transmitter and receiver. On our end, we're using a very low jitter oscillator, but off the top of my head, I believe that it's frequency accuracy is on the order of 50 ppm. At 64MHz that's +/- 3200 Hz. If absolute accuracy is what you care about, then you need to head down the TCXO / double oven TCXO / cesium / maser path. However, in real communication systems it's wise to assume that the clocks are off by some amount (it's either our clock or the guy on the other end's), and then track-out the error using a PLL or some other technique. Analog receivers to this too. They call it Automatic Frequency Control (AFC). There are several variants of PLL's in the GNU Radio block library. One of them may do what you need, or serve as a starting point for your development. (http://www.gnu.org/software/gnuradio/doc/hierarchy.html Search for pll). Eric _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio