我在 Thinkpad X260 上运行 Ubuntu 20.04(内核是5.4.0-99-lowlatency
,但通用内核的问题相同)。触控板设备是“Synaptics TM3075-002”。
基本上,对于小而精确的移动,触控板会抖动,有时甚至无法记录移动。
我已经尝试了这两个包libinput 1.19.901
以及最新的xserver-xorg-input-synaptics
包。
当我用手指在触控板上缓慢移动时,光标会移动libinput
:
当我用手指在触控板上缓慢移动时,光标会移动synaptics
:
情况好转了,synaptics
但仍然有些紧张。
这些是具有以下属性libinput
:
Device 'Synaptics TM3075-002':
Device Enabled (168): 1
Coordinate Transformation Matrix (170): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Tapping Enabled (304): 1
libinput Tapping Enabled Default (305): 0
libinput Tapping Drag Enabled (306): 1
libinput Tapping Drag Enabled Default (307): 1
libinput Tapping Drag Lock Enabled (308): 0
libinput Tapping Drag Lock Enabled Default (309): 0
libinput Tapping Button Mapping Enabled (310): 1, 0
libinput Tapping Button Mapping Default (311): 1, 0
libinput Natural Scrolling Enabled (312): 0
libinput Natural Scrolling Enabled Default (313): 0
libinput Disable While Typing Enabled (314): 0
libinput Disable While Typing Enabled Default (315): 1
libinput Scroll Methods Available (316): 1, 1, 0
libinput Scroll Method Enabled (317): 1, 0, 0
libinput Scroll Method Enabled Default (318): 1, 0, 0
libinput Click Methods Available (319): 1, 1
libinput Click Method Enabled (320): 0, 1
libinput Click Method Enabled Default (321): 1, 0
libinput Middle Emulation Enabled (322): 0
libinput Middle Emulation Enabled Default (323): 0
libinput Accel Speed (324): 0.500000
libinput Accel Speed Default (325): 0.000000
libinput Left Handed Enabled (326): 0
libinput Left Handed Enabled Default (327): 0
libinput Send Events Modes Available (289): 1, 1
libinput Send Events Mode Enabled (290): 0, 0
libinput Send Events Mode Enabled Default (291): 0, 0
Device Node (292): "/dev/input/event15"
Device Product ID (293): 1739, 0
libinput Drag Lock Buttons (328): <no items>
libinput Horizontal Scroll Enabled (329): 1
与synaptics
:
Device 'Synaptics TM3075-002':
Device Enabled (168): 1
Coordinate Transformation Matrix (170): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (301): 1
Device Accel Constant Deceleration (302): 2.500000
Device Accel Adaptive Deceleration (303): 1.000000
Device Accel Velocity Scaling (304): 12.500000
Synaptics Edges (305): 67, 1613, 54, 948
Synaptics Finger (306): 25, 30, 0
Synaptics Tap Time (307): 180
Synaptics Tap Move (308): 86
Synaptics Tap Durations (309): 180, 180, 100
Synaptics ClickPad (310): 1
Synaptics Middle Button Timeout (311): 0
Synaptics Two-Finger Pressure (312): 282
Synaptics Two-Finger Width (313): 7
Synaptics Scrolling Distance (314): 39, 39
Synaptics Edge Scrolling (315): 1, 0, 0
Synaptics Two-Finger Scrolling (316): 1, 0
Synaptics Move Speed (317): 1.000000, 1.750000, 0.102249, 0.000000
Synaptics Off (318): 0
Synaptics Locked Drags (319): 0
Synaptics Locked Drags Timeout (320): 5000
Synaptics Tap Action (321): 2, 3, 0, 0, 1, 3, 0
Synaptics Click Action (322): 1, 3, 0
Synaptics Circular Scrolling (323): 0
Synaptics Circular Scrolling Distance (324): 0.100000
Synaptics Circular Scrolling Trigger (325): 0
Synaptics Circular Pad (326): 0
Synaptics Palm Detection (327): 0
Synaptics Palm Dimensions (328): 10, 200
Synaptics Coasting Speed (329): 20.000000, 50.000000
Synaptics Pressure Motion (330): 30, 160
Synaptics Pressure Motion Factor (331): 1.000000, 1.000000
Synaptics Resolution Detect (332): 1
Synaptics Grab Event Device (333): 0
Synaptics Gestures (334): 1
Synaptics Capabilities (335): 1, 0, 0, 1, 1, 1, 0
Synaptics Pad Resolution (336): 20, 20
Synaptics Area (337): 0, 0, 0, 0
Synaptics Soft Button Areas (338): 840, 0, 821, 0, 0, 0, 0, 0
Synaptics Noise Cancellation (339): 0, 0
Device Product ID (293): 1739, 0
Device Node (292): "/dev/input/event15"
我不确定我还能做什么。其他属性似乎对此没有影响(我禁用了噪音消除功能,synaptics
但不确定这有多大帮助)。我是否应该尝试其他驱动程序?
答案1
经过大量的搜索和尝试,我最终找到了一个不错的解决方案对上一个问题的回答。
基本上我最终改变了以下属性:
DEVICE=11
xinput --set-prop "$DEVICE" "Synaptics Noise Cancellation" 0 0
xinput --set-prop "$DEVICE" "Device Accel Profile" 6
xinput --set-prop "$DEVICE" "Device Accel Velocity Scaling" 50
xinput --set-prop "$DEVICE" "Device Accel Constant Deceleration" 12
关键是将 改为Device Accel Profile
,6
根据链接的答案,这是线性加速度曲线。这需要一些时间来适应,但现在小动作不再那么跳跃了:
libinput
也有“平坦”的加速度曲线这可能相当于synaptics
线性轮廓,但我还没有机会尝试。