On 6/22/18 22:28, Chuck McManis wrote: > Hi Phil, > > What I've done is that I center tune into the neighborhood of where I > want to tune, and then use either a DDC or a soft mixer function (in GRC > or another module) to tune exactly where I want. If you're trying to > homodyne to the precise frequency then I agree you'll not always be > successful.
Yup, that's exactly what I already do with the AMSAT UK Funcube Dongle Pro+. If the RF channel I want is outside the front end's passband, I calculate a front end tuner frequency to park it at a nominal baseband frequency, typically +/- Fs/4 so I can avoid DC artifacts. The Funcube has a fixed 192 kHz sample rate, so I typically choose +/- 48 kHz. Then I ask the front end to go there. Although the API lets me specify a tuner frequency in 1 Hz steps, the fractional-N synthesizer can't actually give them to me; the actual tuning step for that hardware and choice of TCXO frequency is (IIRC) 1000/2048 Hz or some small integer multiple thereof depending on the synthesizer's frequency-dependent output divisor. The Funcube's API doesn't tell me its actual exact frequency, so I extracted the synthesizer programming formulas from its firmware and execute them myself. Then I take the difference between the actual and requested tuner frequency and fold it into my software oscillator (the one running near +/-48 kHz). As a fallback, I found that if I always request multiples of 125 Hz, I'll get them exactly. (I can use smaller steps in the lower frequency ranges, but it was easier to just pick 125 Hz as a worst case.) Once the front end is close to the desired frequency I can make minor tuning changes entirely in software, leaving the front end tuning alone. I'd like to do the same thing(s) with the HackRF. I.e., if I can't get the exact frequency for any requested frequency, I'd like to find the smallest tuning step that will always give me exactly the frequency I request. > The other advantage of doing the tuning after you've got your pass band > is that you can run multiple receivers off the same pass band data if > they are all within range. One of my examples I show people is an FM > radio with 5 different tuners. The HackRF is tuned to the center of the > FM band and then I can move the 5 tuners anywhere within that band, > demodulate them, and mix and match the audio. Nothing like having a bit > of Classic Rock 98.5 in the background when listening to KFRC (KCBS FM) > 106.9. Yup, I do exactly the same thing. I use multicast RTP to convey my IQ data from the SDR front end to my software receiver, so I can simply run multiple copies of the latter as long as they're tuned closely enough to each other. I used it recently to receive APRS position reports from a balloon that transmitted on both 144.39 and 144.34 MHz. Worked great. Phil _______________________________________________ HackRF-dev mailing list [email protected] https://pairlist9.pair.net/mailman/listinfo/hackrf-dev
