I found a nasty bug in the wfm_rcv_pll.py code.
The pilot tone pll should return the recovered carrier,
For this you should use gr.pll_refout_cc, not gr.pll_carriertracking_cc.
pll_carriertracking returns the input transformed to baseband using the
pll_refout returns the recovered carrier.
With the fixed code I now actually get stereo.
(Before you would get a kind of attenuated, distorted, spectrum inverted
I tested it with a stereo-coder I wrote in gnuradio, and now I seem to
actually get stereo seperation.
(stereo modulater is attached)
But now I do get a lot of noise when decoding stereo.
I also don’t quite understand why double side band suppressed carrier
Left-Right audio is attenuated and needs a factor 20 for gain.
(It seems to be correct or at least close)
The code comments say 10 dB
The actual code uses a factor 20 which corresponds to 20 *log10(20)= 26
This 26 dB seems to be quite accurate, but where is this number based
can you give me a link to more info or the stereo FM specs on this.
# Pick off the double side band suppressed carrier
Left-Right audio. It is attenuated 10 dB so apply 10 dB gain
fix for wrong pll is below:
2007-06-11 18:12:55.000000000 +0200
2007-06-17 08:07:43.000000000 +0200
@@ -131,8 +131,8 @@
max_freq = -2.0math.pi18990/audio_rate;
min_freq = -2.0math.pi19010/audio_rate;
#pll_refout does not have squelch yet, so disabled for now
# set up mixer (multiplier) to get the L-R signal at