The battery indicator& Power setting panel shows wrong battery state

Solution 1:

Can you run the following command and put the output into your question:

cat /sys/class/power_supply/BAT0/uevent

This should contain info such as the POWER_SUPPLY_ENERGY_FULL_DESIGN, POWER_SUPPLY_ENERGY_FULL and POWER_SUPPLY_ENERGY_NOW which will give us a more informed answer to your issue.

[Updated]

So your machine is reporting:

POWER_SUPPLY_ENERGY_FULL_DESIGN=31680000

POWER_SUPPLY_ENERGY_FULL=22050000

..these two fields are static data from the ACPI _BIX control. The first is the design capacity of the battery, the second is the predicted battery capacity when fully charged.

POWER_SUPPLY_ENERGY_NOW=17860000

..and this is from the ACPI _BST control, showing you the current battery charge. This is dynamic and will change.

This data is typically read from the Embedded Controller that talks to the smart battery usually over the i2c bus. This data is presented to the kernel via the APCI controls so this data is basically what the kernel is given, it has no control over this data but to present it directly to user space applications.

These current values show that the battery when last fully charged got to 69.6% of full battery design capacity. Also your current capacity is about 80% of the full charge capacity and 56.3% of the theoretical design capacity of the battery.

My guess is that the user space apps are showing you the battery capacity in percentage terms of the full charge capacity. Maybe windows is showing you the figures in terms of the battery design capacity. Just a guess.

Solution 2:

Here are no problem it seems.
Soon, power consumption counted by Windows do not point actual state, because Windows is hungry and forced "to be a bit wrong" to user. It's my very subjective opinion.

Hovewer, it is very relativistic question due to very relative nature of an ACTUAL STATE term.

A very many ways exist to explain why for Windows 60% is actual but EQUAL for actuals Ubuntu 82%'s. Most simple is about differences between Windows and Ubuntu paradigms.

update 1

Try to test your environment with fwts :

sudo add-apt-repository ppa:firmware-testing-team/ppa-fwts-stable
sudo apt-get update
sudo apt-get install fwts

Read: wiki.ubuntu.com/Kernel/Reference/fwts

update 2

Thus battery.log shows that power ACPI interface disabled.
It means you have first solution for your problem by enabling power interface in BIOS.
Or if this behavior initiated by boot-parameter you need to find correct value.

update 3

Obviously booting parametrization have weight here.
New readings based on updates: UEFIBooting

Most actual parameters (WARNING! Use only correct parameters referred to your config) :

 acpi
 noefi
 acpi_osi
 apm  

Kernel boot parameters Documentation

update 4

Also you can try to test output parameters with acpi program:

sudo apt-get install acpi
acpi -V

Finally all my web surf point to: ThinkPad ACPI Extras Driver

And: Lenovo Diagnostics (Linux Bootable CD).