Table of Contents >> Show >> Hide
- What Is the TP4056 (and Why Is It Everywhere)?
- How Lithium Charging Works: CC/CV in Plain English
- TP4056 Charging Behavior: What It Actually Does
- The TP4056 Pinout You’ll Actually Care About
- Setting Charge Current: The PROG Resistor (RPROG) Made Simple
- Why TP4056 Modules Get Hot (and What to Do About It)
- Charger vs. Protection: The Big TP4056 Module Confusion
- The Load Sharing Trap: “Why Won’t It Ever Finish Charging?”
- USB Current Isn’t Infinite: Match Your Charge Current to Your Source
- How to Spot a Good TP4056 Setup
- Troubleshooting: When the LEDs Are Judging You
- Where TP4056 Shines (and Where It Doesn’t)
- Alternatives (When You Need More Than a Simple Linear Charger)
- Conclusion
- Real-World Maker Experiences with TP4056 (The Extra )
If you’ve ever bought a tiny blue (or green) board with a micro-USB port, two LEDs, and the confidence of a thousand
“DIY power bank” videos… congratulations: you’ve probably met the TP4056. This little 8-pin chip is one of the
most common ways makers charge a single 3.7V Li-ion/LiPo cell (like an 18650 or a flat pouch cell) from a 5V source.
It’s cheap, simple, and does one job wellas long as you treat it like a charger, not a miracle worker.
This guide breaks down what the TP4056 is, how it charges lithium batteries, how to set charge current correctly,
why it sometimes gets hot enough to toast your fingertips, and the real-world “why is my project rebooting?” issues
that show up when you try to charge and power a device at the same time. We’ll keep it practical, a little funny, and
very focused on building things that don’t end in the smell of regret.
What Is the TP4056 (and Why Is It Everywhere)?
The TP4056 is a standalone linear lithium-ion battery charger IC designed for one cell. It uses the classic
CC/CV charging method (constant current / constant voltage) and targets a 4.2V final charge voltage, which is
standard for most Li-ion/LiPo chemistry you’ll see in hobby projects.
It became popular because it needs very few external parts, it can charge directly from 5V sources (like USB),
and it provides status outputs that module makers turn into the familiar “red = charging, green = done” LEDs.
Many low-cost “TP4056 modules” also include a separate protection circuit (often advertised as “overcharge/overdischarge protection”),
which is helpfulbut also a source of confusion we’ll clear up later.
How Lithium Charging Works: CC/CV in Plain English
Lithium cells aren’t like NiMH where you can throw current at them and look for a temperature bump. Li-ion wants a
controlled routine:
1) Precharge (Trickle) for a Deeply Discharged Cell
If the battery voltage is very low, chargers typically start gently with a small current. This helps “wake up” a deeply
discharged cell without stressing it.
2) Constant Current (CC): Fill It Up Efficiently
The charger applies a set currentsay 500mA or 1Awhile battery voltage rises. This is the fast, productive part of charging.
3) Constant Voltage (CV): Hold at 4.2V and Let Current Taper
Once the cell approaches the final voltage (around 4.2V), the charger stops increasing voltage and instead holds the voltage steady.
Current naturally tapers down as the battery finishes charging.
4) Termination: “Close Enough” at About C/10
Most simple linear chargers end the cycle when current drops to roughly 1/10 of the programmed charge current
(often called “C/10 termination”). This avoids keeping the battery at 4.2V forever, which is not great for long-term battery health.
TP4056 Charging Behavior: What It Actually Does
The TP4056 follows that CC/CV routine with a few notable details:
- Final charge voltage: fixed at about 4.2V (for a typical TP4056-4.2 variant).
- Programmable charge current: set with a single resistor on the PROG pin.
- Trickle (precharge) threshold: around 2.9V for deeply discharged cells.
- Charge termination: when current falls to about 1/10 of the programmed value (C/10).
- Automatic recharge: if the battery voltage later droops, it can top it back up.
- Thermal regulation: it can reduce charge current if the chip gets too hot.
That last bulletthermal regulationis a polite way of saying: “If you ask a tiny linear chip to burn off a watt or two
as heat, it will try, then it will get spicy, then it will silently back off.”
The TP4056 Pinout You’ll Actually Care About
Many people only use “IN+, IN-, BAT+, BAT-” on a module and never look at pins. Totally fair. But understanding the key pins
explains 90% of the weird behavior:
VCC and GND
This is your 5V input supply (USB or adapter) and ground.
BAT
Connects to the battery positive terminal. The TP4056 regulates the BAT pin to the proper charging voltage in CV mode.
PROG
The magical resistor pin. A single resistor to ground sets the charge current. The voltage here can also be used as a current monitor.
CHRG / STDBY (Status Outputs)
These are usually open-drain outputs used to drive LEDs. Modules commonly label them indirectly via the LEDs:
red LED for charging, green LED for “done/standby.”
TEMP
Temperature sense input meant to work with an NTC thermistor in a battery pack. Many cheap modules disable this feature
by tying TEMP in a way that prevents charging from being suspended due to temperature. In real products, temperature monitoring matters.
CE (Chip Enable)
Enable/disable input. Some modules break it out, some hardwire it.
Setting Charge Current: The PROG Resistor (RPROG) Made Simple
The TP4056 lets you set the maximum charge current with one resistor.
A commonly used relationship is:
IBAT (mA) ≈ 1200 / RPROG (kΩ)
That’s why you’ll often see 1.2kΩ on modulesbecause it targets about 1000mA (1A).
Quick Examples
- Want ~1A? RPROG ≈ 1.2kΩ
- Want ~500mA? RPROG ≈ 2.4kΩ (common value: 2.4kΩ)
- Want ~250mA? RPROG ≈ 4.8kΩ (common value: 4.7kΩ)
Choosing the “Right” Current (Not the “Maximum” Current)
Here’s the part that saves batteries: pick charge current based on the cell’s capacity and spec sheet. Many Li-ion cells
are comfortable around 0.5C (half their capacity per hour) for routine charging. So:
- A 2000mAh cell at 0.5C → about 1000mA (1A) is reasonable.
- A 1000mAh cell at 0.5C → about 500mA is kinder.
- A 500mAh pouch cell at 0.5C → about 250mA is a safer everyday choice.
If your module is set to 1A and you connect a tiny 500mAh LiPo, you’re basically telling it: “Please sprint a marathon.”
Some batteries tolerate it. Some puff. None of them send a thank-you card.
Why TP4056 Modules Get Hot (and What to Do About It)
The TP4056 is a linear charger, meaning it drops extra voltage as heat. Power dissipation is roughly:
P ≈ (VIN − VBAT) × ICHG
Example: charging at 1A from 5.0V when the battery is at 3.7V:
(5.0 − 3.7) × 1A = 1.3W. That’s a lot for a tiny packageespecially on a bargain module with minimal copper area.
Practical Ways to Lower Heat
- Reduce charge current: switching from 1A to 500mA roughly halves the heat.
- Use a solid 5V supply: weak USB ports and thin cables cause voltage sag and weird behavior.
- Give it copper: if you’re designing a PCB, pour copper on ground and follow the recommended thermal layout.
- Don’t entomb it in heat shrink: yes, it looks neat; no, it does not breathe.
Thermal regulation can protect the chip by reducing current when it gets too hot. That’s good for survival,
but it means your “1A charger” may behave like a “sometimes 1A, sometimes 420mA, depending on the vibes” charger.
Charger vs. Protection: The Big TP4056 Module Confusion
The TP4056 is a charger. It is not automatically a full battery protection system by itself.
Many popular boards labeled “TP4056” actually contain two functional blocks:
1) Charging (TP4056)
Handles CC/CV charging to 4.2V and termination behavior.
2) Protection (Often a DW01-family protector + dual MOSFET)
Many “with protection” modules include a separate protector IC and MOSFETs. That protection circuit may:
- cut off output if the cell is over-discharged,
- cut off if there’s over-current/short-circuit,
- limit overcharge in some scenarios.
This is helpfulbut it does not automatically solve “power path / load sharing” issues, and it does not replace
the need for a quality battery and safe mechanical build.
The Load Sharing Trap: “Why Won’t It Ever Finish Charging?”
One of the most common TP4056 headaches shows up when you try to do this:
USB in → TP4056 module → battery AND a running device (ESP32/Arduino/sensor) at the same time
The TP4056 decides charge termination based on current tapering down (C/10). But if your circuit is drawing current while charging,
the chip can’t easily tell what portion of current is going into the battery versus feeding the load. The result:
- The charger may never reach termination because current never falls below the threshold.
- The battery may sit at or near 4.2V for a long time, which can reduce lifespan.
- Your device may reboot or brown out when USB is plugged/unplugged because the “OUT” behavior isn’t true power-path management.
What You Actually Want: Proper Power-Path Management
If you need a device to run while charging, look for charger ICs/modules designed for “power sharing” or “load sharing,”
or add a simple power-path circuit (often using an ideal diode controller or carefully arranged diodes/MOSFETs).
The key idea is: the system load should be supplied from the input when present, and the battery should be charged
with a controlled currentwithout confusing the termination detection.
Translation: the TP4056 is a great charger, but it’s not a full “UPS for microcontrollers” all by itself.
USB Current Isn’t Infinite: Match Your Charge Current to Your Source
TP4056 datasheets often note it can be used with USB, but “USB” isn’t one thing. A computer port might limit you to
500mA (or less if it’s unhappy). A wall adapter might provide 2A easily. If your charger is set to 1A and you plug into
a weak port, the input may sag, the chip may run hotter, or charging may behave inconsistently.
Rule of Thumb
- If you’re charging from unknown USB ports, consider setting the module to 500mA.
- If you control the supply (quality 5V adapter) and your cell supports it, 1A is fine.
And yesUSB cables matter. A “freebie cable” with hair-thin wires can turn 5V into “maybe 4.4V with a side of disappointment.”
How to Spot a Good TP4056 Setup
Electrical Checklist
- Battery: known-good single-cell Li-ion/LiPo, preferably from a reputable manufacturer or protected pack.
- Charge current: set appropriately for the cell capacity and the input supply.
- Protection: either use a protected cell or a module that includes protection (and confirm it’s actually present).
- Temperature: ideally, don’t disable TEMP in real productstemperature cutoffs exist for a reason.
- Load sharing: if powering a device while charging, use a design meant for it.
Mechanical Checklist
- Insulate exposed pads; accidental shorts are the fastest way to learn new vocabulary.
- Don’t stress the battery leads; strain relief is cheap, battery fires are not.
- Give the module airflow if charging at higher currents.
Troubleshooting: When the LEDs Are Judging You
TP4056 modules are famous for simple LED feedback. Still, here are the most common “what’s happening?” scenarios:
Red LED on forever
- Battery is large and still charging (normal).
- Charge current is too high and thermal regulation is slowing things down.
- You have a load connected that prevents termination (very common).
- Battery is worn out and never reaches a clean taper behavior.
Green LED immediately (even with an empty-ish battery)
- Battery not connected properly (check polarity and solder joints).
- Protection circuit is tripped or the battery is below cutoff (some boards require “waking” the protector).
- Input voltage too low due to cable/supply issues.
Module gets extremely hot
- Charging at 1A from 5V with a low battery voltage can dissipate >1W (expected, but still needs thermal help).
- Short or wiring mistakestop and inspect immediately.
- Counterfeit/low-quality module with poor thermal layout.
Where TP4056 Shines (and Where It Doesn’t)
Great For
- Simple charging of a single 18650 or single LiPo pouch cell
- DIY gadgets where you can charge while the device is off
- Projects that don’t mind waiting a little longer (especially at 500mA)
Not Great For
- True “run-while-charging” systems without extra power-path circuitry
- Multi-cell battery packs (2S/3S/etc.)
- High-efficiency charging from solar panels or weak supplies (switch-mode chargers are better)
Alternatives (When You Need More Than a Simple Linear Charger)
The TP4056 is popular because it’s easy. But if your project needs better behavior, consider these categories:
Power-Path / Load-Sharing Chargers
These are designed to charge the battery while also powering the system load cleanly, without confusing termination.
Ideal for always-on IoT devices.
Switch-Mode (Buck) Chargers
More efficient, less heat. Great when input voltage is higher than battery voltage or when you want to charge faster without cooking the PCB.
USB-C-Friendly Solutions
If you’re moving to USB-C, you may want chargers that negotiate or handle modern source behaviors more gracefully.
You don’t need to abandon TP4056 to be “serious.” Just recognize what it is: a simple, reliable charger IClike a bicycle.
Amazing at being a bicycle. Not a submarine.
Conclusion
The TP4056 is a go-to choice for charging a single lithium cell because it’s simple, cheap, and follows the standard CC/CV method:
precharge for low-voltage cells, constant current charging, constant voltage finishing at 4.2V, and termination around C/10.
Set the RPROG resistor to match both your battery and your USB supply, and don’t be surprised if a 1A module runs hotlinear charging
turns excess voltage into heat.
The biggest real-world pitfall is trying to power a device and charge a battery from the same TP4056 module without proper power-path management.
If you need “run while charging,” choose a design made for it. Do that, and the TP4056 stops being a mysterious blue board and becomes what it
always wanted to be: a dependable little battery butler.
Real-World Maker Experiences with TP4056 (The Extra )
Makers tend to “experience” the TP4056 in the same way people experience a trampoline: it’s fun until you try something it wasn’t designed to do.
Here are some common field stories (the kind that show up in forums, group chats, and the quiet moments when you stare at a blinking LED and question
every life decision that brought you here).
The “It Says 1A, So I Picked 1A” Moment
A classic: someone connects a small 500–800mAh LiPo to a TP4056 module set for 1A because the board claims “1A charging.”
It charges fast, surebut it can also warm the battery noticeably. The lesson most people learn is that
module marketing is not the same thing as battery specs. After swapping the RPROG resistor to target 250–500mA, the battery runs cooler,
the module runs cooler, and the entire setup feels less like a science experiment and more like a product.
The “Why Is My Battery Always at 4.2V?” Mystery
Another common experience comes from powering an ESP32 (or similar) while charging. The device pulls current continuously, and the TP4056using current taper
to decide when charging is “done”gets fooled. The red LED stays on forever, or it flips between states in ways that feel haunted.
Eventually someone discovers that the load current prevents the charger from reaching the termination threshold. The fix usually involves either:
(1) turning the device off during charging, (2) adding proper power-path/load-sharing circuitry, or (3) switching to a charger designed to support a system load.
The “aha” moment is realizing the TP4056 isn’t brokenit’s doing exactly what it was designed to do.
The “My USB Cable Was the Villain” Plot Twist
People often blame the TP4056 when charging is slow or unstableuntil they try a different cable and suddenly everything works.
Thin or poor-quality USB cables can cause voltage sag, which makes charging unpredictable and can increase heating.
Switching to a short, decent cable and a stable 5V adapter can turn a flaky setup into a boringly reliable one (which is the highest compliment you can give
a battery charger).
The “Protection Board Saved Me… But Also Confused Me” Episode
Many TP4056 modules include a protection circuit. A frequent experience is connecting a deeply discharged 18650, seeing “nothing happens,” and assuming the
module is dead. In reality, the protection circuit may be in cutoff mode, or the battery voltage may be too low to behave normally. After a careful re-check,
the maker learns to verify battery voltage with a meter, confirm polarity, and understand which pads are “battery” versus “output” (some modules separate them).
The big takeaway: charging and protection are related, but not the same thing. Once you internalize that, troubleshooting becomes faster and
far less dramatic.
The “Heat Is Data” Mindset
One of the best long-term experiences makers develop is treating heat as feedback. If the chip is scorching hot at 1A, that’s a clue:
reduce current, improve copper/airflow, or use a switch-mode charger for better efficiency. Over time, many builders end up with a simple habit:
start at 500mA, confirm stability, then increase only if the thermal behavior stays reasonable. It’s not flashy, but it’s how projects survive past the prototype phase.
In short: the TP4056 is often a maker’s first lithium charger because it’s accessible. The “experience” is learning where its boundaries areand building smarter
once you’ve bounced off them a couple of times (preferably without smoke).
