

The MCP73831 is a highly integrated Li-Ion/Li-Polymer battery charge management controller. It is designed to efficiently charge single-cell batteries using a constant current/constant voltage (CC/CV) charging algorithm. This component is ideal for space-constrained applications due to its compact size and minimal external component requirements. Additionally, the MCP73831 includes a thermal regulation feature to prevent overheating during charging, ensuring safe and reliable operation.








The MCP73831 is available in a 5-pin SOT-23 package. The pinout and descriptions are as follows:
| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | VDD | Input supply voltage (3.75V to 6.0V). Connect to the power source. |
| 2 | STAT | Status output. Indicates charging status (active-low for charging). |
| 3 | VSS | Ground reference. Connect to the system ground. |
| 4 | PROG | Charge current programming pin. Connect a resistor to set the charge current. |
| 5 | VBAT | Battery connection pin. Connect to the positive terminal of the battery. |
Below is a basic circuit diagram for using the MCP73831 to charge a single-cell Li-Ion battery:
VDD (5V) ----+----[RPROG]---- PROG
| |
| |
STAT VBAT ---- Battery +
| |
VSS ------------- Battery -
The MCP73831 does not require direct control from a microcontroller, but you can monitor the charging status using the STAT pin. Below is an example Arduino code to monitor the STAT pin:
// Define the STAT pin connected to the MCP73831
const int statPin = 2; // Connect STAT pin to Arduino digital pin 2
void setup() {
pinMode(statPin, INPUT); // Set STAT pin as input
Serial.begin(9600); // Initialize serial communication
}
void loop() {
int chargingStatus = digitalRead(statPin); // Read the STAT pin state
if (chargingStatus == LOW) {
// STAT pin is LOW, indicating charging is in progress
Serial.println("Battery is charging...");
} else {
// STAT pin is HIGH (high-impedance), indicating charging is complete
Serial.println("Charging complete or in standby mode.");
}
delay(1000); // Wait for 1 second before checking again
}
Problem: The battery is not charging.
Problem: The MCP73831 overheats during operation.
Problem: The STAT pin does not change state.
Problem: The charge current is incorrect.
Can the MCP73831 charge batteries with capacities greater than 500mAh? Yes, but ensure the charge current is set appropriately for the battery's capacity. A lower charge current may result in longer charging times.
Is the MCP73831 suitable for multi-cell battery packs? No, the MCP73831 is designed for single-cell Li-Ion/Li-Polymer batteries only.
What happens if the input voltage exceeds 6.0V? Exceeding the maximum input voltage can damage the MCP73831. Always use a regulated power source within the specified range.
Can I use the MCP73831 without a microcontroller? Yes, the MCP73831 operates autonomously and does not require a microcontroller for basic charging functionality.