是否可以重新编程 USB 键盘?

是否可以重新编程 USB 键盘?

我最近买了一个小型 USB 设备,可用作“HID 键盘设备”(标准 USB 键盘)

它只有一个键,绑定到小写的“b”。

我希望它被重新绑定到其他东西上,我想到几个选择:

  1. 软件重新绑定。简单易行,但我不想配置连接设备的每台机器。

  2. 该设备附带 Windows 驱动程序。这有两个不便之处:不支持 Linux/BSD/其他操作系统,并且驱动程序可能是恶意软件(考虑到设备的来源,这是现实的可能性)。但是,此驱动程序可能允许设备重新绑定。

  3. 编写自己的驱动程序。虽然必须将其部署到各处,但这样做会很有趣 :)

  4. 重新编程该设备。

我想避免选项 1 和 2。我当然想做 4,但我不知道是否可以重新编程 USB 键盘设备以输出不同的键(这可能很简单,因为设备只有 1 个键)。

澄清:该设备在所有平台上都可以像标准 USB 键盘一样工作。但是,随附的 CD 有一个自定义驱动程序,可以配置该驱动程序以将按键转换为用户选择的内容

答案1

你为什么不自己做一个呢?只要拿一个你不用的旧键盘,追踪按键,然后只用你想用的按键重建即可!可以这样想:

一键键盘

USB 键盘

或者,您可以更进一步,使用微控制器和一些开关将信号发送到您想要使用的任何键,并为微控制器编写自己的驱动程序。就像这样:

按键--->微控制器--->数据总线--->键盘电子板

编辑:重新编程不值得。这件 2 美元的电子产品会花很长时间。为什么是字母“b”?制造商对此有何评论?您可以使用驱动程序更改此字母吗?理论上,键盘中的芯片是使用 RS232 发送字符串“b”的芯片。物理 USB 键盘记录器怎么样?

答案2

软件重新绑定是这里最明智的解决方案。看看 autohotkey。它有一整套脚本语言,可以用你那可以说是奇怪的一键键盘做一些非常有趣的事情(甚至是长键组合 - 我可以想象这会变得非常奇怪和有趣):“https://www.autohotkey.com/

答案3

如果有适用于 Windows 的自定义驱动程序允许重新编程该设备,请安装usbsnoop或类似软件,在将其重新绑定到不同的按键时捕获 USB 流量,找出协议并实现自己的重新绑定工具,或者只是重复交通在 Linux 下。

如果自定义 Windows 驱动程序只是拦截按键事件并替换其他内容,您可以在 Linux 下执行相同操作,例如这里或者这里

至于 (4),我假设设备上有某种微控制器,原则上,只要有正确的工具,你应该能够对其进行重新编程,但首先需要付出大量努力对其进行逆向工程。

相关内容