Bass detection - Page 1
Forum section: electronics / beginners

author: danshtr
author_rank: Contributor
timestamp: June 24, 2016, 07:35:56 pm
content: Hi All,After hours of fun, making music organ, it was time to test it out at an EDM festival.Turns out, there where several stages, and my beat detector didn't worked. It works perfectly good at home, but failed out of the lab....I think it didn't worked because one of the two (but mind you, there is a reason why I posted this at a beginner section...):There were several sources of musicThe music was too loudHere are the details of the project:I used Electret Microphone Amplifier - MAX4466 with Adjustable Gainhttps://www.adafruit.com/products/1063I used MSGEQ7 to detect 63Hz peaks, about every 30mshttps://www.sparkfun.com/products/10468The way I show the beat is by setting the brightness level relative to the average reading from the MSGEQ7, so when the bass is stronger, the LEDs will be brighter.Any suggestions?Thanks!

author: chris_leyson
author_rank: Super Contributor
timestamp: June 24, 2016, 07:57:33 pm
content: I think you need to look at the signal chain with a scope, putting my analogue head on that's what I would do.QuoteThat makes a lot of sense, you might want to try a low pass filter after the mic preamp to stop the higher frequencies, electrets have a better response at higher frequencies. However, I have seen electret capsules used in barometric pressure sensor alarms but they were very very heavilly filtered, silly design like 470uF cap shunting the output of an op-amp sort of thing. Low pass filtering is worth trying.

author: danshtr
author_rank: Contributor
timestamp: June 24, 2016, 08:01:33 pm
content: Isn't MSGEQ7 doing the filtering for me? (not a suggestive question)https://www.sparkfun.com/datasheets/Components/General/MSGEQ7.pdf

author: Audioguru
author_rank: Super Contributor
timestamp: June 25, 2016, 12:08:33 am
content: You said, "my beat detector didn't worked" but you did not say what it did. Did the LEDs not light? Did the LEDs light all the time?The mic preamp gain might not be enough. The frequency response of the mic is good but Sparkfun does not show if their mic preamp passes low frequencies.The MSGEQ7 is a bandpass IC with 7 bandpass frequencies. Its output multiplexes its frequencies. How do you separate 63Hz from all its other bandpass frequencies?No circuit schematic is shown for your circuit and no LED driver circuit is shown.

author: danshtr
author_rank: Contributor
timestamp: June 25, 2016, 02:29:12 am
content: The LED was very jittery, almost constant on.The MSGEQ7 has a strobe pin and a reset pin, that setting them on and off, in timed sequences, sets the output pin to output the peak of a specific band (0 to vcc volt).What I did noticed in my testing is that the higher the volume is, the higher the average level, which limits the output voltage range.I wish I could somehow "lower" the output from the MAX4466 when the sound is loud. Somecircuitbetween the MAX4466 output and the MSGEQ7 input, that the more loud the output is the more thecircuitlower it.

author: Rerouter
author_rank: Super Contributor
timestamp: June 25, 2016, 03:14:22 am
content: you could use a slow automatic gain loop, so as you enter a noisier area, the device needs a bigger peak to trigger,

author: bitseeker
author_rank: Super Contributor
timestamp: June 25, 2016, 05:02:07 am
content: +1 on automatic gain control if it has to operate under varying conditions without human intervention.

author: Audioguru
author_rank: Super Contributor
timestamp: June 25, 2016, 04:00:06 pm
content: The Chinglish on the MSGEQ7 datasheet is awful.1) After the IC is powered make a Reset High pulse then leave it low.2) I guess that Strobe should be high then when it goes low for the first time the output of the IC is the 63Hz bandpass. Leave it like that for the output to remain at 63Hz bandpass.You are wrongly resetting it and strobing it. Each time Strobe goes low its output plays the next bandpass frequency.It is normal for it to produce a higher output level when its input level is higher. It is analog.