Introduction: RGB Spoon Light
What is a spoon lamp? This is a spoon lamp. Only because I don't know what else to call it. It is made from the remains of decapitated spoons and a plastic water bottle with a light inside. Really simple to make, really cheap to find supplies, really entertaining to make and watch.
This version lights up with a high-power RGB LED programmed to cycle through colors. Originally I was going to have it fade between colors, but I like this better.
Credit for the idea does not go to me. I first saw this on tumblr, I don't know where it originated, but it is awesome. Just google "spoon lamp" and you will find much more intricately crafted versions of this.
Step 1: Materials and Costs
- About 100 ~ 150 plastic spoons. (more or less depending on what size shape you are making)
- Choose a bottle closest to what shape you want
- I wanted to use a large Martinelli's apple juice bottle but couldn't find one.
- Hot glue + hot glue gun
- Scissors (or knife) to cut the heads off the spoons.
- Ribbon cable or wire of some kind
- Arduino (if you have the money)
- Microcontroller (if you have the know-how)
- Switch (if you just want it to be an on-off light)
- Light bulb (really low power so as not to melt the glue)
- Small fluorescent bulb
- RGB LED (+ 3 100 ohm resistors)
- Super bright LED of any color (+1 resistor)
about $1 for the bottle
about $3 for the bulb or LED
controller cost varies (arduino being the most expensive, and a switch or microcontroller costing less than a dollar)
Step 2: Put It Together
The first thing you will have to do is cut off the heads of about 100 ~ 150 spoons.
I looked at a bunch of different cool geometries for how to do this part before deciding to just go for it. Google "spoon lamp" to get some ideas here. But if you don't want to be so tedious and just want to create it (or are using this project for younger kids), just start gluing! Worst that happens is you have to add a couple spoons here and there to cover the holes you missed. Your primary objective is just to cover the whole surface in spoon heads.
I recommend starting at the top and just use any geometric pattern that makes sense to you. I decided to place mine with 4-fold symmetry, which gave rise to some problems of not meshing later in the gluing. It looks like it will work best if you use a spiral or just do one ring at a time. Each shape you make will cause it to look unique at the end :)
The ultimate beauty of these is the way light is diffused through the spoons, so you really can't make an ugly lamp.
As for the gluing technique... I placed a drop (pea size) of glue on both the tip and base of the underside of each spoon head and then turned it upside down and placed it where I wanted it. Wait a minute and then proceed to the next one. I experimented with a few other techniques but that seemed the easiest to do.
Step 3: Light It Up!
See the next step for instructions on programming the light if you choose to do so.
Your options here are to either use a programmable light (arduino or MCU) or to just use a normal light switch (or any type of switch). I used an arduino but I have a picture or two using a light bulb and just a normal switch. The first two pictures on this step are of light bulbs and the others are with my RGB LED. (Video at the end of this ible!)
Caution: if you use a light bulb, make sure it is super low wattage. If it gets too warm, the glue will melt and your whole lamp will melt away :(
Step 4: Arduino Code
Sorry, I only wrote the code in arduino this time. I didn't have any microcontrollers sitting around to use, which was a shame because I had some really good ideas on how to use an attiny13. :) I always love the tiny13's since they are so cheap and versatile (and since I always have trouble with the better 85's). I only say all this because if I had the parts on hand, I would not be using an arduino since it is a lot bulkier. And the whole project can be self contained with a 3.7V LiPo battery and an attiny13 even with a 3W power LED. Not that it matters a lot because I think it still looks better hung up.
// Note: I did not write this code myself, it is from an old project of mine where I borrowed this simple code to learn from. I do not remember the original author though. But I think it is from the Sparkfun starter kit for learning to use RGB LEDs.
The wiring is such that I am using a common-anode (common ground). You can easily use a common-cathode setup but you will have to change the code to reverse the HIGHs and LOWs. The arduino sinks the anodes to its grounds and controls each individual RGB channel using PWM pins (Digital) 9, 10, 11. It doesn't matter in which order. I used a 100 ohm resistor (1/2 W) before each LED. I didn't like how dim it was with a higher value, and since each LED is only on for a short period of time it isn't too big a deal. I know that is not the correct value to use, but it seems to be working the best.
It should be noted that it doesn't matter which pin you connect to which RGB pin. By which I mean you can connect green to blue and red to red and blue to green and it will still work (or any combination). All it will do is change which colors appear at what point in time, as the code will cycle through every combination anyways.
Anyways, here is the arduino code below:
int RED = 9; // RED pin of the LED to PWM pin 9
int GREEN = 10; // GREEN pin of the LED to PWM pin 10
int BLUE = 11; // BLUE pin of the LED to PWM pin 11
int DELAY_TIME = 10; //changes speed of fading
int MAX_BRIGHT = 255; //sets maximum brightness, 255 max brightness
int COLOR_MIX = 0; //variable to change the colors that are mixed in switch statement
void fade_in(int x) //loop that gradually turns the LED on using PWM
for(counter = 0; counter < x; counter++)
void fade_out(int x) //loop that gradually turns the LED off using PWM
for(counter = x; counter > 0; counter--)
void led_mixer(int color, int x) //uses switch statement to mix color combinations
// nothing for setup
void loop() //loop forever
fade_in(MAX_BRIGHT); //gradually turn the LED on to max brightness
fade_out(MAX_BRIGHT); //gradually turn off the LED
COLOR_MIX++; //increment to the next color combination
if(COLOR_MIX == 7) //if all color combinations have been displayed, reset the cycle
COLOR_MIX = 0;
Step 5: Hang It Up
To get the light to stay inside the lamp while hanging it, I decided to use a strand of ribbon cable (4 wires will work too). I drilled 4 holes in the cap of the bottle to let the wires through. Soldered the wires to the LED (alligator clips would work if you don't want to solder, just ensure no shorting the circuit!). And then hung the whole thing by the wires. The wires then of course lead to the arduino.
Hang it up in a window or anywhere. I always try to put my light projects in windows so more people can appreciate them :)