[APP][ROOT][4.0+]Battery Charge Limit v1.1.1

Search This thread

gerlium

Senior Member
Dec 15, 2014
139
42
Based on my tests, the application works great, as long as the screen is turned on, the smartphone is charging, reaches the limit, stops charging, all right. But if you "forget" the smartphone on charge for a while, let it fall asleep, then when you return you will find it charged 100%. First of all, I thought about the doze mode, but for the application it is disabled by default. I do not even know what the reason may be.

The smartphone will charge 100%, and the app notification will remain hanging as a reminder, that something went wrong.
Same problem here, but it did work with the version 0.3.
 

blueberry.sky

Senior Member
Aug 20, 2014
400
150
Hello. The bar on 0.5 version what exactly doing? I can't understand. Either in the first post don't say exactly
Bar? The one to the left of "Recharge below XX%"? It adjusts the range that the app will hold. The default is usually fine.

---------- Post added at 03:06 AM ---------- Previous post was at 03:02 AM ----------

Is it possible for you, sriharshaarangi to make it work for Nexus 7 2013 tablet?
As soon as someone tells him what file the Nexus 7 2013 uses. Someone who owns a Nexus 7 perhaps? :cowboy:
 
Last edited:
  • Like
Reactions: sriharshaarangi

hgmichna

Senior Member
Aug 28, 2010
982
401
Munich
michna.com
Range bar musings

Hello. The bar on 0.5 version what exactly doing? I can't understand. Either in the first post don't say exactly

Let's say you use the default setting of charging up to 80%. When the battery reaches 80%, the app switches off the charging.

From that time on the battery will, hopefully slowly, go down, first to 79%, then 78%, and so on.

At some point you want the charging to resume. That point is determined by the slider setting.

This creates the question, which point is optimal? I personally think that the slider is completely superfluous and could be replaced by a fixed setting of 1% below the charging target, i.e. resume charging whenever the battery goes below 79% in our example. Letting the battery discharge any lower than that serves absolutely no purpose in all use cases I can imagine.

In fact, in my phone, a OnePlus One with LineageOS 14.1, I can even set the slider to 80%, such that the charge status swings between 79% and 80%. I have observed the phone and found that it swings slowly. In theory there may be phones in which this setting might cause a very rapid charge-discharge cycle, which would be undesirable, but my phone is not of that kind.

Using a setting where the battery is kept within a very tight range even has one distinct advantage. When I drive and navigate, I have three power-hungry apps running at the same time, a track recorder, a speed trap warner, and Google Maps. This causes the phone to heat up quite a bit, and battery charging heats it up even more.

In this situation, when you set a large range, the battery could discharge down to 70% perhaps in half an hour, then charge back up in another half hour. During the charging the phone would get hotter and reach some peak temperature. If, however, you keep the charge within a very small range, charging can start and stop within very few minutes, such that the phone never heats up to the peak temperature that would otherwise be reached. This would cause a nice reduction in heat stress for the entire phone, including the battery.

I propose to redesign the app such that it no longer has the slider and instead keeps the charge as close as possible to the desired charge level (80% by default). To avoid quick charge-discharge cycles, have the app switch off charging for at least one minute. In other words, charging should never resume before a minute has passed.

This would reduce the number of settings, which is always an advantage.
 

savvymatthew

Senior Member
Dec 31, 2011
192
43
Let's say you use the default setting of charging up to 80%. When the battery reaches 80%, the app switches off the charging.

From that time on the battery will, hopefully slowly, go down, first to 79%, then 78%, and so on.

At some point you want the charging to resume. That point is determined by the slider setting.

This creates the question, which point is optimal? I personally think that the slider is completely superfluous and could be replaced by a fixed setting of 1% below the charging target, i.e. resume charging whenever the battery goes below 79% in our example. Letting the battery discharge any lower than that serves absolutely no purpose in all use cases I can imagine.

In fact, in my phone, a OnePlus One with LineageOS 14.1, I can even set the slider to 80%, such that the charge status swings between 79% and 80%. I have observed the phone and found that it swings slowly. In theory there may be phones in which this setting might cause a very rapid charge-discharge cycle, which would be undesirable, but my phone is not of that kind.

Using a setting where the battery is kept within a very tight range even has one distinct advantage. When I drive and navigate, I have three power-hungry apps running at the same time, a track recorder, a speed trap warner, and Google Maps. This causes the phone to heat up quite a bit, and battery charging heats it up even more.

In this situation, when you set a large range, the battery could discharge down to 70% perhaps in half an hour, then charge back up in another half hour. During the charging the phone would get hotter and reach some peak temperature. If, however, you keep the charge within a very small range, charging can start and stop within very few minutes, such that the phone never heats up to the peak temperature that would otherwise be reached. This would cause a nice reduction in heat stress for the entire phone, including the battery.

I propose to redesign the app such that it no longer has the slider and instead keeps the charge as close as possible to the desired charge level (80% by default). To avoid quick charge-discharge cycles, have the app switch off charging for at least one minute. In other words, charging should never resume before a minute has passed.

This would reduce the number of settings, which is always an advantage.

To many people wanted the slider so it was added. I personally use it set to 10 because I don't want charging on and off all night, weather that affects the battery or not I don't know but my limited knowledge would assume it's better to not have it do that?. And I have a oneplus-3 so with dash charge I'm unaware how that effects the overall battery together if it were to go on and off all night .
 

HikingMoose

Senior Member
Jun 20, 2011
1,537
534
40
Let's say you use the default setting of charging up to 80%. When the battery reaches 80%, the app switches off the charging.

From that time on the battery will, hopefully slowly, go down, first to 79%, then 78%, and so on.

At some point you want the charging to resume. That point is determined by the slider setting.

This creates the question, which point is optimal? I personally think that the slider is completely superfluous and could be replaced by a fixed setting of 1% below the charging target, i.e. resume charging whenever the battery goes below 79% in our example. Letting the battery discharge any lower than that serves absolutely no purpose in all use cases I can imagine.

In fact, in my phone, a OnePlus One with LineageOS 14.1, I can even set the slider to 80%, such that the charge status swings between 79% and 80%. I have observed the phone and found that it swings slowly. In theory there may be phones in which this setting might cause a very rapid charge-discharge cycle, which would be undesirable, but my phone is not of that kind.

Using a setting where the battery is kept within a very tight range even has one distinct advantage. When I drive and navigate, I have three power-hungry apps running at the same time, a track recorder, a speed trap warner, and Google Maps. This causes the phone to heat up quite a bit, and battery charging heats it up even more.

In this situation, when you set a large range, the battery could discharge down to 70% perhaps in half an hour, then charge back up in another half hour. During the charging the phone would get hotter and reach some peak temperature. If, however, you keep the charge within a very small range, charging can start and stop within very few minutes, such that the phone never heats up to the peak temperature that would otherwise be reached. This would cause a nice reduction in heat stress for the entire phone, including the battery.

I propose to redesign the app such that it no longer has the slider and instead keeps the charge as close as possible to the desired charge level (80% by default). To avoid quick charge-discharge cycles, have the app switch off charging for at least one minute. In other words, charging should never resume before a minute has passed.

This would reduce the number of settings, which is always an advantage.


But a lot of people asked for it. There's no reason to remove it, "it would serve purpose" to remove it at this point. If you want it to keep your phone between 79 and 80, then just set it at 79-80. A redesign would not help your situation (because you already have the functionality you're after), but would make others lose a function that they seek.

I would suggest just stating your peace, so others can think their charge regime, and leave it at that. There's no need to change the app busy because you think a feature is unnecessary. What you're saying is correct, and I agree that a very short bump charge to maintain a set level is probably much better for the battery than a bunch of 10% cycles. But people may have reasons they want to do so.

Sent from my Nexus 6P using Tapatalk

---------- Post added at 07:44 AM ---------- Previous post was at 07:37 AM ----------

To many people wanted the slider so it was added. I personally use it set to 10 because I don't want charging on and off all night, weather that affects the battery or not I don't know but my limited knowledge would assume it's better to not have it do that?. And I have a oneplus-3 so with dash charge I'm unaware how that effects the overall battery together if it were to go on and off all night .
On a side note, how much battery do you lose overnight? You might want to address, because I lose about 1% over night, so mine has never had to recharge overnight (with it set to recharge at 78%).

But to answer your inquiry, I feel it most be less damaging for your phone to charge from 78 or 79% 3 times over night, than to charge the battery for 10% which will generate more heat and more crystals (damage) than a 1% bump charge. I don't know that to be true, but I have studied and paid very close attention to batterys and their technology for several years now, and that's my hypothesis.

Sent from my Nexus 6P using Tapatalk
 

hgmichna

Senior Member
Aug 28, 2010
982
401
Munich
michna.com
Best charge limit

So the best charge limit is 80?

If you want to keep your battery for many years, charge it only to 60%. It will last for thousands of charging cycles, perhaps more than you need.

80% is a good compromise. It will make the battery last for around 3 to perhaps 4 years, given daily or nightly charging.

Charging to 100% every day or night yields around 300 to 500 charge cycles, so the battery will have lost a good part of its capacity after two years and may well become unusable soon thereafter.

What you can also do is adapt your charging to the expected usage for each day. For example, on a normal day, when I can charge even during the day, I charge only to 60%. Before days when I travel and expect to use the smartphone a lot, I charge to 100%.

Of course the life expectancy of the battery depends on other factors as well, particularly on the quality of the battery and on how the phone determines what 100% means. On some phones it means 4.2 V, on others 4.3 V, occasionally even more, which means an even shorter life time.

The usual "original" replacement batteries you can buy for less than $10 are Chinese fakes, many of which last only a half year, no matter how you charge them. Or be prepared to exchange the battery several times until you strike luck and find one that lasts longer than a year. It is much better to buy branded batteries, like Anker, Duracell, Hama, and others. Or, if money plays no role, spend $30 to $50 and buy a replacement battery directly from the manufacturer of your phone.
 
Last edited:

Midomad

Recognized Contributor
May 7, 2011
4,154
3,234
Salé
If you want to keep your battery for many years, charge it only to 60%. It will last for thousands of charging cycles, perhaps more than you need.

80% is a good compromise. It will make the battery last for around 4 years, given daily or nightly charging.

Charging to 100% every day or night yields around 300 to 500 charge cycles, so the battery will have lost a good part of its capacity after two years and may well become unusable soon thereafter.

Of course this depends on other factors as well, particularly on the quality of the battery and on how the phone determines what 100% means. On some phones it means 4.2 V, on others 4.3 V, occasionally even more, which means an even shorter life time.

The usual "original" replacement batteries you can buy for less than $10 are Chinese fakes, many of which last only a half year, no matter how you charge them. Or be prepared to exchange the battery several times until you strike luck and find one that lasts longer than a year. It is much better to buy branded batteries, like Anker, Duracell, Hama, and others. Or, if money plays no role, spend $30 to $50 and buy a replacement battery directly from the manufacturer of your phone.
Thanks for you're valuable explanation.
One more thing i'm using a OnePlus 3T should i only click on enable and voila,or should i modify something else(i'm a little confused with the option battery charging enabled(Nexus/Pixel) and Charging enabled (generic) )Which one to choose?
 
Last edited:

gerlium

Senior Member
Dec 15, 2014
139
42
Any idea about why the app doesn't work on my Oneplus One with Cyanogenmod 13 Sultan? From what I remember the 0.3 version did work.
And why can't I change the charge limit?
 
Last edited:

hgmichna

Senior Member
Aug 28, 2010
982
401
Munich
michna.com
OnePlus One

Any idea about why the app doesn't work on my Oneplus One with Cyanogenmod 13 Sultan? From what I remember the 0.3 version did work.
And why can't I change the charge limit?

It works well here on my OnePlus One with LineageOS 14.1. You could try to upgrade.

The charge limit can only be changed after you switch off the function. This makes no sense and looks like a user interface design error to me, but at least it works.
 

hgmichna

Senior Member
Aug 28, 2010
982
401
Munich
michna.com
Versions 0.3 and 0.5

Thanks for you're valuable explanation.
One more thing i'm using a OnePlus 3T should i only click on enable and voila,or should i modify something else(i'm a little confused with the option battery charging enabled(Nexus/Pixel) and Charging enabled (generic) )Which one to choose?

Make sure you are running version 0.5 of the app.
 

Midomad

Recognized Contributor
May 7, 2011
4,154
3,234
Salé
Make sure you are running version 0.5 of the app.
I'm already running that version!
I'm talking about the option in the screenshot wich one should i select nexus/pixel or generic(i'm using a OP3T)? Screenshot_20170414-141049.png
 
Last edited:

Balino

Senior Member
Mar 3, 2011
1,714
590
27
Gaeta
I'm already running that version!
I'm talking about the option in the screenshot wich one should i select nexus/pixel or generic(i'm using a OP3T)?
With 0.3 version default was generic, with 0.5 it's Nexus/pixel, they both works fine for me. I guess is quite similar to stock Nexus rom, that's why it's working on both
 
  • Like
Reactions: Midomad

StonebridgeGr

Senior Member
Feb 6, 2014
1,218
129
23
Athens/Argostoli
www.facebook.com
Let's say you use the default setting of charging up to 80%. When the battery reaches 80%, the app switches off the charging.

From that time on the battery will, hopefully slowly, go down, first to 79%, then 78%, and so on.

At some point you want the charging to resume. That point is determined by the slider setting.

This creates the question, which point is optimal? I personally think that the slider is completely superfluous and could be replaced by a fixed setting of 1% below the charging target, i.e. resume charging whenever the battery goes below 79% in our example. Letting the battery discharge any lower than that serves absolutely no purpose in all use cases I can imagine.

In fact, in my phone, a OnePlus One with LineageOS 14.1, I can even set the slider to 80%, such that the charge status swings between 79% and 80%. I have observed the phone and found that it swings slowly. In theory there may be phones in which this setting might cause a very rapid charge-discharge cycle, which would be undesirable, but my phone is not of that kind.

Using a setting where the battery is kept within a very tight range even has one distinct advantage. When I drive and navigate, I have three power-hungry apps running at the same time, a track recorder, a speed trap warner, and Google Maps. This causes the phone to heat up quite a bit, and battery charging heats it up even more.

In this situation, when you set a large range, the battery could discharge down to 70% perhaps in half an hour, then charge back up in another half hour. During the charging the phone would get hotter and reach some peak temperature. If, however, you keep the charge within a very small range, charging can start and stop within very few minutes, such that the phone never heats up to the peak temperature that would otherwise be reached. This would cause a nice reduction in heat stress for the entire phone, including the battery.

I propose to redesign the app such that it no longer has the slider and instead keeps the charge as close as possible to the desired charge level (80% by default). To avoid quick charge-discharge cycles, have the app switch off charging for at least one minute. In other words, charging should never resume before a minute has passed.

This would reduce the number of settings, which is always an advantage.
Took one hour to read your post hahaha but thanks
 

Top Liked Posts

  • 1
    After messing around with it last night, I was able to get it working on my 9 Pro.

    Have the control file data of
    /sys/class/oplus_chg/usb/chg_enable, 1, 0


    I don't have either of the advanced settings toggled on for it to work. Only tested it on USB and not sure if it'll work with the wireless charging as well.
    Sorry for my bad english
    Yeah after read this

    I've checked and found out control file on my phone Mi11ultra's control file for battery charge limit worked. Battery Charge Limit on Android 11 not work like before we known
    First, your device require root permission to run Battery Charge Limit, then go to setting

    Turn on "Configurable CTRL File Data" and touch "Configure Control Data" then touch "Understand" and type like below:

    /sys/class/qcom-battery/input_suspend
    0
    1


    then touch "UPDATE CONTROL FILE DATA" and done, battery charge limit worked

    You guys can watch video below for sure: From original control file not work then after re-config control file and work perfectly.
    P/s: From 84% to 85% i made app for auto charge limit itself and you guys can go to end of video for result.


    Good health for battery charge overnight
  • 4
    Works on my 6t also. Can't get it working on 9 Pro
    After messing around with it last night, I was able to get it working on my 9 Pro.

    Have the control file data of
    /sys/class/oplus_chg/usb/chg_enable, 1, 0


    I don't have either of the advanced settings toggled on for it to work. Only tested it on USB and not sure if it'll work with the wireless charging as well.
    2
    Can confirm, on OnePlus9 Pro it's working for wired and wireless charging with


    Code:
    wired:
    /sys/class/oplus_chg/usb/chg_enable, 1, 0
    wireless:
    /sys/class/oplus_chg/wireless/chg_enable, 1, 0

    I am changing always both files using Tasker. Working very well.
    1
    Sorry I have no idea. In some of my devices while charging control worked fine in older Android versions limiting max. charging voltage and current only started working in P/Q. Prior to that the files in control of charging voltage and current were read only.
    Can't that be at least temporarily addressed with adb and chmod? I noticed that my /sys/class/power_supply/battery/status file has 444 permissions, i.e. read only. With adb and chmod I changed it to 644, but I'm really confused why I cannot manually write to it with echo or vi, or create a new file in that directory.
    1
    The "status" file just reports the current state of charging whether plugged, unplugged or full. It doesn't have any control over charging.
    It's listed as an experimental control file: https://github.com/sriharshaarangi/...f/app/src/main/res/raw/control_files.json#L75

    None of the other control files exist on this Cyanogenmod 11 ROM for the Samsung Gio: https://forum.xda-developers.com/t/rom-cyanogenmod-11-final-05-08-2015.3066771/
    1
    After messing around with it last night, I was able to get it working on my 9 Pro.

    Have the control file data of
    /sys/class/oplus_chg/usb/chg_enable, 1, 0


    I don't have either of the advanced settings toggled on for it to work. Only tested it on USB and not sure if it'll work with the wireless charging as well.
    Going to try when I get home. Thanks for this.

    Edit. Can confirm this works on the wall charger. Thanks so much dude!
  • 393
    Please read the following before installing the app:
    • This app requires a rooted mobile (Android 4.0 or later)
    • Before uninstalling the app, disable limit in the app (if forgotten, reboot after uninstalling)

    Usage instructions and app details:
    • Enable limit in the app
    • Change the limit up to which it should charge (default: 80)
    • Check which control file suits best for your device, see Q/A section below for hints. In most cases, the pre-selected choice should be the best that's available for your device.
    • The app only gets kicked in while you connect a charger (or USB), and automatically closes shortly after unplugging charger (or USB) i.e it only runs in the background as long as it is plugged in, and won't affect your battery life.
    • If your device is not charging even after disabling the limit (which shouldn't happen, just in case), uninstall the app and reboot the device (The changes made by the app don't survive a reboot). Your device should charge normally then.

    If the app says "your device is not yet supported"
    There are various control files in different devices (due to OEMs), and toggling the values in them (0 and 1) makes it possible to enable and disable charging via software (might not be possible for every device), though the charging cable is still physically connected.
    Since we cannot own every device, it is impossible for us to find every file. We can support a lot more devices with information provided by testing possible files on different devices by you, the people in the community.
    Hence, for support to be provided to other devices, you need to do some detective work to find the files on the respective devices. Please refer to this file for control files of currently supported devices, so you can know where they are generally present: https://github.com/sriharshaarangi/BatteryChargeLimit/blob/master/app/src/main/res/raw/control_files.json
    You can send us a pull request or open an issue on GitHub. If necessary, you can also post the name of the device and the file here.

    FAQ
    Q) Can you please add support for... (insert arbitrary device name here)?
    A) Maybe, but we need your help. Bottom line, this app does nothing but modifying the content of a certain "control file", some more details are given above. If you find such a control file for your device, please let us know (ideally, open a GitHub issue here: https://github.com/sriharshaarangi/BatteryChargeLimit/issues) and we will add support for your device.

    Q) I think I observed a bug. Can you fix it?
    A) We'll do our best, but we need your help: Please open an issue on GitHub (https://github.com/sriharshaarangi/BatteryChargeLimit/issues) and provide as much information as possible about the problem.
    In most cases, we need the "logcat" logs of your device to find out about the exact issue. In order to provide those, you could use aLogcat (https://play.google.com/store/apps/details?id=rs.pedjaapps.alogcatroot.app).
    FOR CHARGING-RELATED ISSUES: Select the "Time" format in the preferences of aLogcat, so we can see precise timings, and filter for "(Charging|Power) State" with "Apply as regular expression" ticked.
    FOR CRASHES: Please also select the "Time" format and provide unfiltered logcat data that includes the stack trace of the crash.

    Q) Why do you want to limit charge to a lower capacity?
    A) In short, to prolong battery life in long term usage. For more information, refer this : http://batteryuniversity.com/learn/article/how_to_prolong_lithium_based_batteries

    Q) How does this app work? Does it modify something in the ROM/Kernel to stop charging?
    A) It writes "0" or "1" to a control file that represents some state of the power supply hardware, as simple as that. The file is normally read-only, so you need root to overwrite it.
    The change might be automatically reversed by the OS if the power supply situation changes. Anyway, it should never survive a reboot of the device.

    Q) I can select multiple more than one control file in the radio group. Which one should I use?
    A) For most devices, battery_charging_enabled or store_mode are preferable. Try those first and see if it works. If you observe any bugs, try another file.

    Q) I have a OnePlus device, and the app doesn't work correctly for me. What to do?
    A) Check that the control file you selected is NOT battery_charging_enabled! Although it should be preferred in general, there are known issues for this file with OnePlus devices.

    Q) I use the store_mode on a Samsung device. My device always stops charging at 70 % (or other specific percentage), no matter what limit I have set.
    A) The store_mode implementation differs among the supported (Samsung) devices.
    Normally, it freezes the level at the current percentage when store_mode is triggered until the cable is unplugged for some seconds. This is a normal condition due to Samsung's kernel implementation, it's not a bug of this app.
    If this is a problem for you, try to switch to another control file (e.g. batt_slate_mode), if supported.

    Q) How does the "automatic stats reset" work?
    A) The automatic reset should perform a stats reset when your power supply is removed while the battery level is within the desired range. Everything else is wrong behavior.

    Q) No matter if I the "automatic stats reset" is enabled or not, my phone is always resetting my battery statistics. Why?
    A) Are you using a threshold above 90%? If yes, your ROM will most likely clear the stats when the power is removed. There is nothing we can do about that.

    Downloads:
    The app is available on Google Play Store

    Alternate APK download links:
    v1.1.1: https://www.androidfilehost.com/?fid=674106145207486851
    v1.1.0: https://www.androidfilehost.com/?fid=817906626617956614
    v1.0.4: https://www.androidfilehost.com/?fid=889764386195927297
    v1.0.3: https://www.androidfilehost.com/?fid=745425885120755941
    v1.0.2: https://www.androidfilehost.com/?fid=889764386195923345
    v1.0.1: https://www.androidfilehost.com/?fid=889764386195919111
    v1.0.0: https://www.androidfilehost.com/?fid=817550096634789023
    v0.11.0: https://www.androidfilehost.com/?fid=961840155545580765
    v0.10.0: https://www.androidfilehost.com/?fid=961840155545576298
    v0.9.2: https://www.androidfilehost.com/?fid=457095661767160082
    v0.8.2: https://www.androidfilehost.com/?fid=673368273298951679

    Please uninstall versions < 0.8 before installing this!

    Changelog:

    1.1.1:
    • Fix charging status layout issues and misc UI fixes @xdnax
    • Added switch to disable toasts on service changes @xdnax
    • Added switch to show temperature in notification @xdnax
    • Ensuring write permissions on the charging control file @real_milux
    • Fixed notification sound on limit reach @sriharshaarangi
    • Fixed a bug causing crash
    • Added Russian translation
    • Updated Bengali, German and Brazilian Portuguese translations
    • Added control file for Amazon Tate (LineageOS 14.1)

    1.1.0:
    • UI & icon redesign @xdnax
    • Custom control file data support @xdnax
    • Improved control file lists @real_milux
    • ICS (Android 4.0, API 14) compatibility @real_milux
    • Pixel/Pixel 2 support fixes @xdnax
    • Added control files for Pixel/Pixel 2, Xiaomi Redmi Note 2, Sony XPERIA Mini, Le 1s, Huawei P10 lite, HTC One, Motorola Defy+, Xiaomi Mi A1
    • Bengali translation @AdroitAdorKhan
    • Spanish translation @Joseahfer
    • Lots of bugfixes and minor improvements

    1.0.4:
    • New "always write" setting for devices that modify their control files in a problematic way
    • Experimental support for Xiaomi MiPad 2, Nexus 5, Nexus 9, Galaxy Nexus (maguro) and Xiaomi Mi6

    1.0.3:
    • Fixed service starting after boot when disabled

    1.0.2:
    • Fixed ignoring "ACTION_POWER_CONNECTED" when service was disabled
    • Experimental support for Nexus 10, Nvidia Shield and Xiaomi Mi6

    1.0.1:
    • Added preference to disable limit enforcement aka "state fixing"
    • Added expert preference to enable immediate reaction to power state events (be careful!)

    1.0.0:
    • Tested Magisk 13.x support
    • Improved UI
    • Even higher service priority (against being killed by Android)
    • Online limit change support (limit changeable while service is active)
    • Settings with control file selection and temperature scale
    • Fahrenheit temperature info support
    • Greatly improved "state fixing" with exponentially increasing delay (hopefully fixing GitHub issue #15 aka "rapid cycling")
    • Greatly improved SU shell speed/performance
    • German translation

    0.11.0:
    • Improved UI (Using NumberPickers, GitHub issue #13)
    • Show voltage and temperature in app and notification (GitHub issue #14)

    0.10.0:
    • The recharge threshold can now be customized between 0 and the chosen charging limit
    • Sending a charging limit of 100 via (broadcast) intent will disable the service.
    • Sending values between 40 and 99 will enable and start the service if it was previously disabled.

    0.9.2:
    • Fixed crash on some devices that are unrooted or unsupported

    0.9.1:
    • Fixed widget not showing in some devices

    0.9:
    • Added Widget to toggle service
    • Added scrollable view

    0.8.2:
    • experimental Amazon Fire support

    0.8.1:
    • Bugfixes

    0.8:
    • State check after boot (starting monitoring service as necessary)
    • Bugfixes

    0.7:
    • Experimental support for Huawei and Nexus 4 devices
    • Support for external control over charging limit
    • Bug fixes

    0.5
    • Ability to select recharge limit (Range: 10%)
    • Automatic file selection
    • Added store_mode for Samsung devices
    • Added option to auto reset stats
    • (Huge code refactoring)

    0.3
    • Updated to support 7.1.1
    • Auto-select the battery charging file for Samsung, Pixel and Nexus devices
    • Added clear battery stats button
    • Auto-whitelisting from Doze mode

    XDA:DevDB Information
    Battery Charge Limit, App for all devices (see above for details)

    Contributors
    harsha1397, real_milux
    Source Code: https://github.com/sriharshaarangi/BatteryChargeLimit


    Version Information
    Status: Stable
    Current Stable Version: 1.1.1
    Stable Release Date: 2018-10-17
    Current Beta Version: 1.0.4
    Beta Release Date: 2017-09-04

    Created 2017-02-15
    Last Updated 2020-08-05
    57
    Todo:
    - Check for charging on device boot
    - Widget for quick toggle
    - Widget to reset batterystats
    - Limit reached alert
    - Low battery alert - Needs a service running in the background
    - UI overhaul
    - on/off switch to enable/disable charging
    38
    Announcement: Official Version 1.1.0, welcome @xdnax!

    Hello everybody,

    it has been quite a while since I wrote my last post here. The reason for this is rather simple:
    Apart from being very busy in the last months, I realized some time ago that I was investing more time in reading and answering posts in this thread than doing actual implementation work for BCL, which is definitely not my intended workflow.
    Therefore, I shifted my attention completely to GitHub, where the workflow was/is much more efficient.
    Some people here suggested to officially fork this project and continue it elsewhere. I want to say the following to those people:
    While it is in general a good thing that dead projects are forked and continued, good behavior demands to first open a GitHub issue asking whether the project is to be continued before suggesting an official fork, which did afaik not happen.
    Furthermore, a simple look at GitHub would have clearly revealed at all times that I was reacting to issues there on a regular basis, so our project was hardly inactive, and surely not dead!
    Luckily, @xdnax was considerate and smart enough to keep mentioning that he wants to respect our work and keep his fork unofficial for the moment, which deserves a huge THANK YOU from my side!

    Talking about @xdnax:
    He did a great job in contributing to the development of this app during the last months.
    Unfortunately, I didn't have his contributions on my radar for quite a while.
    Since we love to work with other motivated and decent developers like him, we are happy to announce that he is now the third "official developmer" of BCL.
    Welcome to the team, @xdnax!

    Some people noticed the appearance of a semi-official version 1.0.5.
    Although I never had time to publish an official build, I indeed created this version and uploaded it with a "v1.0.5" tag to our GitHub repo.
    This is where the F-Droid build system picked it up and created an APK from it, which I myself wasn't aware of for some while. Sorry for the confusion guys...

    During the last days, we organized our internal communication and unified our contributions to bring out a new official version.
    Well, here we go: I'm happy to announce that we finally release version 1.1.0!
    Link: https://www.androidfilehost.com/?fid=817906626617956614
    Please don't get confused about the numbering: This release includes all improvements of @xdnax and more, and is not a major version step because it doesn't introduce any breaking behavior changes.
    Happy charging, opening post will be updated soon!

    Changelog:
    • UI & icon redesign @xdnax
    • Custom control file data support @xdnax
    • Improved control file lists @real_milux
    • ICS (Android 4.0, API 14) compatibility @real_milux
    • Pixel/Pixel 2 support fixes @xdnax
    • Added control files for Pixel/Pixel 2, Xiaomi Redmi Note 2, Sony XPERIA Mini, Le 1s, Huawei P10 lite, HTC One, Motorola Defy+, Xiaomi Mi A1
    • Bengali translation @AdroitAdorKhan
    • Lots of bugfixes and minor improvements
    22
    Source code: https://github.com/sriharshaarangi/BatteryChargeLimit
    App v0.3: https://www.androidfilehost.com/?fid=745425885120716170
    Changelog:
    - Updated to support 7.1.1
    - Auto-select the battery charging file for Samsung, Pixel and Newus devices
    - Added clear battery stats button
    - Auto-whitelisting from doze
    19
    Update to version 1.1.1

    This is mainly a bug fixing update, with loads of improvements. Should reduce crashes as well.
    Download link: https://www.androidfilehost.com/?fid=674106145207486851
    The update will be available on Play Store soon[UPDATE: Now available]
    Changelog:
    • Fix charging status layout issues and misc UI fixes @xdnax
    • Added (i) Switch to disable toasts on service changes (ii)Add switch to show temp. in notification @xdnax
    • Ensuring write permissions on the charging control file @real_milux
    • Fixed notification sound on limit reach @sriharshaarangi
    • Fixed a bug causing crash
    • Added Russian translation
    • Updated Bengali, German and Brazilian Portuguese translations
    • Added control file for Amazon Tate
    • Other minor fixes