I have a NCP1117 5V voltage regulator that is on an Arudino Mega. The Arduino Mega, with all of the necessary electronics parts for the project, draws around 200mA when operational. When using a battery that has a maximum voltage of 12.6 Volts, the voltage regulator gets very hot but it works. (Case temperature of 96 degrees Celsius)

The goal of the project is to use a 4S LiPo battery which will have a maximum voltage of 16.8 Volts. This overheats the voltage regulator and it thermally shutdowns (This happens at 175 C according to the datasheet).

Is there a good way to cool these devices. It is a SOT-223 package on an Arduino Mega board. I have attached a small 5mmx5mm heat sink on the top, and it did help the temperature but not enough for the required 4S battery voltage. It also does not make the best contact due to the low surface area on the top of the device.

I don't like the idea of having a fan so is there a good way to passively cool this device? I was thinking of adding an additional heat sink on the bottom of the board underneath the voltage regulator. Just put it on the bottom solder mask. Is that just a dumb idea or is there a better way to cool these?

  • \$\begingroup\$ use a large zener diode and a large resistor, before the 5v reg \$\endgroup\$ Commented Feb 23, 2019 at 2:59
  • \$\begingroup\$ Why are you using a 4S battery pack? It seems that a 2S battery pack would be a much better option. Please answer the question. I am asking you for a reason. \$\endgroup\$
    – user57037
    Commented Feb 23, 2019 at 4:02
  • \$\begingroup\$ @mkeith The battery is powering motors that require a 4S battery for the desired torque. \$\endgroup\$ Commented Feb 23, 2019 at 4:10
  • \$\begingroup\$ I thought it might be something like that. I would suggest adding a DC-DC converter between the batteries and the NCP1117. (or just replace the NCP1117 with a DC-DC if possible). \$\endgroup\$
    – user57037
    Commented Feb 23, 2019 at 4:35
  • \$\begingroup\$ If you insist on this scheme, one promising idea is to dissipate more of the power between the linear regulator and the battery. For example, you could put a 22 Ohm resistor in series between the battery and the NCP1117. At 200 mA, the resistor will drop 4.4V, which should allow the regulator to run cooler, and will still allow the regulator to produce 5V until the batteries are depleted. If you need more than 200 mA, then you may want to go slightly smaller with your resistor. The power dissipation at 200 mA = 0.88W, so use a 2W or 5W resistor. Use a physically large resistor. \$\endgroup\$
    – user57037
    Commented Feb 23, 2019 at 4:56

3 Answers 3


Don't stuck into one approach, there are many options available. Don't make yourself difficult.

Use Battery Management System (BMS) + 5V buck dc-dc converter directly on to the 5v rail.
There are tons of it in the online store, some of them are already built-in. And there are people who wants to create it themselves such as GreatScott!

The BMS will protect your battery and your device from faults, such as protection from overcurrent, short-circuit, overdischarge and so on.

Your main goal is to use a 4S LiPo battery which will have a maximum voltage of 16.8 Volts
Just focus on it. You don't need addional heatsink and fan. Your device for the 200mA load will be cool.


Running a linear regulator from 16V to 5 V at 200 mA is not generally a good idea, you are wasting 70% of your battery life.

If you don't mind wasting the power and runtime, you have two options (or combination thereof),

  1. Put a 20-25 Ohm resistor or 5-6 power diodes to drop the input voltage by 5-6 volts;

  2. Attach a heat sink, but do it correctly.

The Arduino MEGA has the 1117 IC soldered to a copper pad about 10mm x 10mm in area. You need to make a heat sink to solder it to that area, removing some solder mask around the IC, not just on the top of plastic case. An example of such heat sink construction can be found om Ohmite site:

enter image description here

Unfortunately this sink is a bit too big for the available surface, so you have to be creative to adapt it, or to make your own out of 0.5mm-thick copper shim.

Alternatively you can replace the NCP1117 with equivalent off-board DC-DC switching converter like Recom R-78W5.0-0.5,

enter image description here

This one should have enough room to fit on AtMEGA with some manual dexterity.


Using 5V out of 16.8V can only achieve < 30% efficiency.

What will it take to convince to use something like a TPS562209DDCR?

  • with > 90% Efficiency for < 2$ with 81 mm² PCB real estate

Why have you not considered a 1" 25mm square 5V 200mA Fan in series with the LDO which only needs 6V input by a cut and jumper? http://www.delta-fan.com/Download/Spec/ASB0305HP-00CP4.pdf They are inexpensive in 6pcs online.

option 3

8W LDO replacement $4.31 (1pc) OKI-78SR-5/1.5-W36-C enter image description here

  • \$\begingroup\$ If I ever decide to take this project further and design my own PCB, I will defiantly use something along those lines! Unfortunately I am just using an standard Arduino Mega for now to get everything working so I have no control over the PCB layout. \$\endgroup\$ Commented Feb 23, 2019 at 4:54
  • 3
    \$\begingroup\$ any 5V supply can be external too \$\endgroup\$ Commented Feb 23, 2019 at 4:55
  • \$\begingroup\$ yes, connect the DC-DC module to the VCC (and ground) pin of the arduino. leave DC-IN on the arduino unconnected. \$\endgroup\$ Commented Feb 23, 2019 at 5:21
  • \$\begingroup\$ Putting a fan in series is a very bad idea. They do not represent a resistive load, and their current varies with both voltage a air load. Use of a DC-DC convertor is bar far the only choice. \$\endgroup\$ Commented Feb 23, 2019 at 5:34
  • 1
    \$\begingroup\$ time to use a switching regulator..the one pictured above is a great option, literately a drop in replacement \$\endgroup\$ Commented Feb 23, 2019 at 6:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.