Over time, any smartphone begins to work slower, and its battery drains faster than after purchase. Users often notice that the charge indicator shows 20%, and the device suddenly turns off, or the charge only lasts a couple of hours. This is a direct sign that actual capacity the battery has decreased and its physical condition has deteriorated. The default Android system rarely shows these exact numbers, hiding them from the eyes of the average user in system logs.
Understanding the actual state of the power supply is critical to deciding whether to replace the battery or optimizing power saving settings. There are various ways diagnosis: from built-in engineering menus to using third-party software and the command line. Each method has its own nuances of accuracy and complexity of implementation, but they all allow you to get an idea of current health of the battery in milliamp-hours.
In this material we will analyze proven action algorithms that will help you get objective data without having to disassemble the case gadget. You will learn how to interpret the received values and when to sound the alarm by replacing a worn-out component with a new one.
Built-in diagnostic tools and engineering codes
The fastest way to obtain primary information about the state of the power system is to use special USSD codes or engineering menus. Smartphone manufacturers often have hidden sections for service centers where technical statistics are displayed. However, access to this data depends on the brand of your device and the firmware version.
For processor-based devices MediaTek a universal code often works ##4636##. After entering this combination in the “Phone” application, the testing menu opens, where you need to select the “Battery Information” item. Here you can see the voltage, temperature and current charge level, but rarely the nameplate capacity.
Smartphone owners Xiaomi and Redmi can use the code ##6485##. In the list of parameters that opens, you should look for lines with the following symbols:
- 🔋 MB_06 — shows the battery health status (Good, Bad, Overheat).
- 📊 MB_00 —current charge percentage.
- ⚡ MF_02 —number of complete charging cycles.
- 🏭 MF_05 or MF_06 —calculated current capacity in mAh (not on all models).
⚠️ Attention: Engineering menu interfaces may differ depending on the version of Android and the MIUI shell. If the code does not work or the fields are empty, this does not mean a breakdown - the manufacturer simply hid this data in this version of the software.
It is worth remembering that the data in the engineering menu is not updated in real time and may be approximate. To get a more detailed picture, third-party tools are often required that read information directly from the system file. battery_stats.
If the engineering code does not work, try entering it through the Engineering Mode application downloaded from the Play Market, since in new versions of Android direct code entry is sometimes blocked.
Using battery monitoring applications
The most convenient and intuitive method for the average user is to install specialized utilities. These applications analyze system logs, charging and discharging history to calculate wear and tear. The leader in this niche has long been an application AccuBatterythat uses algorithms to estimate the actual capacity.
The operating principle of such apps is based on a mathematical calculation: they measure how many milliamp-hours were “filled” into the battery during charging, and compare this with the change in the charge percentage. However, it takes time to get an accurate result - usually several cycles of full charging and discharging.
After installation and initial setup, the application will begin collecting data in the background. You don't need to keep it open all the time, but it is advisable to run it periodically to view statistics. After a couple of days of use, you will see the “Health” tab, where the estimated wear as a percentage and the estimated capacity will be indicated.
There are other worthy analogues that provide similar functionality:
- 📱 Battery Guru —offers a detailed analysis of temperature conditions and tips for extending the life of the battery.
- 🔌 Ampere —focuses on the charging and discharging speed in real life time, showing the current in mA.
- 🛠️ CPU-Z —a universal utility that shows basic parameters in the “Battery” tab, including manufacturing technology and voltage.
It is important to understand that no application has direct access to the “passport data” of the power controller chip at the hardware level (with rare exceptions). They all work through the Android software interface, so their readings are estimates, albeit with a high degree of reliability over long-term use.
Checking capacity through the terminal and ADB
For advanced users who want to get the most “raw” data from the system, there is a method of using the command line. This method does not require installing unnecessary applications, but requires superuser rights (Root) or connection to the computer via USB debugging.
If you have root access, you can install any terminal emulator (for example, Termux) and enter a command to read the system file that stores battery statistics. The command looks like this:
cat /sys/class/power_supply/battery/capacity
However, this command often shows only the current percentage. To obtain the capacity, you need to look for a file with a name containing charge_full or charge_full_design. The path may differ depending on the manufacturer:
cat /sys/class/power_supply/battery/charge_full
The value you receive will be indicated in microamp-hours (mAh). To convert it into the usual milliamp-hours (mAh), you need to divide the resulting number by 1000. For example, if the terminal output 3800000, then the real capacity is 3800 mAh.
⚠️ Attention: The Android file system varies from model to model. If the path
/sys/class/power_supply/battery/does not contain the necessary files, try searching in the directories/sys/class/power_supply/bq27541/or use the commandls /sys/class/power_supply/to search for the name of your battery.
An alternative method without root access is to use ADB (Android Debug Bridge) on your computer. By connecting your smartphone and turning on debugging, you can run the command adb shell dumpsys batterystats. The output will be huge, but you can find lines in it Estimated battery capacitythat will show the calculated capacity value recorded by the system after the last calibration.
What to do if the terminal writes “Permission denied”?
This means that the application does not have rights to read system files. You need to either get root access or use the method of connecting to a PC via ADB, since regular applications work in the “sandbox” and do not have access to these paths.
Analysis of charging cycles and physical wear
Battery capacity is not a constant value. It directly depends on the number of charging cycles completed. One cycle is considered completed when you have used up 100% of the battery capacity in total, not necessarily at one time (for example, two times 50%).
Modern lithium-polymer (Li-Po) and lithium-ion (Li-Ion) batteries are designed on average for 500–800 full cycles until 20% of original capacity is lost. After this, the degradation of the chemical properties of the electrolyte accelerates, and the phone begins to discharge critically quickly.
To understand how close your battery is to the end of its service life, you can compare the number of cycles (if you were able to find them out through the engineering menu or application) with the passport data. Below is a table of approximate degradation depending on the number of cycles:
| Number of cycles | Residual capacity | Condition |
|---|---|---|
| 0 - 150 | 95% - 100% | Excellent |
| 150 - 300 | 90% - 95% | Good |
| 300 - 500 | 80% - 90% | Normal |
| 500 - 800 | 70% - 80% | Requires replacement |
| More than 800 | Less than 70% | Critical |
Physical wear also manifests itself in the form swelling of the battery case. If you notice that the back cover of the smartphone has begun to come off or the screen is arching, this is a sure sign that irreversible chemical reactions with the release of gas have occurred inside.
Even if the software indicators show high capacity, physical swelling of the battery is a direct signal for immediate replacement for fire safety reasons.
Calibration of the power controller
There is often a situation when the actual battery capacity is still high, but the smartphone shows incorrect charge percentages. This occurs due to desynchronization between the actual chemical charge of the cell and the data stored power controller (BMS).
In such cases, the calibration procedure helps. It does not restore physical capacity, but it does force the Android system to correctly display the remaining battery life. The algorithm of actions is quite simple, but it requires patience and free time.
First, you need to completely discharge the device before it turns off automatically. Then, without turning on the phone, charge it until the 100% indicator is reached. After this, turn on the device. If the charge percentage drops (for example, to 98%), charge it again, without turning off the phone, to 100%. Repeat the procedure until the phone immediately shows 100% when you turn it on.
The final stage is to use the phone in normal mode until it is completely discharged and turned off. This “zeroing” cycle helps the controller re-determine the minimum and maximum voltage boundaries corresponding to 0% and 100%.
☑️ Correct calibration algorithm
Factors influencing the rate of degradation
Why does one user’s battery last 3 years, while another requires replacement after a year? It's not just the number of cycles, but also the operating conditions. High temperatures are the main enemy of lithium batteries.
Heating above 40-45 degrees Celsius during charging or active play causes accelerated destruction of the structure of the cathode and anode. Deep discharges “to zero” and storing a device with a completely discharged battery for a long time are also harmful.
Using non-original chargers with unstable voltage can damage the charge controller, which will lead to incorrect filling of the cells. In addition, constant operation at maximum screen brightness and enabled communication modules (GPS, 5G) create a high current load that heats up the battery.
⚠️ Attention: Avoid using your smartphone during fast charging, especially in resource-intensive games. The combination of heat from the processor and heat from the charging current flow is the fastest way to kill a battery in a few months.
Try to keep the battery charge between 20% and 80% for everyday use. This significantly reduces chemical stress on the battery and extends its overall service life.
Frequently asked questions (FAQ)
Is it possible to restore the capacity of an old battery using software?
No, software methods can only calibrate the charge percentage display. Physical capacity lost due to chemical changes within the element cannot be restored. The battery needs to be replaced.
Why does the AccuBattery app show different capacity every day?
The app calculates the capacity based on the current charging cycle. Errors may occur due to charging interruptions, power surges, or using the phone during measurement. Accurate data is accumulated after 5-10 cycles.
Is fast charging harmful to battery capacity?
Fast charging technology itself is safe if implemented correctly by the manufacturer. The accompanying heat causes damage. Modern controllers regulate the current to prevent overheating, but using thick cases during fast charging can be dangerous.
What does the “Overheat” status mean in the engineering menu?
This is a signal that the temperature sensor has detected a critical excess of the norm. The device cannot be operated in this state - this can lead to a fire or permanent failure of the controller.
How to find the capacity without installing applications and root access?
The most reliable way without third-party software is to use ADB commands through a computer. Built-in Android tools (in settings) usually do not provide this information, with the exception of some Xiaomi and Sony models.