Introduction: Arduino Powerd, RGB + White LED, Bluetooth Controllable, Floor Lamp

Picture of Arduino Powerd, RGB + White LED,  Bluetooth Controllable, Floor Lamp

A couple of mounts ago i order a 1M long WS2801 RGB led strip, just for fun.
I took me a while to get the strip working with my Arduino.

The next step was to figure out what to do with the strip.
after some time the idea came to me: a Bluetooth controllable floor lamp.

I ordered 4 extra bright ‘warm’ White Led strips, in order to make the Floor lamp useable on a daily basis.


I need to say, I made this lamp a couple of months ago,
before I head the intension to put in on here.
this mean I did not take much pictures  or draw sketches.

Step 1: Parts

Here a list of parts i used:

-Arduino Nano v3.
-1 meter WS2801 RGB led stip
-4x Samsung 1550lm/m  3000K 5050 LED Strip
-Bluetooth module.
-USB Bluetooth Dongle
-12v DC Power supply.
-12v DC to 5v DC converter.
-4x IRLZ34 (MOSFET).
-5x 1N4007 Diodes.
-4x 10K ohm resister.
-4x 1K ohm resister.
-4x 470 Ohm resister.
-a bread board.
-a prototype PCB.
-3x screw terminals.
-9mm x 35mm Wood beam
-25mm Carbon tube.
-25mm aluminium hollow profile Beam.
-50cmx50cm 1mm thick aluminium plate.
-2meter m8 stud.
-couple of m8 nuts
-fuse holder.
-USB connector en mounting.
-Power connector
-Shrink tube
-Cotton cloth.
-LOTS OF WIRE.
-LOTS OF SOLDER.

Step 2: Code for the Arduino

Picture of Code for the Arduino

I wanted to use my Android phone and windows laptop to be able to control the Lamp.
so I used Bluetooth because his is a protocol supported by both.

After some testing with a separate Arduino and Bluetooth module I was able to send a string from Android to Arduino.
SO first the code for the Arduino, on the next page I’ll talk about the Sender device (android or Win)
I wanted to make a simple program that could easily be expanded.


I know that the sender device would send a string of 4 digits.
For example “R255”
From this I know the color R= RED and the intensity = 255

The same goes with Blue =B Green = G and White = W
And make use of a X I could use Extra functions as in Blink FAST or Rainbow the RGB lights.

So in de Arduino code a splinted the received code into to parts. The first is the Letter that indicates the color of function.
and the second part exists of the 3 digets telling me the brightness of the color, OR a number of the Extra Function.

Controlling the White lights is simple. I just used the PWM signal. 0 = off, 255 is fully on.
example : “analogWrite(PWMLED1, 255); “ PWMled 1 is FULLY on.

For Controlling the RGB leds I used the SPI and  Adafruit_WS2801 library .

this allows me to easy control every LED on the strip.
For example the build in function. “rainbowCycle”
this shows a nice rainbow on the lamp.

And last I build in a function to stop a loop ( for example flashing).
For more INFO. Look in the ARDUINO_CODE 

Step 3: Sending Code

Picture of Sending Code

The sending device only had to send an 4 digit code.

I Used Eclipse for the Android app 
And Visual Studio for the Windows application.

For more INFO
Download the projects an read the comments.

(cannot find Android Project, if I find it, I will upload it here)

Step 4: Hardware. the Lamp Itself

Picture of Hardware. the Lamp Itself

I made the lamp out of 5 martials
-Wood
-Cotton
-Aluminium
-Carbon
-Steel

Wood for the base structure,
the frame on which the Cotton cloth would be stretched and mounted on.

the aluminium and Steel for the frame to hold the wooden frame in place
and a aluminium foot outer sill.

And Carbon for the Lamp Foot

First the Frame:
(PIC1)

Consist of 3 squares of 30cm wooden slat.
which are held by 2 steal threaded bars connected to another by an aluminium square tube.

The first 2 wooden squares are connected by the same aluminium square tube.

The last one, the foot. Has a Carbon tube mounted in between
(PIC2)

After this was done. In gluid the RGB an Bright White LEDs onto the aluminium square tube.
an covered the foot with an aluminium sheet.


Step 5: Hardware, Electronics

Picture of Hardware, Electronics

this was a rather easy step.
I Knew what I needed for the Led strips and for the Bluetooth module.

RGB, All the LEDs are connected in Series. The First passes one the Data and Clock to the second
so I needed to have a chain of 32 LEDs

The White light only needed 12V and Ground, but I wanted more control. So I spited the LED and wanted to control each side secretly .

WS2801:
-5V
-Data.
-Clock.
-Ground.

White Light: (4x) (each side 1 strip)
-12V.
-Ground.

Bluetooth module:
-5V.
-Rx.
-Tx.
-Ground.

See the Diagram (sorry for the bed drawing).
The RGB Stip is directly connected to the Arduino on Port 11 and 12>
The white light uses the PWM ports (9, 6, 5, 3)

and the Bluetooth module is connected to the Rx and Tx port ( 0 and 1) on the Arduino.

For controlling the 12v power with a 5v PWM I needed to use a MOSFET,
I used a IRF9530. In combination with a 470 resister in between the Arduino PWM.
and a 10K Pull Down resistor.
On the drawing I only draw 1 circuit with the MOSFET. But for each PWM port (4x) there is the same diagram.

On the 5V power in on the Arduino I used I Diode, this because if I power it by USB (for debug and programing) the rest of the system is not powered on.
especially the Bluetooth module, this used the same Rx an Tx port as the USB.

And a couple of Diodes between the PWM and MOSFET. Just to protect the Arduino if something should go wrong

I only using a 12v adapter for powering, the power convert converts the 12v to a 5v for the Arduino, RGB LED strip and Bluetooth module

After hours of soldering, an gluing, the Electronics were inside of the lamp

Step 6: Final Steps

Picture of Final Steps

Next up, The Cotton Cloth.

I bought a pies of Cloth a the local store, about 1meter  by 1.5meter,
I measured is for a thigh fit. An m girlfriend sowed it  together.

 

Step 7: End Result:

The lamp is almost finished, I only need to fix the Cloth to the wooden frame!!!
But the Electronis work fine!!!

Android App + lamp:


Lamp Overview, Almost down  (ignore the clothespin!! :) )



If you have any questions, don’t hesitate to ask them in the comments below
 

Comments

abdulchehab (author)2016-01-02

Hi

nice project well done,


iam trying to control led strip 20 leds 36 mm ws2801 using arduino mega / Jinx.

the led strip is working great when controlled in standalone mode via arduino, yet iam not able to control led strip from jinx,

any help in providing code for mega is appreciated,

thanks

abdul

DillyDog (author)2013-08-01

Do you know of an iOS app for this?

bram2202 (author)DillyDog2013-08-01

I made the Android app and Windows form app myself,
so there is no app for ios.

And another thing, for what I know you cannot send data
through Bluetooth in ios.

maxwellmoojw (author)bram22022015-06-16

can you share the android app source ?? thx

asd100 (author)bram22022013-11-15

pls send me the link for android app

Revanchist (author)bram22022013-08-31

Yes you can,... As long as the bluetooth device is BLE (Bluetooth 4.0 or low Energy)

gadgetnerd3373 (author)2013-12-26

i can't get the arduino program to work at all can someone help this situation

mosesman08 (author)2013-10-01

Great project! Just a couple of questions:
Do you have the android APK for this project? I know you said you couldn't find your source.
Also, what Bluetooth receiver did you use?

bram2202 (author)mosesman082013-11-15

Thanks!
I must have the APK someware, i'm trying to find it along with the Source code.
i used a cheap BT module from DealExtreme: http://dx.com/p/104299

asd100 (author)2013-09-09

can any one explain the circuit design?

asd100 (author)2013-09-09

can you please uplaod the android project??

asd100 (author)2013-09-09

i am working on this project right now....can any one help me in its circuit design?

About This Instructable

34,385views

177favorites

License:

Bio: I’m a 28 year old Programmer with a interest in Electronics and Cars
More by bram2202:3D PrinterCompact Arduino GPS Speedo + and moreChange Baudrate of MT3339 With Arduino (fixed)
Add instructable to: