In my Arduino AudioTools I am providing an easy API with different implementations for Fast Fourier Transform (FFT). This is a clever algorithm that can extracts the frequencies from an input signal.

So far I never looked at the speed, so I thought it might be interesting to get to know the numbers.

Setup

I was using an ESP32 and an STM32F411 Black Pill for my tests.
The FFT was executed for a length of 4096 samples with no stride on a continuously generated sine wave;

Result

The numbers are in milliseconds:

Implementation ESP32 STM32F411
AudioRealFFT 3.3 12.1
AudioKissFFT 5.9 26.9
AudioESP32FFT 1.1 5.9
AudioCmsisFFT n/a 8.2

Source Code

You can find the test examples on Github. You can adapt them to your requirements and execute them on your microcontroller of choice…

Further Information

Further information can be found in the Project Wiki!


0 Comments

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *