svartalf/rust-battop

ERROR - Unable to find any batteries in system, exiting | Error: NoBatteries

dausruddin opened this issue · 2 comments

I am using Thinkpad T16 Gen 1 and I got this error

2023-09-02T03:12:01+08:00 - ERROR - Unable to find any batteries in system, exiting
Error: NoBatteries

This s the result of the command you posted

/sys/class/power_supply
cat: /sys/class/power_supply: Is a directory

/sys/class/power_supply/BAT0
cat: /sys/class/power_supply/BAT0: Is a directory

/sys/class/power_supply/BAT0/uevent
POWER_SUPPLY_NAME=BAT0
POWER_SUPPLY_TYPE=Battery
POWER_SUPPLY_STATUS=Charging
POWER_SUPPLY_PRESENT=1
POWER_SUPPLY_TECHNOLOGY=Li-poly
POWER_SUPPLY_CYCLE_COUNT=4
POWER_SUPPLY_VOLTAGE_MIN_DESIGN=15440000
POWER_SUPPLY_VOLTAGE_NOW=16094000
POWER_SUPPLY_POWER_NOW=71618000
POWER_SUPPLY_ENERGY_FULL_DESIGN=86000000
POWER_SUPPLY_ENERGY_FULL=87740000
POWER_SUPPLY_ENERGY_NOW=29100000
POWER_SUPPLY_CAPACITY=33
POWER_SUPPLY_CAPACITY_LEVEL=Normal
POWER_SUPPLY_MODEL_NAME=LNV-5B10W51871@�
POWER_SUPPLY_MANUFACTURER=SMP
POWER_SUPPLY_SERIAL_NUMBER= 2999

/sys/class/power_supply/BAT0/serial_number
 2999

/sys/class/power_supply/BAT0/technology
Li-poly

/sys/class/power_supply/BAT0/power_now
71618000

/sys/class/power_supply/BAT0/charge_stop_threshold
100

/sys/class/power_supply/BAT0/present
1

/sys/class/power_supply/BAT0/power
cat: /sys/class/power_supply/BAT0/power: Is a directory

/sys/class/power_supply/BAT0/manufacturer
SMP

/sys/class/power_supply/BAT0/charge_control_start_threshold
0

/sys/class/power_supply/BAT0/hwmon2
cat: /sys/class/power_supply/BAT0/hwmon2: Is a directory

/sys/class/power_supply/BAT0/device
cat: /sys/class/power_supply/BAT0/device: Is a directory

/sys/class/power_supply/BAT0/energy_now
29100000

/sys/class/power_supply/BAT0/type
Battery

/sys/class/power_supply/BAT0/capacity
33

/sys/class/power_supply/BAT0/cycle_count
4

/sys/class/power_supply/BAT0/voltage_now
16094000
find: File system loop detected; ‘/sys/class/power_supply/BAT0/subsystem’ is part of the same file system loop as ‘/sys/class/power_supply’.

/sys/class/power_supply/BAT0/status
Charging

/sys/class/power_supply/BAT0/charge_behaviour
[auto] inhibit-charge force-discharge

/sys/class/power_supply/BAT0/alarm
0

/sys/class/power_supply/BAT0/model_name
LNV-5B10W51871@�

/sys/class/power_supply/BAT0/voltage_min_design
15440000

/sys/class/power_supply/BAT0/capacity_level
Normal

/sys/class/power_supply/BAT0/energy_full_design
86000000

/sys/class/power_supply/BAT0/charge_control_end_threshold
100

/sys/class/power_supply/BAT0/energy_full
87740000

/sys/class/power_supply/BAT0/charge_start_threshold
0

/sys/class/power_supply/AC
cat: /sys/class/power_supply/AC: Is a directory

/sys/class/power_supply/AC/uevent
POWER_SUPPLY_NAME=AC
POWER_SUPPLY_TYPE=Mains
POWER_SUPPLY_ONLINE=1

/sys/class/power_supply/AC/power
cat: /sys/class/power_supply/AC/power: Is a directory

/sys/class/power_supply/AC/online
1

/sys/class/power_supply/AC/device
cat: /sys/class/power_supply/AC/device: Is a directory

/sys/class/power_supply/AC/wakeup30
cat: /sys/class/power_supply/AC/wakeup30: Is a directory

/sys/class/power_supply/AC/type
Mains

/sys/class/power_supply/AC/hwmon0
cat: /sys/class/power_supply/AC/hwmon0: Is a directory
find: File system loop detected; ‘/sys/class/power_supply/AC/subsystem’ is part of the same file system loop as ‘/sys/class/power_supply’.

haarp commented

Same here on a Thinkpad P16s AMD.

strace shows it can find a battery and does open some files:

...
openat(AT_FDCWD, "/sys/class/power_supply", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
newfstatat(3, "", {st_mode=S_IFDIR|0755, st_size=0, ...}, AT_EMPTY_PATH) = 0
getdents64(3, 0x562a63321ad0 /* 4 entries */, 32768) = 96
openat(AT_FDCWD, "/sys/class/power_supply/BAT0/type", O_RDONLY|O_CLOEXEC) = 4
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0444, stx_size=4096, ...}) = 0
read(4, "Battery\n", 4096)              = 8
read(4, "", 4088)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/class/power_supply/BAT0/scope", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/sys/class/power_supply/BAT0/manufacturer", O_RDONLY|O_CLOEXEC) = 4
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0444, stx_size=4096, ...}) = 0
read(4, "SMP\n", 4096)                  = 4
read(4, "", 4092)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/class/power_supply/BAT0/model_name", O_RDONLY|O_CLOEXEC) = 4
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0444, stx_size=4096, ...}) = 0
read(4, "LNV-5B10W51869@\320\n", 4096)  = 17
read(4, "", 4079)                       = 0
close(4)                                = 0
openat(AT_FDCWD, "/sys/class/power_supply/AC/type", O_RDONLY|O_CLOEXEC) = 4
statx(4, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_BASIC_STATS|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0444, stx_size=4096, ...}) = 0
read(4, "Mains\n", 4096)                = 6
read(4, "", 4090)                       = 0
close(4)                                = 0
...

But then still bails out.

I got the same issue