Skip to content

Add K10 HE battery report over raw HID#477

Open
OutersGIT wants to merge 1 commit into
Keychron:2025q3from
OutersGIT:k10he-battery-raw-hid
Open

Add K10 HE battery report over raw HID#477
OutersGIT wants to merge 1 commit into
Keychron:2025q3from
OutersGIT:k10he-battery-raw-hid

Conversation

@OutersGIT

Copy link
Copy Markdown

Description

This PR adds a raw HID battery report for the Keychron K10 HE.

It introduces KC_GET_BATTERY = 0xA4, returning battery percentage, voltage, charging state, active transport, and a keyboard model id.

For USB cable mode, the host can request the report directly. For 2.4 GHz mode, the keyboard periodically pushes the report because the dongle does not appear to bridge host-to-keyboard raw HID requests.

Cable mode also keeps polling the battery voltage while USB is connected, so host reads return fresh battery data instead of the last wireless snapshot.

The change is intentionally limited to the K10 HE.

Build tested:

  • make keychron/k10_he/iso:all
  • make keychron/k10_he/ansi:all

Hardware tested:

  • Keychron K10 HE ISO
  • USB cable mode: battery report read by host
  • 2.4 GHz dongle mode: battery report received via keyboard push

Types of Changes

  • Core
  • Bugfix
  • New feature
  • Enhancement/optimization
  • Keyboard (addition or update)
  • Keymap/layout (addition or update)
  • Documentation

Issues Fixed or Closed by This PR

Checklist

  • My code follows the code style of this project: C, Python
  • I have read the PR Checklist document and have made the appropriate changes.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • I have tested the changes and verified that they work and don't break anything (as well as I can manage).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant