Forum: GNU Radio Efficient notch filters

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
63d6de710dcc83e3c19af98ab6c401d7?d=identicon&s=25 Marcus Leech (Guest)
on 2007-07-31 00:54
(Received via mailing list)
Is there a way to produce an efficient notch filter with the bandpass
filter designer in Gnu Radio?

I'm seeing narrowband interfering signals that are in-band (with respect
to the bulk filtering in front
  of the receiver), and I want to notch one or more of them into
oblivion.  I'd previously used an
  FFT filter, and set zeros in the bins where I wanted notches, but it
wasn't very efficient.
D0072e69d706bb3ca211d33a1b536e2c?d=identicon&s=25 Johnathan Corgan (Guest)
on 2007-07-31 01:01
(Received via mailing list)
Marcus Leech wrote:

> Is there a way to produce an efficient notch filter with the bandpass
> filter designer in Gnu Radio?

You can subtract the output of a linear phase bandpass filter from the
original signal, as long as the original signal has been delayed by the
same number of taps as the filter before the subtraction.

--
Johnathan Corgan
Corgan Enterprises LLC
http://corganenterprises.com
Dbdc5157899fcad4f0afbd8fd5875688?d=identicon&s=25 Berndt Josef Wulf (Guest)
on 2007-07-31 01:18
(Received via mailing list)
On Tuesday 31 July 2007 08:29:32 Johnathan Corgan wrote:
> Marcus Leech wrote:
> > Is there a way to produce an efficient notch filter with the bandpass
> > filter designer in Gnu Radio?
>
> You can subtract the output of a linear phase bandpass filter from the
> original signal, as long as the original signal has been delayed by the
> same number of taps as the filter before the subtraction.


I use the band_reject filter option see below:


        elif options.filter_type == "nf":
                coeffs = gr.firdes.band_reject(
                        1.0,
                        sample_rate,
                        frequency - (bandwidth/2),
                        frequency + (bandwidth/2),
                        50,
                        gr.firdes.WIN_HANN)

For more info consult the documentation,

cheerio Berndt
D0072e69d706bb3ca211d33a1b536e2c?d=identicon&s=25 Johnathan Corgan (Guest)
on 2007-07-31 01:20
(Received via mailing list)
Berndt Josef Wulf wrote:

> For more info consult the documentation,

<sheepish grin>

--
Johnathan Corgan
Corgan Enterprises LLC
http://corganenterprises.com
3719f4fea703e38bcbf8de6fe6bcdf55?d=identicon&s=25 Martin Dvh (Guest)
on 2007-07-31 01:30
(Received via mailing list)
Marcus Leech wrote:
> Is there a way to produce an efficient notch filter with the bandpass
> filter designer in Gnu Radio?
You can use a resonating IIR filter for that.
They are very efficient for building a notch or narrowband filters
(single out a single frequency)
The filter designers in gnuradio can not design it yet for you
unfortunatly.
(I am working on source which can design them.)

I do already have an optimized implementation of a resonating IIR
filter.
(Several of the taps are +1, -1 and 0)
See:
http://www.olifantasia.com/projects/gnuradio/mdvh/iir/

This filter only uses 2 multiplies to get very nice and narrow filters.

ALso note that the current standard multitap IIR implementation probably
has a bug, (See my mail with a fix for that in the mailinglist archive)

Greetings,
Martin
3045397bfbb92f92bdbed4b003ecb2c9?d=identicon&s=25 John Clark (Guest)
on 2007-07-31 02:17
(Received via mailing list)
Martin Dvh schrieb:
> ALso note that the current standard multitap IIR implementation probably has a bug, (See 
my mail with a fix for that in the mailinglist archive)
>

What would be the effect of this bug? I think this is used in a FFT
application I have. So, if it is a 'serious' problem, I'd
like to fix it... if it is a 'less that serious' problem, I can wait
until it filters out to the main set of code...

John Clark.
3719f4fea703e38bcbf8de6fe6bcdf55?d=identicon&s=25 Martin Dvh (Guest)
on 2007-08-01 00:41
(Received via mailing list)
John Clark wrote:
> Martin Dvh schrieb:
>> ALso note that the current standard multitap IIR implementation
>> probably has a bug, (See my mail with a fix for that in the
>> mailinglist archive)
>>
>
> What would be the effect of this bug? I think this is used in a FFT
> application I have. So, if it is a 'serious' problem, I'd
> like to fix it... if it is a 'less that serious' problem, I can wait
> until it filters out to the main set of code...
It is hard to describe the seriousness of this bug.
See problem desciption and patch:
http://lists.gnu.org/archive/html/discuss-gnuradio...
and
http://www.olifantasia.com/pub/projects/gnuradio/m...

I think the order in which the shifted samples are processed is wrong.
This means that the filter response would be different from that
expected.
Since this code is not (much) used in the gnuradio examples it is hard
to come up with examples.
After my patch the code does work for me.

But at the moment I only use my own specialized optimized implementation
of a resonating IIR which is totaly unrelated to this implementation.
(Note this optimized version is not yet in svn (will be some day) and
can only do a resonating fir not any other)

Greetings,
Martin
This topic is locked and can not be replied to.