有关我的问题的一些信息
我刚刚在笔记本电脑上安装了 17.10。安装过程很顺利,另外我还运行了一个实时 USB,以测试一切是否正常。我自己注意到的一件事是,在移动鼠标时,鼠标感觉像是在向各个方向迈步 - 导致移动滞后。
如果您有网格,那么鼠标在移动时会感觉自己附着在网格中的每个十字上。这种效果在对角线方向上最为明显,但也可以在其他位置注意到。进行较小的移动很困难,因为鼠标会碰撞。
我尝试更改系统库存设置菜单中的可用设置,但似乎没有任何效果。我也尝试搜索类似的问题,但我不确定它们是否准确描述了我的问题。例如,让我们看看:鼠标动作不流畅
我的参数:
xinput --list-props "SynPS/2 Synaptics TouchPad" gives:
`simen@Yoga-ubuntu:~$ xinput --list-props "SynPS/2 Synaptics TouchPad"
Device 'SynPS/2 Synaptics TouchPad':
Device Enabled (171): 1
Coordinate Transformation Matrix (173): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Tapping Enabled (311): 1
libinput Tapping Enabled Default (312): 0
libinput Tapping Drag Enabled (313): 1
libinput Tapping Drag Enabled Default (314): 1
libinput Tapping Drag Lock Enabled (315): 0
libinput Tapping Drag Lock Enabled Default (316): 0
libinput Tapping Button Mapping Enabled (317): 1, 0
libinput Tapping Button Mapping Default (318): 1, 0
libinput Accel Speed (319): -0.244604
libinput Accel Speed Default (320): 0.000000
libinput Natural Scrolling Enabled (321): 1
libinput Natural Scrolling Enabled Default (322): 0
libinput Send Events Modes Available (292): 1, 1
libinput Send Events Mode Enabled (293): 0, 0
libinput Send Events Mode Enabled Default (294): 0, 0
libinput Left Handed Enabled (323): 0
libinput Left Handed Enabled Default (324): 0
libinput Scroll Methods Available (325): 1, 1, 0
libinput Scroll Method Enabled (326): 1, 0, 0
libinput Scroll Method Enabled Default (327): 1, 0, 0
libinput Click Methods Available (328): 1, 1
libinput Click Method Enabled (329): 1, 0
libinput Click Method Enabled Default (330): 1, 0
libinput Middle Emulation Enabled (331): 0
libinput Middle Emulation Enabled Default (332): 0
libinput Disable While Typing Enabled (333): 1
libinput Disable While Typing Enabled Default (334): 1
Device Node (295): "/dev/input/event6"
Device Product ID (296): 2, 7
libinput Drag Lock Buttons (335): <no items>
libinput Horizontal Scroll Enabled (336): 1
我尝试在这里改变一些值,但仍然无法消除触控板的“网格移动”。
将外接鼠标连接到笔记本电脑似乎可以解决这个问题,但我对触控板的性能仍然不满意。使用触控板移动指针并不顺利。
如果还有其他有用的信息,请告诉我,我会提供。这是一个烦人的问题,因为我不能一直使用外接鼠标。
答案1
我的联想 X240 也遇到过类似的问题,根据系统名称“Yoga”判断,可能适用非常类似的解决方案。我似乎能够将影响降至可接受的水平,尽管它们似乎并没有完全消失。
由于它同时出现在 Wayland 和 Xorg 上,并且 Elder Geek 的修复没有帮助,因此我进行了更深入的挖掘。
基于:https://unix.stackexchange.com/questions/199044/diagonal-touchpad-movement-results-in-wobbly-line反过来:https://bugzilla.redhat.com/show_bug.cgi?id=1264453- 评论 10 和 13。
在您最喜欢的文本编辑器中打开/lib/udev/hwdb.d/90-libinput-model-quirks.hwdb
并检查 LENOVO 部分,因为它也包含可能解决方案的提示。
这是我做的:
1)使用 evemu-describe 识别硬件 DMI 和输入位置 [包的一部分evemu-tools
;[ sudo apt install evemu-tools
]
~$ sudo evemu-describe
Available devices:
/dev/input/event0: Lid Switch
...
/dev/input/event4: Video Bus
/dev/input/event5: SynPS/2 Synaptics TouchPad
/dev/input/event6: TPPS/2 IBM TrackPoint
...
/dev/input/event20: HDA Intel HDMI HDMI/DP,pcm=10
Select the device event number [0-20]:
因此,在我的例子中,触摸板注册在 /dev/input/event5 [5] 上。在输出的开头找到 DMI 行,并将其保存以供日后使用:
# DMI: dmi:bvnLENOVO:bvrGIET90WW(2.40):bd09/14/2017:svnLENOVO:pn20AMS2QD0C:pvrThinkPadX240:rvnLENOVO:rn20AMS2QD0C:rvr0B98401PRO:cvnLENOVO:ct10:cvrNotAvailable:
# Input device name: "SynPS/2 Synaptics TouchPad"
2)进一步猜测,你的触摸板的行为与 t450 类似,我们现在将在 /etc/hwdb/ 中为我们的 hwdb 添加一个新文件,使用sudo nano /etc/hwdb/90-lenovo-touchpad-quirk.hwdb
在文件中放入类似这样的内容。修改 DMI 匹配,我将其粘贴在那里以供将来参考:
#Lenovo touchpad smoothing fix/workaround.
#evemu-describe DMI output for the touchpad:
# DMI: dmi:bvnLENOVO:bvrGIET90WW(2.40):bd09/14/2017:svnLENOVO:pn20AMS2QD0C:pvrThinkPadX240:rvnLENOVO:rn20AMS2QD0C:rvr0B98401PRO:cvnLENOVO:ct10:cvrNotAvailable:
#Modify the following line, namely the pvrThinkPadX240 bit, to match your DMI output.
libinput:name:SynPS/2 Synaptics TouchPad:dmi:*svnLENOVO:*:pvrThinkPadX240*
LIBINPUT_MODEL_LENOVO_T450_TOUCHPAD=1
保存文件(在 Nano 中按 ctrl-X 退出,按 Y 确认保存,VI 有 !wq)
3)现在重建硬件数据库:
sudo udevadm hwdb --update
4)测试您的新参数是否实际加载(记住第一步的输入数字):
~$ sudo udevadm test /sys/class/input/event5
calling: test
version 234
...
ID_INPUT_TOUCHPAD_INTEGRATION=internal
ID_INPUT_WIDTH_MM=109
LIBINPUT_DEVICE_GROUP=11/2/7/1b1:isa0060/serio1
LIBINPUT_MODEL_LENOVO_T450_TOUCHPAD=1
LIBINPUT_MODEL_SYNAPTICS_SERIAL_TOUCHPAD=1
...
它就在那里!5) 重新启动系统并祈祷好运……
我希望这能让你加入黑暗Linux 的一方!
就我而言,LIBINPUT_MODEL_LENOVO_X230=1
效果确实更好,因此您可以在一定程度上试用 Synaptics 触摸板的可用修复程序。
答案2
触摸板移动的网格状图案是由 libinput 的旧矩形滞后算法引起的。该问题已在 libinput 版本 1.10.2(包括 Ubuntu 18.04)中通过改用椭圆形(通常是圆形)方法进行了修复:
https://lists.freedesktop.org/archives/wayland-devel/2018-March/037317.html
答案3
安装这个包。可以通过命令行sudo apt install xserver-xorg-input-synaptics
或者您最喜欢的包管理器。
请注意,此包可以在 Universe 存储库中找到,因此你必须请先启用它。
触摸板的主要配置方法是通过 Xorg 服务器配置文件。安装后xserver-xorg-input-synaptics
,默认配置文件位于 /usr/share/X11/xorg.conf.d/70-synaptics.conf。您可以将此文件复制到 /etc/X11/xorg.conf.d/ 并对其进行编辑以配置可用的各种驱动程序选项。请参阅synaptics(4) 手册页了解可用选项的完整列表。可以使用以下方法发现特定于机器的选项synclient.
我建议从默认配置开始,然后一次进行一项更改,这样当您得到意外结果时,您可以轻松地恢复到以前的设置。
资料来源:
https://packages.ubuntu.com/artful/amd64/xserver-xorg-input-synaptics/filelist
ftp://www.x.org/pub/X11R7.5/doc/man/man1/synclient.1.html