Find your room a bit too dull? Want to add a bit of sparkle to it? Read here how to take an RGB LED, add some fiber optic wire, and make it SHINE!

The basic goal of Project Sparkle is to take a super bright LED plus some end-glow fiber optic cable and hook it up to an arduino to create a nice lighting effect. This is an imitation of fiber optic star tilings/ceilings but mounted vertically due to not being able to drill into my ceiling and does not use a pre-manufactured illuminator to light the fiber optic wires.

So really it's a way to get cool fiber optic effects without investing in expensive illuminators. Connecting it via LED to an arduino also adds for any type of customization and color refinement! Best of both worlds!

10W LED - $5 - eBay.  **Warning, this is very bright. Do NOT look at this directly when on. Stick it under a box for testing or another suitable covering**
Fiber optic end glow wire - ~$25-30 - I purchased it online from TriNorthLighting. Fiber optic cable is generally sold by the foot at different strand numbers within the cable. The fewer strands in a cable generally the thicker each individual wire, meaning a brighter end spot overall. Check this page for a handy chart on cable number versus width.
12V, 2Amp power supply - ~$10 - I had one lying around.

Secret materials:
Most of these parts are things people will have around and can be reused for other projects
Arduino - $25-30 - I used an Arduino Uno R3
Breadboard - ~$5
Soldering iron - Anywhere from $10 to an order of magnitude higher
Circuit components - each only cost a few cents, the trickier issue is probably where to get them nowadays
Wire, wire strippers, cutters, etc.
Tulle - $5 - purchased from a craft store. It's the material I used to weave the fiber optic strands on the wall

Step 1: Overview of circuit components

Other than basic wire (and the LED) our circuit has two main components: transistors and resistors.


So we have a 10W LED, power cable, and arduino. The goal is to wire the LED to the breadboard and attach the arduino to the same breadboard so that the arduino can output a value and the LED will turn on at a certain brightness (corresponding to the value the arduino outputed). The issue is, the arduino can only supply 5V, but our LED needs 12V (note: this may change depending on what power LED you're using) . This is where the power supply comes in.

"How will we ever connect the arduino, LED, and power supply together?!" you might ask.

The answer is magic. The magic of TRANSISTORS!

Simplistically, a transistor is an amplifier or a switch. In this case we're using it as a switch. It'll be connected at one pin to the arduino, another pin to the power supply, and a third to the LED. When the arduino sends a current over a specific threshold the transistor will 'turn on' and let the power supply voltage run through it, lighting the LED. When there's not enough current from the arduino, the transistor won't let the power supply run through it and the LED will be off.

The switching type of transistor is known as a switching or junction transistor. There are many different types available which have different properties like voltage needed across its pins, the gain, etc. I encourage anyone interested to read more about transistors to get a much better understanding of them.

The 10W LED has four pins total, on one side the ground and on the other side a pin for each color. If we want to be able to control each color separately (in order to be able to display any color combination of RGB), each color must have its own transistor, so we need three transistors total. More details on the transistors used will be in the next step.


Now that we've figured out how to power up the LED, there's another problem. All this power isn't necessarily a good thing! We don't want to short out the LED, so resistors need to be added to it.

Of the four pins on the LED, the ground pin doesn't need a resistor since it's just going to ground. But the three color pins will need at least one resistor, and since different colors draw different voltages they aren't necessarily the same resistances.

"How will we ever figure out these values?!" you might ask.

Well the answer is MAGIC. The magic of MATHEMATICS! (read on it's worth it I promise...)
<p>Nice project! I just started poking around w/ Arduino, RGB LEDs and Fiber Optics - that's a very strong LED! On where you got the original code, it may have been github - I've been getting a lot of NeoPixel and FastLED code from there - it is a great source for Arduino code</p>
Great job! It was even cooler to see it in person!

About This Instructable




More by cubeton:RGB LED Fiber Optic Tree (aka Project Sparkle) 
Add instructable to: