[APP] [UPDATE-1/28/2013] AtrixBatteryFix 0.40

Search This thread

Orc7

Member
Apr 23, 2011
18
9
Major changes in files fix_battery.sh, MonitorService.java, BatteryInfo.java.
I sent modified source code to you. Compare it.


BatteryInfo.java -run fix if battVoltage >= 4200
Code:
...
		if (!seemsFull && isOnPower && battVoltage != null) {
			if ( Math.round(Float.valueOf(battVoltage) / 1000) >= 4200) {
			//if (lastVoltage == null || lastTime <= 0 || !lastVoltage.equals(String.valueOf(Math.round(Float.valueOf(battVoltage) / 1000)))) {
				//lastVoltage = String.valueOf(Math.round(Float.valueOf(battVoltage) / 1000));
				//lastTime = System.currentTimeMillis();
				//utils.log("got new voltage %s", (Object)lastVoltage);
				seemsFull = true;
			} else {
				//long time = System.currentTimeMillis();
				//seemsFull = (time - lastTime >= MAX_TIME) ? true : false;
				//utils.log("voltage stayed at %s for %d ms", (Object)lastVoltage, time - lastTime);
			}
		} else {
			lastVoltage = null;
			lastTime = -1;
		}
...

MonitorService.java
Code:
...
				utils.log("performing auto-action");
				if (settings.prefAutoFix()) {
					if (settings.prefNon100() && Integer.valueOf(info.battShown) >= 100) {
						return;
					}
					try {
						fix.fixBattery();
					}
					catch (Exception ex) { }
				switch (settings.prefAutoAction()) {
					case REBOOT: {
							fix.reboot();
						}
						break;
					case RESTART: {
							fix.restartBattd();
						}
						break;
					case NONE:
					default:
						break;
				}
				}
...

fix_battery.sh - your code have problem with command delete files from data/battd for my CM10.1
Code:
#! /system/bin/sh
set -e > /dev/null 2>&1 || :

if (test -d /data/battd)
then
	:
else
	echo "/data/battd does not exist" >&2
	exit 1
fi
for i in cc_data cc_data_old powerup
do
  rm /data/battd/${i}* > /dev/null 2>&1 || :
done

exit "${?}"
 

lincer556

Senior Member
Dec 26, 2012
133
19
Buenos Aires
I've been using the app since a while, but suddenly when the phone reaches 4200mv (100%) as known stops charging, then i disconnect the Atrix and the battery drops to ~4150mv and a sudden %1 drop, anyone does knows a fix?

Using Epinter CM10.1
 

todobarato

Senior Member
Jan 5, 2011
231
41
time to buy a new battery....

No I am kidding It is normal, my do it from the beginning.

I've been using the app since a while, but suddenly when the phone reaches 4200mv (100%) as known stops charging, then i disconnect the Atrix and the battery drops to ~4150mv and a sudden %1 drop, anyone does knows a fix?

Using Epinter CM10.1



Sent from my MB860 using XDA Free mobile app
 

Top Liked Posts

  • There are no posts matching your filters.
  • 106
    [UPDATE] Version 0.40 is out.


    Recent changes:
    • added the uptime monitor
    • renamed "battery monitor" to "system monitor"
    • minor cleanup to make it more compatible with the newer SDK's lint checks
    • other changes


    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.36 is out.


    Recent changes:
    • version bump with minor cosmetic changes

    This is just a minor maintenance release, no need to upgrade if your 0.35-beta1 is working well.

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.35-beta1 is out.


    Recent changes:
    • improved the monitoring service
    • added a new option - Only if <100% (will only run the auto-action (reboot or restart service) if the battery reports less than 100% when done charging)
    • improved the "battery full" detection code, should work better now
    • other fixes and improvements
    Also had to delete some old versions since I hit the 20-attachments-per-post limit.

    EDIT: Just realized I uploaded the wrong screenshot. :doh: Corrected.

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.31-beta1 is out.


    Recent changes:
    • hopefully fixed the constant "superuser auth" issue on CM10

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.30-beta1 is out.

    NOTE: Due to the significant changes in the settings/preferences part, please uninstall any previous version before installing this one. Thank you.


    Recent changes:
    • re-added deleting batterystats.bin as an option (off by default)
    • moved all preferences to the settings screen
    • added an option to turn charging on or off, and also an option to automatically turn charging off when USB power detected
    • added some heuristics to determine when the battery is done charging (if the voltage does not change within 30 minutes, the battery is considered to be done charging) - hopefully this works
    • bugfixes, general code cleanup

    Since new features were added and a significant chunk of the code has been rewritten, this is now considered beta.
    This version also makes sure to be as non-intrusive as possible - nothing will happen automatically by default, you need to initiate any actions.

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.21 is out.


    Recent changes:
    • disabled removing the batterystats.bin file - it seems to have only caused problems with not a lot benefit. WARNING: if you're coming from an earlier version, you need to wipe app data for this to work!
    • changed defaults - now the app won't run the fix automatically when power detected by default, this should make the app completely non-intrusive by default.

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.20 is out.


    Recent changes:
    • added an option to restart the battd service instead of a full reboot - seems to work but this should be considered a beta feature
    • moved some options to a separate settings screen
    • cleanup here and there
    Also cleaned up the attachments to this post.

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.16 is out.


    Recent changes:
    • better handling of missing or invalid datadir
    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.15 is out.


    Recent changes:
    • about box is now shown on first run
    • rearranged and cleaned up the about text, added the donate link (which hopefully works)
    • fix for busybox that has the ash applet instead of sh
    • busybox is no longer required, will try to use system shell if busybox is not found
    • fixed a progress dialog issue upon screen rotation
    • uploaded source code to github

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.1 FINAL is out.


    Recent changes:
    • mostly just cosmetic changes

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.1-beta4 is out.


    Recent changes:
    • instead of running hardcoded shell commands, now runs external shell scripts in the app's datadir (so you can modify the scripts to your own liking)
    • all shell commands/scripts are now executed through busybox instead of default system shell (so busybox is now required)
    • separated fixing the battd datafiles (which is normally needed every so often) from fixing battd permissions and ownership (which should be needed only once)
    • cleanup and other improvements

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.1-beta3 is out.


    Recent changes:
    • run fix and recalibration right before auto-reboot too, just in case

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.1-beta2 is out.


    Recent changes:
    • added deleting batterystats.bin
    • added fixing ownership and permissions of battd and friends
    • cleaned up the "about" and "licence" texts
    • possibly other fixes and improvements I forgot about

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.1-beta1 is out.


    Recent changes:
    • hopefully fixed the reboot-when-charged issue

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.1-alpha3 is out.


    Recent changes:
    • fixed some bugs that caused issues on ICS and newer
    • cleaned up the checkbox logic
    • slightly improved the UI
    • other minor fixes and improvements

    Many of the issues (namely, "null" errors) should now hopefully be gone.

    ------------------------------------------------------------------------------------------------

    [UPDATE] Version 0.1-alpha2 is out.


    Changes include:
    • (hopefully) fixed su and other issues
    • added option to reboot the phone when it's done charging (hopefully that actually works :) )
    • added real-time battery monitor
    • general cleanup
    • other things I forgot

    Many issues should now be fixed, but this is still considered alpha-quality software, so be warned.

    ------------------------------------------------------------------------------------------------

    So...

    Like many other people, I too am affected by the dreaded "won't charge beyond xx%" battery bug. I know in reality this is probably of little importance since (at least in my case) the battery is getting decent charge and lasts long enough anyway. But I would still like to see it fully charged, at least every so often. :)

    So I did the procedure mentioned in this thread and it worked, but only once - the bug would appear again on the next charge cycle. Then I found this post and tried that too, and it also worked but also only once. So I decided to make this little app.

    What the app does is, upon getting notified that the charger has been connected, it will automatically delete files in /data/battd (all except uid - namely cc_data, cc_data_old and powerup). Then all you have to do is wait for the battery to charge as far as it goes and then reboot (and then possibly charge a little more). That's it!
    NOTE 1: Obviously for the app to work correctly your phone needs to be rooted.
    NOTE 2: This app will not increase your battery life or change it in any way, shape or form. All it does is attempt to fix the percentage display.

    Now admittedly, it can get annoying if you connect your phone to the computer just to transfer some files and the app gets triggered anyway because it detected charging. That's why the auto-triggering can also be disabled in the app. You can also leave it permanently disabled and just use the "force calibration" button to calibrate your battery only when you feel like it. ;)

    Anyway, I hope the app will be useful at least to some. The app should work on all rooted GB ROMs and possibly on ICS and JB too.


    NOTE: this the initial release of the app, and is also my 3rd (if I'm counting them right) Android app as of yet. So be warned, this app is currently alpha-quality. Standard disclaimers apply, although I don't see how it could do any damage.

    XDA:DevDB thread:
    http://cleanimport.xda/index.php?threads/2468689/
    8
    Everythings seems to be relatively stable so far, so releasing version 0.1 FINAL.
    This time with source code. :)

    OP updated.
    6
    Version 0.35-beta1 is out. OP updated.
    5
    Version 0.31-beta1 is out. OP updated.
    This release hopefully fixes the constant "superuser auth" issue on CM10 and others.
    4
    Version 0.20 released. OP updated.

    Added the option to restart just the battd service instead of a full system reboot.
    Seems to work okay but this feature should be considered beta.