The driver that was originally used for developing support in i3status (https://github.com/i3/i3status/pull/378) is broken, since it incorrectly returns the time-to-empty in minutes instead of seconds.
Further, POWER_SUPPLY_TIME_TO_EMPTY_NOW is present even when charging, but reports a value if "0" then. This confuses the logic and ended up always showing the time-to-full as 0. The proposed patch fixes the unit interpretation, as well as added code to parse both time-to-empty and time-to-full, disregarding zero-values.
According to the linux kernel documentation, the POWER_SUPPLY_TIMETO* properties provided via sysfs have to be interpreted as seconds, not minutes:
https://github.com/torvalds/linux/blob/master/include/linux/power_supply.h#L22
The driver that was originally used for developing support in i3status (https://github.com/i3/i3status/pull/378) is broken, since it incorrectly returns the time-to-empty in minutes instead of seconds.
Further, POWER_SUPPLY_TIME_TO_EMPTY_NOW is present even when charging, but reports a value if "0" then. This confuses the logic and ended up always showing the time-to-full as 0. The proposed patch fixes the unit interpretation, as well as added code to parse both time-to-empty and time-to-full, disregarding zero-values.