如何让Ubuntu显示为蓝牙键盘?

我有一个iPad 2,并希望我的Ubuntu系统显示为蓝牙键盘,因此我在我的电脑上输入的内容出现在我的iPad上。

有没有具体的方法呢?

可以将计算机充当其他设备的蓝牙键盘,前提是:

  • 它有蓝牙,并运行Bluez 。 (对于带蓝牙的Ubuntu系统,情况也是如此。)
  • 它运行的是基于Linux的操作系统。 (包括Ubuntu!)
  • 您在基于Linux的操作系统中具有管理function(例如,您可以sudoroot )。

有一个FOSS程序执行此操作,称为hidclient

hidclient程序使配备Bluetooth®技术的计算机显示为蓝牙®键盘和鼠标设备到其他机器。 本地连接的输入设备的输入事件(如击键和鼠标移动)将通过Bluetooth®链接转发到另一台机器。

对于对应物(可能是Linux PC,Win PC,PDA ……),“真正的”Bluetooth®输入设备没有技术差异。

资料来源: hidclient的官方网站(主页) 。

完全是摇滚乐 :你不必为你的iPad(或任何其他与蓝牙键盘配合使用的移动设备)做任何特别的事情来实现这一点。 你不必越狱它。 您不必安装任何特殊应用程序。 只需安装并运行hidclient ,然后告诉您要使用蓝牙键盘的移动设备(iPad)!

获取软件并学习如何使用它所需的一切就在这里。
阅读完整页后(以便了解其工作原理),请务必使用最后的说明(对于Ubuntu)。

这是一个紧凑的版本(基本上是相同的程序 – 这对我来说更好):

  1. 安装libbluetooth-dev 安装libbluetooth-dev
  2. 下载Ubuntu的hidclient源代码 。 (查看官方页面以确保它不会过时。)将其放在一个文件夹中并提取其内容。
  3. 输入 make并按Enter键以编译源。
  4. 备份和编辑蓝牙配置:
    sudo cp /etc/bluetooth/main.conf /etc/bluetooth/main.conf.old
    sudo -H gedit /etc/bluetooth/main.conf
    •在#DisablePlugins = network,input添加行DisablePlugins = input (no # )。
    •在Class = 0x000100的开头添加# ; 在它下面,写Class=0x000540 (没有# )。
    •保存文件并退出文本编辑器。
  5. 如果你想像普通命令一样运行hidclient
    •运行sudo cp hidclient /usr/local/bin
    •使用echo $PATH检查/usr/local/bin是否在您的路径中。
    •如果不是,请使用上述任何方法添加 。
    如果跳过此步骤,可以运行hidclient ,确保您位于编译它的目录中,并运行./hidclient而不是hidclient

运行hidclient

运行hidclient --help (或查看网页底部)以了解如何使用它。

除非使用--help标志运行, hidclient必须以root hidclient运行。 因此,请使用sudo hidclient (后跟您指定的任何选项,如帮助中所述)。

基本上,有两个步骤:

  1. 运行sudo hidclient -l以获取编号的设备列表。
  2. 运行sudo hidclient -e N -x ,将N替换为要通过蓝牙“转发”的设备号。 在你的情况下,这将是键盘。

你们都准备好了。 告诉您的移动设备(iPad)使用蓝牙键盘。

终止hidclient

您需要做的最后一件事是停止使用键盘进行蓝牙输入。 请注意,当hidclient运行时,您选择的设备不再向您的Ubuntu系统提供输入 。 如果它只是键盘(比如鼠标),你可以通过在终端中按Ctrl + C退出hidclient

但你不能这样做,因为键盘输入不会进入终端或任何其他Ubuntu程序。 键盘充当蓝牙设备!

因此,当“转发”键盘时,通过使用鼠标(或触控板)关闭其运行的终端窗口(或选项卡)来退出hidclient

  • 当然,如果你的Ubuntu机器有多个键盘,你可以“转发”一个作为蓝牙设备,并继续使用你的计算机上的另一个。

参考/致谢

  • hidclient程序和项目页面 ,作者: Anselm Martin Hoffmeister
  • 这个服务器故障由Capt.Nemo 回答 ,它指出了我正确的方向。