Russell, I think that Elliptical filters are the ones with maximum initial cutoff rate. Chebychev's method yields the minimum *peak* error between the prototype "brick wall" filter and the actual transfer function. This results in an equi-ripple output. Filter design is a subset of polynomial approximation and there is some sense of a "conservation of error" between a function and the closest polynomial approximation of a given order. Butterworth, as you say, concentrates all of the error in the "skirt" or roll-off region in order to minimize the error in the pass and stop bands (i.e., no ripple). Elliptical minimizes the error in the beginning of the roll-off at the cost of ripple in other places and, in addition, the ripple varies in amplitude among the peaks and valleys. Chebychev minimizes the overall maximum error - thus spreading it out over the entire transfer function. I have probably missed something in this description, which is pulled from my DSP and linear systems classes of 10 years ago. It always amazes me that this stuff is so very hidden from most engineers. It used to drive me crazy that all these weird words were thrown around (Butterworth, Chebychev) with no explanation of their relation to the filters that they designate. Sean On Mon, Dec 12, 2011 at 2:48 PM, RussellMc wrote: >> I have to get the *exact* timing (30ns resolution) of some low frequency= (<250Hz) pulses >> via an input capture module, however I'd like to filter the signal comin= g in, as it will >> contain a lot of high frequency noise, but filtering via a capacitor int= roduces a phase >> delay, which I can't even compensate (by frequency) as the phase delay c= hanges with input >> signal amplitude. >> >> What is the way You'd approach this problem? I thought about using a zen= er to clip the >> signal and thus work on a known amplitude, but I suspect it will introdu= ce errors too. > > The classic "Bessel" transfer function produces a filter with > maximally flat group delay / maximally linear phase delay (just as > Butterworth =3D maximally flat and Chebychev is maximum initial cuttoff > rate ). > > =A0 =A0 =A0 =A0http://en.wikipedia.org/wiki/Bessel_filter > =A0 =A0 =A0 =A0http://en.wikipedia.org/wiki/Group_delay_and_phase_delay > =A0 =A0 =A0 =A0http://www.radiolab.com.au/DesignFile/DN004.pdf =A0 =A0 = =A0 =A0 =A0 =A0 =A0 =A0maybe > > You can implement Bessel filters using building block ICs or "roll > your own" with opamps + RC or implement them in software. > > Digikey all Bessel building blocks here =A0 =A0http://bit.ly/DigikeyBesse= l > > Or see eg http://datasheets.maxim-ic.com/en/ds/MAX7401-MAX7405.pdf > > > > =A0Russell McMahon > -- > http://www.piclist.com PIC/SX FAQ & list archive > View/change your membership options at > http://mailman.mit.edu/mailman/listinfo/piclist --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .