So, you want a flashlight with modes that are just right but can't find the one, no matter how hard you look? You are especially craving for a light that can be programmed with light levels ranging from hardly visible to full blast can't-see-anything-but-dark-spots-for-a-few-minutes when accidentally shone into your eyes? Onna stick In a P60-style host? Well, today's your lucky day.
Building It
First, you will need to organize a few parts. From left to right, the NANJG 101-AK pimped with a fourth AMC7135 (other µC-controlled driver PCBs might also work), an XP-G R5 and a P60-style reflector with brass pill from KD.
Next, you sit down and write your own driver for the micro controller on the PCB. If you are lazy and have a PCB run by the ATtiny13, you might get the brand spanking new Budget Light Forum Versatile LED Driver and skip this step.
Now you flash the µC with your program...
...and assemble your flashlight.
Et voilà!
Testing It
Now let's take this baby for a test drive. First, highest output, picture taken with ISO 100, f/3.5, 1/25 sec.:
Nice!
Next up, lowest mode, same camera settings:
Is this thing even turned on? Let's take a look:
Well, maybe we need a longer exposure time. 30s should be plenty, right?
Hmmm well, let's just say it's really low.
Conclusion
Okay, I'll admit it, I'm just plugging the new open source driver for ATtiny13-controlled driver PCBs I just released. Since I got the idea for this project while reading BLF, I named it the Budget Light Forum Versatile LED Driver. I hope it can live up to its name. Some technical Notes: It can be built in two ways, either as programmable, like the Akoray K-106, giving you up to ten user programmable constant light modes (no strobes, SOS etc.). If built as fixed, up to ten modes can be defined at compile time, including all the fancy blinking stuff. And yes, it does a really low low mode. During testing it took my eyes almost a minute to adapt enough to the darkness just to find the spot on a white wall less than two meters away. If you think you might have a use for this, fetch your copy here and tell me what you think. All constructive criticism is welcome.
Edit: Updated links to the current version. Links to older versions: v0.1 v0.2 v0.3