Recalibrating laptop battery health

I notice that my battery laptop is decreasing a lot. Is there a way how to recalibrating the laptop battery or increasing the battery health?

I steadly deacreasing and now it on alarming 30%. I don't know how I do it before, because my battery health increasing again to normal but now it's on 30%.

inxi -Fxxxza

    System: Kernel: 5.12.5-zen1-1-zen x86_64 bits: 64 compiler: gcc v: 11.1.0
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen root=UUID=8c19f2fb-ef8b-4358-af82-e00062ba02b4 rw
    [email protected] quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
    systemd.unified_cgroup_hierarchy=1 resume=UUID=213f8c6e-971b-4a37-8a60-e6051978ab6a loglevel=3
    Desktop: KDE Plasma 5.21.5 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11 vt: 1 dm: SDDM Distro: Garuda Linux
    base: Arch Linux
    Machine: Type: Laptop System: ASUSTeK product: X550IU v: 1.0 serial:
    Mobo: ASUSTeK model: X550IU v: 1.0 serial: UEFI: American Megatrends v: X550IU.308 date: 04/19/2019
    Battery: ID-1: BAT0 charge: 11.4 Wh (98.3%) condition: 11.6/38.5 Wh (30.0%) volts: 14.8 min: 14.8 model: ASUSTeK X550A30
    type: Li-ion serial: N/A status: Charging cycles: 20
    CPU: Info: Quad Core model: AMD FX-9830P RADEON R7 12 COMPUTE CORES 4C+8G bits: 64 type: MCP arch: Excavator
    family: 15 (21) model-id: 65 (101) stepping: 1 microcode: 600611A cache: L2: 1024 KiB
    flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 23953
    Speed: 3479 MHz min/max: 1400/3000 MHz boost: enabled Core speeds (MHz): 1: 3479 2: 3472 3: 3440 4: 3402
    Vulnerabilities: Type: itlb_multihit status: Not affected
    Type: l1tf status: Not affected
    Type: mds status: Not affected
    Type: meltdown status: Not affected
    Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp
    Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization
    Type: spectre_v2 mitigation: Full AMD retpoline, IBPB: conditional, STIBP: disabled, RSB filling
    Type: srbds status: Not affected
    Type: tsx_async_abort status: Not affected
    Graphics: Device-1: Advanced Micro Devices [AMD/ATI] Wani [Radeon R5/R6/R7 Graphics] vendor: ASUSTeK driver: amdgpu v: kernel
    bus-ID: 00:01.0 chip-ID: 1002:9874 class-ID: 0300
    Device-2: AMD Baffin [Radeon RX 460/560D / Pro 450/455/460/555/555X/560/560X] vendor: ASUSTeK driver: amdgpu
    v: kernel bus-ID: 03:00.0 chip-ID: 1002:67ef class-ID: 0380
    Device-3: Realtek USB2.0 VGA UVC WebCam type: USB driver: uvcvideo bus-ID: 1-1.3:4 chip-ID: 0bda:57de
    class-ID: 0e02 serial:
    Display: x11 server: X.Org 1.20.11 compositor: kwin_x11 driver: loaded: amdgpu,ati unloaded: modesetting
    alternate: fbdev,vesa display-ID: :0 screens: 1
    Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2") s-diag: 582mm (22.9")
    Monitor-1: eDP res: 1920x1080 hz: 60 dpi: 142 size: 344x193mm (13.5x7.6") diag: 394mm (15.5")
    OpenGL: renderer: AMD CARRIZO (DRM 3.40.0 5.12.5-zen1-1-zen LLVM 11.1.0) v: 4.6 Mesa 21.1.0 direct render: Yes
    Audio: Device-1: Advanced Micro Devices [AMD/ATI] Kabini HDMI/DP Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel
    bus-ID: 00:01.1 chip-ID: 1002:9840 class-ID: 0403
    Device-2: Advanced Micro Devices [AMD] Family 15h Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel
    bus-ID: 00:09.2 chip-ID: 1022:157a class-ID: 0403
    Sound Server-1: ALSA v: k5.12.5-zen1-1-zen running: yes
    Sound Server-2: JACK v: 0.125.0 running: no
    Sound Server-3: PulseAudio v: 14.2 running: yes
    Sound Server-4: PipeWire v: 0.3.28 running: yes
    Network: Device-1: Realtek RTL8821AE 802.11ac PCIe Wireless Network Adapter vendor: AzureWave driver: rtl8821ae v: kernel
    port: e000 bus-ID: 01:00.0 chip-ID: 10ec:8821 class-ID: 0280
    IF: wlp1s0 state: up mac:
    Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: ASUSTeK driver: r8168 v: 8.048.03-NAPI
    modules: r8169 port: d000 bus-ID: 02:00.0 chip-ID: 10ec:8168 class-ID: 0200
    IF: enp2s0 state: down mac:
    Bluetooth: Device-1: IMC Networks Bluetooth Radio type: USB driver: btusb v: 0.8 bus-ID: 1-1.2:3 chip-ID: 13d3:3414
    class-ID: e001 serial:
    Report: bt-adapter ID: hci0 rfk-id: 0 state: down bt-service: enabled,running rfk-block: hardware: no software: no
    Drives: Local Storage: total: 476.94 GiB used: 198.99 GiB (41.7%)
    SMART Message: Unable to run smartctl. Root privileges required.
    ID-1: /dev/sda maj-min: 8:0 vendor: Silicon Power model: SPCC Solid State Disk size: 476.94 GiB block-size:
    physical: 512 B logical: 512 B speed: 6.0 Gb/s rotation: SSD serial: rev: 61.3 scheme: GPT
    Partition: ID-1: / raw-size: 460.56 GiB size: 460.56 GiB (100.00%) used: 198.99 GiB (43.2%) fs: btrfs dev: /dev/sda2
    maj-min: 8:2
    ID-2: /boot/efi raw-size: 256 MiB size: 252 MiB (98.46%) used: 546 KiB (0.2%) fs: vfat dev: /dev/sda1 maj-min: 8:1
    ID-3: /home raw-size: 460.56 GiB size: 460.56 GiB (100.00%) used: 198.99 GiB (43.2%) fs: btrfs dev: /dev/sda2
    maj-min: 8:2
    ID-4: /var/log raw-size: 460.56 GiB size: 460.56 GiB (100.00%) used: 198.99 GiB (43.2%) fs: btrfs dev: /dev/sda2
    maj-min: 8:2
    ID-5: /var/tmp raw-size: 460.56 GiB size: 460.56 GiB (100.00%) used: 198.99 GiB (43.2%) fs: btrfs dev: /dev/sda2
    maj-min: 8:2
    Swap: Kernel: swappiness: 10 (default 60) cache-pressure: 75 (default 100)
    ID-1: swap-1 type: partition size: 16.13 GiB used: 0 KiB (0.0%) priority: -2 dev: /dev/sda3 maj-min: 8:3
    ID-2: swap-2 type: zram size: 3.66 GiB used: 0 KiB (0.0%) priority: 32767 dev: /dev/zram0
    ID-3: swap-3 type: zram size: 3.66 GiB used: 0 KiB (0.0%) priority: 32767 dev: /dev/zram1
    ID-4: swap-4 type: zram size: 3.66 GiB used: 0 KiB (0.0%) priority: 32767 dev: /dev/zram2
    ID-5: swap-5 type: zram size: 3.66 GiB used: 0 KiB (0.0%) priority: 32767 dev: /dev/zram3
    Sensors: System Temperatures: cpu: 81.8 C mobo: N/A
    Fan Speeds (RPM): cpu: 4000
    GPU: device: amdgpu temp: 57.0 C watts: 6.14 device: amdgpu temp: 81.0 C
    Info: Processes: 267 Uptime: 37m wakeups: 2 Memory: 14.66 GiB used: 2.75 GiB (18.7%) Init: systemd v: 248 tool: systemctl
    Compilers: gcc: 11.1.0 clang: 11.1.0 Packages: pacman: 1785 lib: 506 Shell: Zsh v: 5.8 running-in: yakuake
    inxi: 3.3.04

Best answer I can give is


You could check for a BIOS update, and then fully charge then discharge the battery* then fully charge again.

However, also keep in mind that it could simply be that the battery is at the end of its useful life.


For example, let it discharge until the OS complains, then reboot and leave it running in the BIOS/UEFI screen until it is fully drained.


You should definitely check this to control battery threshold.

You can find plenty tutorials on the web on best ways to improve your battery status (if still possible and not totally wasted).

1 Like

The best best place to seek help for this is the laptop's vendor's support (don't tell that you're on Linux :wink:). This is related to BIOS's, Linux just reads what BIOS says.

Anyways, I tried this with my HP Omen Laptop, but it should work for any laptop (this is almost what jonathon said but with little more elaboration):

  1. Let the battery fully (100%) charged. The 100% is what your charging LED indicator say.
  2. Use it extensively on battery power (without plugged in) to make it drain to 0%. Also make sure that the PC can't even turn on.
  3. Don't turn on the PC, let it be off until it gets charged 100%. 100% means what the LED indicator says.

Then congo!

1 Like

Thanks guys. Gonna try all the methods and just for safety I'm gonna get new battery too.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.