Linux USB
 help / color / mirror / Atom feed
* [Bug 221998] New: HID: playstation: GameSir G7 Pro 8K (054C:09CC) reports incorrect battery level (fixed at 5%)
@ 2026-09-10 20:13 bugzilla-daemon
  2026-09-17 20:25 ` [Bug 221998] " bugzilla-daemon
  0 siblings, 1 reply; 2+ messages in thread
From: bugzilla-daemon @ 2026-09-10 20:13 UTC (permalink / raw)
  To: linux-usb

https://bugzilla.kernel.org/show_bug.cgi?id=221998

            Bug ID: 221998
           Summary: HID: playstation: GameSir G7 Pro 8K (054C:09CC)
                    reports incorrect battery level (fixed at 5%)
           Product: Drivers
           Version: 2.5
    Kernel Version: 7.2.3-1-cachyos
          Hardware: All
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P3
         Component: USB
          Assignee: drivers_usb@kernel-bugs.kernel.org
          Reporter: eivaam@icloud.com
        Regression: No

The GameSir G7 Pro 8K controller, when connected via USB in DS4 mode,
is correctly detected and registered by the hid-playstation driver as a
DualShock 4 controller (USB ID 054C:09CC). The driver creates the battery
power_supply device as expected, but the reported battery capacity is
always fixed at 5% with status "Discharging", regardless of the actual
battery level.

The controller firmware is fully updated (verified via the official
GameSir iOS app, which reports 100% battery). The issue is therefore not
a firmware problem, but a parsing issue in the hid-playstation driver
when handling the battery report from this third-party controller.

Kernel version:
7.2.3-1-cachyos

Distribution:
CachyOS

Hardware:
GameSir G7 Pro 8K
- USB ID: 054C:09CC (emulated DualShock 4)
- Connection: USB cable
- Mode: DS4 (white LED)
- Firmware: latest available, updated via GameSir iOS app

Driver:
hid-playstation

Steps to reproduce:
1. Connect the GameSir G7 Pro 8K via USB in DS4 mode.
2. Wait for the device to be registered by the kernel.
3. Run:
   cat /sys/class/power_supply/ps-controller-battery-*/capacity
4. Observe that the output is always "5".
5. Run:
   cat /sys/class/power_supply/ps-controller-battery-*/status
6. Observe that the output is "Discharging" even when the controller is
   fully charged.

Expected behavior:
The reported battery capacity should reflect the actual battery level of
the controller (e.g. 100% when fully charged), and the status should
change to "Charging" or "Full" when connected to a power source.

Actual behavior:
The battery capacity is permanently fixed at 5% and the status remains
"Discharging", regardless of the real battery level or charging state.

relevant output
❯ sudo dmesg | grep -i "playstation\|hid"
[sudo] contraseña para erikalmeida: 
[15237.258389] playstation 0003:054C:09CC.0007: hidraw4: USB HID v1.11 Gamepad
[Guangzhou Chicken Run Network Technology Co., Ltd. Wireless Controller] on
usb-0000:00:14.0-9/input0
[15237.311809] playstation 0003:054C:09CC.0007: Registered DualShock4
controller hw_version=0x0000b404 fw_version=0x0000a007
[15773.043305] usbhid 1-9:1.0: can't add hid device: -71
[15773.043407] usbhid 1-9:1.0: probe with driver usbhid failed with error -71
[15773.843537] playstation 0003:054C:09CC.0008: hidraw4: USB HID v1.11 Gamepad
[Guangzhou Chicken Run Network Technology Co., Ltd. Wireless Controller] on
usb-0000:00:14.0-9/input0
[15773.895474] playstation 0003:054C:09CC.0008: Registered DualShock4
controller hw_version=0x0000b404 fw_version=0x0000a007
[19003.858872] playstation 0003:054C:09CC.0009: hidraw4: USB HID v1.11 Gamepad
[Guangzhou Chicken Run Network Technology Co., Ltd. Wireless Controller] on
usb-0000:00:14.0-9/input0
[19003.911048] playstation 0003:054C:09CC.0009: Registered DualShock4
controller hw_version=0x0000b404 fw_version=0x0000a007
[19083.872676] usbhid 1-9:1.0: can't add hid device: -71
[19083.872759] usbhid 1-9:1.0: probe with driver usbhid failed with error -71
[19084.678027] playstation 0003:054C:09CC.000A: hidraw4: USB HID v1.11 Gamepad
[Guangzhou Chicken Run Network Technology Co., Ltd. Wireless Controller] on
usb-0000:00:14.0-9/input0
[19084.731026] playstation 0003:054C:09CC.000A: Registered DualShock4
controller hw_version=0x0000b404 fw_version=0x0000a007
[21590.994275] usbhid 1-9:1.0: can't add hid device: -71
[21590.994362] usbhid 1-9:1.0: probe with driver usbhid failed with error -71
[21591.797421] playstation 0003:054C:09CC.000B: hidraw4: USB HID v1.11 Gamepad
[Guangzhou Chicken Run Network Technology Co., Ltd. Wireless Controller] on
usb-0000:00:14.0-9/input0
[21591.849420] playstation 0003:054C:09CC.000B: Registered DualShock4
controller hw_version=0x0000b404 fw_version=0x0000a007
[21679.400804] playstation 0003:054C:09CC.000C: hidraw4: USB HID v1.11 Gamepad
[Guangzhou Chicken Run Network Technology Co., Ltd. Wireless Controller] on
usb-0000:00:14.0-9/input0
[21679.454396] playstation 0003:054C:09CC.000C: Registered DualShock4
controller hw_version=0x0000b404 fw_version=0x0000a007
[21685.581701] playstation 0003:054C:09CC.000D: hidraw4: USB HID v1.11 Gamepad
[Guangzhou Chicken Run Network Technology Co., Ltd. Wireless Controller] on
usb-0000:00:14.0-9/input0
[21685.634998] playstation 0003:054C:09CC.000D: Registered DualShock4
controller hw_version=0x0000b404 fw_version=0x0000a007
❯ cat /sys/class/power_supply/ps-controller-battery-*/capacity
5
❯ cat /sys/class/power_supply/ps-controller-battery-*/status
Discharging
❯ ls /sys/class/power_supply/ | grep -i ps
ps-controller-battery-8c:41:f2:0c:05:f0

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [Bug 221998] HID: playstation: GameSir G7 Pro 8K (054C:09CC) reports incorrect battery level (fixed at 5%)
  2026-09-10 20:13 [Bug 221998] New: HID: playstation: GameSir G7 Pro 8K (054C:09CC) reports incorrect battery level (fixed at 5%) bugzilla-daemon
@ 2026-09-17 20:25 ` bugzilla-daemon
  0 siblings, 0 replies; 2+ messages in thread
From: bugzilla-daemon @ 2026-09-17 20:25 UTC (permalink / raw)
  To: linux-usb

https://bugzilla.kernel.org/show_bug.cgi?id=221998

Krish Gulati (krishgulati7@gmail.com) changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |krishgulati7@gmail.com

--- Comment #1 from Krish Gulati (krishgulati7@gmail.com) ---
Thanks for the detailed report. To narrow this down we need to see the raw HID
input report bytes from the controller, since the fixed capacity of 5% strongly
suggests hid-playstation is reading status[0] as 0x00 for this device; either
the report layout differs from a real DS4, or GameSir's DS4-emulation firmware
doesn't populate that field at all.

Could you provide the following?

1. First find the correct hidraw device for this controller (don't assume the
number, it can change between boots):

   grep -l 054C:09CC /sys/class/hidraw/*/device/uevent

This prints the sysfs path for the matching hidraw device(s); the last path
component (e.g. hidraw4) is the device name to use below. If the controller
creates multiple hidraw interfaces, capture from all of them.

2. The decoded HID report descriptor, ideally with an input report capture in
the same run....this tells us where the device itself claims the battery/status
fields live:

   sudo hid-recorder /dev/<hidrawX>

Let it run for a few seconds while moving a stick/pressing a button so we get
non-idle reports, then Ctrl+C to stop. This prints the decoded descriptor
first, then the captured reports.

3. If hid-recorder isn't installed, get the decoded descriptor and a raw report
dump separately:

   cat /sys/class/hidraw/<hidrawX>/device/report_descriptor | hid-decode

   sudo xxd /dev/<hidrawX> | head -50

Please capture at a few different real battery levels (e.g. near-empty, ~50%,
full), and both with and without USB charging active, since the parsing logic
branches on cable state.

This will tell us whether the battery/status byte is at a different offset than
expected on real Sony hardware, or whether the field is genuinely always zero
on this controller. Once we can see the byte layout we can put together a fix.
I don't have this hardware myself, so I'd need your help testing any patch/BPF
program against the real device.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-09-17 20:25 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-10 20:13 [Bug 221998] New: HID: playstation: GameSir G7 Pro 8K (054C:09CC) reports incorrect battery level (fixed at 5%) bugzilla-daemon
2026-09-17 20:25 ` [Bug 221998] " bugzilla-daemon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox