Sun Type 6 键盘怪异现象

Sun Type 6 键盘怪异现象

这是一个不太可能的尝试,因为我怀疑市场上有很多 Sun Microsystems Type 6 键盘,甚至可能很少有用户使用,但还是想说一下。

我已经使用这款键盘很长时间了,音量调高和调低键突然无法正常工作。我换过键盘(我有好几个这样的键盘),我基本确定这不是键盘本身的问题。

这个问题是,当按下Volume UpVolume Down键时,会产生两次按键按下事件和两次释放事件:

key press   122 [XF86AudioLowerVolume]
key press   123 [XF86AudioRaiseVolume]
key release 122 [XF86AudioLowerVolume]
key release 123 [XF86AudioRaiseVolume]

其他一些特殊键似乎也表现出奇怪的行为。

例如,按下Page Up会产生:

key press   86 [KP_Add]
key press   112 [Prior]
key release 86 [KP_Add]
key release 112 [Prior]

并按下Page Down产生:

key press   117 [Next]
key press   104 [KP_Enter]
key release 117 [Next]
key release 104 [KP_Enter]

用 Sun Microsystems Type 7 键盘替换键盘后,按键仍然正确,如果我无法解决这个问题,我想我必须咬紧牙关,换一个键盘。我宁愿不换,因为我喜欢这个键盘的“感觉”(这就是为什么我有机会时买了五个)。

为了以防万一,我正在使用以下小脚本(该脚本是我从 Stack Overflow 系列网站的其他地方摘取的)来捕获击键:

xinput list | \
    grep -Po 'id=\K\d+(?=.*slave\s*keyboard)' | \
    xargs -P0 -n1 xinput test | \
    awk 'BEGIN{while (("xmodmap -pke" | getline) > 0) \
        k[$2]=$4} {print $0 "[" k[$NF] "]"}'

evtest会产生类似的信息。例如,按下该Volume Up键会产生:

Event: time 1559427389.998130, -------------- SYN_REPORT ------------
Event: time 1559427392.390430, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70081
Event: time 1559427392.390430, type 1 (EV_KEY), code 114 (KEY_VOLUMEDOWN), value 1
Event: time 1559427392.390430, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70080
Event: time 1559427392.390430, type 1 (EV_KEY), code 115 (KEY_VOLUMEUP), value 1
Event: time 1559427392.390430, -------------- SYN_REPORT ------------
Event: time 1559427392.438435, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70081
Event: time 1559427392.438435, type 1 (EV_KEY), code 114 (KEY_VOLUMEDOWN), value 0
Event: time 1559427392.438435, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70080
Event: time 1559427392.438435, type 1 (EV_KEY), code 115 (KEY_VOLUMEUP), value 0
Event: time 1559427392.438435, -------------- SYN_REPORT ------------

如果相关的话,我正在运行 Ubuntu 19.04,我今天刚刚从 18.04 LTE 升级到它,希望能解决问题——显然,它没有。

我的猜测(当然,这是一个大胆的猜测)是,影响 USB 和/或 HID 驱动程序的某些配置已经改变或更新,但我目前无法确定它可能是什么或在哪里。

如果我应该运行其他诊断程序,我将非常感激能够提供相关指示。

非常感谢提供线索。

后续行动(2019 年 6 月 2 日):

我刚刚在另一台机器上全新安装的 Ubuntu 19.04 上测试了键盘,结果出现了同样的故障模式。这是使用两个不同的 Type 6 键盘进行的测试,因此目前我确信这是某种驱动程序问题,而不是键盘本身或特定机器上 Ubuntu 的特定安装的机械问题。

第二次跟进(2019 年 7 月 29 日):

由于我从事另一个项目,所以将这个问题搁置了几个星期,之后我终于有时间重新审视这个问题,瞧,问题似乎已经解决了。

在 6 月初最初发布帖子和今天(接近 7 月底)之间的时间间隔内,当然已经有几个内核更新,我已尽职尽责地安装了这些更新,因此在此期间可能修复或更改了一些东西。

我并不特别喜欢那些可以自行“解决”的问题,但在这种情况下,我会尽力解决。

相关内容