On Tue, Nov 24, 2015 at 3:42 PM, Richard Bell
wrote:
> I think I've come across a bug with the pfb_clock_sync blocks set_taps
> implementation. If I change a parameter in python that causes a change to
> the filter tap variable being fed to the pfb_clock_sync block, which then
> requires pfb_clock_sync.set_taps() to be called, the program will error out
> with the following:
>
>
>
>
>
>
>
>
>
>
> *Traceback (most recent call last): File
> "radio_devel/scripts/pcodes_multi_sim.py", line 484, in main()
> File "radio_devel/scripts/pcodes_multi_sim.py", line 205, in main
> tb.set_rolloff(rolloff) # same problem with pfb_filter File
> "/home/rbell/Documents/pcodes/radio_devel/scripts/pcodes_bpsk_stream_FEC_loopback_costas_nogui.py",
> line 184, in set_rolloff
> self.digital_pfb_clock_sync_xxx_0.set_taps((firdes.root_raised_cosine(self.nfilts_pfb,
> self.nfilts_pfb*self.samp_symb, 1, self.rolloff,
> self.nfilts_pfb*11*self.samp_symb+1))) File
> "/usr/local/lib/python2.7/dist-packages/gnuradio/digital/digital_swig.py",
> line 25452, in set_tapsreturn
> _digital_swig.pfb_clock_sync_ccf_sptr_set_taps(self, *args,
> **kwargs)TypeError: Required argument 'ourtaps' (pos 3) not found*
>
> Two examples of variables that cause this change are samp_per_symb or
> shaping filter rolloff factor. I only set these variables while the
> simulation is not running, i.e. before I call tb.start(). I don't know why
> setting the rolloff should break the pfb_clock_sync.
>
> Rich
>
Setting the rolloff forces and update to the filter taps, so we have to
reconstruct the filter and reload it into the filterbank. We made a change
in how the loading process happens, so this looks like a pretty simple bug
to fix how the update calls are applied.
You should open an issue about this (or post a pull request with the bug
fix).
Tom
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio