Waqas,

U can use PFB_clock_sync instead of M&M. PFB_clock_sync implements the
maximum likelihood estimation algorithms, so using this block increasing
sps should not produce incorrect results.

http://gnuradio.org/doc/doxygen/classgr_1_1digital_1_1pfb__clock__sync__ccf.html

-Adeel


On Sat, Jul 20, 2013 at 6:44 PM, Waqas Bin Abbas <waqas.abb...@nu.edu.pk>wrote:

> Hi all,
>
> We have encountered an interesting problem in the clock_recovery_mm block
> used in our BFSK system.
> What happening is that, at lower data rates (i.e. at less than 54bps) we
> are
> unable to decode the received data correctly,
> however at higher data rates data is decoded fine.
>
>
> What we are doing ?
>
>
> We are implementing a BFSK receiver and our flow-graph consist of
> Bandpass filter-> Hilbert transform-> quad_demod-> high pass filter ->
> clock_recovery_mm-> binary slicer.
> We are using 16k and 18k frequencies and our sampling rate is 48k (well
> enough according to Nyquist criteria).
>
>
> How and what we figured out ?
>
>
> Our system was decoding the data correctly till 54bps and fails below
> 54bps.For debugging the issue We sent the same sequence from our
> transmitter
> and received
> at our receiver end with both 100 bps and 50 bps.we checked the output of
> each block in our flow graph, using scope sink in GRC.
> We found no difference in the outputs of other blocks except the
> clock_recovery_mm block.What we found was that
> for consecutive sequence (either 1 or 0) the block fails to estimate the
> symbol correctly (snapshot are provided in the link below ).The boxed area
> is where we think the problem exist.
> We checked the block output further for alternating sequence of 1 and 0 and
> found that the block is estimating correctly.
>
> http://sysnet.org.pk/w/Snapshots
>
> we also found that for same sequence (either 1 or 0) the problem exists at
> each datarate but less than 54bps it become weird.
> The link below shows the output of clock_recovery_mm block at 100bps and
> 50bps for same sequence of bits.
> The arguments of the blocks are set as
> gr.clock_recovery_mm_ff((samples/symbol),0.000625,0.5,0.01,0.05)
> **For 100 bps we are having samples/symbol= 480 and for 50 bps we are
> keeping it 960.
>
>
> Our Questions ?
>
>
> Now since we are just changing the value of the "Omega"(samples/symbol)  in
> clock_recovery_mm block for 100bps and 50bps.
> So we want to know the following:
> 1) Is there a limit to maximum value omega? (due to which we are not
> getting
> the right results at lower data rates)
> 2) Do we have to change some other parameter in the clock_recovery_mm to
> rectify our problem?
> 3) Is it the limitation of clock_recovery_mm block?
> 4) Or there is some other solution to the specified problem?
>
>
>
> --
> View this message in context:
> http://gnuradio.4.n7.nabble.com/Problem-faced-with-clock-recovery-mm-at-low-data-rates-tp42591.html
> Sent from the GnuRadio mailing list archive at Nabble.com.
>
> _______________________________________________
> 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

Reply via email to