Introduction: Color Changing Fiber Optic Fabric

At about $150 a yard and with plenty of cutting limitations, fiber optic fabric on the market isn't the most accessible material. But with your own fiber optic filament, tulle, and LEDs, you can create your own in any shape for a fraction of the price.

Step 1: Materials

  • Tulle
  • .75mm fiber optic filament (see Step 2 for more details)
  • Addressable RGB LEDs
  • Sewable microcontroller of your choice (I used a Gemma)
  • Electrical tape
  • Mini rubber bands
  • Battery pack
  • Hair straightener
  • Heat shrink tubing (optional)

My cost was around $80 total: $15 for a 500 foot spool of fiber optics, $14 for a string of ~60 LEDs (I only needed ~18), $10 for the Gemma, $15 for the lithium battery, and $25 for fabric. Your mileage will vary depending on the length of your design, type of fabric, cost of LEDs, and availability of microcontrollers/battery packs.

The time to completion was around 30 hours, with at least 10 of those going towards weaving the fibers into the tulle.

Step 2: Crunch the Numbers

Fiber optics

The wider your fiber optic filament, the more light can pass through, and the sturdier the tube will be. I found .75mm to be perfect for weaving through tulle. Narrower filaments are cheaper and more flexible, but you'll require more of them to achieve the same glow.

I purchased a 500 foot spool and used about 350 feet in the creation of a long circle skirt, with my fibers laying .5cm - 1cm apart at the inner radius. To calculate roughly the amount of fiber you'll need, divide the width of your fabric by the amount of space you would like between filaments. Multiply this number by the length of your fabric plus 6 inches.

Cut your fibers about 6 inches longer than the length of your fabric. The excess will be bundled and attached to the LEDs.


You will need RGB LEDs to change the color of the fabric. You will also need to attach the fibers perpendicular to the light source, as shown in step 7, so NeoPixel strips are not the best candidate. Finally, if designing for clothing, you'll need something that lies relatively flat against the body. With all these parameters in mind, I chose individually addressable bulb-like LEDs connected by flexible wire.


The tulle and fiber optic combination in this Instructable is very translucent. The simplest way to add it to a project would be as a top layer over a more opaque fabric. When designing your project, remember that your fiber tips will all need to feed into a light source, and most light will be emitted at the opposite end. As long as you can design something with enough support for the lights and battery pack, and ensure that the fibers have a light source, you can create any size and shape you want!

Step 3: Straighten the Fibers

Most fiber optic filament will come tightly curled around a spool. Don't fret! A hair straightener works wonders. I did not have any success with an iron; heat from both sides seemed to be essential.

Cut your filaments to the desired length and bundle them together in groups of 5-10. Secure one end with a rubber band. Wet a washclosh slightly and use it to insulate the fibers as you slowly drag the straightener down the length of the filament. This will protect both your iron and the filaments from the direct heat. Repeat as many times as necessary to get the filaments nice and straight.

Step 4: Weave

By taking advantage of tulle's natural netting structure, you can keep your fibers in place while avoiding the need for hand sewing or individual channels.

Subdivide your tulle into halves, quarters, and so on to give yourself benchmarks for inserting fibers. It may be helpful to layer your tulle over a giant sheet of graph paper or pre-drawn parallel lines. Once you've guaranteed that the first few fibers are inserted perfectly parallel, they are easier to use as a guideline for the rest.

Begin weaving by poking a single strand of filament into the netting. Avoid tearing new holes; try to use the structure already there. Continue to weave the filament through the tulle every few inches. When weaving, favor one side of the fabric over the other; keeping the majority of your filament on one side will make it easier to sand later.

You may want to intersperse some fibers that are shorter than the full length of your fabric, too. This will spread specks of light more evenly throughout your project. See step 9 for ways to even out the light distribution.

Step 5: Bundle Fibers

Subdivide your fibers into groups (just one group is shown in the leftmost picture). For my 0.8 cm LED heads, bundles of about 20 fibers worked well. A few inches beyond the edge of the fabric, gently guide the fibers together and secure them together with a mini rubber band. Try to prevent your fibers from going more than 3 inches past the edge of your fabric.

Step 6: Sew

After your fibers are secured, sew your tulle/optic hybrid however you'd like. I layered mine over several skirts. Once the LEDs are attached to your fabric, it will become too ungainly to put under a sewing machine, so plan to hand sew anything after this step.

Design ahead to accommodate the LEDs, microcontroller, and battery pack. I chose to have my LEDs in a giant waistband that got covered by the dress bodice.

Step 7: Attach LEDs

Now it's time to attach the LEDs! This will likely require some experimentation based on the shape of your bulb.


Electrical tape is your friend.

My first attempt involved several layers of heat shrink tubing, which was not very effective since the bundle of fibers was much smaller than the radius of the LED. If you choose to use heat shrink, test your heat gun on a throwaway bundle of fibers first -- too much heat will melt them.

While super glue will keep your fibers from budging, it significantly dulled the light in my test bundle, and dissolved the rubber band. I wouldn't recommend it.


Ultimately, my most effective method was face-to-face electrical tape.

Start by trimming your fiber bundles just beyond the rubber band. A nice even surface will help the light shine into all fibers equally. Cut two pieces of electrical tape long enough to cover the LED as well as the fibers up to the rubber band. Sandwich your LED and fiber bundle between these two pieces of electrical tape as tightly as possible, and repeat for each LED in your fabric. If your LEDs still have exposed surfaces, use more electrical tape to prevent light from leaking.

Step 8: Add Microcontroller

Solder power, ground, and data lines between your microcontroller and your LEDs. I used a Gemma since it's flat, lightweight, and easy to power.

Now it's time to decide how you'd like your fabric to cycle through colors. If you're adding any sensor-triggered effects, now is the time to solder those components as well. I used Adafruit's rainbow() NeoPixel function, which you can find here. Remember to change the parameters at the top to match your data pin number and number of LEDs.

Step 9: Sand the Fibers

Now for the fun part: coaxing more light out of your fibers wherever you'd like. Nicking the fiber optic casing allows some light to escape. My two most successful tools for this were sandpaper and an open pair of scissors. For sandpaper, you can choose to sand at random intervals, or "strip" the ends 1-2 cm from the tip for a gradual glow. For scissors, open them wide and use a single blade to repeatedly tap the fiber. I recommend doing this in a dark room with the LEDs on so you can see your progress.

Left photo: sanded fiber (top); unsanded fiber (bottom).

Right photo: All fibers sanded about 2cm from the tips.

Step 10: Power Up!

I'm a big fan of the Gemma's JST battery plugin. I directly plugged in a lithium 3.7V 2500mAh battery that sits in the back waistband of the dress. Consider the weight, lifetime, and size of your battery in relation to your project.

Power up your board, turn out the lights, and watch your fabric sparkle!

Microcontroller Contest

Participated in the
Microcontroller Contest