UPDATE:
It seems that you cannot use more than one channel on the MSGEQ7, if you choose to do so then it will combine the channels and for this project that wont work. So i will in fact need 6 chips for processing.
I also found a very useful link for programming the chips Here
questions/Thoughts/Problems:
so after looking at the code for the MSGEQ7 it seems that the peak driver is what outputs the value to be processes from 0 to 1,023 which divided by 4 will allow for an input range of 0-255 for arduino and this happens 7 times per channel. Now in my case i will have to find a common frequency to look at per channel, in my case i would have to choose 160hz for the front and rear channels, and 63hz for the sub. Now that I'm looking into this more i really dont have a need for the center channel because the LED's will surround the room in a square. So there is no need for the center channel since i plan to do a chase LED from the center of each speaker location to the speaker with the active sounds.
Now my understanding is that the MSGEQ will be pulsed 7 times and those values will be logged on the alalogue pin. now in a case like that if the volume was high the 7 values trapped should be higher correct? If so then if i wanted to only keep an eye out for 160Hz then i would look at the second value of 7 for processing the two front and two rear channels. For the sub i would only need to look at the first value which corrosponds to the 63Hz range.
So logging the first and second calues i can use those numbers to determine the volume of those freaquences. This also makes me think for the sake of programming i should devide the numbers by 10.24 for processing so i get a value of 1-100 in volume values vs 0-255 thich just makes it easire to understand for volume level.
So in his code hs uses the code below to read the 7 bands and the bands are: 63Hz, 160Hz, 400Hz, 1,000Hz, 2,500Hz, 6,250Hz, 16,000Hz
for(int i=0; i <7; i++) // Cycle through the 7 spectrum bands
I should be able to use for the FR,FL,RR,RL channels. Can i start at 1 to remove the first value since its for the sub and i only need the second value?
for(int i=1; i <2; i++) // Cycle through the 7 spectrum bands
and use this for the sub since its the only value i need.
for(int i=0; i <1; i++) // Cycle through the 7 spectrum bands
His code
Again.. thanks for all the help guys, im no programmer but i have a basic understanding of logic and programming.
Eazy