Dag Brattli:“连接到 Tekram IRDocking IR-660。此设备是一个带有 LAN 访问、打印机、鼠标和键盘的扩展坞。您也可以同时使用它们和内部鼠标和键盘!只需启动 gpm -t ps2 /dev/irkbd,笔记本电脑将与 IR-660 建立键盘/鼠标连接。现在我只需要让 gpm 读取 /dev/psaux 和 /dev/irkbd,然后让 X11 读取 /dev/gpmdata,我就应该配置好它了!”
... 一个问题:gpm 可以处理多个鼠标,但 Linux 无法处理多个不同的键盘。所以如果你像我一样有一个挪威键盘和一个远程美国键盘,那么事情会有点混乱。我从 Alan Cox 那里得到一个提示,关于一个正在实现对多个键盘的真正支持的项目,所以我将查看一下。
... 好的,我算是解决了。通过在 /dev/console 上使用 TIOCSTI,您可以将扫描码直接插入到 tty 队列中。这对于期望接收一些已翻译和处理过的键码的虚拟控制台来说可能是一个问题,但 X 恰好喜欢原始扫描码,因此这在使用 X 时会很好,但不适用于其他虚拟控制台。无论如何,这对我来说已经足够好了,所以我不会花很多时间将扫描码转换为键码并使用一些键盘映射表对其进行索引,只是为了使其在纯文本虚拟控制台中工作。在我看来,irkbd 驱动程序现在已成功移植到用户空间 :-)
... 除了连接键盘和鼠标外,Tekram IR-660 设备还可以使用 IrTTP 进行打印(它可以使用 IrLPT 进行打印,但这没什么意思,因为它需要独占使用 IrLMP,而且您不想仅仅为了打印文档而停止网络、鼠标和键盘)。我将尝试看看我是否可以使用 fifo 让 IrTTP 打印工作。
... 除了数据通道外,Tekram 还添加了一个控制通道,以便您可以获得一些关于正在发生的事情的状态信息。他们自己协议的名称是 P1248。它通过 “P1248” 类和 “IrDA:TinyTP:LsapSel” LM-IAS 条目发布,因此您可以尝试找到它。
... 佳能正在使用 P1248 协议,他们的打印机监控程序 BrintBuddy2(日语版)现在正在使用此协议。我不知道他们使用什么作为数据通道。除了其他方法外,他们可能还直接支持 TinyTP。您可以尝试在 LM-IAS 中查找带有 “IrDA:TinyTP:LsapSel” 的 “IrLPT” 类,看看是否能找到它。”