FIR and FFT

I have read AN4841 and I think a native FIR and FFT implementation can be added to TinyCLR.

Yeah that would be great. Three challenge is on defining a common API. Any suggestions?

add methods of digital filters for analog signals

There are a thousand ways to do it…

We need more definition on the API and how it is going to be used. And also need multiple commercial users showing an actual need. Otherwise this is sitting on the back burner.

I can’t speak to the number of commercial users who would need this but using the API from Matlab is a good place to start. Matlab provides a ton of functionality but if all you do is implement the y = filter(b, a, x) call, you’ll probably cover 90% of the use cases. Having said that, programming up a FIR filter algorithm is only a couple dozen lines of code and there are plenty of references on the web. A FFT is much more work and isn’t very useful for real world signal processing all by itself. The ARM CMSIS signal processing library (AN4841 as the OP notes) is also a good reference and probably pretty easy to port to C#.

Here’s the Matlab link and a little bit of the Matlab documentation

https://www.mathworks.com/help/matlab/ref/filter.html

y = filter(b,a,x)

Example
y = filter(b,a,x) filters the input data x using a rational transfer function defined by the numerator and denominator coefficients b and a.

1 Like