Reputation: 81
As far as I understand: When using a RTL-SDR the IQ stream (based on the SDR-clock) is not exactly the same as the clock of system running gnuradio.
The illustrated source does not exists, but it would enable me to avoid a phase drifting error in a doppler direction finder.
Question: Is it possible to generate a GNR signal-source which is derived from a RTL-SDR IQ stream?
Summarized the reason for this request (I try to formulate short): An (unmodulated) carrier wave source signal is picked up by a virtual circling receiving antenna rapidly rotating in a horizonal pane. The antenna is build up from 6 antennas which are sequentially selected by a hardware programmable fractional clock divider connected to the RTL-SDR clock. The received signal is affected by the doppler effect and when fed into a FM-demodulator the frequency of a resulting audio tone is identical to the antenna rotation frequency (see Ref.1).
The objective: is to measure the phase shift between the antenna rotation control signal and the resulting doppler audio tone. This phase shift indicates the direction of the received source signal.
The problem: I am facing is that a gnuradio sine source (with the intended same frequency) as the antenna rotation frequency seems not to be exactly the same as the demodulated audio tone. In gnuradio a Time Sink with both signals shows a phase drift (See Ref.2). Please correct me if I am wrong but my conclusion is that the gnuradio sine source is not related to the original antenna rotating control signal. My question: Do you share my conclusion and my initial idea to correlate the RTL-SDR clock and the gnuradio sine source?
Ref.1. The doppler effect is validated and demonstrated with a SDR++ video and IQ-stream recording. In this setup I am using a 500Hz antenna rotation speed. In the recording the RPi runs RTL_FM. An ethernet connected Windows computer runs SDR++ and processes and records the IQ-stream. video: https://youtu.be/kwGM5PabdAA
Ref.2. The GNRsetup is running on a RaspberryPi4: In the flowgraph a received 500Hz audio signal from the NB-FM receiver is displayed in a Time Sink together with a second GNURADIO 500Hz source. video: https://youtu.be/OxQMvt5ILUY
Note: Folder with recorded IQ-stream, GRC-code and high-resolution videos: https://iotc360-my.sharepoint.com/my?id=%2Fpersonal%2Frobert%5Fheerekop%5Fiotc360%5Fcom%2FDocuments%2FWard%2FGNR%2FReachOutRequest&ga=1
Upvotes: 1
Views: 73
Reputation: 36462
exactly the same as the clock of system running gnuradio.
And that's no problem, because that computer's clock (which of the many different clocks you might be reffering to by that!) doesn't matter to the signal processing done at all.
The illustrated source does not exists, but it would enable me to avoid a phase drifting error in a doppler direction finder.
This makes no sense: The computer's clock is completely irrelevant to the math you do to samples, and that's all that GNU Radio does.
So, whatever you're trying to do is either mathematically possible on the stream of samples you already have, or it's impossible.
Also, what would that signal be? It would have a period of exactly 4000 samples of the "regular" output signal. You don't need a second output for that – just generate a signal with a period of 4000 samples. Again, the speed at which something is computed has nothing to do with the math you do on the signal; at no point in GNU Radio's signal processing does the computer's clock make any difference to the sequence of numbers that comes out of your RTL-SDR source, or any of the signal processing blocks you apply to that.
Upvotes: 0