Project 1: Voodoo Dolls, Lights and Lullabies
Introduction
They don’t call it your first e-sewing project for nothing.
For my first project, I chose to create an interactive plush toy with sound and light. This project was inspired with a child in mind. Through my years of babysitting, I have encountered many children to see with night lights and other comfort object in aid of falling asleep in the dark. Thus, I wanted to create a toy that incorporates the components of sound, light, and comfort to simulate a plush lullaby nightlight.
This project was created in collaboration with Spark Fun’s LilyPad E-Textile collection. The plush toy is created with the LilyPad USB Plus microcontroller, LilyPad Button Board, Lily Pad Neopixel Board, and a speaker. There will only be one programmed song: “Mary Had a Little Lamb” with a synchronized light rhythm to the notes of the song to provide a soothing effect.
Proposal
See my project proposal to understand the initial goals, parts, and diagrams.
How it works
Functionally, how the circuitry works is fairly simple. There is one digital input that triggers the sound and light function. A button is considered a digital input because it only has an on or off, HIGH or LOW, 0 or 1 – it does not have a wide range of values that would require mapping the serial values. However, a button does require a 10k ohm resistor to pull down to ground in order for it to start off. By doing so, the button starts off (0 or LOW) in terms of energy flowing through it. Since the 10k ohm resistor is less resistive path energy with go through that instead of the button down to ground. However, when the momentary button is pressed down, there is less resistance, so energy will flow through that path simulating on (1 or HIGH) to the Arduino program. This on/off function will then trigger the song to start amplifying through the speaker while the LEDs pulse to the corresponding the notes in the programmed song.
Parts:
- LilyPad Plus Microcontroller
- LilyPad Button Board
- LiIyPad Neopixel Board
** These parts have been narrowed down extensively since my proposal documentation.
Prototyping
Before moving to the e-textiles, I simulated the sound and light in three distinct parts to understand how functions would work and be used to trigger specific points in the program to ultimately create working tech that I was happy with.
Part 1: Triggering Sound Through a Button
This part was fairly simple in regards to hooking up the circuitry. The speaker is considered an analog output, thus, we needed to use a digital pin compatible with PWM (pulse width modulation), which on the prototype board would be considered a pin with a tilde (~). PWM allows the speaker to communicated with the digital input (button) to know when it is HIGH and LOW, on or off. Thus, the digital input or the button will only need to be connected to either a number with or without a tilde – there is no specification needed for input.
Below is a schematic to visually understand the circuitry:
Part 2: Programming Sound
Incorporated programming the song that will be triggered by the button shown in the provided documentation above.
Below is the code to understand how sound is being created:
Part 3: Incorporating LEDs
Below is the schematic to visually understand circuitry added:
Below is the code added to understand how sound is being created:
E-Sewing
After feeling very confident with my prototypes and how they were functioning, I decided to take the leap to sewing my electronics.Not completely understanding the extra time it takes for e-textiles and the extra planning it takes, I decided to hope right in. This was a big mistake.
My connections were too lose, poor stitching lead to bunched up complications, and (most embarrassingly of all) I tried to solder conductible thread to a resistor without a made sew tab. If we are being honest, I was completely out of my league. Wires and soldering check. Conductible thread and electronics, not so much.
So when I ultimately found that my electronics were not going to conduct electricity properly, I took it to the Internet to learn how to use the e-textiles correctly. Spark Fun has an awesome forum and blog that shows users the ins and outs of electronic sewing community. The LilyPad Basics: E-Sewing taught me how to plan an e-sew project to understanding how the components work best with the conductive thread to that of best practices for sewing, knots, even trouble shooting when problems arise.
So after a failed first attempt (pictures shown above), I decided to use a couple of the techniques taken away from the instructional blog.
First, I decided to set out all my components that will be used in the making of this project. Below you will see the LilyPad Plus Controller, LilyPad Button Board, LilyPad Neopixels, a speaker (not an e-textile), and resistors with soldered sew tabs.
Pro Tip: Using an embroidery hoops are great way to plan your electronics and as a stabilizing when sewing!
Next, I used a sew line water-soluble marker to draw out my connections (I did this first on paper before felt) from each component. This helped with avoiding thread crossover. And if I had crossover, hot glue is a great insulator to keep those connections from shorting. After all plans were in place, I was confident to glue down my components for stability when I sew them down to the fabric. Confidently, I started sewing my materials together. After a good 3 to 4 hours, I had my three components sewed down and was excited to hook up to power to see if they were all set in place.
Here goes nothing. Literally, nothing it was.
Still did not work after all those hours planning and sewing the circuitry still did not work. What was I to do now?
Trouble Shooting
If I were to sum up this project into one word it would be troubleshooting. In the Spark Fun E-Sewing document, it goes over an extensive section on this.
Step 1: Check for loose Connections
This can sum up almost all problems in e-sewing. If the conductive thread is not making a tight connection to the LilyPad piece’s sew tabs, current will not be able to flow through consistently. This can be created by knotting in the sew tab connection or simply not pulling a thread all the way through.
I checked all my connections and nothing seemed to be loose.
Step 2: Circuit still not working? Check for polarity.
Like Spark Fun states: “Some LilyPad components are polarized, meaning electric current can only flow through them in one direction.” In some cases, if sew incorrectly the circuit will not function. In order to avoid this problem, check sews tabs before stitching.
This was not my problem. My components were not polar.
Step 3: Check energy flow with a multimeter
A mutlimeter is an instrument designed to measure electric current, voltage, and usually resistance, typically over several ranges of value. So I used the tool to check for continuity through the circuit to see where the connection was breaking. Check out this great video: How To Use a Multimeter tutorial to help you get started.
This was still not the problem.
Connections were great through and through. Button. Speaker. Neopixels.
At this point, I was very frustrated and struggling to find the root of the problem. I went through a couple different preliminary tests like:
- Making sure the switch on your battery holder is in the ON position.
- Crossover and touching connections that may be shorting the circuit.
Still nothing was working, so I decided to create a pseudo connection to the speaker to see if it was blown by intercepting the input and output to my prototype Arduino board. This was not the answer either.
After several hours of trying to figure out what was going wrong. I, ultimately, decided that the LilyPad Plus Control Board was broken and working improperly. This could be determined by the lack of working LEDS embedded on the board and other parts that seemed to be lacking.
Unfortunately with only 2 days to complete the project, I decided to create the circuitry using the board that I used in the prototype. I hooked up the speaker by sewing part of it on felt then soldered the rest of the material to an input (~10) and output to ground. I then used a regular momentary button (not e-textile) that I would solder to the Arduino and lastly I soldered the Neopixel (e-textile) straight the board.
Although this was not how I expected my project to go, non e-textile components got the job done… almost.
Enclosure Creation + Combining Hardware
During the ideation of my project, I was really inspired by Ugly Dolls and Damn Dolls. So with those plush toys in mind, I decided to create a voodoo doll type of enclosure using felt and stuffing material. Felt was a great material to use with e-textiles because of its sturdy build; it can stabilize the components in place. I decided to use white felt for the body and pink felt as an accent color.
Because sewing is hard to simulate without actually sewing it all together, I needed to create the enclosure big enough for all the components to fit. I had to create several iterations of the body to finally get a size that I would be happy with. However, after putting the pieces together, I still found that the enclosure was not big enough but it would do for the final iteration. In all, it was not as plush as I would have wanted it. However, this would also be a factor of not using any of the e-textile components intended for the project. So using the Arduino Uno equivalent, it made for bulkier components within the body making it harder to stuff with material.
However in the end, combining the enclosure and the bulkier hardware worked well enough to be able to sew up the dolls. I was more than pleased with the aesthetic of the entire project with or without all the e-textile components.
But with it all said and done working perfect, I ran into more complications. Because I was using non sewing components the dolls became that much more susceptible to breaking. And it did just that. The soldered pieces on both the speaker and button broke creating two different shorts in the circuit. What to do? Well I had to cut the entire back and trouble shoot the problem by re-soldering a couple components including a completely broken resistor. With a last minute surgery before project presentations, I was able to sew the doll back up giving it an even creepier look than it had already.
Takeaway
To sum up the whole experience, I would have to say e-textiles are difficult. Allow enough time to trouble like I had to because there is bound to be something wrong somewhere. Documentation on these products is very useful and should be used. The amount I learned from posts and blogs by other Spark Fun, Adafruit and other user is one of the main reasons I got through this project. And as frustrating as this entire experience was, I am happy to say that I tried it and that hopefully my second e-sewing project goes much, much smoother.