Saya mendapat sakelar KVM dari atasan saya (Aten CS782DP) yang berfungsi dengan baik sejauh yang saya tahu. Namun, tampaknya menyebabkan masalah dengan perangkat input saya (Thinkpad USB Compact Keyboard dengan TrackPoint) di Ubuntu 16.04 dan 16.10. Saya tidak dapat mengklik tengah lagi dan saya juga tidak dapat menggulir secara vertikal (secara horizontal berfungsi dengan baik).
Secara khusus, ini adalah bagaimana xinput
output terlihat ketika keyboard terpasang secara langsung:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=14 [slave pointer (2)]
⎜ ↳ Lenovo ThinkPad Compact USB Keyboard with TrackPoint id=10 [slave pointer (2)]
⎜ ↳ ATEN KVM V1.1.104 id=17 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=13 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ Integrated Camera id=11 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
↳ ThinkPad Extra Buttons id=15 [slave keyboard (3)]
↳ Lenovo ThinkPad Compact USB Keyboard with TrackPoint id=9 [slave keyboard (3)]
↳ ATEN KVM V1.1.104 id=16 [slave keyboard (3)]
Ini adalah bagaimana xinput
output terlihat ketika dilampirkan melalui KVM:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ TPPS/2 IBM TrackPoint id=14 [slave pointer (2)]
⎜ ↳ Lenovo ThinkPad Compact USB Keyboard with TrackPoint id=9 [slave pointer (2)]
⎜ ↳ Lenovo ThinkPad Compact USB Keyboard with TrackPoint id=16 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=13 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Sleep Button id=8 [slave keyboard (3)]
↳ Integrated Camera id=11 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
↳ ThinkPad Extra Buttons id=15 [slave keyboard (3)]
↳ Lenovo ThinkPad Compact USB Keyboard with TrackPoint id=10 [slave keyboard (3)]
Sejauh yang saya bisa lihat, ini juga terlihat bagus kecuali untuk duplikasi aneh dari perangkat pointer (ID 9 dan 16). Saya akan menganggap ini ada hubungannya dengan KVM yang sedikit seperti hub USB dan mengabaikan duplikasi ini untuk saat ini.
Saya sudah mencoba menjalankan xinput test
untuk kedua perangkat dan menemukan bahwa perangkat pertama menerima gerakan dan klik kiri dan kanan (tombol mouse 1 dan 3), sedangkan perangkat kedua hanya bergulir horizontal (tombol 6 dan 7). Baik menerima tombol tengah (tombol 2) atau pengguliran vertikal (tombol 4 dan 5).
Output xinput list-props
terlihat identik untuk kedua perangkat:
Device 'Lenovo ThinkPad Compact USB Keyboard with TrackPoint':
Device Enabled (152): 1
Coordinate Transformation Matrix (154): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (284): 0
Device Accel Constant Deceleration (285): 1.000000
Device Accel Adaptive Deceleration (286): 1.000000
Device Accel Velocity Scaling (287): 10.000000
Device Product ID (272): 6127, 24647
Device Node (273): "/dev/input/event17"
Evdev Axis Inversion (288): 0, 0
Evdev Axes Swap (290): 0
Axis Labels (291): "Rel X" (162), "Rel Y" (163), "Rel Horiz Wheel" (282), "Rel Vert Wheel" (283)
Button Labels (292): "Button Left" (155), "Button Middle" (156), "Button Right" (157), "Button Wheel Up" (158), "Button Wheel Down" (159), "Button Horiz Wheel Left" (160), "Button Horiz Wheel Right" (161), "Button Side" (280), "Button Extra" (281), "Button Unknown" (275), "Button Unknown" (275), "Button Unknown" (275), "Button Unknown" (275)
Evdev Scrolling Distance (293): 1, 1, 1
Evdev Middle Button Emulation (294): 1
Evdev Middle Button Timeout (295): 50
Evdev Third Button Emulation (296): 0
Evdev Third Button Emulation Timeout (297): 1000
Evdev Third Button Emulation Button (298): 3
Evdev Third Button Emulation Threshold (299): 20
Evdev Wheel Emulation (300): 1
Evdev Wheel Emulation Axes (301): 6, 7, 4, 5
Evdev Wheel Emulation Inertia (302): 10
Evdev Wheel Emulation Timeout (303): 200
Evdev Wheel Emulation Button (304): 2
Evdev Drag Lock Buttons (305): 0
Konfigurasi TrackPoint default di Ubuntu ( /usr/share/X11/xorg.conf.d/11-evdev-trackpoint.conf
) terlihat seperti ini:
Section "InputClass"
Identifier "trackpoint catchall"
MatchIsPointer "true"
MatchProduct "TrackPoint|DualPoint Stick"
MatchDevicePath "/dev/input/event*"
Option "Emulate3Buttons" "true"
Option "EmulateWheel" "true"
Option "EmulateWheelButton" "2"
Option "XAxisMapping" "6 7"
Option "YAxisMapping" "4 5"
EndSection
Jadi menurut aturan ini, kedua perangkat harus mendapatkan konfigurasi yang identik, yaitu untuk menerima gerakan, ketiga tombol dan juga kedua jenis gulir. Namun ini bukan masalahnya, seperti digambarkan di atas. Keyboard yang terpasang langsung berfungsi dengan sempurna.
Jadi apa yang saya lewatkan, apa yang harus saya lakukan untuk membuat keyboard eksternal saya berfungsi dengan baik melalui sakelar KVM ini?
sumber
Jawaban:
Percaya atau tidak, saya sudah memecahkan yang ini. Solusinya tidak spesifik untuk Aten KVM atau keyboard Thinkpad Compact dan mungkin membantu secara umum "keyboard saya tidak berfungsi dengan sakelar KVM dengan benar".
Jadi idenya adalah ini: driver kernel sedang mencoba untuk menginisialisasi perangkat tertentu (misalnya keyboard). Namun, sakelar KVM biasanya menyediakan pintasan praktis untuk beralih dan fitur lainnya. Dalam kasus Aten ada jalan pintas untuk klik dua kali pada roda gulir. Switch itu sendiri perlu memfilter komando USB untuk membuatnya bekerja yang jelas menunjukkan kemampuan kernel untuk mengatur bit konfigurasi tertentu pada perangkat. Dalam kasus saya, gagal mengkonfigurasi fungsi gulir.
Solutonnya sederhana: nonaktifkan mode yang bertentangan. Untuk Aten, ini disebut "mode emulasi mouse". Setelah dinonaktifkan itu, semuanya mulai berfungsi dengan baik.
sumber