external lenovo keyboard trackpoint and mouse buttons erroneously suspended in yoga tablet mode
Summary
Hi,
I believe I've stumbled upon a rather interesting edge case. I have Lenovo X1 Yoga laptop and recently got Lenovo ThinkPad Compact USB Keyboard with TrackPoint USB. Everything is fine until the laptop is switched to tablet mode. As expected in this case onboard laptop touchpad/trackpoint/mouse buttons stop working but at the same time trackpoint and mouse buttons of the external keyboard stop working too! The external keyboard itself continues working without any issues - only its trackpoint and mouse buttons are affected. lsusb
and xinput
show no difference in these two cases. libinput debug-events --device /dev/input/event25
successfully captures trackpoint and mouse buttons events in both cases, however simple libinput debug-events
without device being specified doesn't show any trackpoint or mouse buttons events from external keyboard in tablet mode.
It looks like there is some weird interference and libinput treats both onboard and external keyboards as the same device when switched to/from tablet mode and suspends/resumes both.
Steps to reproduce
Bend the laptop into tablet mode and observe that neither onboard trackpoint/touchpad/mouse buttons, nor trackpoint/mouse button on external keyboard are working.
libinput version you encountered the bug on
1.13.1
Hardware information:
- Lenovo ThinkPad X1 Yoga gen 1 laptop
- Lenovo ThinkPad Compact USB Keyboard with TrackPoint USB
Other log output:
Output of
lsusb
lsusb
Bus 002 Device 004: ID 17ef:3054 Lenovo
Bus 002 Device 003: ID 17ef:1019 Lenovo
Bus 002 Device 002: ID 17ef:1018 Lenovo
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 009: ID 138a:0090 Validity Sensors, Inc. VFS7500 Touch Fingerprint Sensor
Bus 001 Device 006: ID 04f2:b531 Chicony Electronics Co., Ltd
Bus 001 Device 004: ID 8087:0a2b Intel Corp.
Bus 001 Device 010: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 017: ID 17ef:6047 Lenovo # <--------------------------------------------- This one is external Lenovo Keyboard
Bus 001 Device 015: ID 08bb:2704 Texas Instruments PCM2704 16-bit stereo audio DAC
Bus 001 Device 012: ID 0ac8:3450 Z-Star Microelectronics Corp.
Bus 001 Device 007: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 001 Device 011: ID 17ef:3055 Lenovo
Bus 001 Device 008: ID 0556:0001 Asahi Kasei Microsystems Co., Ltd AK5370 I/F A/D Converter
Bus 001 Device 005: ID 17ef:1019 Lenovo
Bus 001 Device 003: ID 17ef:1018 Lenovo
Bus 001 Device 002: ID 1199:9079 Sierra Wireless, Inc.
Bus 001 Device 013: ID 056a:5040 Wacom Co., Ltd
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Relevant fragments of
libinput list-devices
libinput list-devices
Device: Lenovo ThinkPad Compact USB Keyboard with TrackPoint
Kernel: /dev/input/event24
Group: 9
Seat: seat0, default
Capabilities: keyboard
Tap-to-click: n/a
Tap-and-drag: n/a
Tap drag lock: n/a
Left-handed: n/a
Nat.scrolling: n/a
Middle emulation: n/a
Calibration: n/a
Scroll methods: none
Click methods: none
Disable-w-typing: n/a
Accel profiles: n/a
Rotation: n/a
Device: Lenovo ThinkPad Compact USB Keyboard with TrackPoint
Kernel: /dev/input/event25
Group: 9
Seat: seat0, default
Capabilities: keyboard pointer
Tap-to-click: n/a
Tap-and-drag: n/a
Tap drag lock: n/a
Left-handed: disabled
Nat.scrolling: disabled
Middle emulation: disabled
Calibration: n/a
Scroll methods: *button
Click methods: none
Disable-w-typing: n/a
Accel profiles: flat *adaptive
Rotation: n/a
Device: AT Translated Set 2 keyboard
Kernel: /dev/input/event3
Group: 14
Seat: seat0, default
Capabilities: keyboard
Tap-to-click: n/a
Tap-and-drag: n/a
Tap drag lock: n/a
Left-handed: n/a
Nat.scrolling: n/a
Middle emulation: n/a
Calibration: n/a
Scroll methods: none
Click methods: none
Disable-w-typing: n/a
Accel profiles: n/a
Rotation: n/a
Device: SynPS/2 Synaptics TouchPad
Kernel: /dev/input/event7
Group: 15
Seat: seat0, default
Size: 100x57mm
Capabilities: pointer gesture
Tap-to-click: disabled
Tap-and-drag: enabled
Tap drag lock: disabled
Left-handed: disabled
Nat.scrolling: disabled
Middle emulation: disabled
Calibration: n/a
Scroll methods: *two-finger edge
Click methods: *button-areas clickfinger
Disable-w-typing: enabled
Accel profiles: none
Rotation: n/a
Device: TPPS/2 IBM TrackPoint
Kernel: /dev/input/event8
Group: 16
Seat: seat0, default
Capabilities: pointer
Tap-to-click: n/a
Tap-and-drag: n/a
Tap drag lock: n/a
Left-handed: disabled
Nat.scrolling: disabled
Middle emulation: disabled
Calibration: n/a
Scroll methods: *button
Click methods: none
Disable-w-typing: n/a
Accel profiles: flat *adaptive
Rotation: n/a
Device: ThinkPad Extra Buttons
Kernel: /dev/input/event5
Group: 17
Seat: seat0, default
Capabilities: keyboard switch
Tap-to-click: n/a
Tap-and-drag: n/a
Tap drag lock: n/a
Left-handed: n/a
Nat.scrolling: n/a
Middle emulation: n/a
Calibration: n/a
Scroll methods: none
Click methods: none
Disable-w-typing: n/a
Accel profiles: n/a
Rotation: n/a
While in tablet mode (mouse buttons pressed, trackpoint moved)
libinput debug-events --verbose --device /dev/input/event25
libinput debug-events --verbose --device /dev/input/event25
event25 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: is tagged by udev as: Keyboard Mouse Pointingstick
event25 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: device is a pointer
event25 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: device is a keyboard
-event25 DEVICE_ADDED Lenovo ThinkPad Compact USB Keyboard with TrackPoint seat0 default group1 cap:kp left scroll-nat scroll-button
event25 - debounce state: DEBOUNCE_STATE_IS_UP → DEBOUNCE_EVENT_OTHERBUTTON → DEBOUNCE_STATE_IS_UP
event25 - debounce state: DEBOUNCE_STATE_IS_UP → DEBOUNCE_EVENT_PRESS → DEBOUNCE_STATE_IS_DOWN_WAITING
event25 POINTER_BUTTON +1.47s BTN_RIGHT (273) pressed, seat count: 1
event25 - debounce state: DEBOUNCE_STATE_IS_DOWN_WAITING → DEBOUNCE_EVENT_TIMEOUT → DEBOUNCE_STATE_IS_DOWN
event25 - debounce state: DEBOUNCE_STATE_IS_DOWN → DEBOUNCE_EVENT_RELEASE → DEBOUNCE_STATE_IS_UP_DETECTING_SPURIOUS
event25 POINTER_BUTTON +1.57s BTN_RIGHT (273) released, seat count: 0
event25 - debounce state: DEBOUNCE_STATE_IS_UP_DETECTING_SPURIOUS → DEBOUNCE_EVENT_TIMEOUT_SHORT → DEBOUNCE_STATE_IS_UP_WAITING
event25 - debounce state: DEBOUNCE_STATE_IS_UP_WAITING → DEBOUNCE_EVENT_TIMEOUT → DEBOUNCE_STATE_IS_UP
event25 - debounce state: DEBOUNCE_STATE_IS_UP → DEBOUNCE_EVENT_OTHERBUTTON → DEBOUNCE_STATE_IS_UP
event25 - debounce state: DEBOUNCE_STATE_IS_UP → DEBOUNCE_EVENT_PRESS → DEBOUNCE_STATE_IS_DOWN_WAITING
event25 POINTER_BUTTON +2.54s BTN_LEFT (272) pressed, seat count: 1
event25 - debounce state: DEBOUNCE_STATE_IS_DOWN_WAITING → DEBOUNCE_EVENT_TIMEOUT → DEBOUNCE_STATE_IS_DOWN
event25 - debounce state: DEBOUNCE_STATE_IS_DOWN → DEBOUNCE_EVENT_RELEASE → DEBOUNCE_STATE_IS_UP_DETECTING_SPURIOUS
event25 POINTER_BUTTON +2.61s BTN_LEFT (272) released, seat count: 0
event25 - debounce state: DEBOUNCE_STATE_IS_UP_DETECTING_SPURIOUS → DEBOUNCE_EVENT_TIMEOUT_SHORT → DEBOUNCE_STATE_IS_UP_WAITING
event25 - debounce state: DEBOUNCE_STATE_IS_UP_WAITING → DEBOUNCE_EVENT_TIMEOUT → DEBOUNCE_STATE_IS_UP
event25 - debounce state: DEBOUNCE_STATE_IS_UP → DEBOUNCE_EVENT_OTHERBUTTON → DEBOUNCE_STATE_IS_UP
event25 - btnscroll: down
event25 - debounce state: DEBOUNCE_STATE_IS_UP → DEBOUNCE_EVENT_PRESS → DEBOUNCE_STATE_IS_DOWN_WAITING
event25 - debounce state: DEBOUNCE_STATE_IS_DOWN_WAITING → DEBOUNCE_EVENT_RELEASE → DEBOUNCE_STATE_IS_UP_DELAYING
event25 - btnscroll: cancel
event25 - debounce state: DEBOUNCE_STATE_IS_UP_DELAYING → DEBOUNCE_EVENT_TIMEOUT → DEBOUNCE_STATE_IS_UP
event25 POINTER_BUTTON +3.79s BTN_MIDDLE (274) pressed, seat count: 1
event25 POINTER_BUTTON +3.79s BTN_MIDDLE (274) released, seat count: 0
event25 POINTER_MOTION +4.43s 0.00/ -0.30 ( +0.00/ -1.00)
event25 POINTER_MOTION +4.46s -0.57/ 0.00 ( -1.00/ +0.00)
event25 POINTER_MOTION +4.47s -0.91/ -0.91 ( -1.00/ -1.00)
event25 POINTER_MOTION +4.49s -2.38/ 0.00 ( -2.00/ +0.00)
event25 POINTER_MOTION +4.50s -4.93/ 0.00 ( -3.00/ +0.00)
event25 POINTER_MOTION +4.52s -4.92/ 0.00 ( -3.00/ +0.00)
event25 POINTER_MOTION +4.53s -12.01/ 0.00 ( -4.00/ +0.00)
event25 POINTER_MOTION +4.54s -28.19/ 0.00 ( -8.00/ +0.00)
event25 POINTER_MOTION +4.56s -48.54/ 8.83 (-11.00/ +2.00)
event25 POINTER_MOTION +4.58s -63.90/ 14.75 (-13.00/ +3.00)
event25 POINTER_MOTION +4.59s -63.85/ 14.73 (-13.00/ +3.00)
event25 POINTER_MOTION +4.60s -30.94/ 0.00 ( -7.00/ +0.00)
^C
event25 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: device removed
While in tablet mode (mouse buttons pressed, trackpoint moved)
libinput debug-events --verbose
libinput debug-events --verbose
event2 - Power Button: is tagged by udev as: Keyboard
event2 - Power Button: device is a keyboard
event6 - Video Bus: is tagged by udev as: Keyboard
event6 - Video Bus: device is a keyboard
event0 - Lid Switch: is tagged by udev as: Switch
event0 - Lid Switch: device is a switch device
event1 - Sleep Button: is tagged by udev as: Keyboard
event1 - Sleep Button: device is a keyboard
event17 - Wacom Pen and multitouch sensor Finger: is tagged by udev as: Touchscreen Tablet
event17 - Wacom Pen and multitouch sensor Finger: device is a touch device
event20 - Wacom Pen and multitouch sensor Pen: is tagged by udev as: Tablet
event20 - Wacom Pen and multitouch sensor Pen: device is a tablet
event16 - C-Media Electronics Inc. ThinkPad OneLink Plus Dock Audio: is tagged by udev as: Keyboard
event16 - C-Media Electronics Inc. ThinkPad OneLink Plus Dock Audio: device is a keyboard
event19 - A4 tech USB2.0 Camera: A4 tech : is tagged by udev as: Keyboard
event19 - A4 tech USB2.0 Camera: A4 tech : device is a keyboard
event22 - Audioengine Audioengine 2+ : is tagged by udev as: Keyboard
event22 - Audioengine Audioengine 2+ : device is a keyboard
event24 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: is tagged by udev as: Keyboard
event24 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: device is a keyboard
event25 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: is tagged by udev as: Keyboard Mouse Pointingstick
event25 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: device is a pointer
event25 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: device is a keyboard
event23 - Logitech Performance MX: is tagged by udev as: Mouse
event23 - Logitech Performance MX: device set to 1000 DPI
event23 - Logitech Performance MX: device is a pointer
event21 - Logitech K800: is tagged by udev as: Keyboard
event21 - Logitech K800: device is a keyboard
event18 - Integrated Camera: Integrated C: is tagged by udev as: Keyboard
event18 - Integrated Camera: Integrated C: device is a keyboard
event9 - HDA Intel PCH Mic: is tagged by udev as: Switch
event10 - HDA Intel PCH Headphone: is tagged by udev as: Switch
event11 - HDA Intel PCH HDMI/DP,pcm=3: is tagged by udev as: Switch
event12 - HDA Intel PCH HDMI/DP,pcm=7: is tagged by udev as: Switch
event13 - HDA Intel PCH HDMI/DP,pcm=8: is tagged by udev as: Switch
event14 - HDA Intel PCH HDMI/DP,pcm=9: is tagged by udev as: Switch
event15 - HDA Intel PCH HDMI/DP,pcm=10: is tagged by udev as: Switch
event3 - AT Translated Set 2 keyboard: is tagged by udev as: Keyboard
event3 - AT Translated Set 2 keyboard: device is a keyboard
event0 - lid: keyboard paired with Lid Switch<->AT Translated Set 2 keyboard
event7 - tagged as ModelSynapticsSerialTouchpad
event7 - SynPS/2 Synaptics TouchPad: is tagged by udev as: Touchpad
event7 - using pressure-based touch detection (25:30)
event7 - palm: pressure threshold is 130
event7 - thumb: enabled thumb detection (+pressure)
event7 - SynPS/2 Synaptics TouchPad: device is a touchpad
event7 - lid_switch: activated for SynPS/2 Synaptics TouchPad<->Lid Switch
event7 - palm: dwt activated with SynPS/2 Synaptics TouchPad<->AT Translated Set 2 keyboard
event8 - TPPS/2 IBM TrackPoint: is tagged by udev as: Mouse Pointingstick
event8 - TPPS/2 IBM TrackPoint: trackpoint multiplier is 0.50
event8 - TPPS/2 IBM TrackPoint: device is a pointer
event4 - PC Speaker: not tagged as supported input device
event4 - not using input device '/dev/input/event4'
event5 - ThinkPad Extra Buttons: is tagged by udev as: Keyboard Switch
event5 - ThinkPad Extra Buttons: device is a keyboard
event5 - ThinkPad Extra Buttons: device is a switch device
event25 - tablet_mode_switch: paired Lenovo ThinkPad Compact USB Keyboard with TrackPoint<->ThinkPad Extra Buttons
event25 - tablet-mode: suspending device
event3 - tablet_mode_switch: paired AT Translated Set 2 keyboard<->ThinkPad Extra Buttons
event3 - tablet-mode: suspending device
event7 - tablet_mode_switch: activated for SynPS/2 Synaptics TouchPad<->ThinkPad Extra Buttons
event8 - tablet_mode_switch: paired TPPS/2 IBM TrackPoint<->ThinkPad Extra Buttons
event8 - tablet-mode: suspending device
event8 - tablet-mode: suspending device
event7 - tablet-mode: suspending touchpad
event3 - tablet-mode: suspending device
event25 - tablet-mode: suspending device
-event2 DEVICE_ADDED Power Button seat0 default group1 cap:k
-event6 DEVICE_ADDED Video Bus seat0 default group2 cap:k
-event0 DEVICE_ADDED Lid Switch seat0 default group3 cap:S
-event1 DEVICE_ADDED Sleep Button seat0 default group4 cap:k
-event17 DEVICE_ADDED Wacom Pen and multitouch sensor Finger seat0 default group5 cap:t size 309x174mm ntouches 10 calib
-event20 DEVICE_ADDED Wacom Pen and multitouch sensor Pen seat0 default group5 cap:T size 309x174mm calib
-event16 DEVICE_ADDED C-Media Electronics Inc. ThinkPad OneLink Plus Dock Audio seat0 default group6 cap:k
-event19 DEVICE_ADDED A4 tech USB2.0 Camera: A4 tech seat0 default group7 cap:k
-event22 DEVICE_ADDED Audioengine Audioengine 2+ seat0 default group8 cap:k
-event24 DEVICE_ADDED Lenovo ThinkPad Compact USB Keyboard with TrackPoint seat0 default group9 cap:k
-event25 DEVICE_ADDED Lenovo ThinkPad Compact USB Keyboard with TrackPoint seat0 default group9 cap:kp left scroll-nat scroll-button
-event23 DEVICE_ADDED Logitech Performance MX seat0 default group10 cap:p left scroll-nat scroll-button
-event21 DEVICE_ADDED Logitech K800 seat0 default group11 cap:kp scroll-nat
-event18 DEVICE_ADDED Integrated Camera: Integrated C seat0 default group12 cap:k
-event9 DEVICE_ADDED HDA Intel PCH Mic seat0 default group13 cap:
-event10 DEVICE_ADDED HDA Intel PCH Headphone seat0 default group13 cap:
-event11 DEVICE_ADDED HDA Intel PCH HDMI/DP,pcm=3 seat0 default group13 cap:
-event12 DEVICE_ADDED HDA Intel PCH HDMI/DP,pcm=7 seat0 default group13 cap:
-event13 DEVICE_ADDED HDA Intel PCH HDMI/DP,pcm=8 seat0 default group13 cap:
-event14 DEVICE_ADDED HDA Intel PCH HDMI/DP,pcm=9 seat0 default group13 cap:
-event15 DEVICE_ADDED HDA Intel PCH HDMI/DP,pcm=10 seat0 default group13 cap:
-event3 DEVICE_ADDED AT Translated Set 2 keyboard seat0 default group14 cap:k
-event7 DEVICE_ADDED SynPS/2 Synaptics TouchPad seat0 default group15 cap:pg size 100x57mm tap(dl off) left scroll-nat scroll-2fg-edge click-buttonareas-clickfinger dwt-on
-event8 DEVICE_ADDED TPPS/2 IBM TrackPoint seat0 default group16 cap:p left scroll-nat scroll-button
-event5 DEVICE_ADDED ThinkPad Extra Buttons seat0 default group17 cap:kS
event5 SWITCH_TOGGLE +0.17s switch tablet-mode state 1
-event21 KEYBOARD_KEY +5.31s *** (-1) pressed
event21 KEYBOARD_KEY +5.37s *** (-1) pressed
^C
event2 - Power Button: device removed
event6 - Video Bus: device removed
event0 - Lid Switch: device removed
event1 - Sleep Button: device removed
event17 - Wacom Pen and multitouch sensor Finger: device removed
event20 - Wacom Pen and multitouch sensor Pen: device removed
event16 - C-Media Electronics Inc. ThinkPad OneLink Plus Dock Audio: device removed
event19 - A4 tech USB2.0 Camera: A4 tech : device removed
event22 - Audioengine Audioengine 2+ : device removed
event24 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: device removed
event25 - Lenovo ThinkPad Compact USB Keyboard with TrackPoint: device removed
event23 - Logitech Performance MX: device removed
event21 - Logitech K800: device removed
event18 - Integrated Camera: Integrated C: device removed
event9 - HDA Intel PCH Mic: device removed
event10 - HDA Intel PCH Headphone: device removed
event11 - HDA Intel PCH HDMI/DP,pcm=3: device removed
event12 - HDA Intel PCH HDMI/DP,pcm=7: device removed
event13 - HDA Intel PCH HDMI/DP,pcm=8: device removed
event14 - HDA Intel PCH HDMI/DP,pcm=9: device removed
event15 - HDA Intel PCH HDMI/DP,pcm=10: device removed
event3 - AT Translated Set 2 keyboard: device removed
event7 - SynPS/2 Synaptics TouchPad: device removed
event8 - TPPS/2 IBM TrackPoint: device removed
event5 - ThinkPad Extra Buttons: device removed
While in tablet mode (mouse buttons pressed, trackpoint moved)
libinput record /dev/input/event25
libinput record /dev/input/event25
Recording to 'stdout'.
version: 1
ndevices: 1
libinput:
version: "1.13.1"
git: "unknown"
system:
kernel: "5.0.9-arch1-1-ARCH"
dmi: "dmi:bvnLENOVO:bvrN1FET62W(1.36):bd03/26/2018:svnLENOVO:pn20FQ0044RT:pvrThinkPadX1Carbon4th:rvnLENOVO:rn20FQ0044RT:rvrSDK0J40697WIN:cvnLENOVO:ct31:cvrNone:"
devices:
- node: /dev/input/event25
evdev:
# Name: Lenovo ThinkPad Compact USB Keyboard with TrackPoint
# ID: bus 0x3 vendor 0x17ef product 0x6047 version 0x100
# Supported Events:
# Event type 0 (EV_SYN)
# Event type 1 (EV_KEY)
# Event code 1 (KEY_ESC)
# Event code 28 (KEY_ENTER)
# Event code 74 (KEY_KPMINUS)
# Event code 78 (KEY_KPPLUS)
# Event code 103 (KEY_UP)
# Event code 105 (KEY_LEFT)
# Event code 106 (KEY_RIGHT)
# Event code 108 (KEY_DOWN)
# Event code 113 (KEY_MUTE)
# Event code 114 (KEY_VOLUMEDOWN)
# Event code 115 (KEY_VOLUMEUP)
# Event code 116 (KEY_POWER)
# Event code 119 (KEY_PAUSE)
# Event code 120 (KEY_SCALE)
# Event code 128 (KEY_STOP)
# Event code 130 (KEY_PROPS)
# Event code 131 (KEY_UNDO)
# Event code 133 (KEY_COPY)
# Event code 134 (KEY_OPEN)
# Event code 135 (KEY_PASTE)
# Event code 136 (KEY_FIND)
# Event code 137 (KEY_CUT)
# Event code 138 (KEY_HELP)
# Event code 139 (KEY_MENU)
# Event code 140 (KEY_CALC)
# Event code 142 (KEY_SLEEP)
# Event code 144 (KEY_FILE)
# Event code 150 (KEY_WWW)
# Event code 152 (KEY_COFFEE)
# Event code 155 (KEY_MAIL)
# Event code 156 (KEY_BOOKMARKS)
# Event code 158 (KEY_BACK)
# Event code 159 (KEY_FORWARD)
# Event code 161 (KEY_EJECTCD)
# Event code 163 (KEY_NEXTSONG)
# Event code 164 (KEY_PLAYPAUSE)
# Event code 165 (KEY_PREVIOUSSONG)
# Event code 166 (KEY_STOPCD)
# Event code 167 (KEY_RECORD)
# Event code 168 (KEY_REWIND)
# Event code 169 (KEY_PHONE)
# Event code 171 (KEY_CONFIG)
# Event code 172 (KEY_HOMEPAGE)
# Event code 173 (KEY_REFRESH)
# Event code 174 (KEY_EXIT)
# Event code 177 (KEY_SCROLLUP)
# Event code 178 (KEY_SCROLLDOWN)
# Event code 181 (KEY_NEW)
# Event code 206 (KEY_CLOSE)
# Event code 207 (KEY_PLAY)
# Event code 208 (KEY_FASTFORWARD)
# Event code 209 (KEY_BASSBOOST)
# Event code 210 (KEY_PRINT)
# Event code 212 (KEY_CAMERA)
# Event code 216 (KEY_CHAT)
# Event code 217 (KEY_SEARCH)
# Event code 219 (KEY_FINANCE)
# Event code 224 (KEY_BRIGHTNESSDOWN)
# Event code 225 (KEY_BRIGHTNESSUP)
# Event code 227 (KEY_SWITCHVIDEOMODE)
# Event code 228 (KEY_KBDILLUMTOGGLE)
# Event code 234 (KEY_SAVE)
# Event code 235 (KEY_DOCUMENTS)
# Event code 238 (KEY_WLAN)
# Event code 240 (KEY_UNKNOWN)
# Event code 241 (KEY_VIDEO_NEXT)
# Event code 244 (KEY_BRIGHTNESS_AUTO)
# Event code 248 (KEY_MICMUTE)
# Event code 256 (BTN_0)
# Event code 272 (BTN_LEFT)
# Event code 273 (BTN_RIGHT)
# Event code 274 (BTN_MIDDLE)
# Event code 275 (BTN_SIDE)
# Event code 276 (BTN_EXTRA)
# Event code 353 (KEY_SELECT)
# Event code 354 (KEY_GOTO)
# Event code 358 (KEY_INFO)
# Event code 362 (KEY_PROGRAM)
# Event code 366 (KEY_PVR)
# Event code 370 (KEY_SUBTITLE)
# Event code 372 (KEY_ZOOM)
# Event code 374 (KEY_KEYBOARD)
# Event code 376 (KEY_PC)
# Event code 377 (KEY_TV)
# Event code 378 (KEY_TV2)
# Event code 379 (KEY_VCR)
# Event code 380 (KEY_VCR2)
# Event code 381 (KEY_SAT)
# Event code 383 (KEY_CD)
# Event code 384 (KEY_TAPE)
# Event code 386 (KEY_TUNER)
# Event code 387 (KEY_PLAYER)
# Event code 389 (KEY_DVD)
# Event code 392 (KEY_AUDIO)
# Event code 393 (KEY_VIDEO)
# Event code 396 (KEY_MEMO)
# Event code 397 (KEY_CALENDAR)
# Event code 398 (KEY_RED)
# Event code 399 (KEY_GREEN)
# Event code 400 (KEY_YELLOW)
# Event code 401 (KEY_BLUE)
# Event code 402 (KEY_CHANNELUP)
# Event code 403 (KEY_CHANNELDOWN)
# Event code 405 (KEY_LAST)
# Event code 407 (KEY_NEXT)
# Event code 408 (KEY_RESTART)
# Event code 409 (KEY_SLOW)
# Event code 410 (KEY_SHUFFLE)
# Event code 412 (KEY_PREVIOUS)
# Event code 416 (KEY_VIDEOPHONE)
# Event code 417 (KEY_GAMES)
# Event code 418 (KEY_ZOOMIN)
# Event code 419 (KEY_ZOOMOUT)
# Event code 420 (KEY_ZOOMRESET)
# Event code 421 (KEY_WORDPROCESSOR)
# Event code 422 (KEY_EDITOR)
# Event code 423 (KEY_SPREADSHEET)
# Event code 424 (KEY_GRAPHICSEDITOR)
# Event code 425 (KEY_PRESENTATION)
# Event code 426 (KEY_DATABASE)
# Event code 427 (KEY_NEWS)
# Event code 428 (KEY_VOICEMAIL)
# Event code 429 (KEY_ADDRESSBOOK)
# Event code 430 (KEY_MESSENGER)
# Event code 431 (KEY_DISPLAYTOGGLE)
# Event code 432 (KEY_SPELLCHECK)
# Event code 433 (KEY_LOGOFF)
# Event code 439 (KEY_MEDIA_REPEAT)
# Event code 442 (KEY_IMAGES)
# Event code 465 (KEY_FN_ESC)
# Event code 576 (KEY_BUTTONCONFIG)
# Event code 577 (KEY_TASKMANAGER)
# Event code 578 (KEY_JOURNAL)
# Event code 579 (KEY_CONTROLPANEL)
# Event code 580 (KEY_APPSELECT)
# Event code 581 (KEY_SCREENSAVER)
# Event code 582 (KEY_VOICECOMMAND)
# Event code 592 (KEY_BRIGHTNESS_MIN)
# Event code 593 (KEY_BRIGHTNESS_MAX)
# Event type 2 (EV_REL)
# Event code 0 (REL_X)
# Event code 1 (REL_Y)
# Event code 6 (REL_HWHEEL)
# Event code 8 (REL_WHEEL)
# Event type 3 (EV_ABS)
# Event code 32 (ABS_VOLUME)
# Value 0
# Min 0
# Max 572
# Fuzz 0
# Flat 0
# Resolution 0
# Event code 40 (ABS_MISC)
# Value 0
# Min 0
# Max 255
# Fuzz 0
# Flat 0
# Resolution 0
# Event type 4 (EV_MSC)
# Event code 4 (MSC_SCAN)
# Properties:
# Property 0 (INPUT_PROP_POINTER)
# Property 5 (INPUT_PROP_POINTING_STICK)
name: "Lenovo ThinkPad Compact USB Keyboard with TrackPoint"
id: [3, 6127, 24647, 256]
codes:
0: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15] # EV_SYN
1: [1, 28, 74, 78, 103, 105, 106, 108, 113, 114, 115, 116, 119, 120, 128, 130, 131, 133, 134, 135, 136, 137, 138, 139, 140, 142, 144, 150, 152, 155, 156, 158, 159, 161, 163, 164, 165, 166, 167, 168, 169, 171, 172, 173, 174, 177, 178, 181, 206, 207, 208, 209, 210, 212, 216, 217, 219, 224, 225, 227, 228, 234, 235, 238, 240, 241, 244, 248, 256, 272, 273, 274, 275, 276, 353, 354, 358, 362, 366, 370, 372, 374, 376, 377, 378, 379, 380, 381, 383, 384, 386, 387, 389, 392, 393, 396, 397, 398, 399, 400, 401, 402, 403, 405, 407, 408, 409, 410, 412, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 439, 442, 465, 576, 577, 578, 579, 580, 581, 582, 592, 593] # EV_KEY
2: [0, 1, 6, 8] # EV_REL
3: [32, 40] # EV_ABS
4: [4] # EV_MSC
absinfo:
32: [0, 572, 0, 0, 0]
40: [0, 255, 0, 0, 0]
properties: [0, 5]
hid: [5, 1, 9, 2, 161, 1, 133, 1, 5, 9, 25, 1, 41, 5, 21, 0, 37, 1, 117, 1, 149, 5, 129, 2, 117, 3, 149, 1, 129, 1, 5, 1, 9, 1, 161, 0, 9, 48, 9, 49, 21, 129, 37, 127, 117, 8, 149, 2, 129, 6, 192, 9, 56, 149, 1, 129, 6, 5, 12, 10, 56, 2, 129, 6, 192, 5, 12, 9, 1, 161, 1, 133, 16, 21, 0, 38, 60, 2, 25, 0, 42, 60, 2, 117, 16, 149, 1, 129, 0, 192, 6, 163, 255, 9, 1, 161, 1, 133, 17, 25, 0, 42, 255, 0, 21, 0, 38, 255, 0, 117, 8, 149, 2, 129, 2, 192, 6, 160, 255, 9, 1, 161, 1, 133, 21, 26, 241, 0, 42, 252, 0, 21, 0, 37, 1, 117, 1, 149, 13, 129, 2, 149, 3, 129, 1, 192, 6, 161, 255, 9, 1, 161, 1, 133, 22, 25, 0, 42, 255, 0, 21, 0, 38, 255, 0, 117, 8, 149, 2, 129, 2, 192, 6, 0, 255, 9, 1, 161, 1, 133, 19, 9, 1, 21, 0, 38, 255, 0, 117, 8, 149, 8, 129, 2, 9, 2, 117, 8, 149, 8, 145, 2, 9, 3, 117, 8, 149, 8, 177, 2, 192 ]
udev:
properties:
- ID_INPUT=1
- ID_INPUT_KEY=1
- ID_INPUT_MOUSE=1
- ID_INPUT_POINTINGSTICK=1
- LIBINPUT_DEVICE_GROUP=3/17ef/6047:usb-0000:00:14.0-4
quirks:
events:
- evdev:
- [ 0, 0, 2, 0, -1] # EV_REL / REL_X -1
- [ 0, 0, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +0ms
- evdev:
- [ 0, 31564, 2, 1, -1] # EV_REL / REL_Y -1
- [ 0, 31564, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +31ms
- evdev:
- [ 0, 63541, 2, 0, -1] # EV_REL / REL_X -1
- [ 0, 63541, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +32ms
- evdev:
- [ 0, 103866, 2, 0, -1] # EV_REL / REL_X -1
- [ 0, 103866, 2, 1, -1] # EV_REL / REL_Y -1
- [ 0, 103866, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +40ms
- evdev:
- [ 0, 135568, 2, 0, -1] # EV_REL / REL_X -1
- [ 0, 135568, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +32ms
- evdev:
- [ 0, 143527, 2, 1, -1] # EV_REL / REL_Y -1
- [ 0, 143527, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +8ms
- evdev:
- [ 0, 159541, 2, 0, -1] # EV_REL / REL_X -1
- [ 0, 159541, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +16ms
- evdev:
- [ 0, 175575, 2, 1, -1] # EV_REL / REL_Y -1
- [ 0, 175575, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +16ms
- evdev:
- [ 0, 207576, 2, 0, -1] # EV_REL / REL_X -1
- [ 0, 207576, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +32ms
- evdev:
- [ 1, 448002, 4, 4, 30] # EV_MSC / MSC_SCAN 30 (obfuscated)
- [ 1, 448002, 1, 272, 1] # EV_KEY / BTN_LEFT 1
- [ 1, 448002, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +1241ms
- evdev:
- [ 1, 552010, 4, 4, 30] # EV_MSC / MSC_SCAN 30 (obfuscated)
- [ 1, 552010, 1, 272, 0] # EV_KEY / BTN_LEFT 0
- [ 1, 552010, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +104ms
- evdev:
- [ 1, 855909, 4, 4, 30] # EV_MSC / MSC_SCAN 30 (obfuscated)
- [ 1, 855909, 1, 273, 1] # EV_KEY / BTN_RIGHT 1
- [ 1, 855909, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +303ms
- evdev:
- [ 1, 968043, 4, 4, 30] # EV_MSC / MSC_SCAN 30 (obfuscated)
- [ 1, 968043, 1, 273, 0] # EV_KEY / BTN_RIGHT 0
- [ 1, 968043, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +113ms
- evdev:
- [ 2, 960025, 1, 274, 1] # EV_KEY / BTN_MIDDLE 1
- [ 2, 960025, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +992ms
- evdev:
- [ 2, 960075, 1, 274, 0] # EV_KEY / BTN_MIDDLE 0
- [ 2, 960075, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +0ms
Output of libinput quirks list /dev/input/event25
is empty. Same for libinput quirks list /dev/input/event24
. If I add
[Lenovo ThinkPad Compact USB Keyboard with TrackPoint USB]
MatchBus=usb
MatchVendor=0x17EF
MatchProduct=0x6047
AttrKeyboardIntegration=external
to /etc/libinput/local-overrides.quirks, command starts to print
AttrKeyboardIntegration=external
for both devices. But keyboard works and mouse doesn't with or without this override =/