May be is possible to set it in /etc/sysctl.conf,
should work like
Code: Select all
/sys/class/power_supply/BAT0/capacity_full_design = 68000000
But I'm thinking this should not work! Back in the day I had a toughbook I looked at this. Panasonic had a nice utility for cycling the battery, short and long, and it did indeed update the battery status and then better estimate discharge. BUT, I'm pretty sure the utility talked to some chip and the results stored essentially in firmware.
Since I'm thinking the OS may read once at boot there is not a use case for a user to change it. Some magic utility needs to write to the bios/firmware. At the OS level without such utility the only option may be to figure out how to ignore it. Or look to the vendor/manufacturer of your gadget for a battery calibrator utility
I checked, this variable not listed in sysctl -a, thus, it can't be changed this way, unfortunately.
The culprit is a battery controller board with EEPROM.
In order to reflash it one needs a special hardware, not expensive, yet meaningless to purchase in this particular case. Its not possible to overwrite battery EEPROM from notebook.
I reconditioned battery with new finest quality Li-Ion cells which have 1.59 times larger capacity compared to the old ones.
Battery calibration won't help (already verified), because power manager counts on old capacity.
Another option is to buy third-party high-capacity battery, which composed of dirty cheap s*** cells, and as my experience suggests, advertised numbers are close to fake.
So the only meaningful way is to hack udev/power manager, yet I didn't expected it would be so cumbersome.