MoRoKernel-S7
MoRoKernel-S7 copied to clipboard
When plugged and not charging (store_mode enabled), writing to store_mode/store_mode_min/store_mode_max does nothing
Well, I found a workaround but I'm not absolutely sure that what I'm trying to do is a good idea, so this issue is both a bug report and a question.
I've just bought a refurbished S7 and my goal is to prolong the life of the (unfortunately non-removable) battery. And also unfortunately, it's difficult to find good documentation/software/hardware to do that.
The easy part is that 25-75% seems to be the best strategy (comment of Figure 6).
Something much less documented is that IMO not using the battery at all is even better. The problem is that for most cell phones, the only way to be in such situation is that the battery gets fully charged... We could imagine that if the device remains plugged long enough, it could compensate the harm that initially happened by reaching 100%. See also https://www.quora.com/Is-it-true-that-when-you-continue-charging-your-phone-after-100-that-it-will-damage-the-battery
It looks like that thanks to the store mode of MoRoKernel-S7, it becomes possible to follow the above 2 rules. In practice, the usual behaviour is:
- if above 25%, plugging the phone does charge
- else, charge to 75%
Is there any other phone able to do that ?
So I have written an app to manage the battery as described above (with
controls in case, for example, I expect to need maximum autonomy). Well, it's not an Android app: I know better Python/HTML/JS and I already have a Debian setup (LinuxDeploy) so it's a webapp written in Python and I access it via Anker. See https://gist.github.com/jmuchemb/45bd93ccad32ed265354781f6707ed86 if you're curious.
Back to the subject, one issue I had was that I needed a way to trigger charge whereas it's already plugged. Writing test_mode=2 seems to do the work, but maybe the store_mode feature could be improved about this.
BTW, I see at least 2 obvious improvements, although they may not help me:
- store_mode: writing 0 shall return to normal behavior, which means that it shall charge (if plugged and not full)
- store_mode_min: writing a value higher than capacity shall trigger charging (if plugged)