Convoy XHP35 Driver Analysis / Testing / Schematic

Convoy XHP35 Driver Analysis / Testing / Schematic

I've seen a few people mention this this driver, so I bought some, and upon review, not only do they work well, as advertised, they have excellent modding potential.

I've gone through the driver itself as well as data-sheets for the identifiable components, and have deduced the schematic and layout for this driver.

Component values were measured directly and/or approximated from rough calculations and expected values.

Convoy copied most of the MP3431's passives from the example circuit in it's data-sheet, for instance (which is fairly common practice).

Any values (mostly capacitors) approximated as above are marked with a '?' symbol.

Schematic and Board Layout:

Testing (after modification):

I modified one somewhat to drive 6V LEDs, and got the following results:


The MP3431 used in this driver has excellent efficiency for it's size, maintaining 95% for low and medium outputs through most of the battery capacity.

Low and medium modes fall to approx 91% right at the end of the battery charge (3V), but are still perfectly usable (20W out). Driver LVP cut-out occurs at this point anyway.

Maximum output level has an acceptable efficiency of 85% at 50W output, but output drops with battery voltage due to regulator issue mentioned below.

It should be noted that the above numbers are AFTER I had reduced the output voltage, swapped the shunt, bypassed the polarity protection FET, and removed the input current limit set resistor.

The results in this table are NOT the STOCK DRIVER, but should be representative of it's performance potential (subtract a few % from efficiency numbers to estimate values for stock driver).

I may test the driver as stock at some other time if there are more requests for it.

*nerdy section, just ignore this if not interested*

The current control loop uses the Op-Amp as a comparator between the filtered setpoint voltage and the current shunt voltage, with the output pulling the MP3431 FB pin to GND or 2.5V through a 100k resistor.

Some quick calculations suggest that this is less dependent on Op-Amp gain-bandwidth product than other designs I have seen.

Some switching drivers I have seen previously (eg the H2-C) have used the Op-Amp as an integrator, slowing the control loop and resulting in integral windup (the bright flash seen as you change modes).

I prefer this comparator method, as it seems more responsive (eg better strobe capability), doesn't flash on mode change, and performs just as well at low levels without noise (flickering).

*nerdy bit over*

The only significant flaw I noticed was the choice of regulator. It's 3.3V out, and so as the battery voltage falls below that (plus dropout), the supply to the MCU and Op-Amp drops similarly.

This is the cause of the dip in regulated output currents as the battery discharges, and since the test above, I have replaced mine with a 2.5VLDO which solves this problem.


This driver is very promising; to my knowledge, it's the highest-power boost driver commercially available in a 22mm size.

With some careful soldering, this driver has lots of potential if you know how to modify it to suit your need. I hope my diagrams will help with that.

I anticipate this driver becoming increasingly popular as it's quality and potential is recognised, and I hope that this analysis will prove useful.

Thanks for reading!

4 Thanks

Thanks a lot for this thorough modding review, very enlightening.

Could you please link some alternative 2.5 VLDO regulator, or at least say its name? Is it a direct replacement or some other nearby passive needs to be changed?

Good thing is that R2 is just aside the VLDO, as I would also mess with it to reduce the high cut-off. How much do you suggest setting the cut-off at? 2.7 V or even lower?

Thanks! Will link this in the Convoy thread.

By the way, how hard do you think it can go driving 3S or 4S emitters? Guess a bit less than the current you got for 2S / 6V emitters, doesn't it?

Further by the way, what modifications did you make for the driver to handle 2S emitters? Is modification also needed for 3S emitters?

Tue, 04/21/2020 - 06:50; Tue, 04/21/2020 - 06:54

Thx for all the details.

Too bad there are more people that can only resolder stuff but not playing with these tiny components.

Like me LOOOL

Anyhow, would you take a look in how to bump current output @12V from 2.5A to some higher levels?

Wow, very interesting info
It has thermal stepdown, could you point out the NTC ?
It might be R3

It's the tiny R4 next to C4, look at the circuit diagram. Curious.

No idea what the VLDO is, too blurred or unclear markings (??V15E).

A 50% current bump for 3S or even 4S emitter configurations is surely obtainable.

But people, pay attention to the current input! I wonder how the usual flashlight switch will deal with this, 20+A… :facepalm:

I have the L21A with XHP35, and with a 40T cell I measure 9,5 A on Turbo at the tail with the clampmeter (approx 40W primary)
According Simon this driver delivers 2,3A 12V to the LED) that makes it 27,6 W secundary (P=U*I =27,6 W)

Thanks for the testing and impressive results!

So the driver is dissipating about 9W in your high mode. Is this too much, or how do you cool it?

This driver has temperature regulation set fixed (through the NTC) set at 55 DegC. so it does not get very hot.

That’s why i was asking which one is the NTC :wink:

Check out the L21A review at
Convoy L21A review | Budget friendly long-range flashlight

Yes, it looks like the temp protection works well in stock configuration, but in the boosted configuration from the OP I wonder how much extra heat in the driver there is and if it’s manageable. Like, does the temp protection cause it to stop down immediately.

Yokiamy, your stock measurement suggests not very good efficiency, but your numbers are approximate (maybe the output current is actually higher, and the Vf is actually around 14V) so maybe the efficiency is actually a bit better.

I'm glad people are finding this interesting/helpful.

Thank you all for your kind words.

To reply to questions so far:


Any 2.5V SOT-23 size regulator would work, as long as it has the same pinout. I took one from an LD-25 driver I had spare, but there are plenty on Mouser/DigiKey/etc. No other passives required.

Whatever the specced min voltage is for your cells. It used to be 3V, but some manufacturers are going down to 2.7/2.8 nowadays.

The LVP is taken from after the regulator (no idea why), so calculating the required value of R2/R3 gets a bit weird. It might not even need changing, as it's dependent on regulator dropout.

I also don't know how the MCU will behave at 2.5V. It should be OK if LVP is adjusted, but I have since removed mine, so cannot easily test.

Input currents will remain limited to ~20A. You need to work out the input/output voltages, calculate duty cycle, and factor in efficiency.

See THIS Application Note by TI. You mostly need Page 6. At a complete guess, subtract 1-2W from my maximum for each volt out above 6V, But I'd strongly advise you to do the calculations.

Replace R16. I'm using a 220k, but you may need a different value for your emitter(s). You need a value which puts the MP3431 output voltage at half your emitter Vdrop range.

Check LED test graphs for Vdrop range of your LED up to your desired max current, use MP3431 datasheet equation to find R16. Do not change R17 or R9, you risk breaking the op-amp feedback loop.

HAHA not well. It won't be a switch for very long. You could increase the soft-start (C12) to reduce startup inrush-current, but that's not really solving the problem.

You'd need a FET switch for rear-clicky lights, or modify it to use a side switch. I'm an E-switch guy myself, so I don't have that problem...


Change sense resistor (R10) to lower value. Please note that XHP35 Vf = 14.2V at 2.5A. That = 35.5W out, which the 10A input current limit will curtail as the battery voltage falls below ~3.5V.

To do full modification, you need to do what I did for my test (requires good SMD soldering skills).

If you are driving an XHP35, there's not much point, as over 2.5A will kill it pretty quickly.


Where does it say that? The MP3431 has internal over-temp shutdown as a last resort, but the MCU doesn't have any external components for it like with some BLF drivers.

It may be internal to the MCU, similar to Narsil/Anduril, but I have no way to check it.

Similar to the previous reply, the XHP35 requires 14.2V at 2.5A. That = 35.5W out, so your test gives 100*(1-((40-35.5)/40)) = 88.75% efficiency, which is expected.


Thank you!

It should be mentioned that at 10W loss, only ~3.5W is dissipated by the MP3431 itself (conduction/switching). The remaining ~6.5W is lost to parasitics in the input current path (PCB traces, inductor, vias, etc).

The inductor DCR is approx. 3mR (VERY rough measurement), giving ~1.2W loss, though I strongly suspect that it is beginning to saturate at 20A.

I will try to find a better inductor to use, and will try some serious modification of the PCB to improve current handling.

I am designing a custom boost driver for a different project, and this driver works well as a testing platform for different ideas.

The testing I did was with the driver in open air, so I kept high mode test runs to 5-10 seconds.

Mounting it properly in a flashlight body would solve that issue, but would make it much more difficult to test and modify the driver.

My future modifications should hopefully improve thermals. The 3.5W I can tolerate, the other 6.5W (that I can do something about) need to go .

Simon said it before in his thread where he announces all new products. It is noted as well on his product page HERE


Driver instructions:(4modes)

modes : 1–10–40–100 max current output is 2300mA

Its biggest advantage is that no frequency can be seen in any mode, and there is temperature management.

It can control the flashlight temperature not to exceed 55 degrees Celsius,

If the flashlight temperature is below 55 degrees Celsius, it will output full current. If it is above 55 degrees Celsius, it will constantly adjust the current so that the flashlight will not overheat.

As stated before, Simon said it will do max 2,3A to the LED, which is according the sheet you are referring to approx 13,5 V

That makes it 2,3*13,5= 31 W, So 9 W dissipation and 31/40=77,5% efficiency

It sure looks like R3 might be the NTC, i will measure it when i have the time and when i fancy it

Ah, interesting. Thanks for pointing that out, although that is for L21A light, not this specific driver.

The page for this driver by itself does not mention it…

If it is the same driver, it must be using MCU internal temperature sensor, or maybe one of the resistors is NTC.

What was your battery voltage when you measured 9.5A? How did you get the figure of 40W input?

Freshly charged 40T, measured at the tail of the light with an UNI-T UT210E
The L21A uses exactly that driver

The driver image you show above is a different driver. It appears to use LD-25 style FET constant current, though the MCU and op-amp setup look very similar.

Fair enough. Good to know. :smiley:

As for the 40W input, according to HJK , at 10A, the 40T drops almost immediately to ~3.9V due to internal resistance.

That *10A would give 39W input.

XHP35 is 14V at 2.3A = 32.2W

32.2/39 = ~83% efficiency. And that’s including losses in driver spring (if you have one), reverse protection FET, LED wires, etc.

I used Kelvin connections right at the driver for all my measurements, so my results will be slightly higher in efficiency.

Really interesting, thanks a lot for your effort! :beer:

Thanks, 2.5 - 2.6V li-ion cut-off for me. With proper modification (a higher than 6V max input voltage regulator, for example) this could work with 2S configurations, LiFePO4 batteries, etc. 2S cells is good for driving 4S or “12V” emitters at a higher power, with less current stress on the components.

Concerning the LVP R2/R3 divider thing, I'm confused. You say it takes voltage output from the regulator, this technically isn't very right imho and of course it means the MCU couldn't measure battery voltage this way. But it works, because once input voltage gets close to 3.3V, the VLDO's output starts decreasing. Presuming ≈0.1V of dropout (?), once input from the battery is just a hair above 3V, the MCU's pin 7 will be at 1.5V due to the 1:1 resistor divider. If the cut-off value at MCU's pin 7 is 1.5V, the LVP is then a bit above 3V. Do you know what is the actual LVP cut-off value at the MCU's pin 7, agnelucio?

Mmmkay, but how is the input current limit removed or adjusted? I probably wouldn't mind trying up to 12/14 A or maybe a little more with some standard switches.

At half my emitter Vf range? WTF?

Still didn't read the MP3431 datasheet, bear with me but, is adjusting really needed? I mean, I once measured no-load output voltage in one of my “6V” H1-A drivers and it went all the way up to ≈14.66V (datasheet says maximum output :???: 12.6V).

Is pin 2 from the VLDO a good place to set an e-switch?


Love your work agnelucio. :+1: :beer:

You are not right in that case. The capacitor in anothers designs is for high frequency compensation. Without it the control loop of DC/DC converter can go unstable and oscillate depend on the load. It that and others Boost drivers OPAMP is like comparator i.e. it is Error Amplifier which compare reference voltage. So easiest method to adjust max output current in that driver is simple to adjust voltage divider R6/R7 without need to replace sense resistor. So if we have 3.3V LDO there is possible max amplitude of unfiltered PWM to be around 3.0-3.3V so maximum amplitude of Vref after filtering will be around 80-90mV. From 30mOhm sense resistor we can calculate that the maximum regulated output current is around 2.6-3A. For faster control loop I suppose they just used here faster opamp or without compensation which is bad in most cases.

Is the output purely current-driven, ie, is “100%” always 2.3A, regardless of the VF of the LED?

Interested in using these donks to drive some MT-G2s, but forgot if mine are 6V/3A or 9V/2A (and 2.3A is fine for me in either case).

If I don’t have to care about it, great.