Hi everyone, I’m stuck and I need help! What do I need to get the audio signal to Arduino for FFT processing? Is there a simple solution?
The code is kind of working (I had to add “#define USE_FC16_HW 1” to the library to make it work with my display module), but I have problems getting the signal in with the right voltage (or at least I think that’s what the problem is, it might be something else). It looks like it’s getting a noise of some kind, even if nothing is connected to A0. I see the lines dancing a bit around same level. And when I try connecting audio - there’s no change or maybe a very slight change, but no definitive reaction.
I tried connecting audio from smartphone 3.5mm jack directly to A0 (and ground pin), I also tried the attached voltage divider based schematics - no result. I tested reading analog values with the potentiometer (see attached) and simple test code outputting values and I get readings 0 to 1023 in serial interface, depending on pot position, so I haven’t fried anything and analog read is working. I also tried connecting the same pot between audio ground and level instead of 5V - and on one extreme pot position I was getting 0 to 25 jumps in values (so very small voltage I guess) and on the other extreme - nothing at all. Connecting with the attached voltage divider schematics I do get values around 400 with test code even when nothing is playing, so I guess that’s what I’m seeing as “the noise”. With the code in the link, trying to read and output analog values hangs the board, I guess due to low-level settings that code uses and I don’t understand.
Any advise on how to proceed? I’m not sure what am I doing wrong… Or is there a problem with the code? The video description says "The input audio is level-shifted and then put through an anti-aliasing filter. " but no further details are given. I would appreciate your help.