discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Discuss-gnuradio] Interpolating FIR filter with runtime adjustable inte


From: Joe K
Subject: [Discuss-gnuradio] Interpolating FIR filter with runtime adjustable interpolation value
Date: Tue, 27 Jun 2017 16:16:58 -0700

Hi all,

How can I adjust the interpolation of an interpolating FIR filter in real time (e.g., interp_fir_filter_fff)?  I'm not a C++ guru but it appears to me that the base class, sync_interpolator, does define a function set_interpolation().  It seems that I should be able to call that, then call set_taps(), which would regenerate everything with the new interpolation value.

I've tried to call set_interpolation() via Python but it is not supported, or at least is not exposed through the SWIG interface.

I noticed that the GRC wrappers for the filters don't include callbacks on the interpolation value.  Is there some reason to NOT being able to change the interpolation on the fly?  It seems that most blocks actually don't support it, e.g., the pfb_interpolator_ccf does not either, as far as I can tell.

In reality my interpolating filter is part of a Python-based hierarchical block, which is based off of the gmsk_mod in gr-digital.  I'm essentially trying to decouple my symbol rate from the hardware sample rate by adjusting the modulator's samples/symbol factor in real time.  I tried using lock/disconnect/create new filter/connect/unlock but I randomly get hangs on the unlock step.  When it does get past unlocking the output is as expected.

I remembered a bug report about unlock hanging, which was supposedly fixed.  Is it legit to lock/etc/unlock within a hierarchical block?  Is it a known problem for it to hang on unlock() within a hierarchical block?  This is GR 3.7.11.

Thanks,
Joe

reply via email to

[Prev in Thread] Current Thread [Next in Thread]