Introduction: Programmable Light Up Matrix Dress
Ever wanted a light up dress, I certainly have!
This skirt consists of a light up underskirt, with power banks velcroed to your legs, and a regular dress over the top.
After searching all over the internet for a tutorial, I realised there wasn't much on light up dresses. So here is my attempt at making one :)
Despite being terrible at sewing, I had so much fun making this project and wear it to all kinds of things, whether it is tech events, awards, or when I am teaching kids about electronics.
There is a lot of potential to integrate sensors, utalise the matrix to print pictures/words, or chose patterns from an app on your phone.
I am currently working on the second version of the dress using Bluetooth and a phone app.
Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.
Step 1: Materials
I chose to cut up my RGB strip into separate LEDs and solder them together with wire so I could space them out further and use less LEDs. However this was quite problematic because the wires kept snapping off some of the LEDs when I sat down and I had heaps of issues with the data wire connection, so it will be easier to use a heap of vertical strips and wire the ends together (which I will be doing for my second version of the dress.
I'd also recommend using the silicon covered strips to limit bending of the strips because this can easily break the series circuit.
You will need:
- addressable LED strip (if not chopping up the LEDs then silicon covered are ideal)
- wire (lots of it if you are choosing to cut up the LEDs)
- solder and soldering iron
- mesh fabric used for structure in tutus
- thread (For sewing LEDs onto skirt)
- stretchy elastic fabric (for the waist band of the under skirt)
- Arduino Uno (or some sort of arduino microcontroller with digital pins, 5V and ground)
- 2 power banks
- 2 USB cables (will be cut up)
- belt (that fits tightly around your waist)
- Fabric (to make battery holders)
And a flowy dress!
I chose to make one out of a satin material because I thought it dispersed the light of the LEDs well. I just took a small LED strip to the fabric store and held it under different fabrics with the mesh underneath. Honestly would have been easier to buy one, a flowy skirt is a must if you want to fit the light up underskirt underneath.
Step 2: Electrical Layout of Underskirt
I've done a rough diagram of the electrical layout of the skirt, and how it is split into 2 halves with the power packs. Notice I have one continuous data wire, but split the power between 2 battery packs.
From what I researched, it appeared that the max current able to be drawn from an arduino uno 5V pin is around 1A. I used 120 LEDS, and only 30 LEDS on full white drew a current of 0.96 A, so this clearly cannot be powered directly from the board, and we need external power supplies
If using a regulated 5V power supply (like I think the battery packs I am using are) then you can supply power to the board and the strips by connecting the 5V and ground to both the arduino and the strips. Connecting it via USB to the battery pack will provide 5V, which is shown in the second picture where I cut a USB cable to access the ground and 5V wires from the battery (the orange wires being 5V, and the yellow wires being ground). As long as my current output didn't exceed the current output of the battery pack, I think it was ok.
To connect the separate strips together I'd recommend connecting halved jumper wires to make it easy to interchange broken LEDS and for easy soldering
Please consult someone who specialises in power before starting this project, as I am not confident in my knowledge on power supplies. Whatever I am doing worked, because nothing went wrong, but please don't take that risk.
Step 3: Test First Half of Skirt
I decided to set up the first half of my LEDS (60 LEDS, one battery pack).
I created a underskirt using a stiff mesh fabric (to give the dress a bit of structure) and sewed the LEDS to it. Again, would really recommend using strips instead of cutting all of them up.
I'd recommend only download new programs with all the batteries unplugged. I connected the data pin of the 120 LED strip to Digital pin 6.
The first line of actual code is:
Adafruit_NeoPixel strip = Adafruit_NeoPixel(120, 6, NEO_GRB + NEO_KHZ800);
Which can be explained as:
Adafruit_NeoPixel strip = Adafruit_NeoPixel(numberOfLED, DataPin, NEO_GRB + NEO_KHZ800);
If you want to use only 60 LEDS, change the numberOfLED to 60 (instead of 120), and if using a different data pin, change DataPin to whatever pin you are using.
I've adapted the code from some Adafruit tutorials I was following a couple years ago, so experiement with some different patterns and colours!
Step 4: Set Up Whole Skirt
Connect the second battery back to the other half of LEDS, also grounding the power source to the arduino.
You can then adjust the program to do all the LEDS, and experiment around!
Step 5: Battery Pack Straps
This was the most problematic part of the whole dress.
I decided to create some battery holster packs to strap to my legs with velcro.
The first time the straps kept sliding down my legs, so I added a belt around my waist with straps to the battery packs to hold them up.
People found this the most amusing part of the dress :)
I then duct taped the arduino to one of the battery packs, adding extra duct tape on the pin connections to stop the wires coming out. Sometimes I put it in a zip lock to maybe protect the arduino from static but I really am not sure if that helps.
Step 6: Try on the Whole Dress!
And here we have the finished product! Faulty, but it still works :)
I am currently working on a second version that will be a lot less problematic and more sturdy - using a hoop skirt! I will also document the process a lot more along the way.
I am incorporating bluetooth, so I can control it from my phone via an app I am making, and respond to changes in the sensors on board the phone.
Please leave me some feedback so I can figure out how I can improve my future instructables!
Second Prize in the