This month is Penn State's LGBTQ pride month, and this upcoming Friday is the LGBT roundtable and QTPOC student drag show. With the HackPSU's technology team visiting Bit Camp, and one of our own, Dave, performing in the show, we decided to collaborate on a costume that involves wearable technologies.
What it does
The skirt illuminates its length using side emitting PMMA fibers. The illumination pattern is generated on the fly by an Arduino Uno, and is synced to music listened to by the microphone in the waistband.
How we built it
The electrical components were wired point-to-point using jumper cables since it's a relatively simple circuit. The code was written in C++ using Arduino studio, and the skirt itself was a rather arduous task, involving hours of labour by our team. The dress was created by cutting fiberoptic lines to size and then embedding them into tulle by folding the tulle over itself. These fibers were then rejoined at the waistband of the dress and will be attached to the LED strand later.
Challenges I ran into
Digital signal processing is HARD and component selection is sometimes not easy. We thought that a microphone with an analog amplifier was purchased, when in fact one with a comparator was purchased, giving minimal resolution to the data. The BeagleBone Black that was initially to be used proved to be ineffective since its filesystem was in a read only mode, leaving us stranded on Arduino with insufficient computing power to perform robust signal processing. MATLAB was used to generate Arduino code, but this proved ineffective too since the host computer was unable to process the audio effectively. This left us with an underpowered MCU and an interesting problem.
Accomplishments that I'm proud of
Our codebase squeezes every last drop of performance from the Arduino without moving to AVR assembly code; loops are unrolled using GCC preprocessor commands, and some clever signal processing tricks are used to create the LED effects in a way that most people will find sufficiently synced to music. We were especially pleased to find that the LEDs sync to the soundtrack to the drag show impressively well. We were also proud to have fabricated such a skirt in such a short timeframe and to have found this design as a cost saving measure over using thousands of LEDs.
What I learned
The team received a big refresher on signal processing, fiberoptics, and micro controller programming. As a team of mixed experience, we all learned different things, with the younger members learning more technical skills and older members learning how to share their skills more effectively. The team also learned about tailoring and how to construct a tulle skirt, which for most was a new experience.
What's next for Dynamic Music based Fiber-Optic Skirt
We want to bond the LEDs to the fibers and use a more powerful processor to run a Sparse Fourier Transform and have the LED color be frequency dependent and the brightness to be volume dependent. We would also like to consider the possibility of revisiting pregenerated patterns in a more optimized scenario. We may also investigate integration with home audio systems for a unique home lighting solution.