Extreme Color Organ

Hi All! I have wanted to do something fun with my bedroom for a while now and the Make it  Glow challenge provided me with a reason to do so. A few months ago I acquired a strand of GE-35 Color Effects lights and owing to the inherent dangers of controlling wall voltages, the strand provided me with an alternate and safe way to light up my room and be able to control it with my arduino. As I researched the hacks for the RGB strand I was taken with the idea of having the lights move with my music. I ordered a MSGEQ7 from Sparkfun and started my room's renovation when it arrived in the mail.
Remove these adsRemove these ads by Signing Up

Step 1: Materials Needed

1x Arduino 328
1x GE- 35 Color Effects Light Strand- I used a 50 count strand
1x 10nf Cap
2x 100nf Cap
1x 200K resistor
1x Wire
1x Breadboard - I used a Proto Shield
1x LED - I used a red LED
1x PIR Sensor - Radio Shack
1x 3" Servo Extender
1x Male to Male Audio Cable- Cut in half and each end terminated in a pin Header
1x Stereo Audio Splitter
1x Music Device
1x Pliers- For pesky staples
1x Mono Plug
Staple Gun
Hot Glue Gun
Soldering Iron
Optional- Knife
Optional- Drill
Optional- Hammer
Optional- Scroll Saw
Optional- Book-  One you don't mind ruining forever

Step 2: Hacking the GE- 35 Lights

The first thing to do is to modify your lights so that they will work with the arduino. I chose to follow austinlightguy's instructions on his website which worked well for me. You of course can do whatever you want, but make sure that the stock light controllers data line is not connected when your arduino is to the lights or you may end up frying something or getting interference between the two.
jsmirnio13 days ago

Can you power the lights and the arduino from the same five volt supply?

Modarius (author)  jsmirnio13 days ago

You might be able to get away with it. The reason that I didn't was that the power supply for the lights puts out 5.6v according to -this site- which is a bit high for the arduino so I just used two different supplies. Another problem you might run into is that having the arduino and the lights on the same power could create a lot of electrical interference and cause the arduino to perform strangely but I'm not positive about that. A possible solution would be to use some fairly significant power filtering capacitors to smooth out the voltage. As far as getting the voltage low enough a simple solution would be to use a diode in series which has around a .7v drop. A more complicated one would be to use a 5v LDO regulator. Best of luck, let me know if I can help!

Thanks so much for responding so quickly. I was going to use a diode for the .7V drop ... my GE lights have a supply labeled as 6V , but I haven't actually measured. I may just opt for two supplies. I think some others have used computer power supplies pulled from old equipment, which have a clean 5V, to power both the lights and the arduino. PC supplies often have more than enough current for a couple strings of GE-35s.
sasham435 months ago
Hi - first thanks for this tutorial, I built one of these in a suitcase and it's downright awesome. I wanted to build another, but the G35 lights are pretty expensive, so I was looking at other options and found Adafruit Neopixels.

So question: do you think this set-up would work with Neopixels and a Trinket? Neopixels say they are individually addressable, I'm just not sure if the Trinket has enough pins/the right pins to support your design.
Modarius (author)  sasham435 months ago
The Neopixels only require one digital pin to control and work much like the G35 lights. I don't think you would have enough pins to use the MSGEQ7 as two of the trinket pins are used for usb. You might be able to get around that but I think the better course of action would be to implement a Fourier Transform on the audio. This article from Adafruit would be a good starting point I think for you.
sasham43 Modarius4 months ago
Thanks for the suggestion. I got around to buying the Neopixels and the Trinket, and I think they'll work (I built the little color organ in that link, but it's not that impressive with an LED strip, more like a VU meter), but I'm having some trouble getting your code to work with the fourier transform.

I'm using the fft library in this instructable, but I'm not sure how to interface with it your visualizer (specifically the rainbow one, which I quite enjoy).  I think his data_avgs[] roughly corresponds to your spectrumValue, but I'm not much for the Arduino language, so if you wouldn't mind explaining how that visualizer works, or offering some tips that would be awesome.

Thanks again!
Modarius (author)  sasham434 months ago
I am not exactly sure how FFT works but from looking over his code I think you are right about the data_avgs[] being simillar to my spectrumValue[7]. I'm fairly sure that you can use his code up until where he maps the data. That particular map() function call you are going to have to change to something like the one in my mapAudio function so that it maps the data correctly. It will probably depend though more on the neopixels and what values they take for inputs. Let me know if that doesn't make sense of if you have any more questions. Good luck!
sasham43 Modarius4 months ago
I'm not really very familiar with the Arduino language, so I can't quite tell what that map() function is doing.

The Neopixels seem to be fairly straightforward to work with. You set the color with strip.setPixelColor(n, r, g, b) where n is the pixel number and rgb is the color. Unfortunately, it looks like the only way to set multiple pixels is by using a for loop, but I think I can figure that out. You can set brightness with a simple function: strip.setBrightness(0-255).

So aside from the mapping thing, I just need an idea of how the spectrumValue, color, and brightness interplay in your visualizer. I think after that I might be able to code some rough approximation for the NeoPixels.

Thanks again for helping out.

sbatchu8 months ago
Hey thanks for putting this up. Its pretty sweet. We are trying to adapt your setup for an infinity mirror using this arduino board and these LED lights. 

Looking at the board we are going to buy, is this board missing anything we need to follow your design? We're purchasing everything else according to your specs except for the PIR stuff.

Thanks again!
Modarius (author)  sbatchu8 months ago
Well first off you are going to have to modify the code for the project because you are buying an RGB strip and not the GE-35 christmas lights which are individually addressable. You are probably going to need a couple of FETs, basically large transistors, to control each color separately. Check out step 10 for some more information. If you wish, I can upload the circuit board that I designed for it to get you started. It should work for you, though you might need higher amperage FETs than I used depending on the length of led strip in your infinity mirror. Other than that the leonardo will suit your needs well and as long as you have the MSGEQ7 and the minimal supporting circuitry for that chip in addition to the above suggestions, you should be all set to go.
About how much did it cost
Modarius (author)  Electronickid43148 months ago
Well, I already had the Arduino, Protoshield and random components for it so it only cost $5 for the MSGEQ7 chip. The final board that I etched was $10-15 total for the etchant, copper clad board and supporting components.
Awesome work ...thanks for sharing with us!
samwhiteUK1 year ago
The video is private
Modarius (author)  samwhiteUK1 year ago
You are absolutely right! Sorry, I didn't see that.
Modarius (author) 2 years ago
Sorry about the broken link, its fixed now.
Surf89712 years ago
Got a lot of random colors on color organ and red when in motion detect? any ideas?
Surf89712 years ago
What pin did you run the lights to. The external link is not working.
Modarius (author)  Surf89712 years ago
The data line from the lights is connected to digital pin 4 on the Arduino. If that doesn't work, make sure you have everything wired up correctly. Sometimes breadboards don't make good contact with wires so try "wiggling things around" and see if that works.
Found it in the code after I asked. Thanks for the reply.
kyleslab2 years ago
That is really, (pause for dramatic effect), awesome!
And, is that an iMac I see in the right bottom corner?
Modarius (author)  kyleslab2 years ago
Yep, well, sort of. Its an older iMac with a power mac processor instead of the newer Intel-based Macs. The screen is on its way out though and flickers between a washed out blue tinge and the normal display which makes for some interesting programming :D
Modarius (author)  Modarius2 years ago
Just checked out your profile and it looks like you are a fellow mac lover, am I right?
Perfectly, indeed. I am like a Mac fanatic! I have a Mac SE from 1986 (parent's computer), a power pc G4 (work), a Macbook Pro ( 2007-2008, I think ),
iMac (2009), and Macbook Pro (latest quad-core i7). The crazy thing is that the Mac SE STILL works! After all those years (even though it was kept in the best shape, no yellowing at all), that's just amazing! And what does that show?
That Macs are built to last (until a newer one comes out, hehe.) Unlike a pc that is done in 2 or 3 years. Am I right? If only pc users could understand...
They just literally don't understand how to use them or anything. Even though they are more user-friendly than a pc. And they think they are too expensive but even a baseline Macbook pro (quad-core i7 500gbt) compared to a pc with the same (which will never happen because pc's don't deserve that kind of hardware),
will equal about the same. So they aren't really overpriced. But, I never use pc's so it doesn't matter. Macs rule!
Modarius (author)  kyleslab2 years ago
Our lineage of Macs sounds just about like yours. I remeber playing on my parents mac plus in the basement, later getting a Powerbook G4. We then got the iMac 5.1 I am using now, a Mac Book Pro, the ~5 iPods, iPod touch/ iPad/ iPhone. Now that I have been introduced to the power of an iMac and its ease of use, you are not going to see me switching to any windows computer anytime soon!
UOS2 years ago
gonna be on my bedroom too =) (when i got married in 1.5 years or so =) )
This is pretty cool!
scoochmaroo2 years ago
Um, wow.

Get More Out of Instructables

Already have an Account?


PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!