A powerfull LED Flood diving lamp – Part 2 Driver and battery design

InĀ Part 1, I explained the main principle of the LED diving lamp I built, and the mechanical part of it. It is now time to take a closer look on what is inside. In this article we will talk about the battery design, and the LED Driver. Please note that most of the calculation presented are rough and not digging too much in the design. Intention is to give an idea of the performance and to show the design path of such a product.

Usually, LEDs need to be supplied with a constant current in order to achieve stable and safe performance. In our case current can be pushed safely up to 2 Amps. If we take a look at the following curve in the datasheet, LED voltage drop (aka Forward Voltage) at 2A will be Between 37 and 38V, as a worst case we can consider 38V.

CMA1840 Forward voltage vs LED Current

We know now that we will need 38V to push 2A through the LED, it’s time to decide how to achieve this. As I want the lamp to be quite compact and standalone, I need a high power density battery. Lithium is a good choice in this case. With a voltage per cell going from 3.2 (with safety margin) to 4.2V for LiIon we would need at least 12 cells to power the LED. Not very compact and complexity for protection and cell balance is increasing a lot. But there is a solution known as step up DC/DC driver, which is a group of electronic topologies allowing to generate output voltage higher than the input ! We are then free to chose the voltage we want for the battery.

In order to chose the battery, we can make a rough calculation taking as input data : output power and wanted usage time when fully charged. In this case : 2A*38V = 78W output, which we need to multiply by the estimated efficiency of the driver, let’s be optimistic and assume 90% efficiency, input power will be 78/0.9 = 87W.


As I want to use Samsung inr18650-25r batteries (2500mAh capacity), we can calculate total capacity in function of cell number : 2.5Ah * 3.6V = 9Wh per cell (noted S ==> Wh/S).
With such a high power lamp, a 40 minutes autonomy is a good start, 87W during 0.66h (40min) gives a total energy of 58Wh. Then 58Wh / 9Wh/s = 6.44s.
7 cells are needed to reach this “on-time”. But 7 is not a very convenient cell number, even cell count would be better for packaging. I decided to go on with 6S, we can reverse calculate : 9*6 = 54Wh ==> 37 minutes autonomy.

One additional thing that is needed when designing battery packs is a BMS (Battery Management System) that is connected directly to each individual cell and provide multiple protections as lithium cells are quite sensitive and could lead to dramatic failures. Usual BMS are providing:
– Short circuit protection
– Overcharge protection
– Over discharge protection
– Cell balance during charging

6S commercial BMS

I used the above BMS board which fit very nicely above the 6 cells and is easy to wire.

Here is the pack during wiring. You can notice that I’m soldering the wires directly on the 18650 cells, which is usually not recommended because overheating can damage or destroy the cells. I took some precaution during soldering and heated the pads just the needed time.

6S 18650 battery pack during wiring

Now that we defined our battery, we know the input voltage span: [19.2 ; 25.2]V. It’s time do design the step up driver.
Multiple different topologies exists nowadays and choosing relies more on the available circuit controllers than on a real technical choice. I mean that based on the design hypothesis they made the “good choices” for you and designing the circuit is just a matter of reading the datasheet carefully, based on relevant input data of course.

After different readings, and being used to work with Texas Instruments chips, I find their datasheet quite clear and straightforward to follow. I chose TPS92691 Boost controller, that is designed to drive LEDs directly, it’s performing current regulation based on inductor current and measures LED string current for constant protection. It allows to go as high as 65V output so it’s perfect for our 38V LED.

I will not dig deep in the details in this article because it can be the topic of a single article. I will directly show the schematic I draw.

Boost driver schematic – 2A

This schematic needs some correction, but this is the actual PCB that was ordered so I present it as it is. R1 in particular, needs not to be pulled high but pulled low. Because in this case when the driver is powered up, it will directly apply maximum current in the LED, which is not what I want. I want the microcontroller to decide when to power the LED. During start up, the driver is quicker to start than the MCU, whose PINs will be in high impedance state. Therefore R1 will pull high PWM pin and activate the LED. Impact is a high brightness flash at startup, not very “professional”.
Also, as it is presented, PWM dimming is not performing well during low duty cycle operation. I still need to investigate on how to solve this issue. Anyway the driver is operating well in continuous operation and PWM is usually a bad idea when dealing with image capture.

This being said, and as I did not thought about it firstly, I need to change the PWM dimming to be analog dimming using “Iadj” pin. There won’t be any issue during video in this way.

Based on this schematic I draw a 4 layer PCB, ordered it and soldered all components using my loyal soldering iron !

4 layers PCB is not really linked with the complexity of the circuit, it could have been on 2 layers, but with 4 I can put uncut ground planes which is a very good idea when dealing with frequency switching.

Here is the result (still the DC/DC mosfet and the 5V LDO regulator to be added)

Boost LED driver
Boost driver top view

There are few additional functions embedded on this board than the LED Driver. I put a microcontroller that will measure battery voltage and some temperatures (driver, LED and Battery temp) using NTC to shutdown the lamp in case of overheating or low input voltage.

Design is now quite finished, however there are still two function missing : a way to charge the battery, and a way to switch on the lamp.

Because I needed to ensure the sealing I wanted to have the minimum number of holes as possible in the housing, I then thought about a way to use a magnetic switch to power the driver.
I decided to use a smart mos high side switch (BTS6143D) to perform power switching, we just have to short its input pin to ground and it lets current flow to whatever is after it.
Any kind of switch can be used to command it, I choose some randomĀ  magnetic switch that will be glued on the side of the housing, allowing to switch it through the box wall.

That’s it to switch on the lamp, then to charge it, I need just 2 input wires as cell balancing is performed by the BMS. I chose an “IP68” cheap connector as I planned anyway to seal it to the box using some epoxy bi component resin.

Schematic and layout can be found in this circuitmaker project.

In next article, I will show the final lamp, and discuss about the immersion tests !

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.