I am back with many modifications from my previous LED Sneakers project. I basically completely scrapped it. I found that NeoPixels were much easier to use than regular RGB LED strips and offered a lot of possibilities with its individually addressable LEDs.
This project is based off of Clayton Richter's super awesome Luminous Lowtops project. This Instructable was just my approach. Check out his work! On his page he as excellent modifications to the project I'm sure that many of you will be interested in.
Step 1: Materials
- 2 x Teensy 2.0 microcontrollers - https://www.pjrc.com/store/teensy.html (~$32)
- Adafruit NeoPixel Digital RGB LED Strip - http://www.adafruit.com/products/1376 ($16.95 for 30 LEDs/m, $24.95 for 60 LEDs/m)
- 4 x Flexiforce pressure sensors (100lbs) http://www.adafruit.com/products/1376 (~$40)
- 2 x 4xAA alkaline battery packs OR 2 x 3xAAA Rechargeable NiZn battery packs
- 4 x 1N4001 diodes - http://www.adafruit.com/products/1376 Necessary ONLY if you're going with the 4xAA alkaline battery packs. If you're using the rechargeables, you don't need this. (~$1.49 at Radioshackl)
- 2 x shoes with thick soles
- 2 x 1000uF capacitors
- 4 x 1 Megaohm resistors
- 2 x 10K resistors
- Gorilla glue or other adhesive that will work with the waterproof casing and the sole of your shoes (~$4 at Target)
- Soldering iron + solder
- Basic sewing kit (needles, thread, thimble, scissors)
- Electrical tape
Step 2: Preparing and Mounting the LED Strip on the Shoes
The first step is to pick the shoes you want to light up! I was lucky and managed to get this pair at Target for $5, but really any pair will do as long as it has thick soles and easily removable insoles.
Remove the insoles, because you will need to mount the force sensors onto the sole of the shoe from the inside. It should be pretty easy to tear the insoles out by hand. You can put the them back on after everything is soldered and ready to go, but the sensors need to be mounted on the hard/flat surface of the insole-less shoe.
If your shoes are used, clean them first before gluing the NeoPixels! Any dirt or debris will get in the way of the adhesion process. It doesn't have to be spotless, but make sure there aren't any pebbles in the way.
Cut the NeoPixel strips along the designated cut points to the length necessary to fit around your shoe. It might not be a perfect fit, so start with the beginning the strip at the heel of your shoe and work your way around counter-clockwise. No one will really notice the gap because they’ll be distracted from how super cool the rest of the shoe looks!
Use Gorilla glue (or the adhesive of your choice that works on the silicone waterproofing) to adhere the Neopixels to the shoe. Do it only a couple inches at a time so you can make sure you have a nice fit. DON’T put glue on the places where your shoe flexes the most (around the balls of your feet) because you want to create a slack so your Neopixels don’t get damaged when you walk.
You can use rubber bands to keep the NeoPixels in place as you wait for the glue to dry. I didn’t have any problems with the strip moving while I was gluing, but I put them on anyway just to be safe. Wait for the adhesive to cure.
Step 3: Coding the Teensy
If this is your first time using the Teensy, there is a Teensyduino tutorial on the PJRC website that tells you how to install the software. It's completely compatible with the Arduino software, so there's no need to worry about that! It also gives the option to automatically install several libraries, including the Adafruit ones, which are necessary for this project.
You will need to edit the "int nLEDs = 20;" section to fit the number of LEDs you have on your own shoe. You can also change the default color of the LEDs (which start out as blue) by messing with the "int color" section.
You also might wanna take a look at the Teensy 2.0 pinout diagram so you know how Teensy connects to each part of the code.
Step 4: Build the Circuit
Follow the diagram and solder accordingly. Use heatshrink for really solid connections.
Pay attention to the order of the soldering of the force sensors to the 1 Megaohm resistors. The wire has to connect to the resistor and the A0/A1 of the Teensy simultaneously. If you try it any other way, the sensors won't work at all! This is probably common sense to everyone else but I kept trying to do it a different way to make the soldering easier (I'm no good at trying to solder 3 things together at once!) and I couldn't figure out why it wasn't working. Learn from my suffering.
Remember, if you're using the 4xAA alkaline battery pack you need to use 2 14N001 diodes to lower the voltage output. Mine was running at 6.5V without the diodes, which has the potential to kill the Teensy and the Neopixels. You do not want this!!! The Teensy 2.0 needs 4.5V-5.5V to run without overheating. With the two diodes in place, the circuit should run comfortably at around 5.55V.
Step 5: Mounting the Components
Use duct tape to mount the force sensors inside the shoe. It might not look pretty (and if you're messy and overzealous as I am, it definitely won't look pretty), but it gets the job done. Make sure to mount the sensor connecting to the A0/F0 pin on the Teensy with the head of the sensor at the heel. Not like how I did it in this picture, which is upside down. Unless you want your LEDs to start from the heel instead of the toe, in which case, go right ahead...
As you can see, I used tape for like... everything. Which, in retrospect, I really don't recommend. Taping the sensors is OK, but there's a ton of messy wires involved in this, so it's best to sew them to the sides of the shoe from the inside. It's cleaner and just... not as horrifying to look at.
I mounted my Teensy on the outside heel of the shoe, which is another thing I don't recommend because that makes it easy to break! Sewing the Teensy to the shoe (preferably the inside of the tongue) is something I do recommend. Once you solder this thing, you will have a ton of empty spaces left on the Teensy that is perfect for threading a needle through to attach it to the shoe.
To mount the batteries onto the tongue, use velcro with an adhesive backing for the battery pack, and sewable velcro for the tongue of the shoe.
Step 6: Turn It On!
Sorry for the weird first person angle I have going on here, but hopefully you can see how the sensors affect the NeoPixels on the shoe. I accidentally switched my sensors so the rainbow gradient starts from the heel instead of the toe, but either way I think it looks kinda cool!
Step 7: Modifications?
- Good god, man. Stop taping everything. Sew the wires to the inside of the shoe instead of taping them. Using so much tape just makes life sad and weird.
- Attach Teensy and other components to inside of shoe (tongue) instead of on the heel to make it hardier.