缓慢、挂起、不稳定的蓝牙键盘(仅适用于 Linux)

缓慢、挂起、不稳定的蓝牙键盘(仅适用于 Linux)

我有一台带有蓝牙 Broadcom 43142 模块的笔记本电脑,我必须从 Windows 为其复制固件。我还有一个 三星蓝牙键盘 BKB-10.. 它在 Windows 10 上运行良好,但在 Ubuntu 16.04 下它会挂起、断开连接、滞后。挂起示例:

Likkkkkkkkkke tttttttttttthhhhhhhhhhhhhhhhhatt!!!!!!!!!

如果断开连接,则只需按 1 个键 10-20 秒,直到系统得知它已断开连接。但它也可以仅打印 1-10 个额外字母,而不会出现任何中断。 DDelayys 可以是从毫秒到秒。但有时键盘在 Linux 下也能正常工作,当它正常工作和不能正常工作时我看不到任何模式。

由于 Linux 下该适配器的蓝牙驱动程序存在问题,我认为驱动程序是问题所在。但后来我将键盘连接到我的 CyanogenMod 12.1 智能手机,它也很延迟!我没有看到断开连接,也不知道在 Android 中哪里可以查找蓝牙断开连接的日志。 CM 12.1 也使用 Bluez,所以也许这就是问题所在。再说一次,键盘在 Linux 下也可以完美工作。所以,我猜这只是 Linux 的问题,而不是驱动程序或硬件问题。我在 tlp 中关闭了 USB 和 PCI 设备的所有节能功能,尝试了 2 个拳头解决方案这里- 没有什么。还安装了 Bluez 5.40(没有删除 5.37 Ubuntu 版本,否则我会删除一半 Ubuntu)和 Linux 内核 4.6。当键盘不稳定(滞后和挂起)时,日志中不会出现任何奇怪的情况,只有当它断开连接时。另一个有趣的是,该键盘是为 Android 设计的,但它只能在 Windows 下运行良好。

unknown main item tag 0x0

每次断开连接时都会出现。

请注意,上面的消息在下面的显示中以粗体显示。

消息
[440.590111]usbcore:取消注册接口驱动程序btusb
[444.549055]usbcore:注册了新的接口驱动程序btusb
[446.557936]蓝牙:hci0命令0x1001 tx超时
[454.551817]蓝牙:hci0:BCM:读取本地版本信息失败(-110)
[454.568686]蓝牙:hci0:BCM:芯片ID 70
[454.584662]蓝牙:hci0:BCM43142A
[454.584671]蓝牙:hci0:BCM(001.001.011)版本0000
[455.217642]蓝牙:hci0:BCM(001.001.011)版本0146
[455.233625]蓝牙:hci0:Broadcom蓝牙设备(43142)
[520.262176]usbcore:取消注册接口驱动程序btusb
[520.267674]蓝牙:hci0 urb ffff88005b287c00未能重新提交(2)
[522.576757]usbcore:注册了新的接口驱动程序btusb
[522.581012]蓝牙:hci0:BCM:芯片ID 70
[522.597023]蓝牙:hci0:Broadcom蓝牙设备(43142)
[522.597032]蓝牙:hci0:BCM(001.001.011)版本0146
[523.200996]蓝牙:hci0:BCM(001.001.011)版本0146
[523.217028]蓝牙:hci0:Broadcom蓝牙设备(43142)
[523.350764]蓝牙:RFCOMM TTY层初始化
[523.350772]蓝牙:RFCOMM套接字层初始化
[523.350779]蓝牙:RFCOMM版本1.11
[532.571301]蓝牙:HIDP(人机界面仿真)版本1.2
[532.571308]蓝牙:HIDP套接字层初始化
[793.617198]hid-generic 0005:04E8:7021.0003:未知的主项目标签0x0
[793.617387]输入:三星蓝牙键盘BKB-10为/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/bluetooth/hci0/hci0:12 /0005:04E8:7021.0003/输入/输入14
[793.618079]hid-generic 0005:04E8:7021.0003:输入,hidraw2:蓝牙HID v7.00键盘[三星蓝牙键盘BKB-10]在f8:2f:a8:ed:4d:02上
[978.540391]hid-generic 0005:04E8:7021.0004:未知的主项目标签0x0
[978.540524]输入:三星蓝牙键盘BKB-10为/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/bluetooth/hci0/hci0:11 /0005:04E8:7021.0004/输入/输入15
[978.542916]hid-generic 0005:04E8:7021.0004:输入,hidraw2:蓝牙HID v7.00键盘[三星蓝牙键盘BKB-10]在f8:2f:a8:ed:4d:02上
[2922.936556]hid-generic 0005:04E8:7021.0005:未知的主项目标签0x0

Jun 14 15:58:53 leonid-Lenovo-G500 acpid: input device has been disconnected, fd 16
Jun 14 15:58:53 leonid-Lenovo-G500 bluetoothd[694]: GLib: Source ID 1006 was not found when attempting to remove it
Jun 14 15:58:54 leonid-Lenovo-G500 kernel: [ 7143.006495] hid-generic 0005:04E8:7021.000F: unknown main item tag 0x0
Jun 14 15:58:54 leonid-Lenovo-G500 kernel: [ 7143.006620] input: Samsung Bluetooth Keyboard BKB-10 as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/bluetooth/hci0/hci0:12/0005:04E8:7021.000F/input/input26
Jun 14 15:58:54 leonid-Lenovo-G500 kernel: [ 7143.007582] hid-generic 0005:04E8:7021.000F: input,hidraw2: BLUETOOTH HID v7.00 Keyboard [Samsung Bluetooth Keyboard BKB-10] on f8:2f:a8:ed:4d:02
Jun 14 15:58:54 leonid-Lenovo-G500 upowerd[1464]: (upowerd:1464): UPower-Linux-WARNING **: treating change event as add on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/bluetooth/hci0/hci0:12/0005:04E8:7021.000F/power_supply/hid-90:7f:61:10:3c:ab-battery
Jun 14 16:01:53 leonid-Lenovo-G500 acpid: input device has been disconnected, fd 16
Jun 14 16:01:53 leonid-Lenovo-G500 bluetoothd[694]: GLib: Source ID 1035 was not found when attempting to remove it
Jun 14 16:01:53 leonid-Lenovo-G500 kernel: [ 7322.201743] hid-generic 0005:04E8:7021.0010: unknown main item tag 0x0
Jun 14 16:01:53 leonid-Lenovo-G500 kernel: [ 7322.201902] input: Samsung Bluetooth Keyboard BKB-10 as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/bluetooth/hci0/hci0:11/0005:04E8:7021.0010/input/input27
Jun 14 16:01:53 leonid-Lenovo-G500 kernel: [ 7322.202263] hid-generic 0005:04E8:7021.0010: input,hidraw2: BLUETOOTH HID v7.00 Keyboard [Samsung Bluetooth Keyboard BKB-10] on f8:2f:a8:ed:4d:02
Jun 14 16:01:53 leonid-Lenovo-G500 upowerd[1464]: (upowerd:1464): UPower-Linux-WARNING **: treating change event as add on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/bluetooth/hci0/hci0:11/0005:04E8:7021.0010/power_supply/hid-90:7f:61:10:3c:ab-battery

答案1

从 bluez.org 安装了 Bluez 5.27(较新的版本对我来说比较延迟)并且延迟消失了。断开连接也更少,但我想这与 ubuntu 与内核或其他东西的工作有关。

答案2

使用TLPUI电源管理工具(如果您的系统上不存在,请安装它)。

从其 USB 菜单中,您可以选择USB_BLACKLIST_BTUSB从 USB 自动挂起中排除蓝牙设备。

相关内容