

The TP4056 is a lithium-ion battery charger IC that provides a constant current/constant voltage (CC/CV) charging profile. It is specifically designed for charging single-cell lithium-ion batteries. The IC integrates several safety features, including over-voltage protection, under-voltage lockout, and thermal regulation, making it a reliable and efficient solution for battery charging applications.








| Parameter | Value |
|---|---|
| Input Voltage Range | 4.0V to 8.0V |
| Charging Voltage | 4.2V ± 1% |
| Maximum Charging Current | 1A (adjustable via external resistor) |
| Charging Method | Constant Current / Constant Voltage (CC/CV) |
| Standby Current | < 55µA |
| Operating Temperature Range | -40°C to +85°C |
| Protection Features | Over-voltage, under-voltage lockout, thermal regulation |
The TP4056 is typically available in an 8-pin SOP package. Below is the pin configuration:
| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | TEMP | Temperature sense input. Connect to an NTC thermistor for battery temperature monitoring. |
| 2 | PROG | Programs the charging current. Connect a resistor to ground to set the current. |
| 3 | GND | Ground connection. |
| 4 | VCC | Input supply voltage (4.0V to 8.0V). |
| 5 | BAT | Battery connection pin. Connect directly to the positive terminal of the battery. |
| 6 | STDBY | Open-drain status output. Indicates charging completion (low when charging is complete). |
| 7 | CHRG | Open-drain status output. Indicates charging in progress (low during charging). |
| 8 | CE | Chip enable. Active low. Pull low to enable the IC, or high to disable it. |
VCC pin. A USB port (5V) is commonly used as the power source.BAT pin and the negative terminal to GND.PROG pin and GND to set the charging current. The charging current can be calculated using the formula:
[
I_{CHG} = \frac{1200}{R_{PROG}}
]
For example, a 1.2kΩ resistor sets the charging current to 1A.CHRG and STDBY pins (with appropriate current-limiting resistors) to monitor the charging status:CHRG pin: Low when charging, high impedance when not charging.STDBY pin: Low when charging is complete, high impedance otherwise.GND pin.TEMP pin. If not used, connect the TEMP pin to ground.VCC pin and a 10µF capacitor near the BAT pin for stable operation.The TP4056 can be used with an Arduino UNO to monitor the charging status. Below is an example code snippet:
// TP4056 Status Monitoring with Arduino UNO
// Connect CHRG pin to Arduino pin 2 and STDBY pin to Arduino pin 3
#define CHRG_PIN 2 // Pin connected to CHRG pin of TP4056
#define STDBY_PIN 3 // Pin connected to STDBY pin of TP4056
void setup() {
pinMode(CHRG_PIN, INPUT); // Set CHRG pin as input
pinMode(STDBY_PIN, INPUT); // Set STDBY pin as input
Serial.begin(9600); // Initialize serial communication
}
void loop() {
int chrgStatus = digitalRead(CHRG_PIN); // Read CHRG pin status
int stdbyStatus = digitalRead(STDBY_PIN); // Read STDBY pin status
if (chrgStatus == LOW) {
Serial.println("Battery is charging...");
} else if (stdbyStatus == LOW) {
Serial.println("Charging complete.");
} else {
Serial.println("No battery connected or idle state.");
}
delay(1000); // Wait for 1 second before checking again
}
Problem: The battery is not charging.
VCC pin. Ensure it is within the 4.0V to 8.0V range.BAT pin.CE pin is pulled low to enable the IC.Problem: The IC overheats during operation.
PROG pin.GND pin.Problem: Status LEDs are not functioning.
CHRG and STDBY pin voltages during operation.Q: Can I use the TP4056 to charge multiple batteries in series?
A: No, the TP4056 is designed for single-cell lithium-ion batteries only. Charging multiple cells in series requires a specialized multi-cell charger.
Q: What happens if the input voltage exceeds 8.0V?
A: Exceeding the maximum input voltage can damage the IC. Always use a regulated power supply within the specified range.
Q: Can I disable the temperature monitoring feature?
A: Yes, connect the TEMP pin directly to ground if temperature monitoring is not required.
Q: How do I adjust the charging current?
A: Use the formula ( I_{CHG} = \frac{1200}{R_{PROG}} ) to calculate the required resistor value for the desired charging current.
This concludes the TP4056 documentation.