Sound recording filtering for timing analysis

Hi guys,
I am relatively new with arduinos, so hopefully you can help me out. At least to helpy me googling a bit more specific! :slight_smile:
As a first step I want to record the sounds of the different states of manufacturing:
As an example a valve opens (so the pfft-noise) which is followed by a short run of an electric motor.
How can I dump all these sounds in a log file with timestamp and in a second step filter the interesting frequencies accordingly as there is lots of surrounding noise which is useless?
As a goal I want to have the times for each manufacturing step and the whole process.
How would you start this project / Do you know some siimilar ones? Which hardware do I need?

There are lots of fancy led spectrum analyzer kits available which look cool but are nothing for my purpose. Sorry for my dump questions, any help is appreciated.

Thank you very much!

Regards

It is relatively straightforward to record sounds to an SD card, for example. The Arduino TMRpcm library can do that. Frequency analysis can be performed at any time, either directly or from the recording.

If you want to isolate sound clips, that will take some planning, coding and experimentation. Provide a more detailed description of the actual project and forum members should be able to help.

Please find a test sound HERE

You can hear a motor run and two valve popping. The metallic sound inbetween I am not interested in.

How would you filter that out to get the relevant timestamps?

Thanks! :slight_smile:

I strongly recommend Audacity (free, open source) for sound file manipulation. Setting timestamps, cutting and pasting sound clips, spectral analysis, etc. is trivial.

Thank you, will install it immediately! :slight_smile:
How would you do that on an arduino?
Recording with TMRpcm, but how should I then adjust the filtering?
This was just a good example to start with I think but I have to be able adopting it to other manufacturing steps / sounds somehow.

I wouldn't. It is best to learn what is possible to do, then consider the limitations of an Arduino, before deciding how to approach the overall project.

Basically you can't, it runs only on your computer.

If and when you find out what you need to do then you can run an FFT library on an Arduino to mimic the process you found works.

However I would say what you want to do is impossible without some sort of AI and a training data set.