There is a lot of theory behind FFT and you don’t have to understand it all to implement this example.
Knowing that my door bell rings at 1kHz and my smoke alarm at 3kHz, if these two frequencies are the dominant ones for more than 500ms, I can publish a MQTT message to home-assistant and send a notification on my phone. It basically means that if we measure the sound over a period of time we can calculate the frequencies that created it. Fast Fourier Transform (FFT)Ī Fast Fourier transform algorithm allows us to decompose a signal (in this case the sound) from the time domain to the frequency domain.
If I’m away and someone rings the door or the smoke alarm goes off, I instantly get a notification on my phone. For me the most exciting one was to transform my classic door bell and smoke alarm into “smart” alarms! Also, using FFT I can monitor the ambient noise inside my apartment. There are many cool projects you can do with a cheap MEMS microphone, an ESP32 and Fast Fourier Transform (FFT).