Intro: Bicycle Turning Lights/indicators
The main point of this project was to make the turning system but, I also did not want to machine anything. I didn't want to hammer, drill, mill, or even punch holes into things. I sourced as many parts as possible to prevent myself from making holes in anything. I did end up having to make 3 holes unfortunately. Oddly enough, not tooling anything proved extraordinarily difficult due to the fact that I wanted a custom system with off the shelf parts.
The items themselves are notably expensive. Considering however that a comparable light system from a retailer would cost you a lot more, I compromised on ease of use (i.e. no machining) to price. In fact, I could have done a lot more tooling to reduce the price of this build but, I wanted to see if I could get away with a minimal amount of tooling. So, let me apologize for the cost of the items up front.
I have noticed that newer and different items that would do just fine (and more cheaply) have arrived to market since I started this project. Oh well, I guess I should have just waited to start this project instead of slowly accumulating pieces for it.
When building this system, I posed a challenge for myself. I wanted to learn more about the Arduino (this is my first project with it), high power LEDs, and Li-Ion batteries. Granted, all the items I purchased for this project are overkill for the simple system of bike turning lights but, it was fun to learn about them.
On some very positive notes, the build can be used to make some really high powered flashlights. The LED enclosures can be used to make completely waterproof lighting systems that are super easy to build. No tooling necessary and only with slight modifications from this build. And finally, I hope that I will introduce new components to the hacker space with this Instructable. The LED enclosures are meant to be used in optics labs so having a super ultra geeky LED light system from laboratory equipment should give anyone at least some bragging rights. Even though your pocket book may be hurting because of it.
Step 1: Tools and Items
As a first step, I'll list the tools I use and the items that are necessary to build this project.
4x Ø1" x 1" Lens tube
2x Ø1" x 0.5" Lens tube
1x Retaining ring
4x Ø1" x 2" Lens tube
1x Ø2" x 1" Lens tube
1x Ø2" x 2" Lens tube
1x Ø2" Lens tube cap
4x Heat sinks - These may be overkill considering that the LEDs will be flashing.
2x LED drivers - I used the wired ones but the PCB mounted versions may be a better idea.
4x Amber LEDs
4x LED lenses - I used the wide angle lenses but any would work.
4x LED lens holders
1x Arctic Silver thermal paste
1x Ø1" O-rings - Used to fit the heat sink in the lens tube.
1x Ø1" O-rings - Used to seal the LED lens.
1x Ø2" O-rings - Used to seal the battery holder.
1x Ø3" O-rings - Used to mount lights to the bicycle.
1x 1" OD x 5/8" ID Washer - Used to hold LED lens in place.
1x 1" OD x 3/8" ID Washer - Used to hold the wire connector in place.
1x Ø2" OD x 1/2" ID Washer - Used in the battery holder.
1x Ø2" OD x 1/2" ID Fiberglass Washer - Used in the battery holder.
1x 1" OD x 1/4" ID Washer
1x 1" OD x 3/16" ID Washer
1x 4-40 x 3/8" Pan head screws
1x #4 Nylon washers
1x Black hook up wire
1x Red hook up wire
4x DC power connectors - Jacks
4x DC power connectors - Plugs
1x Solder - If you are an expert with solder, get the unleaded version.
1x Heat shrink tubing
1x 9V Battery connector
1x Battery holder
4x 14500 Li-Ion batteries
2x Battery chargers
1x SPDT Switch
1x Toggle boot
1x Arduino - I used the Duemilanove and tried the Nano. Both work with the configuration I have made.
1x Single right angle break away headers
1x Double right angle break away headers
1x Ø1" Spanner wrench. - Not necessary but helpful!
1x Ø2" Spanner wrench. - Not necessary but helpful!
1x Soldering iron
1x Wire stripper - Made in the USA!
1x Third hand - Useful but not necessary.
1x Multimeter - Not necessary but useful.
1x Center punch - Used to center where the hole should be.
1x Pin vise - Used to hold the drill bit.
1x Center drill - Used to prevent your drill bit from walking.
1x Diagonal cutters
1x Needle nose pliers
Step 2: Mounting the LED
Images 1 & 2:
The first step I took was to add some thermal paste to the heat sink and spread it around.
I then put the LED on the heat sink and moved it around a little bit to make sure that the thermal paste was evenly spread across the bottom it. The LED + heat sink combo is designed to have a minus and plus solder pad directly over one of the indentations along the side of the heat sink so, I made sure to orient the LED star appropriately.
I then fastened the LED onto the heat sink with the screws. I used the plastic #4 washers to ensure that my screws did not short out any of the solder pads on the star.
I then repeated the process to the other 3 LED stars and heat sinks.
Step 3: Enclosing the LED
I next prepared the wires I would need for enclosing the LEDs. I made:
4x 3" red wires
4x 3" black wires
4x 2" red wires
4x 2" black wires.
I stripped the ends off of the wires and tinned only one of the ends with solder. The reason why I only tin one end is because the other ends will be wrapped around other wires and I've found that untinned wires wrap around other wires more easily. I then soldered one red and one black 3" wire to the LED.
Images 3 & 4:
The next step is to assemble everything into the Ø1" x 2" lens tube. The first thing to add is the thick square o-ring to the lens tube. I had to massage it a little bit in order for it to rest flat on the relief in the lens tube. I twisted the wires of the LED such that it was easy to put it in the lens tube.
Next, I added the lens and lens holder. I then put the washer on the lens and then added the thinner o-ring. I used the retaining ring that came with the lens tube to tighten the washer down. I was careful to ensure that the thin o-ring does not get displaced by the retaining ring. The point of adding another o-ring is to make the enclosure water resistant.
If you got the spanner wrench, then it will make your life easy assembling the LED enclosures. I'd recommend not getting it though as it is a unitasker and not useful unless you work in an optics lab.
Step 4: Power to the LED
I could have probably reduced the cost and size of this build by not including the following power connectors but, I wanted to be able to remove the lights from the bike to prevent theft. I suppose once I figure out a way to mount the lights on my bike without having to weld them on, I'll update this build.
The jack has two components to it: a washer and an o-ring. The washer goes on the jack and then the o-ring and not the other way around. The o-ring is what presses up against the washer from McMaster-Carr, the one with the 3/8" ID. I placed this washer on the jack and secure it with the nut. If you do this, be careful not to tighten it too tightly. If you do, then the jack will break. If you don't tighten it enough, then the jack will spin freely in the washer. Both scenarios have unfortunately occurred to me.
I next soldered the wires to the jack. Thankfully the jack is self explanatory for which terminal the center pin is. But, using a multimeter with a continuity checker on it is a great way to make sure the terminals are correct.
The assembly of the power end for the LED is straight forward. Use another one of the thick o-rings to tighten the jack in the lens tube.
The orientation of the assembly is important as the wires of the jack should point towards the LED. This means that the wires should point into the tube.
Now I connected the power assembly to the LED assembly. I prevent the wires from shorting by using some heat shrink tubing.
I twisted the wires and solder them together. If you have one of those fancy heating guns, by all means use it to shrink the tubing around the wires. Otherwise...
Use the lighter to shrink the tape to the wires. Since the lens tubes are designed to thread into each other, I just connected the two pieces together.
Do the same for the other 3 LEDs and power assemblies.
Step 5: Mounting the Arduino
The box is quite nice. It's not weather proof but, some silicone could fix that. I'm quite impressed with it actually and I'll be purchasing more of these boxes in the future. the only thing I'm not impressed with is the fact that you will have to use the self tapping screws to tap holes in the enclosure in order to hold the face plates on.
This image shows the box disassembled. The bottom plate is what I used to connect the Arduino to. It's important to look at the orientation of the bottom plate because it isn't flat. I made sure that the indentation of the bottom plate is towards the cavity of the box. This way when you lay the box down, the screw heads that will hold the Arduino in place will not cause the box to not sit flush to the surface it is on.
To attach the Arduino, I made guide holes with my center punch using the holes that are on the Arduino board. Notice the orientation of the bottom plate. Once I had the spots for the holes, I used my pin vise and the center drill to make a guide hole for a #33 drill bit to make clearance holes for the 4-40 screws.
Once the holes were made, I mounted the Arduino to the bottom plate. I used the plastic washers on the board screws and the bottom plate. I had tons of them so I figured why not.
Step 6: Wiring
You will have to figure out the lengths of the wires that are needed for your bike. The wire I used is stupendous overkill and is not necessary. This is why I didn't put a link to the wire I used in the supplies step. The Switchcraft plugs will accept a Ø0.14" wire through the tension relief so find something that will fit and is also multiconductor. McMaster-Carr has a great selection for fairly cheap.
The wire I used, as I mentioned above, is overkill. It has 2 conductors (which is needed) but it is shielded and can withstand ridiculous temperatures. I think something around 800°F. The reason I got this is because of its outer diameter. I didn't have the Switchcraft plugs and jacks at the time so I though that the wire diameter that could fit through the stress relief was absolute. Which, it isn't by the way. But, I don't know what the play in it is.
I exposed the conductors in the wire and stripped the ends.
I then crimped some connectors to the ends of this wire. I unfortunately do not know what these connectors are called nor do I know what company the rectangular connector comes from. I purchased these items from a local electronics shop in town (whom by the way are always irritated to take my business) and they are way too grouchy for me to even ask where they source these things from.
These guys are great to connect to headers on boards and this is why I used them when I was debugging this project. But, I would suggest just soldering the connectors to the electronics board that needs to be made.
I then stripped the wire on the other end and soldered the plug to it. I chose to use the white wire as the center pin and the black as the ground. This is important to take note of.
Next I just fastened the stress relief to the plug.
Repeat for the other connectors to the LEDs.
Step 7: Power
To supply power to the Arduino and LEDs, I have opted to use Li-Ion batteries. I didn't want to use something from a power drill and I wanted something that would fit a standard battery holder. It turns out that trying to find Li-Ion batteries that fit this bill is difficult. Battery makers understand that if you were to use a similarly sized AA Li-Ion battery in a spot that takes regular AA batteries that your device will fry. This is due to the fact that regular AA batteries are 1.2 V while the Li-Ion guys are 3.6 V.
The basic setup for this is the same as for assembling the LED housings. The only difference is the insulating fiberglass washer used.
Images 2 & 3:
I assembled the jack as previously mentioned on the washer. Then I mounted the assembly to the lens tube.
Images 4 & 5:
Since this will hold the battery holder freely, I wanted to ensure that the jack did not short with the battery holder. To do this, I used the fiberglass washer to separate the two lens tubes from each other. The hole in the fiberglass washer is the same size as the ones in the metal washers. Securing the washer is a beast as the retaining ring needs to go into the tube nearly 2".
I then soldered the 9V battery connector to the terminals on the jack. I fed the 9V snap connector through the fiberglass washer.
I originally wanted to make a bike light that had the capability of outputting an absurd amount of light as a headlight. This is why I have 4 of the 3.6V Li-ion batteries. Unfortunately, I couldn't dissipate enough heat and I didn't feel comfortable using the 3 up Endor Stars for extended periods of time. So, I reused what I had for this project.
These batteries are powerful. They output a lot of voltage and are capable of supplying 900 mAh with up to 600 recharge cycles. I'm pretty sure they have to be purchased and charged in duo so with the 4 batteries I have, I got 2 chargers. It's pricey but they do charge really quickly, within 2 hours from a full drain. If I decide to try making my own battery chargers, I'll be sure to post that.
I should note that the batteries I used have a tendency to explode. In an attempt to prevent the explosion from occurring, I have made sure to purchase the Li-Ion batteries that have protection circuitry already attached to them. This is important to understand and realize. If you are uncomfortable using these batteries, then I'd suggest using NiMH batteries instead.
As before, I wired up a plug with the appropriate length needed for my bicycle with those silly rectangular connectors on the other end.
Step 8: Switch
This step is the second most inelegant step to the build. I couldn't source the type of switch I wanted so I made this thing with the parts I had around.
This shows the items I used to make the switch. I'm a big fan of toggle switches and I use them whenever I can.
Images 2 & 3:
The toggle boot has an o-ring attached to it and is designed to protect the switch from getting soaked. I first tightened the boot to the toggle switch with the 1/4" ID washer in between. I made sure to tighten it to ensure a proper seal with the o-ring. Once this was done, I then soldered the 3 conductor wire to the switch making sure I know which wire was the center or common on the switch.
I then put the switch in the lens tube and used one of the square o-rings to make a tight seal when tightened with the retaining ring.
The wiring needs to get to the switch. To do this I put the extra retaining ring half way into the lens tube. This is where the washer will rest. I put it in the lens tube far enough such that it would not short the switch. I then added an o-ring and another retaining ring to make the seal tight.
I then fed the wire through the second lens tube. Before tightening the two lens tubes together, I used some heat shrink tubing on the wire. I did this to try and make the opening to the wire tighter as I didn't want the wire flopping around in the switch assembly.
I then tightened the two lens tubes together to make one housing and connected the crimp/rectangular connectors I had to the other end of the wire.
Step 9: Wiring the Arduino
If you have made it this far, then you will have the skills necessary to wire up the Arduino without me going into extreme detail. This is by far the messiest and most evil step in the process of this build. I've tried extremely hard to make sure that the design is relatively simple and is something that anyone can do with the right tools. Unfortunately, this step is the least refined and most ugly.
I literally took the example program from the Arduino and changed the amount of time the LED was supposed to blink and, which pin the signal came from. Changing the pin was important as I had to make break away boards to hold the wiring.
I would recommend no one trying what I did and coming up with something that works for them. This is why I'm not going to describe in detail what it is that I did. Mainly because I don't want to construct another break away board in order to take pictures for the build as it was really tedious.
What I did was to use the TTL signal from the Arduino to trigger the Buck Puck to turn on and off. I then wired it such that the SPDT switch would supply power to both the Arduino and the LED lights for left/right indication. The two break away boards are connected to the Arduino with headers and are stuck into the supplied headers on the Arduino.
Using the rectangular connectors was pretty dynamite when I was still prototyping the wiring. But, they are prone to coming off of their connections. I would recommend soldering the wires to the boards if you can. I'm going to try an live with it for a bit and see if it works or not. If it doesn't, I'll update this build.
If you do build this, I want to point out that I tried several Arduinos before settling on the one I'm using. I tried using (and successfully fried both) an Arduino Stamp and LilyPad. I'm not an electrical engineer and only have basic electronics knowledge but I'm pretty sure that the reason why neither of the fried Arduinos worked was because of their power regulation. Remember, I'm pumping a nominal 14.4V into the system with the batteries I'm using.
I welcome suggestions on a better, more compact way of doing this. It would be spectacular if there was an easier way of doing it as well. I'm hopeful that the community will supply more information about this step and that a bicycle light indicator 2.0 will come about because of it.
Step 10: Final Assembly
The final step is to feed the wires through the hole I made in the Arduino enclosure.
Seal it up. I do like how these lights almost look like they were professionally done.
Step 11: Mounting
The front and rear lights are mounted to the bicycle with the large o-rings. The o-rings I purchased were a bit loose so I had to twist them to get the lights to stay snuggly to the handlebars. Getting some with a harder rubber might alleviate the slack in the o-ring.
I repeated the o-ring mounting with the rear lights. All the white tape looking stuff on my bike is reflective tape. The mounting of the rear lights is not spectacular and will have to be upgraded in the future.
I have not figured out a good way of mounting the Arduino to the bicycle. For now, it's just on the rack with zip ties. The batteries are just sitting in the baskets. Zip ties are theft prone so this will have to be changed.
The wires on the bicycle are really messy. I have not figured out a way to keep them under control but, I will update this when I do.
There are many things left to do with this build. First, it would be nice to shrink things. Second, I'd like to have a more permanent fixture for the lights, that way I don't have to tote them around. Thirdly, the mounting of the rear lights is not spectacular and needs to be upgraded.