Wednesday, October 24, 2012

Super RGBWUV flashlights

Shortly after I first got my hands on an MC-E color, I built an RGBW flashlight using this Romisen host. I designed these just to be fun to play with, but they can still be practical as well. The first one used a 7135 driver board with most of the traces cut and the PIC hand-wired. This was the light where I first developed my novel method for switching modes on brief power losses. Since then the RGBW lights have been evolving, including some custom driver boards I had manufactured.

They still use the 350mA 7135 regulators, and the most recent board uses the underside to double current to 700mA per die. My most recent iteration of the light includes an ultraviolet LED, which is run by a single 7135 regulator that’s hand-wired and floats above the PCB. I've also switched to XM-L color. The software that runs these has gone through a lot of iterations for different light configurations (including my monster RGBW). It includes battery monitoring based on using ADC to read an internal voltage regulator, which is indicated by brief flashes of red regardless of mode.

Today I made a significant upgrade to the software to add more modes. Because the goal of these lights is to have one that can do everything, I’ve adopted the policy of never removing modes as the software is developed—only adding them. That’s why this current revision of the code has 19 operating modes, which are:

  1. high white
  2. low white
  3. ultraviolet
  4. color fade
  5. color freeze
  6. stunner
  7. annoyer
  8. all on 20%
  9. firelight
  10. police lights
  11. red
  12. green
  13. blue
  14. red safety flasher
  15. red beacon
  16. 30Hz white strobe
  17. 14Hz white strobe
  18. 4Hz white strobe
  19. white beacon

Here’s a video of the light demoing the modes:

Here’s the code.

1 comment:

  1. Jeez, you're not getting lost in the dark any time soon. Cool stuff!