Here's the 2nd version of MELD (Multicolor EDC Light Driver), first posted here. This version addresses the issues and shortcomings I had on the first one:
dropouts and flickering
- low current on
main (white) output
- no current
regulation on white
rechargeable cell to use UV
- CV regulator
changed to TPS63000
- better pin
- increased current
- separate SEPIC converter for white channel using LM3410
- output current
up to 1.5A
- true constant
- output current up to 1.5A
To make everything fit on a 5/8” diameter board, I had to put the SEPIC converter up on a daughter board that stacks above the main board. This allows the main board to be used for RGBW applications without the SEPIC board if lower currents on the white channel are acceptable. It's also feasible to use the SEPIC board on its own in some applications.
The new converter for RGBUV is a higher power part which fixed all the dropout issues (along with forcing it into PWM mode). It also is an adjustable output version, so I use a pair of 0402 resistors to set the feedback voltage. This allowed me to better handle high-Vf green parts by increasing the voltage rail to 3.5V, and it gives me the ability to let software control the output voltage. To do this, I put an additional resistor that connects the feedback pin to one of my microcontroller's I/O pins. Normally the pin is kept at high impedance, but on UV mode (which requires higher Vf for the emitter) I turn the pin to an output and pull it low, which effectively changes the ratio of the feedback divider and makes the converter generate 5.0V instead of 3.5V. Since this is running from the automatic buck/boost converter, the high-Vf UV part can be run from any battery type at any charge level.
This is my first time using a SEPIC converter (or the LM3410) but it works well. Using the SEPIC architecture allows me to run actual current regulation on the white channel, with input voltage above or below LED Vf. The tradeoff is that you need an extra inductor, but at 4x4x2mm that's not much to worry about. The LM3410 takes a PWM dimming signal on its enable pin, which makes things really simple since I only need one line to control it during dimming and standby. I did have to slow down PWM on the white channel to 488Hz to get it to work well, and I lost some resolution on the low end that software has to compensate for by artificially inflating PWM duty cycle (minimum is now 3/256 instead of 1/256).
Here's a video demonstrating use of MELD v2 in a Novatac 120P:
I'm very happy with the way these came out, I think I finally have a driver that I'm satisfied with for the ultimate light. Here's the board and daughter on OSHPark. If you want the source file or Eagle files, leave a comment. I also put together an LED board to cram RGBUV around a bigger white emitter for better beam patterns, still waiting on that one in the mail: