Hello,
I am using a msgeq7 chip for my project, and it seems that some of the bands are intertwined together some how.
If for example i run a sound test that goes from 20 to 20000Hz (for example this: Frequenze Audio Test - Audiogramma spettro sonoro 20 - 20000 Hz - YouTube) at the first band i get a slow rise in values, then a slow descent, the the second band values start rising, but at some points, for example while the third band starts going down, and the fourth starts rising, the third bands values suddenly jump up to somewhere near maximal values, and then after a few moments they jump back down to near zero. Same kind of thing happens in some of the higher frequency bands as well.
My code for reading from the chip seems to be fine:
void eqread(void){
digitalWrite(msg7RESET, HIGH);
delayMicroseconds(1); //not necessary
digitalWrite(msg7RESET, LOW);
for (int x = 0; x < 7; x++){
digitalWrite(msg7Strobe, LOW);
delayMicroseconds(36);
int spectrumRead = newValues[x] = analogRead(msg7DCout);
digitalWrite(msg7Strobe, HIGH);
}
}
i am also calculating an average of the last 20 values for each band, to add some smoothing to the values.
Has anyone ever had a similar experience?
Thank you.