Matt Ettus wrote: > Martin Dvh wrote: > >>Hi, >>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 >>recovered carrier. >>pll_refout returns the recovered carrier. >> > > > Great catch, Martin. > > >>With the fixed code I now actually get stereo. >>(Before you would get a kind of attenuated, distorted, spectrum inverted >>stereo) >> > > > Can you check it in? Sure, I will change the example(s) too, because they try to enable the squelch which the pll_refout does not have. (I will disable the squelch for now. Probably implement squelch in pll_refout later)
I am working on an improved FM-stereo-receiver and a stereo-fm transmitter too. So I will get back on this when it is finished and add it to the examples. > > >>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) >> > > > I would try this with the regular (non-PLL) FM demod. I think the > rolloff of the PLL tracking loop is what is giving you the lower gain. Yes, that seems to be the problem. For now I switched to using the non-PLL FM-demod. Do you know if/how I can make a PLL which does not have this high roll-of. I played with the pll-parameters but that doesn't seem to help. It is critically damped, so that is probably the best we can get with this pll. Would I need another type of pll with a higher order loop-filter or something like that. Greetings, Martin > > >>The code comments say 10 dB >>The actual code uses a factor 20 which corresponds to 20 *log10(20)= 26 dB. >>This 26 dB seems to be quite accurate, but where is this number based on? >> >>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 >> >> stereo_dsbsc_filter_coeffs = gr.firdes.complex_band_pass(20.0, >> >> >>Greetings, >>Martin >> >>fix for wrong pll is below: >>--- gnuradio-core/src/python/gnuradio/blksimpl/wfm_rcv_pll.py 2007-06-11 >>18:12:55.000000000 +0200 >>+++ gnuradio-core/src/python/gnuradio/blksimpl/wfm_rcv_pll_fixed.py >>2007-06-17 08:07:43.000000000 +0200 >>@@ -131,8 +131,8 @@ >> max_freq = -2.0*math.pi*18990/audio_rate; >> min_freq = -2.0*math.pi*19010/audio_rate; >> >>- self.stereo_carrier_pll_recovery = >>gr.pll_carriertracking_cc(alpha,beta,max_freq,min_freq); >>- self.stereo_carrier_pll_recovery.squelch_enable(False); >>+ self.stereo_carrier_pll_recovery = >>gr.pll_refout_cc(alpha,beta,max_freq,min_freq); >>+ #self.stereo_carrier_pll_recovery.squelch_enable(False) >>#pll_refout does not have squelch yet, so disabled for now >> >> >> # set up mixer (multiplier) to get the L-R signal at baseband >> >> >> >>------------------------------------------------------------------------ >> >>_______________________________________________ >>Discuss-gnuradio mailing list >>Discuss-gnuradio@gnu.org >>http://lists.gnu.org/mailman/listinfo/discuss-gnuradio > > > _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio