无线 USB 加密狗 - 蓝牙 USB 加密狗 - MINI 5.0 - 版本 5.48 - 0a12:0001
所以最近我买了一个蓝牙 USB 适配器 - 型号:MLT-5.0-MiNi
我正在使用 Ubuntu 20.04.1 LTS。
1.将适配器连接到 USB 端口后,我在终端中检查了端口输入lsusb
,得到了以下信息:
Bus 002 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
2. hciconfig -a
给出了以下内容:
hci0: Type: Primary Bus: USB
BD Address: 00:1A:7D:DA:71:11 ACL MTU: 679:9 SCO MTU: 48:16
DOWN
RX bytes:574 acl:0 sco:0 events:30 errors:0
TX bytes:368 acl:0 sco:0 commands:30 errors:0
Features: 0xff 0xff 0x87 0xfa 0xdb 0xbf 0x7b 0x83
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
3. hcitool dev
:
Devices:
所以看起来我的电脑没有安装驱动程序。
4. bluetoothctl --version
:
bluetoothctl: 5.53
5. rfkill
:
ID TYPE DEVICE SOFT HARD
0 bluetooth hci0 unblocked unblocked
6.最后btmon
:
Bluetooth monitor ver 5.53
Failed to bind channel: Operation not permitted
我发现这个 YouTube 视频来解决问题。
1.首先,我必须安装应用程序“Ubuntu Mainline Kernel Installer”来更新到最新的内核版本,所以我输入了:
sudo add-apt-repository ppa:cappelikan/ppa
sudo apt-get update
sudo apt-get install mainline
2.然后,在更新到最新的内核版本之前,我必须检查正在运行的内核版本是什么:
User@PC:~$ uname -r
5.4.0-48-generic
User@PC:~$ uname -sr
Linux 5.4.0-48-generic
3.后来我去了核心并检查最新的稳定内核版本,例如:5.8.13
最后,我打开了 Ubuntu Mainline Kernel Installer 应用程序,并单击了最后一个稳定的内核版本,例如:5.8.13。最后单击了按钮安装。
4.安装并重启后,我再次检查:
User@PC:~$ uname -r
5.8.13-050813-generic
User@PC:~$ uname -sr
Linux 5.8.13-050813-generic
我看到它成功了,并且蓝牙 USB DONGLE 5.0 正在工作。
但配对后连接时出现一个问题:将 Ubuntu 与我的扬声器 5.0 配对后,无法连接,将 Ubuntu 与我的智能手机 LG 配对后,我无法从 Ubuntu 向智能手机发送任何图片,反之亦然。
1.我打字systemctl status bluetooth
并输入。
● bluetooth.service - Bluetooth service
Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2020-10-03 19:02:12 -05; 10min ago
Docs: man:bluetoothd(8)
Main PID: 2173 (bluetoothd)
Status: "Running"
Tasks: 1 (limit: 4649)
Memory: 2.2M
CGroup: /system.slice/bluetooth.service
└─2173 /usr/lib/bluetooth/bluetoothd
oct 03 19:02:11 PC systemd[1]: Starting Bluetooth service...
oct 03 19:02:12 PC bluetoothd[2173]: Bluetooth daemon 5.53
oct 03 19:02:12 PC systemd[1]: Started Bluetooth service.
oct 03 19:02:12 PC bluetoothd[2173]: Starting SDP server
oct 03 19:02:12 PC bluetoothd[2173]: Bluetooth management interface 1.17 initialized
oct 03 19:02:13 PC bluetoothd[2173]: Failed to set mode: Blocked through rfkill (0x12)
oct 03 19:02:14 PC bluetoothd[2173]: Endpoint registered: sender=:1.75 path=/MediaEndpoint/A2DPSink/sbc
oct 03 19:02:14 PC bluetoothd[2173]: Endpoint registered: sender=:1.75 path=/MediaEndpoint/A2DPSource/sbc
oct 03 19:02:14 PC bluetoothd[2173]: Failed to set mode: Blocked through rfkill (0x12)
我发现有一个问题:
bluetoothd[2173]: Failed to set mode: Blocked through rfkill (0x12)
2. rfkill list
:
1: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
3. hciconfig -a
:
hci0: Type: Primary Bus: USB
BD Address: 00:1A:7D:DA:71:11 ACL MTU: 679:9 SCO MTU: 48:16
UP RUNNING PSCAN ISCAN
RX bytes:1174 acl:0 sco:0 events:65 errors:0
TX bytes:1046 acl:0 sco:0 commands:65 errors:0
Features: 0xff 0xff 0x87 0xfa 0xdb 0xbf 0x7b 0x83
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
Name: 'Daniel-MS-7529'
Class: 0x1c0104
Service Classes: Rendering, Capturing, Object Transfer
Device Class: Computer, Desktop workstation
HCI Version: 5.0 (0x9) Revision: 0x810
LMP Version: 5.0 (0x9) Subversion: 0x2312
Manufacturer: Cambridge Silicon Radio (10)
我看一切都好。
4. btmon
:
Bluetooth monitor ver 5.53
Failed to bind channel: Operation not permitted
5. sudo dmesg | grep -i bluetooth
:
[ 132.146271] Bluetooth: Core ver 2.22
[ 132.146302] Bluetooth: HCI device and connection manager initialized
[ 132.146308] Bluetooth: HCI socket layer initialized
[ 132.146310] Bluetooth: L2CAP socket layer initialized
[ 132.146314] Bluetooth: SCO socket layer initialized
[ 132.515401] Bluetooth: hci0: CSR: Unbranded CSR clone detected; adding workarounds...
[ 133.859424] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 133.859426] Bluetooth: BNEP filters: protocol multicast
[ 133.859431] Bluetooth: BNEP socket layer initialized
[ 135.263551] Bluetooth: RFCOMM TTY layer initialized
[ 135.263561] Bluetooth: RFCOMM socket layer initialized
[ 135.263570] Bluetooth: RFCOMM ver 1.11
[ 1017.955624] Bluetooth: hci0: inquiry failed: status 0x0c
[ 1023.331631] Bluetooth: hci0: inquiry failed: status 0x0c
[ 3305.392256] Bluetooth: hci0: CSR: Unbranded CSR clone detected; adding workarounds...
还有一个问题:
Bluetooth: hci0: inquiry failed: status 0x0c
6.还有一次,我在终端上输入hcidump -X
并回车,然后进入蓝牙设置尝试配对并连接扬声器,在终端上得到了以下结果:
HCI sniffer - Bluetooth packet analyzer ver 5.53
device: hci0 snap_len: 1500 filter: 0xffffffffffffffff
[与 HCI 事件相关的几行内容]
> HCI Event: Command Status (0x0f) plen 4
Inquiry (0x01|0x0001) status 0x00 ncmd 1
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2744 class 0x240404 rssi -25
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 24:FC:E5:6E:53:5B mode 1 clkoffset 0x18bd class 0x08043c rssi -71
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 24:FC:E5:6E:53:5B mode 1 clkoffset 0x18bd class 0x08043c rssi -98
> HCI Event: Inquiry Complete (0x01) plen 1
status 0x00
> HCI Event: Command Complete (0x0e) plen 4
LE Set Random Address (0x08|0x0005) ncmd 1
status 0x00
> HCI Event: Command Complete (0x0e) plen 4
LE Set Scan Parameters (0x08|0x000b) ncmd 1
status 0x00
> HCI Event: Command Complete (0x0e) plen 4
LE Set Scan Enable (0x08|0x000c) ncmd 1
status 0x00
> HCI Event: Command Status (0x0f) plen 4
Disconnect (0x01|0x0006) status 0x00 ncmd 1
> HCI Event: Command Complete (0x0e) plen 4
LE Set Scan Enable (0x08|0x000c) ncmd 1
status 0x00
> HCI Event: Command Status (0x0f) plen 4
Inquiry (0x01|0x0001) status 0x00 ncmd 1
> HCI Event: Disconn Complete (0x05) plen 4
status 0x00 handle 128 reason 0x16
Reason: Connection Terminated by Local Host
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2745 class 0x240404 rssi -25
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
> HCI Event: Inquiry Complete (0x01) plen 1
status 0x00
> HCI Event: Command Complete (0x0e) plen 4
LE Set Random Address (0x08|0x0005) ncmd 1
status 0x00
> HCI Event: Command Complete (0x0e) plen 4
LE Set Scan Parameters (0x08|0x000b) ncmd 1
status 0x00
> HCI Event: Command Complete (0x0e) plen 4
LE Set Scan Enable (0x08|0x000c) ncmd 1
status 0x00
> HCI Event: Command Complete (0x0e) plen 4
LE Set Scan Enable (0x08|0x000c) ncmd 1
status 0x00
> HCI Event: Command Status (0x0f) plen 4
Inquiry (0x01|0x0001) status 0x00 ncmd 1
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2745 class 0x240404 rssi -27
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2745 class 0x240404 rssi -27
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2745 class 0x240404 rssi -24
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2745 class 0x240404 rssi -24
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2745 class 0x240404 rssi -23
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2745 class 0x240404 rssi -24
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2745 class 0x240404 rssi -23
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
> HCI Event: Extended Inquiry Result (0x2f) plen 255
bdaddr 88:D0:39:7C:24:61 mode 1 clkoffset 0x2745 class 0x240404 rssi -22
Complete local name: 'Soundcore Flare+'
Unknown type 0xff with 9 bytes data
Soundcore Flare+ 是扬声器的型号。我发现还有另一个问题:
Unknown type 0xff with 9 bytes data
蓝牙 USB 5.0 在 Windows 10 上运行良好,但在 Ubuntu 20.04 上却无法运行。因此 Ubuntu 需要蓝牙 5.0 的驱动程序。
在 5.8.14 内核上,Ubuntu 确实显示要配对和连接的设备,但配对和连接不起作用。
那么,有人能帮助我解决这个与 Ubuntu 设备配对和连接的问题吗?
我发现 Linux 的问题已经解决本网站但我不知道如何在 Ubuntu 20.04 上编译和修补,它只能适用于内核版本 5.8。
答案1
Ubuntu 20.04.4 下的 0a12/0001 也存在同样的问题。我的第二台电脑使用的是 Debian 11 Bullseye,适配器工作正常。在那里我发现了一个已安装的软件包,默认情况下它不会安装在 Ubuntu 20.04 中。因此,在 20.04 中尝试安装蓝牙软件包。适用于供应商 0a12/0001。打开终端并输入sudo apt install bluetooth