TL;DR; 什么鬼!?
这个问题的实质在标题中以粗体显示。一些为 Win8/10 设计的触摸板与 Linuxi2c-hid
内核模块的行为不稳定。
有很多问题与 Elantech 触摸板不工作有关。 这个问题不是重复的。好吧,是重复的,但事实并非如此。基本上,这些触摸板非常挑剔,在各种情况下都给很多人带来了问题。
当我重新启动并且鼠标光标出现或不出现时,它有时工作或不工作。有时当我在 Abiword 中键入特定文档的第 37 页时它会停止工作,但使用 LibreOffice 时在第 23 页。有时在使用偶数内核更新时它会变得特别挑剔,但使用奇数更新时非常稳定。对于以 .04 或 .10 结尾的任何 Ubuntu 版本也是如此......或者发生在质数年份,或者当版本号的数字之和为质数(1+8+0+4 = 13)时。通常,当它“知道”我正在做一些重要的事情时,它会停止工作,就在我即将保存我的工作之前 666 毫秒。
简而言之,所有这些细节都只是随机噪音。它们与触摸板是否正常工作无关。它只是一个糟糕的设备,旨在让我的生活变得痛苦。但我不能拆开我的笔记本电脑来更换它!
这是一个元问题,旨在解决这些触摸板的根本问题,即它们都使用运行 Windows 8/10 的笔记本电脑。
难道没有任何仪式或魔法能够让该触摸板与 MS Temple 之外的操作系统协同工作吗? 我能说出什么赞美的话?我能寻求什么祝福?让这个触摸板正常工作?
答案1
TL;DR; 什么鬼!?
MS 创建了一个新的协议,即 HID over I2C。MS 和触摸板制造商实际上都没有遵循该规范。
因此,许多需要新协议的触摸板无法与 Linux 内核模块很好地配合使用
i2c-hid
。有时内核更新可以解决问题(或导致问题再次出现)。如果可能,请禁用 I2C 上的 HID。在某些计算机上,该设置可能位于 BIOS 中。但在其他计算机上,该设置可能只能在 Windows 中更改。
有时重启或打开和关闭触摸板可能会有所帮助。有时卸下触摸板(如 MS Surface 或 Acer Switch Alpha 上的触摸板)可以使其重新工作。
根本问题是 HID over I2C,这是 Microsoft 创建的一种输入设备协议并首次用于 Windows 8。由于设备制造商通常不阅读或可能故意不遵循规格,因此 Microsoft 在驱动程序中加入了不少小问题以使其正常工作。或者,情况恰恰相反?Microsoft 在驱动程序中加入了不少小问题,因此制造商无法遵循规格,如果他们希望自己的设备正常工作(在 Windows 上,直到出现“Creator”更新之一 - 之所以这样命名,是因为它们会产生新的、前所未见的错误)。
在 Linux 上,处理该协议的内核模块是i2c-hid
。 人们使用触摸板的成功程度各不相同更改或修补内核因为修复一个设备的驱动程序可能会损坏另一个设备。如果您找到一个内核,该设备可以正常工作,并且没有其他问题,请立即冻结该版本。除非您有两个或更多连续的内核,触摸板始终可以正常工作,否则切勿卸载旧内核,因为触摸板具有量子电路,当它检测到您安装的稳定内核的数量小于或大于 1.4142 时,它会激活夸克行为,加上或减去一个逆时针旋转,即同时在三个独立方向上进行一次旋转。(这种谜题不是我们要问的。)
A潜在的解决方案是在 BIOS 中关闭 I2C 上的 HID。 此设置没有统一的名称。它可能与其他设置有关,例如 EFI。它可能只能在 Windows 中执行。 这也许是不可能的。 考虑在尝试此操作之前进行一次饮用大量酒精的仪式。如果可以禁用此设置,psmouse
内核模块将负责处理触摸板。
但有时您必须通过 I2C 启用 HID。 这些设备的性质是它们可能无法与psmouse
模块正常工作。有时,执行古老的仪式会有所帮助,在这些仪式中,人们会大声喊出神圣的、所谓的四个字母的单词,同时计算机重新启动或者触摸板开关被按下多次以计算机之神喜欢的模式。如果这不起作用,绝望的人有时会通过从计算机的其余部分撕下触摸板来获得他们祈祷的答案。
在这些艰难时期,我们必须保持警惕。在我们继续出埃及记的同时,愿我们的祈祷被听到,以便我们有一天能够摆脱 MS 的统治。
答案2
无需更改 HID 或 i2c 设置,也无需进行任何硬核安装。对我来说,问题在于 Ubuntu Touchpad 功能禁用了右键单击触摸手势(尝试用两根手指点击),使用 Gnome-tweak-tools 来修复它。