Skip to content

Commit

Permalink
feat(Legion Go S): Add IMU support
Browse files Browse the repository at this point in the history
- Adds reading IMU data from MCU interface 5. This device polls at 1000Hz and provides all 3 axis for each interial measurement in a single report.
- While at it, performs cleanup of unused event types and remanes many others to be simpler. The more complex names aren't needed for Go S as it doesn't have as many interfaces as the Go.
- Adds basic support for the touchpad. X/Y events are disabled until a firmware update can enable ABS values instead of REL values.
  • Loading branch information
pastaq committed Jan 23, 2025
1 parent ae1908b commit a8ad12c
Show file tree
Hide file tree
Showing 5 changed files with 435 additions and 423 deletions.
22 changes: 5 additions & 17 deletions rootfs/usr/share/inputplumber/devices/50-legion_go_s.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,23 +47,11 @@ source_devices:
handler: event*

# IMU
# Broken for now --causes IP to hard freeze
# Enabling only gyro_3d allows the tablet gyro to work without needing kernel patch
# TODO: Find out why this is broken and swap tablet gyro to controller gyro as default.
# - group: imu
# iio:
# name: accel_3d
# mount_matrix:
# x: [0, 1, 0]
# y: [0, 0, -1]
# z: [-1, 0, 0]
# - group: imu
# iio:
# name: gyro_3d
# mount_matrix:
# x: [0, 1, 0]
# y: [0, 0, -1]
# z: [-1, 0, 0]
- group: imu
hidraw:
vendor_id: 0x1a86
product_id: 0xe310
interface_num: 5

# Optional configuration for the composite device
options:
Expand Down
Loading

0 comments on commit a8ad12c

Please sign in to comment.