Creative Commons images are CC BY-NC-SA 3.0

24.95

added to your
shopping cart

quantity
In stock 36 in stock
24.95 1+ units
22.46 10+ units
19.96 100+ units

Description: This shield features the MSGEQ7 graphic equalizer display filter, the same IC used in the Colorganic Spectralizer kit. Two of these ICs allow you to split a stereo audio input into 7-bands (per channel) and read the amplitude of each using the ADC on your Arduino. The shield is populated with two 1/8" stereo jacks (like you would find on a pair of headphones). One serves as a stereo input and the other is a pass-through output which allows you to connect the Spectrum Shield in-line between your audio source and your stereo system without interruption. This shield can be used to create sound visualizers, detect patterns in music or add sound activation to your microcontroller projects.

Note: This product is a collaboration with Ben Moyes of Bliptronics. A portion of each sales goes back to them for product support and continued development.

Documents:

Comments 48 comments

  • You guys should have; 1. mentioned that I’d need risers for this board…kinda needed for arduino noobs like myself doncha think? 2. Given a tutorial on at least a couple of projects…INCLUDING WIRING… Not just vids of the completed project and the code 3. Included a full data sheet on the shield and an explanation of the shields pin outs and connection to the Arduino board…I gather that full pin to pin compatibility with the arduino needs mods.

    chas Enthusiastic arduino noob

    • I was just thinking the same thing. I have no clue how I’d wire it up. If I bought it I could figure it out, but then I’d have to wait even longer for a second round of parts to ship once I figured out what I needed.

    • I know I am too late to this thread, still any one have a sketch for this board ? how to connect this board to a http://www.freetronics.com/collections/display/products/dot-matrix-display-32x16-red#.UoLGJedDuGk, I am trying with this http://tronixstuff.com/2013/01/31/tutorial-arduino-and-the-msgeq7-spectrum-analyzer/ but not sure how to connect all. Any clues ?

    • There isn’t any wiring required, unless you want to hook it up in some different manner to how it is intended. For that situation teh relevant pins are broken out. This shield will work with any standard Arduino or compatible board. You just connect audio into the input and optionally take it out of the output via 3.5mm jacks.

  • Getting ready for Christmas - $.$

    http://www.youtube.com/watch?v=H8GMpjyQgAI

    Sometimes the lights appear to have latency but it is purely cell-phone-camera related.

  • I used this shield on a Due to do an LED strip on an outdoor barbecue:

    http://www.youtube.com/watch?v=-4Yn3KqeNXM

    Way easier than trying to program and debug a Hartley or FFT and keep up real-time. The best $25 I ever spent.

    I do agree the noise level on the spectrum shield runs high - about 8-10% of max level is what I found, but not a problem to gate out in the software and really little effect for what this project was. I did try putting a stiff cap. across the power rails which didn’t help, so this is something more intrinsic to the shield implementation.

    I also found that the LED strip (the Adafruit 32-LED/meter one) had to be power-cycled after initial bootup or it wouldn’t always come on. (Nothing to do with the spectrum shield, just FYI). Not sure where that problem is - it runs fine off 3.3V clock/data & 5V power otherwise, but I just programmed the home automation system to do it, so again not a problem.

    • I’ve put my code for this shield (usine the Due and the Adafruit LPD8806 LED strip) up on github:

      https://github.com/ergodic00/LightOrgan

      The library is written as a C++ class that allows you to define sound-driven segments on the LED strip quite easily. The comments explain everything.

      Even if you don’t have this particular hardware the library may help, especially if you’re using a Due and SPI.

  • Wrote a tutorial on how to use this shield - http://tronixstuff.wordpress.com/2013/01/31/tutorial-arduino-and-the-msgeq7-spectrum-analyzer/

  • This thing does not work until an analogReference(DAFAULT); is added to the initialization on ArduinoUNO, i am using Arduino 0022 built, hope it helps someone since i’ve lost few days debuging it.

    regards

    • You shouldn’t need that.

      Example code here: http://www.bliptronics.com/ArduinoCode/SpectrumProcessing/SpectrumShield101.zip

  • When the line is plugged into my computer, at full volume, it peaks very easily, and I found that it has to be at 50-60% to get good readings.

  • I am a little disappointed by this shield. Maybe my test is flawed - I just connected it directly to my old iPod with an 10" audio cable. I have to crank up the volume pretty high to get some useful readings. I also get a lot of noise when I pause the music. With the Arduino 10 bit ADC (values 0 - 1023) I have to ignore any value less than 64 (noise) and I never get any value above 256 - which is not a very useful range.

    • The audio input needs to be at normal line levels to get a good reading. That’s the sort of levels you’d feed into an audio amplifier. The levels from an iPhone are a bit low unless you have the volume at about 80%-90%. So the idea would be to feed your audio in from your device at an appropriate level to get good results, then out to your powered speakers or an amp and adjust the listening level there. Listening with headphones at that level will be a bit too loud for most people.

      • I just wanted to say I ran into the opposite issue with mine - running off most audio outputs, the bands max out at a medium volume. Before I disassemble my board and add a stereo input adjustment (which I will document), does anyone know if there’s a way to adjust the reference voltage coming to the IC?

  • Worth noting that I had SIGNIFICANTLY better results with the reference circuit from the datasheet of the MSGEQ7 than with this shield. The components used (caps primarily) seem to have a VERY significant impact on your results. A protoboard of the reference circuit using junk hookup wire, the same 3.5mm jack, a DIP8 MSGEQ7 and some jumper wires produced one third the noise floor (readings from the Arduino UNO ADC of 20 vs almost 150 from this shield!)
    I also had huge shifts in frequency sensitivity. When playing misc dubstep with heavy bass on my own board, I was getting appropriate (readings matched what I was hearing) separation. When using the shield, the higher bands (3-7) were GREATLY exaggerated to the point where I had to stop using it.
    I’m building my own shield now using the wima polyester caps I used on my own version and I’ll post side by side results when I get the chance.

    • I’ll take a look at this as well. I haven’t noticed this issue, but I haven’t looked for it either.
      One thing I do notice is that the SFE schematic shows a 1000 pF input coupling cap, but the MSI datasheet shows a 0.1 uF cap there. Perhaps this is affecting the low end response? I don’t have the board in front of me so I can’t check and see how it’s actually built.

  • Ive posted a helpful guide on connecting this chip to an Arduino on my site. Hopefully someone finds it useful!
    http://skoba.no-ip.org/msgeq7/

  • would this be the board I need to build a led music spectrum analyzer?

  • I’m getting a lot of noise if there’s absolutely nothing playing. Whether I have something connected to the shield or not makes no difference, the noise levels remain the same. I’m wondering if this is considered “normal” for this IC or this specific design of the shield. The following is with nothing connected to the audio input. All it’s doing is reading the 7 buckets and spitting them out:

    left:  54 -  68 -  54 -  66 -  60 -  46 -  59 |  44 -  78 -  58 -  65 -  46 -  55 -  53: right
    left:  57 -  62 -  52 -  64 -  67 -  58 -  60 |  44 -  76 -  56 -  66 -  55 -  64 -  56: right
    left:  61 -  67 -  63 -  59 -  58 -  54 -  65 |  56 -  79 -  56 -  56 -  55 -  54 -  61: right
    left:  61 -  70 -  69 -  57 -  69 -  64 -  61 |  40 -  83 -  73 -  64 -  58 -  51 -  58: right
    left:  53 -  64 -  66 -  69 -  68 -  53 -  61 |  47 -  76 -  71 -  68 -  58 -  64 -  60: right
    left:  56 -  70 -  68 -  74 -  78 -  56 -  59 |  45 -  82 -  71 -  74 -  69 -  66 -  57: right
    left:  61 -  70 -  61 -  65 -  73 -  53 -  58 |  48 -  81 -  67 -  65 -  62 -  60 -  52: right
    left:  54 -  64 -  60 -  61 -  63 -  48 -  55 |  45 -  74 -  60 -  63 -  58 -  56 -  56: right
    left:  50 -  57 -  55 -  66 -  79 -  52 -  57 |  53 -  72 -  60 -  63 -  65 -  62 -  51: right
    left:  61 -  61 -  67 -  67 -  70 -  51 -  61 |  52 -  66 -  72 -  69 -  60 -  55 -  55: right
    

    Compare that output with one where there is music playing:

    left:  66 - 112 - 125 - 163 - 169 - 161 - 102 | 105 - 178 - 168 - 142 - 140 - 114 -  62: right
    left:  73 - 112 - 122 - 139 - 181 - 153 - 121 | 103 - 175 - 140 - 124 - 125 - 130 -  53: right
    left:  73 -  96 - 136 - 163 - 172 - 164 - 103 | 112 - 160 - 124 - 128 - 159 - 108 -  65: right
    left:  66 -  92 - 139 - 147 - 189 - 142 -  99 | 114 - 140 - 118 - 119 - 137 - 110 -  59: right
    left:  79 -  87 - 172 - 142 - 167 - 147 -  97 |  99 - 144 - 131 - 166 - 164 -  98 -  56: right
    left:  72 - 121 - 144 - 185 - 159 - 144 -  95 |  87 - 149 - 171 - 164 - 146 - 135 -  68: right
    left:  62 - 104 - 138 - 186 - 167 - 123 -  85 |  77 - 130 - 147 - 190 - 162 - 119 -  58: right
    left:  61 -  92 - 131 - 160 - 143 - 107 -  84 |  73 - 112 - 127 - 161 - 136 - 105 -  57: right
    left:  69 -  83 - 212 - 181 - 125 -  99 -  80 |  68 - 101 - 111 - 143 - 206 -  88 -  63: right
    left:  68 - 103 - 177 - 155 - 140 - 100 -  84 |  76 -  96 - 118 - 118 - 175 - 110 -  58: right
    left:  62 -  89 - 153 - 140 - 130 -  86 -  76 |  68 - 114 - 116 - 144 - 148 -  97 -  56: right
    

    Running code for this output is visible at http://pastebin.com/QM1qeDpr

  • Ok I should have read the comments. No headers included. Which ones do I need?

    • These will work for you.

      • Those headers don’t work out that great. If you try to plug the shield all the way down onto the Uno the edge of the prototyping area hits the USB port and charging jack. Some extra long stacking headers would work better.

  • Total arduino noob here. Can someone help me convert this code [ https://gist.github.com/matt-/3835612 ] for use with arduino uno r3 with sparkfun spectrum shield and WS2812 leds please? Here’s a link to the video. http://www.youtube.com/watch?v=8Urj9ugsV58

    Thank you so so much. Or at least show me the way to understanding this. I don’t mind doing the work myself, I just couldn’t find any information on how to do this or have any idea where to start so i came here. Thank you all! Cheers

    • Without digging into the code too much, I think that example should already work for Arduino R3. You’ll just need to make sure you connect the WS2812 LEDs to pins 2 and 3 (or change the code to match which pins you have it connected to). However, this shield doesn’t work with SPI, so it may be worth simply starting with the example code above and adding in the LED control. You can find a basic example sketch for them here.

      • Thanks so much for replying Toni! I tried the code and nothing. I have 3 wires on my ws2812. red=5v, green=DIN (data?), and white=GND. Most example codes i see asks for 2 pins to connect to the arduino. I’m still confused about this

        • Hey, sorry about that. I sent you to the wrong code. Check out this hook-up guide. That’ll be much better for you to get running. Sorry again about the confusion!

  • It is odd and annoying that only some of the digital IO pins (6-13) are broken out when none of the other analog and power pins are. It makes using the prototyping area difficult since you have to solder a jumper wire for power and ground rails from where you soldered the headers that plug into the Arduino, or from a leg of one of the SMD components. It seems like it would be an easy fix to have a secondary PTH point for the rest of the Arduino pins…

  • To get started, here’s an Arduino sketch to use it, runs fine on an UNO and 1.0.5 of the Arduino suite. http://www.bliptronics.com/ArduinoCode/SpectrumProcessing/SpectrumShield101.zip

  • might want to mention on the schematic that you are using the MSGEQ7N not MSGEQ7P so it is not confused for and used for the dip version as they are not pin compatible!

  • For what it is worth, I found the board to have very bad noise in the readings … until I actually plugged something into the input. At that point the noise completely went away, even if the input wasn’t playing anything. Here is a YouTube playlist with a project I’m working on showing this in use.

    https://www.youtube.com/playlist?list=PLp21wF8e4Xng5j6fdSD9A1c0W8lONnVxk

  • When you say 7 band per channel, does this mean there is more than one channel? Does this mean that, if there were two channels, I could run a 14 band spectrum analyzer?

    • Each part has one input channel. There are two parts, for a total of two input channels (stereo).

      Each part has seven bands, but the frequencies are preset and can’t be changed. Two parts give you 14 bands, but the two groups of 7 will be identical frequencies.

      Claro?

  • Has anyone stacked an mp3 shield with this spectrum shield?

  • Merry Xmas to All! Here’s my YAAXT - Yet Another Arduino Xmas Tree, just in the nick of time. Used the SparkFun Spectrum and MP3 Shields, LPD8806 Addressable LEDs, Dayton Amplifier, Bose Speakers and controlled via IR Remote. Used great MP3 and IR libraries provided by Bill Porter. Also the LPD8806 LED library from AdaFruit. Video could not capture the true intensity of of the led colors - they are so bright, they overwhelm the camera CCD.

    http://youtu.be/YSS91urEqEg

  • This board works fantastic. I used one of these along with a EL Escudo Dos to add a color organ feature to my brothers boom box http://www.youtube.com/watch?feature=player_embedded&v=sm1fcgI5BcM

  • Bought it, loaded it, ran it, like it!

    FWIW - I have the same noise level (ave of ~60) but that’s easy enough to cancel out in software. Not sure why it’s such a big deal if it’s so consistent.

    What I’m now wrestling with is whether I can easily reroute the digital pins to allow me to try this stacked with an LCD shield for spectrum eye candy. Maybe I’ll just wire up a protoshield with these same chips but jumper pin holes for the 4 used I/O’s would have been nice. Cutting the trace is easy, soldering in a new connection not so much.

  • I used the straight IC first to test with the manufacturer’s circuit. Then I tested this board. I found the noise to be about the same level in both, a value of 64 like previously stated by Larsi. Sparkfun, were you able to get this board to produce a lower level of noise? or, the IC?

  • Here’s my project using this shield. http://www.youtube.com/watch?v=XN8itBO7fvg

  • does anyone know if you can use this shield with a maple board? http://www.sparkfun.com/products/10664

  • Hi, does anyone know if you can plug in a mic to listen to environment sounds and analyse those sounds?

    • Yes! We used that in making the DreadMill. We used the breakout board for the electret microphone here. It worked well enough, but you could do another microphone with an opamp.

  • How is this different than using a bandPass filter in Minim?

  • I just watched the product post, and I think I heard that you had some example code posted on here, and I am wondering where it is. Thanks!

    • For arduino …
      * the link above ..
      http://skoba.no-ip.org/msgeq7/
      also others …
      http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1275615544/all
      … and …
      http://www.bliptronics.com/item.aspx?ItemID=116
      Netduino ..
      http://forums.netduino.com/index.php?/topic/478-graphical-eq-shield-from-bliptronics/pagep3526hlbliptronicsfromsearch1#entry3526
      FEZ
      There is also working code on the FEZ forum, but site not responding right now.

  • These are great boards if the same as the ones I used to get on bliptronics site. The shield working with arduino, netduino and FEZ.
    Thanks for picking up this design sparkfun.


Related Products