This is Ween's "Bananas and Blow" run through an MSGEQ7 audio processor, read by an Arduino-based circuit controlling a 24x16 LED matrix.

The MSGEQ7 circuit is directly lifted from J Skoba's design (http://nuewire.com/info-archive/msgeq7-by-j-skoba/). The LED circuit is something I'm working on and hope to be selling in a few months. At about 3:10 you can see the pieces.


The LED circuit is something I’m working on and hope to be selling in a few months.

Does this mean that you are not going to share the code?

Hi Florinc,

If you mean the code for the whole project, yes I’m going to post it on github or Google code when it’s done. I’m planning on following the SparkFun / AdaFruit / etc. model of open hardware.

If you mean the code for this specific demo, it’s below but for the most part I’ve just copied J Skoba’s original work:

unsigned int MusicFancy(void) {

	if (animationChanged) {
		animationChanged = false;
	digitalWrite(resetPin, HIGH);
	digitalWrite(resetPin, LOW);

	for (int i = 0; i < 7; i++) {
		digitalWrite(strobePin, LOW);
		delayMicroseconds(30); // to allow the output to settle
		spectrumValue[6-i] = analogRead(analogPin);
		digitalWrite(strobePin, HIGH);
	for (int i=0; i<6; i++) {
		int x1 = i*4;
		int y1 = map(spectrumValue[i], 0, 1023, 0, NUM_ROWS-1);
		int x2 = i==5 ? NUM_COLS-1 : (i+1)*4;
		int y2 = map(spectrumValue[i+1], 0, 1023, 0, NUM_ROWS-1);
		Line(x1, y1, x2, y2, PIXEL_MAX_BRIGHTNESS);

Thanks. I liked the idea of the continuous line moving up and down, I don't think I've seen it in J. Skoba's article. Keep up the great work.