Introduction: Courier Bag LED Light

About: I like to tinker with just about anything, sometimes it works out in the end. Have fun looking at the projects, try tearing something open and let me know how it goes. cheers, -Joe

Want to make a neat courier bag light? This light goes through the straps on a timbuk 2 bag and blinks in really cool patterns using a BS2.

Step 1: Materials

You'll need:
16 x 470 ohm Resistors
16 x LEDs
24 Pin IC Socket
on/off switch
9v Battery
9v Battery connector
9 x Molex KK Connectors
18" 3/4" Flat webbing
Breadboard
Wire... oh you'll need some wire.

Step 2: Solder

Solder the resistors to the 24 pin socket. You want to solder to pins 1-16 of the BS2, which starts at pin 5 on the socket.

When soldering the resistors it works nicely if you put them in vertically not horizontally.

Then solder the other end of the resistor to one of the pins on the connector.

Solder the positive to pin 1 and the negative to pin 2.

Step 3: Sew

Sew two loops in your webbing so it fits over the straps on your bag.

I used one end with a slide adjuster to it would be... adjustable.

Step 4: LED Time

Poke your LEDs through the webbing with the positive on the top and the negative on the bottom.

Step 5: Make It Stand Up

So bend the negatives of them all towards the center. Solder them together and hook them up to the negative power. This step makes the strap sit flat and gives it some shape.

Bend the positives up and solder each to the corresponding pin connecter.

Step 6: Load the Code

Load this code on to your BS2 and fire it up.

' {$STAMP BS2}
' {$PBASIC 2.5}
' Blinking LED Code
' Joe McManus 2/06

counter VAR BYTE
index VAR NIB

DO

FOR counter = 0 TO 15
HIGH counter
PAUSE 50
LOW counter
NEXT

FOR counter = 0 TO 15
HIGH counter
HIGH (15 - counter)
PAUSE 60
LOW counter
LOW (15 - counter)
NEXT

OUTS = %0000000000000000
DIRS = %1111111111111111

FOR counter = 0 TO 3
FOR index = 0 TO 15
LOOKUP index, ( %0000000110000000, %0000001111000000, %0000011111100000, %0000111111110000,
%0001111111111000, %0011111111111100, %0111111111111110, %1111111111111111,
%0111111111111110, %0011111111111100, %0001111111111000, %0000111111110000,
%0000011111100000, %0000001111000000, %0000000110000000, %0000000000000000 ), OUTS
PAUSE 30
NEXT
NEXT

DIRH = %11111111
DIRL = %11111111
OUTH = %00000000
OUTL = %00000000

FOR counter = 0 TO 15
HIGH counter
HIGH (counter + 1)
PAUSE 65
LOW counter
LOW (counter + 1)
NEXT

OUTH = %00000000
DIRH = %11111111
OUTL = %00000000
DIRL = %11111111

FOR counter = 0 TO 10
OUTL = %00000000
OUTH = %00000000
OUTH = %11111111
PAUSE 100

OUTH = %00000000
OUTL = %11111111
PAUSE 100
NEXT

FOR counter = 0 TO 15
HIGH counter
HIGH (counter + 1)
HIGH (15 - counter)
HIGH (14 - counter)
PAUSE 65
LOW counter
LOW (counter + 1)
LOW (15 - counter)
LOW (14 - counter)
NEXT

FOR counter = 0 TO 10
OUTH = %00000000
OUTL = %00000000
OUTL = %11110000
OUTH = %00001111
PAUSE 120

OUTH = %00000000
OUTL = %00000000
OUTL = %00001111
OUTH = %11110000
PAUSE 120

NEXT
DIRH = %11111111
DIRL = %11111111
OUTH = %00000000
OUTL = %00000000

FOR counter = 0 TO 15
HIGH counter
HIGH (counter + 1)
HIGH (counter + 2)
HIGH (counter + 3)

PAUSE 50
LOW counter
LOW (counter + 1)
LOW (counter + 2)
LOW (counter + 3)
NEXT

OUTS = %0000000000000000
DIRS = %1111111111111111
FOR counter = 0 TO 2
FOR index = 0 TO 15
LOOKUP index, ( %1000000000000000, %1100000000000000, %1110000000000000, %1111000000000000,
%1111100000000000, %1111110000000000, %1111111000000000, %1111111100000000,
%1111111110000000, %1111111111000000, %1111111111100000, %1111111111110000,
%1111111111111000, %1111111111111100, %1111111111111110, %1111111111111111 ), OUTS
PAUSE 30
NEXT

FOR index = 0 TO 15
LOOKUP index, ( %0111111111111111, %0011111111111111, %0001111111111111, %0000111111111111,
%0000011111111111, %0000001111111111, %0000000111111111, %0000000011111111,
%0000000001111111, %0000000000111111, %0000000000011111, %0000000000001111,
%0000000000000111, %0000000000000011, %0000000000000001, %0000000000000000 ), OUTS
PAUSE 30
NEXT
NEXT

OUTH = %00000000
DIRH = %11111111
OUTL = %00000000
DIRL = %11111111

FOR counter = 0 TO 10
OUTH = %00000000
OUTL = %00000000
OUTL = %00000011
OUTH = %11000000
PAUSE 40

OUTH = %00000000
OUTL = %00000000
OUTL = %00001100
OUTH = %00110000
PAUSE 40

OUTH = %00000000
OUTL = %00000000
OUTL = %00110000
OUTH = %00001100
PAUSE 40

OUTH = %00000000
OUTL = %00000000
OUTL = %11000000
OUTH = %00000011
PAUSE 40

OUTH = %00000000
OUTL = %00000000
PAUSE 30
NEXT

DIRH = %11111111
DIRL = %11111111
OUTH = %00000000
OUTL = %00000000

LOOP
END

The Instructables Book Contest

Participated in the
The Instructables Book Contest