John, I use the BE FLL for auto-doppler correction in the rare case where I am not actively correcting for doppler. But, the correction is *really* slow. I'm probably not using it correctly, but it works OK in that rare case when it's all I've got.
Very Respectfully, Dan CaJacob On Fri, Oct 17, 2014 at 2:28 AM, John Malsbury <jmalsbury.perso...@gmail.com > wrote: > Luke, > > I researched this for a bit (OK, maybe it was more like staring > blankly)... unfortunately on a windows machine w/out git. Nothing stands > out at the momentt. I'll give it another try tomorrow! =) > > Also, I've never used the PLL blocks for freq demod before. Can you set > something up with a graphical sink and send some snapshots showing what the > output of that looks like? > > Also also, is the Band-Edge FLL ideal for GMSK? My possibly, incorrect > understanding of that block is that it was more ideal for PAM with common > RRC. > > -John > > On Thu, Oct 16, 2014 at 7:19 AM, Luke Berndt <l...@robotastic.com> wrote: > >> I just tried doing a complete PyBombs reinstall and that didn't seem the >> help. I checked and simple GRC files run fine. I can also see the signal >> where I expect it to be in GQRX, so I think my tuning parameters are >> correct. >> >> Are there some other things I should try? >> >> Sent from my iPhone >> >> On Oct 13, 2014, at 1:38 PM, Luke Berndt <l...@robotastic.com> wrote: >> >> I have a GnuRadio C++ program that decodes and records a SmartNet Trunked >> radio system. It is running great under GnuRadio 3.6.5.1, but it doesn’t >> seem to be working under 3.7.6. >> >> 3.6 is installed in /usr/local and 3.7.6 was installed in my home >> directory using PyBombs. My updated program compiles against 3.7 with no >> problem and runs. It will pick up a few of the trunking commands, so it is >> working, but the ratios is about 1 to 100 compared to 3.6. I also tried >> running it in a Ubuntu VM with 3.7 installed at /usr/local and had the same >> results. >> >> I corrected for the change with XlatingFirFilter in 3.7, so it is the >> opposite offset of 3.6. It looks like it could be a tuning error though, >> the flow graph seems to be failing mostly at the CRC check. Did anything >> else change with Blocks in 3.7? I looked at gr-osmosdr but I didn’t notice >> huge discrepancies between the 3.6 and 3.7 branches. >> >> Are there some obvious things I could be missing? I feel like this is >> something small and stupid that I missing. >> >> The diff between the two versions is here, smartness.cc is the main file >> that decodes the control channel. As you can see, there is not that much >> different: >> >> >> https://github.com/robotastic/smartnet-recorder/compare/master...3.7-Update#diff-73510702485a7dd2f7000285cbd5e557R40 >> >> Here is the central code block that does it. Anything obviously dumb here? >> >> * float samples_per_second = samp_rate;* >> * float syms_per_sec = 3600;* >> * float gain_mu = 0.01;* >> * float mu=0.5;* >> * float omega_relative_limit = 0.3;* >> * float offset = chan_freq - center_freq; // have to reverse it for 3.7 >> because it swapped in the switch.* >> * float clockrec_oversample = 3;* >> * int decim = int(samples_per_second / (syms_per_sec * >> clockrec_oversample));* >> * float sps = samples_per_second/decim/syms_per_sec;* >> * const double pi = boost::math::constants::pi<double>();* >> >> * cout << "Control channel offset: " << offset << endl;* >> * cout << "Decim: " << decim << endl;* >> * cout << "Samples per symbol: " << sps << endl;* >> >> * std::vector<float> lpf_taps;* >> >> * init_loggers(max_loggers, center_freq, samp_rate);* >> >> * gr::msg_queue::sptr queue = gr::msg_queue::make();* >> >> * lpf_taps = gr::filter::firdes::low_pass(1, samp_rate, 10000, 12000);* >> >> * gr::filter::freq_xlating_fir_filter_ccf::sptr prefilter = >> gr::filter::freq_xlating_fir_filter_ccf::make(decim,* >> * lpf_taps,* >> * offset,* >> * samp_rate);* >> >> * gr::digital::fll_band_edge_cc::sptr carriertrack = >> gr::digital::fll_band_edge_cc::make(sps, 0.6, 64, 0.35);* >> >> * gr::analog::pll_freqdet_cf::sptr pll_demod = >> gr::analog::pll_freqdet_cf::make(2.0 / clockrec_oversample, >> 2*pi/clockrec_oversample, -2*pi/clockrec_oversample);* >> >> * gr::digital::clock_recovery_mm_ff::sptr softbits = >> gr::digital::clock_recovery_mm_ff::make(sps, 0.25 * gain_mu * gain_mu, mu, >> gain_mu, omega_relative_limit);* >> >> * gr::digital::binary_slicer_fb::sptr slicer = >> gr::digital::binary_slicer_fb::make();* >> >> * gr::digital::correlate_access_code_tag_bb::sptr start_correlator = >> gr::digital::correlate_access_code_tag_bb::make("10101100",0,"smartnet_preamble");* >> >> * smartnet_deinterleave_sptr deinterleave = smartnet_make_deinterleave();* >> >> * smartnet_crc_sptr crc = smartnet_make_crc(queue);* >> >> * tb->connect(src,0,prefilter,0);* >> * tb->connect(prefilter,0,carriertrack,0);* >> * tb->connect(carriertrack, 0, pll_demod, 0);* >> * tb->connect(pll_demod, 0, softbits, 0);* >> * tb->connect(softbits, 0, slicer, 0);* >> * tb->connect(slicer, 0, start_correlator, 0);* >> * tb->connect(start_correlator, 0, deinterleave, 0);* >> * tb->connect(deinterleave, 0, crc, 0);* >> >> * tb->start();* >> >> >> _______________________________________________ >> Discuss-gnuradio mailing list >> Discuss-gnuradio@gnu.org >> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio >> >> > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > >
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio