MSGEQ7 Spectrum Analyzer noisy output

Trying out J Skoba’s MSGEQ7 script prior implementing the chip into my project. When I run it with the input being a 400Hz tone, or similar, there is a large amount of noise in the other bands, which should be negligible. Running it at a high volume, had all the multiple bands maxed out, when it should be a single band.

I’ve followed the set-up as per the datasheet. Not sure what is going wrong.

400Hz at a medium volume

400HZ at a high volume


Hi @Matthew47877,

That’s some neat breadboarding! What data do you see when no sound is generated (but everything remains connected)?

Hi Graham,

No signal input (but still physically connected) gives values around 40-80

That’s good to know - those figures are the noise floor. So the other frequency bands are working fine then.

The frequency response is shown in the datasheet, here it is as well:

Worth noting that each band-pass filter overlaps adjacent ones. So what you are seeing could in fact be completely normal. Have you seen any data that suggests otherwise?

Hi @Matthew47877,

A follow-up to my last, Skoba’s MSGEQ7 example shows a similar scenario. They inject 400Hz and the below data was captured. I’m leaning to “this is working as designed” based on the frequency response, along with yours and Skoba’s results.

Hi @Graham,

I wasn’t aware of the noise floor, i’ll factor it in. Referring back to the second image I posted, the 400Hz signal with a high volume, do you understand why band 3 through to 6 are maxed out? I would have through the frequency response curve would have been replicated (i.e. band three being maxed out, bands 2 and 4 being substantially higher then the rest and the remainder at the noise floor)