蓝牙在 FreeBSD 11.0 上无提示地失败

蓝牙在 FreeBSD 11.0 上无提示地失败

我正在尝试在 FreeBSD 11.0 上设置我的蓝牙键盘,但由于我不明白的原因,它默默地失败了。

蓝牙内核模块已全部加载:

$ sudo kldstat
Id Refs Address            Size     Name
 5    1 0xffffffff824cf000 a150     ng_ubt.ko
 6    2 0xffffffff824da000 13b18    ng_hci.ko
 7    4 0xffffffff824ee000 3340     ng_bluetooth.ko
13    1 0xffffffff8264d000 1b187    ng_btsocket.ko

我的设备是可查询的:

$ sudo hccontrol -n ubt0hci remote_name_request 00:18:00:3b:92:34
BD_ADDR: 00:18:00:3b:92:34
Name: FILCO Bluetooth Keyboard

我已将 HID 描述符转储到bthidd.conf

$ sudo cat /etc/bluetooth/bthidd.conf:
device {
    bdaddr          00:18:00:3b:92:34;
    control_psm     0x11;
    interrupt_psm       0x13;
    reconnect_initiate  true;
    battery_power       true;
    normally_connectable    false;
    hid_descriptor      {
        0x05 0x01 0x09 0x06 0xa1 0x01 0x85 0x01
        ... snip ...
        0x02 0x75 0x06 0x81 0x01 0xc0
    };
}

/etc/bluetooth/ubt0.conf存在,并且只是 的直接副本/etc/defaults/bluetooth.device.conf

我已指定该设备没有 PIN hcsecd.conf

$ sudo cat /etc/bluetooth/hcsecd.conf
device {
  bdaddr    00:18:00:3b:92:34;
  name  "FILCO Bluetooth Keyboard";
  key   nokey;
  pin nopin;
}

# Default entry is applied if no better match found
# It MUST have 00:00:00:00:00:00 as bdaddr
device {
  bdaddr    00:00:00:00:00:00;
  name  "Default entry";
  key   nokey;
  pin   nopin;
}

当我尝试启动蓝牙服务时没有收到错误:

$ sudo sh -x /etc/rc.d/bluetooth start ubt0
+ . /etc/rc.subr
+ : 2749
+ export RC_PID
... snip ...
+ /usr/sbin/hccontrol -n ubt0hci write_node_role_switch 1
+ /usr/sbin/hccontrol -n ubt0hci change_local_name 'x220 (ubt0)'
+ /usr/sbin/hccontrol -n ubt0hci initialize
... snip ...
+ return 0

...但是键盘只是坐在那里,配对 LED 闪烁。它不配对,并且 中没有错误/var/log/messages

我怀疑我在这里遗漏了一些明显的东西;任何帮助将不胜感激。

更新#1:两者都没有什么帮助dmesg;最后几行似乎完全无关:

VT: Replacing driver "vga" with new "fb".
info: [drm] Initialized i915 1.6.0 20080730 for drmn0 on minor 0
info: [drm] Enabling RC6 states: RC6 on, RC6p off, RC6pp off

更新#2:我已成功将键盘与其他设备配对,因此我确信它没有故障。

答案1

好吧,这不是一个答案,但我通过以下方式“解决”了这个问题:

  1. 安装 FreeBSD 11.1。
  2. 遵循与上述完全相同的步骤。

最终结果是一个完美配对的键盘:-|同样的笔记本电脑,同样的键盘。

记录步骤以防其他人或未来的我可能会发现它们有帮助。

相关内容