I have a Huawei Honor U8860 with Android ICS. I use two Mugen Power batteries. I always use one battery until it's empty, then charge it to full while using the other battery. Recently Android battery level has started to behave incorrectly. The battery level drops dramatically, then stays at the same level for a long time. I experience similar behavior with all the three batteries I own: the Mugen Power batteries and the original battery.
Below is the battery status chart at this moment. Suddenly the battery level dropped to 3 % yesterday, but it stayed there and I've been able to use the phone actively for another day since then. Clearly the battery is still performing well, but Android gets incorrect information about the charge, sometimes even shuts the phone down.
I tried calibrating with Battery Calibration app, but the problem has only got worse. Any ideas what's causing the problem? How does Android get the battery level? From the electronics integrated into the battery or by deducing from the voltage level? What does the calibration actually do?