Introduction: High Powered Yellow Bike Light (Front+Side Combo)

About: Autistic person who's interests include utility cycling, recreational cycling, cycling safety, electronics, gardening, Arduino, and LEDs.

Since I cycle commute, I designed this daytime bike light which has plenty of front and side visibility. There aren't that many options for high powered side lights at our local bike stores which is why I designed this bike light to have side LEDs. This bike light is about 7 watts. To increase your visibility to 360 degree, you can build another unit for the rear and substitute the yellow LEDs with red LEDs. I got the idea of using yellow LEDs for bike lights from the Instructable Daylight Visible Bike Light - Front/Rear Combo - 100 Lumens on 2 AA's.

This bike light has three memory spaces and allows you to turn on or off with only one press. It remembers which setting you used last time which means you don't have to cycle through all the modes every time you use it. You can program the memory spaces with one of eight patterns and one of six brightness levels for different riding conditions such as night or day.

The patterns available are:

  • 2 Hz
  • 5 Hz
  • 10 Hz
  • Fade
  • Flash-pause, flash-flash-flash-flash-pause
  • Flash-flash-flash-flash-dim
  • Solid

Step 1: Materials

    • 4 - 18650 Li-ion or LiFePO4 batteries (you can use old laptop batteries)
    • 1 - 4 cell 18650 holder
    • 5 - 100nF 0805 capacitors
    • 1 - 47uF capacitors
    • 2 - 470uF capacitors
    • 1 - 2A schottky diodes
    • 1 - 1A fuse
    • 1 - IRF9540N MOSFET
    • 1 - MMBT3904 transistor
    • 1 - MMBT3906 transistor
    • 1 - 2N7002 MOSFET
    • 1 - 1W 0.51 ohm resistor
    • 1 - 10 ohm 0805 resistor
    • 1 - 150 ohm 0805 resistor
    • 1 - 4.7k 0805 resistor
    • 1 - 56k 0805 resistor
    • 1 - 1M 0805 resistor
    • 1 - 10M 0805 resistor
    • 1 - LM2936-5.0 regulator
    • 1 - ATTiny85 IC
    • 2 - Momentary switches
    • 1 - 2.1mm socket
    • 1 - 2.1mm plug
    • 1 - Enclosure
    • 5 - Yellow 3w LEDs (700 mA)
    • 5 - LED holders
    • 3 - 15 degree lenses
    • 2 - 45 degree lenses
    • 1 - 1" x 1" aluminum angle bar
    • 1 - 1/2" aluminum flat bar
    • Acrylic or polycarbonate sheet
    • 6 - M3 screws
    • 4 - M3 standoffs
    • 6 - M3 nuts
    • 8 - 2" #6-32 screws
    • 4 - 1/2" #6-32 screws
    • 20 - #6 flat washers
    • 28 - #6 split washers
    • 16 - #6-32 nuts
    • 1 - 1/2" #8-32 screws
    • 1 - #8 flat washer
    • 1 - #8 split washer
    • 1 - #8 rubber washer
    • 1 - 1/2" #10-32 screws
    • 1 - #10-32 nut
    • 1 - #10 rubber washers
    • 1 - #10 flat washer
    • 1 - Handlebar reflector
    • Rubber strips

    Step 2: Circuit and PCB Toner Transfer Image

    In this circuit, I used a step-down LED driver. The Isense resistor's maximum feedback voltage was 322mV which gives a drive current of 632mA when a 0.51 ohm resistor is used. Since there is ripple voltage, I wanted to make sure that the drive current doesn't exceed 700mA. The LED string voltage would be between 10V to 12V for five yellow LEDs. The source voltage would be between 13.2V and 16.8V depending on the battery chemistry and its state of charge.


    Step 3: Solder the Circuit Board

    Step 4: Put the Modules Together

    Step 5: Programming the ATTiny85

    To program the ATTiny85, you have to copy the folder 'tiny' from the file '' to the sketchbook location where you can find from File->Preferences. You will also have to create a file called 'boards.txt' in the 'tiny' folder and copy the lines from the file 'attiny85 with BOD.txt'. When programming, select the board 'ATtiny85 @ 8 MHz (internal oscillator; BOD enabled 4.3V)'. BOD must be enabled because EEPROM will be used. For instructions about programming the ATTiny85, please see the Instructable at:

    You can change the drive current by changing the Isense resistor's feedback voltage or the Isense resistor's value. The variables 'yellowHighV', 'yellowLowV', and 'yellowDimV' stores the feedback voltage in ADC values. The ADC value equal to (1023 x Vfb)/1.1V.

    Step 6: Cut the Aluminum Bars

    Cut the bars to:

    • 2" long for the sides
    • 6" long for the front

    Step 7: Sand the Aluminum Bars and LED Base Plates.

    Before gluing the base plate, it's important to have a clean surface.

    Step 8: Clean the Aluminum Bars With Soap and Water

    Step 9: Glue LEDs to the Aluminum Bars With Slow Setting Epoxy

    Wait for the epoxy to set.

    Step 10: Drill the Aluminum Bars

    Drill the aluminum for the:

    • Handlebar mount
    • Wires
    • Screws
    • Transparent covers

    You can also tap the aluminum if you prefer.

    Step 11: Solder the LEDs

    Step 12: Solder the DC Plug to the LEDs' Wires

    Step 13: Strain Relief the DC Plug With Hot Glue

    Step 14: Fit the Lens Holders to the LEDs With a Dremel

    Step 15: Hot Glue Lens Holders to the LEDs

    Make sure the aluminum bars are clean. Once the lens holders can be placed flatly on the LEDs, hot glue them to the LEDs and let them cool.

    Step 16: Insert Lens to Lens Holders

    I used 15 degree lenses for the front and 45 degree for the sides.

    Step 17: Cut the Acrylic or Polycarbonate Sheets

    The plastic sheets will be used to protect the LEDs from impacts and scratches. I got mine at Home Depot and used Plaskolite to cut it. The straight edge should be clamped down while cutting.

    Step 18: Drill the Plastic Covers

    Before drilling, find out where you should drill, and mark the covers. When drilling, gradually increase the size of the bits. You may have to drill at low speed or by hand to prevent chipping if you are using acrylic. I used acrylic which is more transparent and UV resistant.

    Step 19: Install the Bike Light

    I've mounted the bike light onto the handlebar extender from my last Instructable. I coated the sharp edges of the light and screws with hot glue. I had to mount it towards the centre of the road to prevent blocking my camera on the handlebar. I also used a Planet Bike headlight on the curb side for extra visibility and redundancy.

    The enclosure and batteries were stored in the basket inside a bag for water resistance. I used towels to prevent bouncing.

    Step 20: Using the Bike Light

    • To turn on or off the light, press the power button for at least 0.5 seconds.
    • To scroll through the memory settings, press the power button for less than 0.5 seconds.
    • To set the pattern, press the pattern button for less than 0.5 seconds.
    • To set the brightness level, press the pattern button for at least 0.5 seconds.

    Step 21: Possible Improvements

    • Use 1.5A LEDs instead of 700mA LEDs for higher light output.
    • Use Cree LEDs for higher lumens per watt.
    • Use 3-Up LEDs to reduce lamp size.
    • Use a microcontroller with more pins such as the ATTiny84 for higher light output, more buttons, and more light patterns. You can design it to function as a signal and brake light.
    • Use elliptical lenses or diffusers to increase viewing angle.
    • Use warm white LEDs if yellow confuses drivers.
    • Use a physical switch and disable sleep mode. Vibrations may be an issue if the battery pack is mounted to the handlebar. Should the battery disconnect, the light will resume to its previous mode when reconnected.
    • Install a switch on the handlebar for easy access.
    • Use a pre-made battery pack to avoid problems caused by vibrations.
    • Use two handlebar mounts instead of one.
    Outside Contest

    Participated in the
    Outside Contest

    Car and Motorcycle Contest

    Participated in the
    Car and Motorcycle Contest