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\$ – analogsystemsrf Feb 23 '19 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\$ – mkeith Feb 23 '19 at 4:02
  • \$\begingroup\$ @mkeith The battery is powering motors that require a 4S battery for the desired torque. \$\endgroup\$ – M.Schindler Feb 23 '19 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\$ – mkeith Feb 23 '19 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\$ – mkeith Feb 23 '19 at 4:56

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.

| improve this answer | |

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

| improve this answer | |
  • \$\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\$ – M.Schindler Feb 23 '19 at 4:54
  • 2
    \$\begingroup\$ any 5V supply can be external too \$\endgroup\$ – Tony Stewart Sunnyskyguy EE75 Feb 23 '19 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\$ – Jasen Feb 23 '19 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\$ – Jack Creasey Feb 23 '19 at 5:34
  • \$\begingroup\$ You may be surprised to find out they do behave like a resistive load steady state above stall speed. \$\endgroup\$ – Tony Stewart Sunnyskyguy EE75 Feb 23 '19 at 5:38

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.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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