0
$\begingroup$

There are a plethora of tools, both commercial and free, which I have found online for designing filters. The ones I have tried (so far) prompt for frequency response, number of steps (for FIR), then generate coefficients and a frequency response plot.

Question: are there any particular sites or programs, which allow you to input or modify the coefficients? Free would be preferable, but (especially for an FIR with a large number of taps) commercial will do in a pinch.
(Matlab is too expensive for me, but I've heard of freeware Octave: if anyone recommends it for filter design I'd be willing to try it out)

$\endgroup$
1
$\begingroup$

I believe that Octave and Python/Scipy are the most commonly used free software packages for digital signal processing (including filter design). They offer of course much more than you might be looking for. On the other hand, if you want to play around with the coefficients and get some quick feedback, it might be very helpful to have one of these (or similar) packages because then you can easily modify the filter, plot frequency responses, and even write your own little programs if necessary. I've used Octave for that purpose and for me it worked fine. If you use Octave, you'll need to install the signal processing toolbox.

A totally different approach would be to choose your favorite programming language and write some simple routines yourself. This is perfectly feasible for some common FIR design methods (such as windowing). In combination with some plotting software this may be all you need. In this case I would consult this document on digital filtering. This latter approach is of course not the most efficient one because you'll be re-inventing the wheel, but in this way you'll learn how it all works and you will not just be using a black box design method.

$\endgroup$
1
$\begingroup$

In addition to Octave and SciPy, there is GnuRadio, which is also open source. They have a very nice interactive, graphical filter design tool, where you can play with filter's poles and zeros and see the effect immediately. It is not very well documented, though. There are some demos and tutorials on YouTube. A description is here.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.