> Date: Fri, 6 Dec 2019 07:22:11 +0100 > From: "Lukas Haase"
> Hi, > > I am using GRC 3.7.11 on Ubuntu (WSL). When I use the M&M Clock > Recovery block GRC crashes randomly with this message: > > > clock_recovery_mm_cc: ii > ninput_items[0] (3168 > 3167 > python: /build/gnuradio-BBYmSv/gnuradio-3.7.11/gr- > digital/lib/clock_recovery_mm_cc_impl.cc:214: virtual int > gr::digital::clock_recovery_mm_cc_impl::general_work(int, > gr_vector_int&, gr_vector_const_void_star&, gr_vector_void_star&): > Assertion `0' failed. > > > > > Done (return code -6) The M&M clock recovery block obviously has an off-by-one error in its processing. The M&M clock recovery block is obsolete. Use the Symbol Synchronizer block instead, if you must use the M&M TED. > Based on the plots, the block seems to be working (I get the proper > bits). > > My input signal comes in small bursts (asynchronously at random times > which is why I need M&M). > First I need to filter the signal and center it on its mean value. > I use the following block for it: > > https://paste.pics/4573d1f2cf7df0d5e039874c51127dd9 > > This shows a screenshot, triggered to one of the bursts: > > https://paste.pics/a48ec4aef5ddeeef74e96255d72288b3 > > The original bits can be seen (blue/red) and the filtered, mean- > centered version that will go into the M&M block (green/black). > > Finally the M&M block looks like this: > > https://paste.pics/db179025b5c6e98c3b20e76d56bcf139 > > > > The output of the block looks as expected ... until GRC crashes. > > > Is there anything I am doing wrong? You may want to read this presentation: https://www.gnuradio.org/grcon/grcon17/presentations/symbol_clock_recovery_and_improved_symbol_synchronization_blocks/Andy-Walls-Samples-to-Digital-Symbols.pdf Regards, Andy > Thanks, > Luke >