Hi Andy,
I played around with this some more yesterday.
On 15/11/19 18:16, Andy Walls wrote:
From: Kristoff
Date: Thu, 14 Nov 2019 23:39:32 +0100
[snip]
Question:
I am trying to find a way to use the 19 KHz stereo-pilot signal to
create a 57 KHz carrier (to down-convert the FM/RDS carrier at 57
KHz).
How do I do this?
Use the PLL carrier tracking block which will simultaneously:
1) phase lock to the 19 kHz pilot tone
2) shift (in reality rotate) the spectrum of the signal so the 19 kHz
tone gets moved to 0 Hz.
Yep. This turned out to be the problem.
I then replaced it with the "PLL ref out" block which seams to do the trick.
After that use a Rotator block to shift the spectrum another 38 kHz =
57 kHz - 19 kHz
Well, the goal of the exercise is to extract the 57 KHz RDS signal
purely based on the 19 KHz reference and not be dependent on a signal
locally generated in gnuradio.
This excludes the use of the rotator block.
Is there a block that is able to 'scale' a signal in the frequency-domain?
I was thinking for something like this:
- calculate the difference in phase of the input signal, as compared
with the phase of the previous input sample
- create an output-signal with a "n" times phase-difference as compared
to the previous output sample
That way, using the 19 KHz reference, it would be possible generate both
the 57 KHz RDS-carrier and the 2375 baud (19KHz /8 ) reference for the
PSK demodulator
Does something like that exist?
Or is there a better way to generate a 57 KHz complex sine-wave from
a 19 KHz reference signal?
There is no need to have a locally generated 57 kHz carrier, when you
can just use a PLL to phase lock and then a rotator to shift the
spectrum.
Can you explain this?
As far as I understand it, the rotator moves the frequency up or down
"n" * ( sample-rate / 2pi), so it is dependent on a 'locally generated'
reference (the sample-rate inside gnuradio), no?
Or am I wrong?
-Andy
Cheerio! Kr, Bonne,