Introduction: Arduino VU Lamp

A picture speaks a thousand words, and I think the video says all that is necessary as to what this Instructable is about...

Without further ado, lets Make...

What is needed, first, the Lamp, I always find handy size lamps for various projects while getting lost in Ikea, awesome shop, and love the room, how cool would it be to be allowed to spend a few days in there just re-using and Making....

The Lamp I have used : http://www.ikea.com/gb/en/catalog/products/1018417...

An Arduino, I have used a Nano, but you could use an Uno, Mega, pretty much most of the family to be honest. Am not going to go into the details about Arduino's, I think that has been done to death ..

1meter of 75mm (diameter) Drain pipe, I used Black, as that is all I had, not sure how White would look, if you try, please let me know.

1 x 3.5mm Stereo Plug
1 x 3.5mm Stereo Splitter

1 x 100ohm .25watt resistor

Hookup Wire

Breadboard

Led Strip, WS2812/WS2811 5mtrs (Only around 2 meters are required)

12v 5a Power Supply (Yes I know it's a but large, but don't get anything too small)

Step 1: The Lamp

Now is the time to open the Lamp box and pretty much destroy it, remove anything electrical, as the only thing needed from the lamp is the weighted base and the 2 poles that screw together and then screw into the base.

So you should now have a stand and the Shade only.

This can use used later to supply power to the Power Supply, and being a nice foot-switch, looks pretty cool.

Step 2: Light the Tube

Extend the Lamp and measure the distance between the ends, it should be around 90cm, cut your 75mm pipe to be around 4mm longer, this ensures the shade is kept taught, it also allows you to use a file and make grooves in the end of the pipe, so the wires of the shade are held in place on the pipe.

At this point I soldered some wires to the Led Strip and made notes of what colour when where, you should expect 3 copper pads, there could be a number of naming conventions, however, one should be called DIN, I would expect 12v + and Gnd or - . DIN is Data in, and will be connected to the Arduino via a 100ohm resistor and is where the led's get the signal to light, colour and brightness.

In this next step some trial and error is involved, unwrap the Led Strip, but do not remove the adhesive backing, you'll note if you bought 5 meters you will have too much, but the amount used will dependent on how dense you want the lighting to be. Ensure the end with the soldered wires on is at the bottom ( 2 grooves in the pipe, 3 grooves in the top)

Use a de-greaser to ensure the surface of the Black pipe is clean to aid with the adhesion of the led strip.

I wound approx 2meters around the Black pipe, and spread the led strip until I was happy with the way it looked, I then trimmed the Led strip at the next available cutting point, which is usually indicated by adjacent copper pads.

Then I took the adhesive off one end and slowly fixed the strip to the tube. Time should be taken during this step to ensure the lights are evenly spaced.

As the end of the LED Strip stands a chance of being moved, drill 2 adjacent holes on each side of the strip, over the wires, thread a small Cable Tie and fasten this tight and will prevent the strip being pulled off.

Step 3: TEST IT

Now before we get too far, some testing is needed, as there would be nothing worse than getting too far and finding the LED's don't work !!!!

For this step, you'll need your 100ohm resistor, some hookup wire, Arduino and power supply.

Not knowing what power supply you have bought I cannot say how to connect it up, so I will assume you have a 12v power supply ready and working..

More importantly you'll need the Adafruit Libraries for Neopixels, installing these is another instructable in itself, again, I will assume you have installed these.

Load the Adafruit Neopixel example : strand test

Count how many leds you have used and search of the line

Adafruit_NeoPixel strip = Adafruit_NeoPixel(60, PIN, NEO_GRB + NEO_KHZ800);

and change the number 60, to the quantity of leds you have in your strip.

Compile and upload.

Now power down your Arduino.

Now apply power to the led strip, double check polarity !!!!

On the LED Strip, the DIN wire, needs to go to the 100ohm resistor, which is connected to Pin D6 on the Arduino, this resistor acts as a line noise filter.

Use the Negative from the LED Strip and ensure this is also connected to the ground (GND) on the Arduino ( please read this to find out why )

Now power it up and all should be good :)

Step 4: Get Some Sound In

Next you need to build your audio in cable.

As shown above, connect you wires to the 3.5mm Audio Jack Plug.

This should then be connected via the splitter to an audio source.

We will only be using one chanel, so really you only need the earth and either left or right, on mine, I connected left and right together and fed them into the Arduino via pin A0.

The ground again, should be connected into the common ground, used by the power supply and Arduino.

Step 5:

Code it up...

The following code should be uploaded to the Arduino..

Step 6: Power It Up

Now connect the 3.5mm Audio jack to whatever device will be producing the "tunes"

Power it up, and prepare to be dazzled !

Yes, you'll see lights bouncing and doing their thing, but it won't look too good, why ??

Diffusion is the answer, put the pipe into the Lamp Shade, put it on the stand for stability, turn the lights down, and ENJOY.

Note, some devices do not provide enough signal to power, so you may need to use a laptop or PC, am hoping to include a built in amp LM386 to get over this issue.