我有一个 Apple 蓝牙键盘,想将其与 Fedora 15 一起使用。
我打开两台设备上的蓝牙。通过 Gnome3 的 GUI 单击“设置新设备”。计算机检测到键盘,但显示的是数字格式的 MAC 地址而不是名称。选择“我无法继续设置”后,即不会进入要求输入 PIN 码来连接设备的阶段。
它可以与朋友的 iPad 和我自己的 Windows 完美配合。所以键盘本身似乎没有什么问题。
我对蓝牙设备没有太多经验,而且似乎没有关于该主题的 Fedora 特定帖子,而且 Ubuntu 论坛解决方案似乎不适合我。
我知道这个问题很模糊,但我不知道我还能发布什么来帮助读者。
因此,如果需要任何进一步的信息,请询问,我会尽快发布相同的信息。
答案1
通常,如果您在 MAC 显示时稍等片刻,它会将其替换为设备的名称。
至少在我的系统上是这样的。
许多键盘和小型设备默认使用“0000”作为 PIN,并且在许多情况下系统会自动尝试该密码。您确定键盘没有连接吗?尝试一下。
编辑:
我从另一个关于登录前配对 BT 键盘的答案中提取了这一点,它可能对您也有帮助。当 KDE 中的 BT 配对系统似乎无法正常工作时,我经常使用它(永远不会接受 PIN...嗯,听起来很熟悉?)(后来的更新终于修复了它,现在可以正常工作了)
来自 unix.SE: '如何在登录前识别我的蓝牙键盘'
我偶尔使用以下脚本将蓝牙键盘添加到我的系统中,它在系统级别而不是用户级别添加它,这似乎使事情从启动就可以正常工作,并且我的键盘可以从登录中使用迅速的。
正如所写的,您需要 bash(希望是 v4.0+)和蓝色包,它提供bluez-简单代理,bluez 测试设备,bluez-测试输入程式。
下面的大部分代码是实现一个列表,让您选择哪个设备,它实际上只是归结为最后 6 行(非注释),如果您知道您的 BT MAC 地址,您可以将所有选择的内容替换为静态分配。
#!/bin/bash
#
# L Nix <[email protected]>
# setup-bt-kb : allow choosing & pairing a bluetooth keyboard from the console
#
declare -a addrlist
#
while [ 1 ]; do
echo -n "Scanning for Bluetooth devices ... "
readarray -n 10 -O 0 -t addrlist < <(hcitool scan|grep -v "^Scanning"|sed -e "s/^[ \t]//g" -e "s/\t/ /g" | head -n 9)
echo
echo
length=${#addrlist[@]}
a=1
while [ ${a} -le ${length} ]; do
echo "$a) ${addrlist[$a-1]}"
a=$((a + 1))
done
echo
while [ 1 ]; do
if [ ${length} -gt 0 ]; then
echo -n "Choose (1-${length}), or "
fi
echo -n "'R' to rescan: "
read -n 1 REPLY
echo
case ${REPLY} in
Q)
# just quit
exit 0
;;
[0rR])
echo
REPLY=0
break
;;
[123456789])
if [ ${REPLY} -le ${length} ]; then
echo "Got ${REPLY}"
break
fi
;;
*)
;;
esac
done
if [ ${REPLY} -gt 0 ]; then
break
fi
done
#
device=${addrlist[${REPLY}-1]}
#
BTADDR=${device/% *}
BTNAME=${device/#??:??:??:??:??:?? }
#
echo "selecting '${BTNAME}' at ${BTADDR}"
#
echo "Pairing with ${BTNAME} (Generally '0000')"
bluez-simple-agent hci0 ${BTADDR}
#
echo "Setting trust level with ${BTNAME}"
bluez-test-device trusted ${BTADDR} yes
#
echo "Connecting to ${BTNAME}"
bluez-test-input connect ${BTADDR}
#
echo "Completed"
答案2
我不确定 Fedora 是否如此,但就在昨天,我在 Debian 上安装了 Apple 无线键盘,没有出现任何问题。
我的目标是从控制台配对键盘,这样即使我启动到控制台并且不运行 X,它也会自动连接。因此,要连接蓝牙键盘,您不需要任何 GUI 工具。
我主要使用这个很好的指南。它是为 Raspberry Pi 编写的,但不要因此而阻止您:http://www.corlatedcontent.com/blog/bluetooth-keyboard-on-the-raspberry-pi/
我对该指南唯一的疑问是配对过程。指南是这样说的:
如果一切顺利,系统将提示您使用键盘输入密码: DisplayPasskey (/org/bluez/14656/hci0/dev_23_E4_87_4C_B3_A1, 936319) 您的密码是该行末尾的数字。输入密码后不要忘记按“Enter”!
事情是,行尾没有任何密码,行看起来有点不同。此外,系统提示我“请求 PIN 码”。如果您遇到这种情况,您应该编写一些任意 PIN 码(我使用了 0000),将其输入控制台,按“Enter”,然后 — 按照指南的建议在 Apple 键盘上再次输入并按“Enter”。然后,再次按照指南操作。
如果由于某种原因已经建立了现有配对,您可能还想从删除现有配对开始。要删除配对,请以 root 身份运行以下命令:
bluez-test-device remove MAC
其中MAC
是键盘的 MAC 地址(请参阅上面的指南)。删除后,您可以重新开始。
PS:我没有代表对 lornix 的答案发表评论,但是您是否尝试过切换到控制台(Alt + F1)并杀死 Gnome,只是为了测试?我想这可以用killall gdm
or来完成killall gdm3
。我想当我在另一台已经运行 Gnome3 及其蓝牙 GUI 工具的 Debian 机器上安装相同的键盘时,我已经做了类似的事情。