> 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 coming= in, as it will > contain a lot of high frequency noise, but filtering via a capacitor intr= oduces a phase > delay, which I can't even compensate (by frequency) as the phase delay ch= anges with input > signal amplitude. > > What is the way You'd approach this problem? I thought about using a zene= r to clip the > signal and thus work on a known amplitude, but I suspect it will introduc= e 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 ). http://en.wikipedia.org/wiki/Bessel_filter http://en.wikipedia.org/wiki/Group_delay_and_phase_delay http://www.radiolab.com.au/DesignFile/DN004.pdf mayb= e 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 http://bit.ly/DigikeyBessel Or see eg http://datasheets.maxim-ic.com/en/ds/MAX7401-MAX7405.pdf Russell McMahon --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .