You are not logged in.

#1 2013-04-01 10:33:19

kvanberendonck
Member
Registered: 2012-08-17
Posts: 45

Need help polishing battery DSDT

As per this topic a solution was found for my battery not being detected under Arch Linux:
https://bbs.archlinux.org/viewtopic.php?pid=1190393

I've had a few "polishing" issues; the battery stops charging at 75% and gives the wrong discharge rate (500mW). These problems are live-able in themselves, but I would _really_ like them fixed. After some investigation, I noticed some various information for my battery is swapped around;

[kyle@kyle-laptop ~]$ acpitool -B
  Battery #1     : present
    Remaining capacity : 2843000, 64.61%, 04:17:17
    Design capacity    : 0
    Last full capacity : 4400000, -1.000% of design capacity
    Capacity loss      : 101.0%
    Present rate       : 663000
    Charging state     : Discharging
    Battery type       : Unknown 
    Serial number      : LION

A prime indicator is that the serial number, which should actually be the battery type, is shown as LION, and my design capacity is empty. I think some of the information is offset incorrectly and a small edit should do the trick, but I've no idea how to fix it myself.

Here's a link to the patch by Lekensteyn that I am using for my Toshiba L750D to make the battery report information at all - and I suspect - also the method causing problems:
https://gist.github.com/Lekensteyn/4046743

Please help!

Last edited by kvanberendonck (2013-04-01 10:33:45)

Offline

#2 2013-04-02 16:10:25

Lekensteyn
Member
From: Netherlands
Registered: 2012-06-19
Posts: 192
Website

Re: Need help polishing battery DSDT

This appears to be a bug in acpitool. This tool also reports values in the wrong order:

  Battery #1     : present
    Remaining capacity : 3486 mAh, 100.0%
    Design capacity    : 5600 mAh
    Last full capacity : 3486 mAh, 62.25% of design capacity
    Capacity loss      : 37.75%
    Present rate       : 0 mA
    Charging state     : charged
    Battery type       : rechargeable 
    Model number       : 64 mAh
    Serial number      : BAT

You'd better check the values in sysfs or procfs directly, or use upower.

$ upower -i /org/freedesktop/UPower/devices/battery_BAT0
  native-path:          /sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT0
  vendor:               NOTEBOOK
  model:                BAT
  serial:               0001
  power supply:         yes
  updated:              Tue Apr  2 14:38:09 2013 (12564 seconds ago)
  has history:          yes
  has statistics:       yes
  battery
    present:             yes
    rechargeable:        yes
    state:               fully-charged
    energy:              38.6946 Wh
    energy-empty:        0 Wh
    energy-full:         38.6946 Wh
    energy-full-design:  62.16 Wh
    energy-rate:         0 W
    voltage:             12.453 V
    percentage:          100%
    capacity:            62.25%
    technology:          lithium-ion
$ (cd /sys/class/power_supply/BAT0/ && grep . *)
alarm:0
capacity:100
charge_full:3486000
charge_full_design:5600000
charge_now:3486000
current_now:0
cycle_count:0
grep: device: Is a directory
manufacturer:NOTEBOOK
model_name:BAT
grep: power: Is a directory
present:1
serial_number:0001
status:Full
grep: subsystem: Is a directory
technology:Li-ion
type:Battery
uevent:POWER_SUPPLY_NAME=BAT0
uevent:POWER_SUPPLY_STATUS=Full
uevent:POWER_SUPPLY_PRESENT=1
uevent:POWER_SUPPLY_TECHNOLOGY=Li-ion
uevent:POWER_SUPPLY_CYCLE_COUNT=0
uevent:POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11100000
uevent:POWER_SUPPLY_VOLTAGE_NOW=12462000
uevent:POWER_SUPPLY_CURRENT_NOW=0
uevent:POWER_SUPPLY_CHARGE_FULL_DESIGN=5600000
uevent:POWER_SUPPLY_CHARGE_FULL=3486000
uevent:POWER_SUPPLY_CHARGE_NOW=3486000
uevent:POWER_SUPPLY_CAPACITY=100
uevent:POWER_SUPPLY_MODEL_NAME=BAT
uevent:POWER_SUPPLY_MANUFACTURER=NOTEBOOK
uevent:POWER_SUPPLY_SERIAL_NUMBER=0001
voltage_min_design:11100000
voltage_now:12462000

If you are certain that the reported values are wrong, you can try modifying the ASL code yourself to multiple by 4/3 for example (75% -> 100%). Please refer to the ACPI spec, sect 10.2.2.2 _BIX (Battery Information Extended).

Offline

#3 2013-04-04 11:18:53

kvanberendonck
Member
Registered: 2012-08-17
Posts: 45

Re: Need help polishing battery DSDT

Lekensteyn wrote:

<snip>

Thanks!

I'll run those commands and put the output here shortly. Since upower is glitched, it seems the only problem with the DSDT is the failure to report the design capacity, which is probably the cause of the incorrect % reading. More info coming! smile

Offline

Board footer

Powered by FluxBB