Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix handling of POWER_SUPPLY_TIME_TO_* properties #504

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

thasti
Copy link

@thasti thasti commented Oct 29, 2022

According to the linux kernel documentation, the POWER_SUPPLY_TIME_TO_* 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 (#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.

The POWER_SUPPLY_TIME_TO_* properties provided via sysfs have to be
interpreted as seconds. Further, the presence of both the
POWER_SUPPLY_TIME_TO_EMPTY_NOW and POWER_SUPPLY_TIME_TO_FULL_NOW
properties confused the logic and ended up always showing the
time-to-full as 0 while charging (since TIME_TO_EMPTY reports 0 with a
charger attached).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant