Building a LED driver circuit and battery charger.

There are quite a few good and name brand 18650 cells on my shelf, they need to be put to good use.
Blinkenthings are a passion of mine so I decided that I want to build a few LED lights and will start with a flashlight.

Main goals:
300 Lumen
High CRI
No PWM
2-3 Hours run time
Rechargeable through micro USB

Technical requirements:
Build in battery protection, my cells are all unprotected.
Build in charger.
At least 2 buttons and the option to use a rotary encoder.
Temperature sensing of the LED.
Low cost power LED
Very rough battery level indicator LED
Charging status LED
Use parts already available or familiar with.

Here is what I have cobbled together, it could all fit on a small 75x19mm board, one side all the logic and passives and on the other the switches, the USB port and LEDs:

http://i.imgur.com/MYPhcUD.png

LEDs:
Nichia NF2L385 since they are relatively cheap, available in warm and cold white and have a 80 CRI.

LED driver:
Texas instruments TPS61165, it uses analog dimming, has a digital interface and I already have a few of them. It has a 1A switch and should do 2.5W to 3W output power.
The LEDs have a efficiency of ~110 lumen/watt so we are roughly in the ballpark of 300 lumen output power.

Charging IC:
Microchip MCP73833, I have worked with it before, I already have a few, it has a temp sensor that monitors the cell while charging and has a 3 pin status output.

Status LEDs:
Two WS2812b since I have a ton of them.

Cell protection:
Texas instruments BQ29700, I like TI parts and it fits the bill, the cut of at 2.8V is high enough for the cells I have to stay on the safe side and it has over current protection.
This part will hopefully never actually do something, it is just a insurance in case the controller does not do its job and prevent a over discharge.
It is just two more bucks worth of parts for some peace of mind, lithium cells do tend to catch fire.

Microcontroller:
Atmel ATMega328p, already got a few, I should have the board space and I need a few pins.

I could use a AtTiny and the first draft used one, but the AtMega costs only 2 bucks more.
Same goes for the status LEDs, I could just put a single one on the controller and an extra one hardwired to the charger but if I have a big µC I might as well use it.
The WS2812b have a high standby current so they need an extra FET to switch them of.
Again, all this could be done with less parts, smaller controllers and hardwired, I like this approach more.
My plans are to get a few metal core PCBs from china to solder the LEDs to and to put a thermistor on the board along with the LEDs to get a rough over temperature protection.
The battery voltage is measured internally in the controller, the AtMega328P and measure the internal band gap reference against VCC as AREFF.

That is the rough idea of the whole thing, any thoughts?

if you want good CRI go for Nichia 219C they can use 9050 CRI >92
A nichia 219 can easily provide 300 OTF lumens within specified current range and 2 hours runtime on a 3000mAh battery
http://www.nichia.co.jp/specification/products/led/NVSW219C-E.pdf

this is a sick test for the LED the manufactor rates the LED 1.8A for around 550 Lumens
your 300 Lumens goal after optics should be within the 1400mA range

there are also some CRI >95 LEDs

go for a neutral white tint around 5000K its like direct sunlight very pleasant to the eyes

http://www.nichia.co.jp/en/product/led_search.html?op=cond=application='General%20Lighting'

good light with minimal modding to achieve your goal, 2 hours at highest brightness mode
http://www.gearbest.com/led-flashlights/pp_411562.html?wid=21
has a nice driver and USB charger and 1.6A CC driver
basically you need some thermal glue and a Nichia 219C on a 16mm round board
just 3 output levels no strobe

a really nice host

you need to do a driver
and use the space within the light to add a USB charging port, would be a new mod, very nice

if you want to implement temperature control for the LED you need an Attiny25 MCU

for all those specs I really dont know in which host you build this

if you skip the rotary thing a Klarus XT11 series light may be the one
you need to reduce the current by increasing the shunt on the driver and replace the LED with a Nichia 219
on 3535 footprint you need only reflow the new LED

Thanks for your reply!

It took me a while to select a suitable LED, the NF2L385 that i want to use is more or less the only viable option i got.
I need a LED with a If of at least 4.3V, that means i have to use two in series, the NF2L385 has two dies in one package.

To get to 300 lumen i still have to use two of them but, this is the most important part.
They only cost 70 cents a piece, that is 1.5€ for two of them, compared to the 4€ of the 219C.

The rotary encoder is not for the flashlight itself, i want to put the circuit into a lantern as well.
The lantern will get the rotary encoder.

The whole body i want to build myself: