

The TP4056 Module (Type C), manufactured by Shenzhen Technology Co., is a compact and efficient battery charging module designed for charging single-cell lithium-ion or lithium-polymer batteries. It ensures safe and efficient charging by incorporating features such as overcharge protection, short-circuit protection, and automatic charge termination. The module is equipped with a Type-C USB input for modern connectivity and ease of use.








Below are the key technical details of the TP4056 Module (Type C):
| Parameter | Value |
|---|---|
| Input Voltage | 4.5V to 5.5V |
| Charging Current | Adjustable, up to 1A (default: 1A) |
| Battery Type Supported | Single-cell Li-ion/Li-Po (3.7V) |
| Charge Cut-off Voltage | 4.2V ± 1% |
| Protection Features | Overcharge, Over-discharge, |
| Short-circuit, Reverse polarity | |
| Connector Type | Type-C USB |
| Dimensions | 25mm x 19mm x 5mm |
The TP4056 Module has the following pin configuration:
| Pin Name | Description |
|---|---|
| BAT+ | Positive terminal for the battery connection |
| BAT- | Negative terminal for the battery connection |
| IN+ | Positive terminal for external power input (alternative to Type-C USB input) |
| IN- | Negative terminal for external power input (alternative to Type-C USB input) |
| OUT+ | Positive terminal for output voltage (connected to the battery) |
| OUT- | Negative terminal for output voltage (connected to the battery) |
Connect the Battery:
BAT+ pin. BAT- pin.Provide Power Input:
IN+ and IN- pins (4.5V to 5.5V).Monitor Charging Status:
Adjust Charging Current (Optional):
Rprog with a resistor of the desired value. Refer to the TP4056 datasheet for resistor values corresponding to specific charging currents.Below is an example of how to use the TP4056 module to charge a battery that powers an Arduino UNO:
BAT+ and BAT- pins). // Example Arduino code to monitor battery voltage
// Ensure the battery voltage does not drop below 3.0V to prevent damage.
const int batteryPin = A0; // Analog pin connected to battery voltage divider
float batteryVoltage = 0.0;
void setup() {
Serial.begin(9600); // Initialize serial communication
}
void loop() {
int sensorValue = analogRead(batteryPin); // Read analog value
batteryVoltage = (sensorValue / 1023.0) * 5.0 * 2;
// Assuming a 2:1 voltage divider is used to scale down battery voltage
Serial.print("Battery Voltage: ");
Serial.print(batteryVoltage);
Serial.println(" V");
if (batteryVoltage < 3.0) {
Serial.println("Warning: Battery voltage is too low!");
}
delay(1000); // Wait for 1 second before next reading
}
Module Overheating:
Rprog resistor or improve ventilation.Battery Not Charging:
LEDs Not Lighting Up:
Charging Stops Prematurely:
Can I use the TP4056 module to charge multiple batteries in series?
No, the module is designed for single-cell batteries only. Charging multiple batteries in series can damage the module and the batteries.
What happens if I leave the battery connected after charging is complete?
The module automatically stops charging when the battery is full, so it is safe to leave the battery connected.
Can I power a device directly from the TP4056 module while charging the battery?
Yes, but ensure the device's current draw does not exceed the module's output capacity.
How do I adjust the charging current?
Replace the Rprog resistor with a resistor of the desired value. Refer to the TP4056 datasheet for details.
This concludes the documentation for the TP4056 Module (Type C).