Skip to content

Commit a8ad12c

Browse files
committed
feat(Legion Go S): Add IMU support
- 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.
1 parent ae1908b commit a8ad12c

File tree

5 files changed

+435
-423
lines changed

5 files changed

+435
-423
lines changed

rootfs/usr/share/inputplumber/devices/50-legion_go_s.yaml

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -47,23 +47,11 @@ source_devices:
4747
handler: event*
4848

4949
# IMU
50-
# Broken for now --causes IP to hard freeze
51-
# Enabling only gyro_3d allows the tablet gyro to work without needing kernel patch
52-
# TODO: Find out why this is broken and swap tablet gyro to controller gyro as default.
53-
# - group: imu
54-
# iio:
55-
# name: accel_3d
56-
# mount_matrix:
57-
# x: [0, 1, 0]
58-
# y: [0, 0, -1]
59-
# z: [-1, 0, 0]
60-
# - group: imu
61-
# iio:
62-
# name: gyro_3d
63-
# mount_matrix:
64-
# x: [0, 1, 0]
65-
# y: [0, 0, -1]
66-
# z: [-1, 0, 0]
50+
- group: imu
51+
hidraw:
52+
vendor_id: 0x1a86
53+
product_id: 0xe310
54+
interface_num: 5
6755

6856
# Optional configuration for the composite device
6957
options:

0 commit comments

Comments
 (0)