So I came across this instructable awhile back: Jar of firefies Basically [Keso] has soldered enamel wires to each LED and then used some neat micro alligator clip, to twist the wires neatly. I didn't have access to such micro clips so my twisting was done by hand, as a result my LEDs and their wires are very messy and uneven. Possibly on a later revision I will be able to find such connectors.
My version only uses one colour of enamel wire that I salvaged from an old clock module. Because of this I had to use my multimeter to determine the polarity of the LEDs after twisting them.
The 8bi8 hardware was over kill for this project, it is designed to drive 128 LEDs in a matrix formation, currently I am driving 16 LEDs directly from the n-chaneel sinking mosfets. Overkill? Probably, but I had the hardware on hand so it was a quick project to construct.
Unfortuantly the LEDs cannot be faded using low power tequniques, when I designed the 8bi8 board I wired in the output enable pin from the 595's this would allow for fading of the output via PWM. Unfortunately the microcontroller pin I chose for this job was not one of the hardware enabled PWM pins. So fading the outputs would require a software PWM which would significantly decrease the battery life of the device.
The code is very simple, the LEDs are flashed in sequence. I would like to set up a proper random number generator to random select a LED and randomly select a sleep interval before the next flash. I suppose this new code will be created for a new board revision.
Additionally on a new board revision I would wire in a LED to be used as a light sensor so that the LEDs would only be activated at night, just like real fireflies.