We need to talk about battery lifespan
#1
First off, I want to clarify that I'm talking about battery lifespan as in how long the battery keeps holding a charge before it wears out and becomes unusable, not how long the device can run between recharges. For the purposes of this post, I'll refer to the former thing as "battery lifespan" and the latter thing as "runtime".

There's a problem with lithium-ion batteries nowadays, and it's that we've all been lied to about how long they last. They don't actually inherently wear out after only one or two years of service - they just do that when they've been pushed beyond their reasonable limits for charge capacity to squeeze every last possible second of runtime out of the thinnest possible battery. Remember when they used to say that laptop batteries lasted around ten years? Well, they've only grown better since then, not worse; we only get such dramatically worse cell lifespans nowadays because most consumer electronics vendors like advertising big numbers for runtime on a charge and making the thinnest devices they can manage (and they also like selling you a new phone every year). If we only charged our batteries to 80% of their rated capacity and limited discharge to 20% of their minimum charge level, they'd last several times longer, but naturally, the state of hardware and software is not designed to make it easy to do this. While turning off your phone before it reaches 20% may be simple enough, nobody likes babysitting a charging phone to catch it when it passes 80% and take it off the charger - you really need a way to make it cut itself off before then.

The Pinephone does pretty well here, I understand. Its fancy PMIC does let you program in your own charge parameters, and the Linux sysfs interface makes this easy to do from userspace. But it's not the Pinephone that I'm worried about now; it's the Pinebook Pro (and maybe the regular Pinebook; I haven't inspected it as closely).

The Pinebook Pro has a very large, expensive battery in it, and plenty of runtime to spare, which is why I find it very disappointing that it has a hard-wired charge controller that sets the charger cut-off voltage with a pair of resistors - to, if I recall the schematics correctly, around 4.35 volts, which is eye-wateringly high (in my book, 4.1 volts would be much more appropriate, maybe 4.2 at most). Vendors may claim that modern cells are "designed for" higher float voltages, but they're also "designed for" much shorter lifespans than they used to be. The bottom line is that they just do last longer if you treat them better, which is why I think Pine64's designers should really consider picking more conservative charging parameters for these things.

Setting charge thresholds in immutable hardware, as was done with the Pinebook Pro, isn't unacceptable (although a smart PMIC with user-settable values is definitely better), but I think we deserve to have those parameters set to values which prioritize a bit more longevity over out-of-the-box capacity. I mean, it's not Pine64's goal to sell everyone a new Pinebook Pro battery every other year, right? With the way the supply situation tends to be, I would think this idea should practically strike fear into the hearts of a lot of us. I've tried to be careful with my unit's battery, but it's already showing its age only a couple of years later, and holds noticeably less charge than it used to. It doesn't have to be like this. If I had a way to limit charging to 80% of the design capacity, I'd still get 8 hours of runtime on a charge, but would get potentially twice or three times the battery lifespan compared to now. Doesn't that sound like a worthy tradeoff?

If you think I sound like some kind of conspiracy theorist, remember that plenty of enterprise-grade laptops offer battery charge parameter adjustment in their firmware for specifically this reason. The Toughbook I'm writing this post on has a "high-temperature environment" option that limits charging to 80% of baseline capacity - ostensibly to keep the battery from wearing out faster in hot climates, but I have it turned on all the time to keep it from wearing out too fast in general. The Dell XPS series has a way to set thresholds to whatever you want them to be in the setup utility, and Thinkpads let you configure them directly from the OS with SMAPI and such.

My two overall points here are these:
1. I want to see future Pine64 devices prioritize the inclusion of some sort of programmable PMIC/battery controller whose charge profile can be configured. In addition, I think that these chips should be given relatively conservative default charge parameters, so that the users who need to change them are the users who want more runtime at the expense of longevity, and not the users who want their devices to last.
2. I think that it would be worthwhile to make a small revision to current Pine64 devices, namely the Pinebook Pro, to reduce maximum charge voltage in future production models. I won't claim to be experienced here, but surely the retooling costs associated with changing two resistor values are not insurmountably large?

I know that Pine64 devices are only cursory modifications to reference designs - and as such, I do not believe that there was any actual intent to limit the lifespans of our devices here, only a lack of effort to prolong them - but I do think that this would be a very worthwhile and important tweak to make. Batteries are the primary limiting factor on electronic device lifespans in the modern world, and they are severely hampered in devices on the consumer market by factors that quickly amount to nothing more than greed. We don't need to be limited by this here; Pine64 is not a billion-dollar profit-focused corporation and does not need to follow all the same industry trends in the interest of being competitive. Let's do our own thing.
  Reply
#2
This is a great idea. I'd much prefer a battery that lasted for years longer in trade for a couple hours runtime.
A64, SOPINE, Rock64, RockPro64, Pinebook1080p, Pinebook Pro, Pinephone, Pinewatch dev kit, Pinetab, Pinecil, Pinenut, Quartz64, Pinephone Pro, and PineNote (so far)
  Reply
#3
Not me. This is why I'd like to see user-configurability. I had a "phone" that did the 80% charge then discharge to 20% thing. Nothing in the world as frustrating as charging something overnight to have a dead battery in the morning so that the battery could last 10 in stead of 8 years in a device that's only useful for 5.

I fully expect cars will be this way if everyone has electric cars. The power companies are all planning to use your car for load leveling. Charge all night, but your battery is dead because you went to use your car three hours earlier than you normally do, and it was really hot last night so everyone's air conditioners were running. (Of course, I have bigger doubts about our power grids being able to support large numbers of electric cars anyway.)
:wq



[ SRA accepts you ]

Everyone wants me to quit using NetBSD
  Reply
#4
(08-16-2021, 09:23 PM)KC9UDX Wrote: Not me.  This is why I'd like to see user-configurability.  I had a "phone" that did the 80% charge then discharge to 20% thing.  Nothing in the world as frustrating as charging something overnight to have a dead battery in the morning so that the battery could last 10 in stead of 8 years in a device that's only useful for 5.

You may be exaggerating, but you're blowing this out of proportion. We can have more sophisticated behavior than "charge to max level, then never charge again until reaching min level". At any rate, batteries these days are only really lasting 2-3 years. In the last 3 years, an obnoxious number of Android phones in my household (often acquired used) have been exhausted of useful function because the battery performance became untenable. My Dell laptop from 2018 only has 38% of its original capacity; I only even know that because Plasma bothers to display this in the battery tray panel, I would only have had vague feelings of worse runtime had I not known that info was available to me. Handling charge behavior intelligently is critical to combating e-waste and extending longevity of devices where the battery often limits the lifespan of the whole unit.

I know you said you wanted to see it configurable. I know that it's less of a problem when you're not using a mainstream phone and can replace the battery. I still feel that you're needlessly hostile to this concept being on by default for the benefit of users. This perception that it's a bad idea to use less than the "maximum capacity" of a battery needs to change, and it can be done without compromising the overall user experience of the device.

Quote:I fully expect cars will be this way if everyone has electric cars.  The power companies are all planning to use your car for load leveling.  Charge all night, but your battery is dead because you went to use your car three hours earlier than you normally do, and it was really hot last night so everyone's air conditioners were running.  (Of course, I have bigger doubts about our power grids being able to support large numbers of electric cars anyway.)

Besides the technical and other hurdles that would need to be overcome before this becomes a possibility, there are much better ways to load-balance the grid with a network of batteries that don't involve putting the entire capacity up for grabs. And the calculus involved for car batteries is quite different from what we're dealing with here.
  Reply
#5
(08-16-2021, 09:23 PM)KC9UDX Wrote: Not me.  This is why I'd like to see user-configurability.  I had a "phone" that did the 80% charge then discharge to 20% thing.  Nothing in the world as frustrating as charging something overnight to have a dead battery in the morning so that the battery could last 10 in stead of 8 years in a device that's only useful for 5.

I fully expect cars will be this way if everyone has electric cars.  The power companies are all planning to use your car for load leveling.  Charge all night, but your battery is dead because you went to use your car three hours earlier than you normally do, and it was really hot last night so everyone's air conditioners were running.  (Of course, I have bigger doubts about our power grids being able to support large numbers of electric cars anyway.)

Okay, so we're definitely not on the same page here. Your post describes two very different concepts, neither of which was the one I presented in the initial post. On a re-read, I think some of what I said may not have been entirely clear, so I'll attempt to sort it out a little:

In addition to being able to control maximum and minimum charge levels for their batteries, some laptops (again, namely Thinkpads) can also set up charge hysteresis, which makes the charging stop at a much higher threshold than it starts - usually stopping at 75% or so, and not resuming again until the battery charge level falls below around 25% to 40%. This is not what I was talking about in my initial post. Charge hysteresis is intended to prevent laptops that spend most of their lives plugged into their chargers from wearing out their batteries through many small charge-discharge cycles; since the laptop itself is usually powered entirely by its charger in such a case (and not by its battery), the battery only loses energy to its very slow self-discharge, and it may take many weeks, even months or years, for the charge level to drop all the way from 75% to 25%. Contrast to what happens if the charger kicks in promptly at 99% and returns the battery to 100%; this can result in many small cycles per day, which take their toll. At any rate, this makes very little sense to employ on a device like a phone, tablet, or sub-notebook, since those devices almost always spend most of their lives off-charger, so this is not what I intended to promote in my original post.

What I am talking about is much simpler: I just want to narrow the charge and discharge limits of the batteries. When I leave my phone charging overnight, I want it to be at 80% when I wake up the next morning, and not 100%, because the 100% threshold that today's vendors have selected is excessively high and intentionally damages the battery. In fact, this would not even need to look like 80% to the OS, and the charge levels could simply be redefined so that "100%" is now the same level that most vendors prefer to call "80%". De-rating components like this to gain additional longevity is an accepted practice for almost every type of electronic component; you may recall that it's especially important for electrolytic capacitors, which are vulnerable to ongoing degradation when operated near their rated limits. It's even more important for lithium-ion batteries, which are very chemical, very unstable structures that are prone to several different modes of decay.

The only drawback that users will experience to having their charge capacities reduced is a ~20-40% decrease in runtime on a battery charge. This may sound like a severe problem for things like the Pinephone which are already plagued by short runtimes, but the Pinephone is not the main problem in my mind (since it already has a smart PMIC) - the main problem is the Pinebook Pro, whose battery runtime is enormous and whose battery charge limits cannot be changed without an involved hardware mod. And perhaps also the Pinenote; I don't know if it's going to have a smart PMIC, but with an e-ink display, it will almost certainly have plenty of runtime to spare as well. The tradeoffs I'm talking about here are considerable - it's not just an 8-year vs. 10-year lifespan difference, it's more like 3-year vs. 10-year, and I'm really not exaggerating that. This is based on real, repeated experiences that I have had with my own devices, which have been starkly dependent on my own treatment of their batteries.

I definitely do not understand the relevance of electric cars and power grid load leveling here. No one is suggesting that someone else should be allowed to use your Pinebook Pro's battery to buffer someone else's power demand, and I want to emphasize that I am not proposing any mechanism that would ever result in your devices being nearly-discharged after being connected to a working charger for a long period of time.
  Reply
#6
I was not exaggerating; I still have the "phone" that does that; but the battery is dead (maybe lasted 2 years). It would charge to 80%, then discharge to 20%, then charge to 80%. That didn't stop the battery from puffing up and cracking the case. I seem to have a vastly different experience with newer batteries: the non-user-replaceable ones are out-lasting the user-replaceable ones. But except for an iPhone 11 that only worked for a couple of weeks, my newest devices are all several years old. So maybe this is something that is a problem with very new devices.

My old laptop has nickel metal hydride batteries. When it was new, it might stay powered on with little activity for two hours, and then charge for 4 or 6. I sure don't want to go back to that. I don't even have to concern myself with the battery in the Pinebook Pro.

Why is user-configurability so offensive? The idea is that you could have it your way, and I could have it my way. I have lithium, nickel cadmium, and nickel metal hydride battery devices all over the place. (Yes everyone has a lot of them these days, but I'm pretty sure I have more than most.) If they get hot, I take them off the charger.

The last thing I want is reduced usability in the short term. That was my analogy with the electric car problem. And I'm not spewing conspiracy theories: I even have a pamphlet from the power company here somewhere explaining why we should look forward to such a scheme because it's for the common good (paraphrasing). I realise that you're not proposing this. But it is the extreme case of what you are proposing, which is reduced usability for the sake of theoretical longevity. No I don't want a dead battery fresh off the charger, but I also don't want two hours less run time either. So adjust your settings your way and I'll adjust mine my way; rather than making your way the standard way and me having to recompile the sources to get the original operating mode back.
:wq



[ SRA accepts you ]

Everyone wants me to quit using NetBSD
  Reply
#7
I'm not even slightly hostile to user configurability. I think that's a very important thing here. But clearly it wasn't easy to add to the Pinebook Pro, because they didn't include it. The reference design they were following probably used that simple resistor-programmed charge controller chip, and reworking the entire board to incorporate a more sophisticated PMIC probably wasn't really on the table. I think that user configurability is absolutely better than this in every way, but the bottom line is that when they designed the Pinebook Pro, they had to choose one charge profile to bake into the hardware that could never be changed again without very fine soldering, and I strongly believe that they picked one that sacrificed too much battery lifetime for only small returns in battery capacity.

What I'm asking for here is really not much. Most users probably would not even notice the change, because at the end of the day, we wouldn't be going back to the NiMH days; we'd be going back to the early-2010s lithium-ion days when cells were usually rated to last a decade or more. The cells made nowadays are also mostly just better than they were back then, so we wouldn't even have to go all the way back to older capacity figures, just somewhere in between. My current assumption is that Pine64 has not made any attempt to optimize battery capacity vs. longevity and has simply adopted the parameters from the reference design. I would like to change that, and take a more critical approach to selecting these values. The current situation is not a reasonable medium, and is actually somewhere near the furthest extreme of longevity sacrifices for diminishing returns in capacity that vendors can get away with without attracting bad press.

Ultimately, the current charge parameters used on the Pinebook Pro are basically self-defeating, because they serve neither a need for longevity nor a need for runtime. I got mine along with the early-adopters, going on two years ago now, and by now, my battery runtime has already decayed substantially. Had the parameters been set only slightly lower and yielded, say, 90% of the nominal design capacity, I would experience considerably longer runtimes now. While the initial runtime would have been slightly shorter, it would have decayed much more slowly, and remained closer to its original levels by now. The only time you'd actually want such an overcharged battery is if you were planning on throwing the battery away in a year anyway, and I don't think many people bought a Pinebook Pro with that intent.
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  power/battery usage on risc-v vs arm64? zetabeta 1 1,277 08-28-2023, 01:23 AM
Last Post: alphonso
  Flip phone, low power, long battery life vandys 8 7,352 01-16-2021, 03:18 AM
Last Post: ryo
  Is it possible to power the phone without a battery? stragulus 1 3,234 02-13-2020, 03:32 AM
Last Post: InsideJob

Forum Jump:


Users browsing this thread: 1 Guest(s)