¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io

Re: NanoVNA-H: bettering the post-mixer IF filter?


 

On 8/20/20 6:05 AM, ZAO via groups.io wrote:
Hello!
Would you recommend an LC-circuit as an IF filter?
I'm looking into using one of [url=]these[/url] SMD inductors (~hundreds of ¦ÌH) as a coil.
I'm going to inrease the C32, C33 (please refer to the rev3.4.2 schematics) and place an inductor between the R36C32 and R37C33. The new C32 and C33 values should give a 12kHz (the IF value) resonance with the inductor chosen. The same would be implemented in all the three mixers.
So you'd make a Rseries L series, C shunt, low pass configuration?

I think that won't have the effect you expect. Don't forget that those inductors have a fair amount of resistance, too. In any case, you don't necessarily want to tune it to resonance.

What you might want to do is model it in something like a filter program like Elsie (the student version is free and will easily model something like this)


Make sure you put some estimates of the source and load impedances in the model.

The real question, though, is why are you wanting to "improve" the filter. - most of the filtering is done in software - some milliseconds (5?) are collected and the IF is filtered there (which should give around a 200 Hz BW) - improving the filter performance would be best done by changing the firmware to collect more ADC samples, and/or, fiddling with the windowing function used.

Look in dsp.c, specifically dsp_process(). That routine implements what is basically a FIR filter for the 12kHz IF, using sincos_tbl as the taps.

In the default edy555 version from hugen, the sincos_tbl is uniform in amplitude. So that's effectively creating a filter that has -13dB sidelobes (rectangular window). I think you might be able to get better filtering by changing that table to put a window function on it - perhaps slightly broadening the mainlobe, but pushing the sidelobes of the response spectrum down. That would reduce the "out of band" noise into the detection.

There's some fiddling that might needed to trade off numerical precision vs spectral performance, but with a tool like Octave or numpy, I think you could find a new set of values in a few days of work.






Please comment.
Regards,
Anton

Join [email protected] to automatically receive all group messages.