lui*_*_36 6 patch kernel bluetooth diff drivers
无线 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)
Run Code Online (Sandbox Code Playgroud)
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
Run Code Online (Sandbox Code Playgroud)
3 hcitool dev .:
Devices:
Run Code Online (Sandbox Code Playgroud)
所以看起来我的电脑没有安装驱动程序。
4. bluetoothctl --version:
bluetoothctl: 5.53
Run Code Online (Sandbox Code Playgroud)
5. rfkill:
ID TYPE DEVICE SOFT HARD
0 bluetooth hci0 unblocked unblocked
Run Code Online (Sandbox Code Playgroud)
6.最后btmon:
Bluetooth monitor ver 5.53
Failed to bind channel: Operation not permitted
Run Code Online (Sandbox Code Playgroud)
我找到了这个 YouTube 视频来解决这个问题。
1.首先,我必须安装应用程序“Ubuntu Mainline Kernel Installer”才能更新到最新的内核版本,所以我输入:
sudo add-apt-repository ppa:cappelikan/ppa
sudo apt-get update
sudo apt-get install mainline
Run Code Online (Sandbox Code Playgroud)
2.然后,在更新到最后一个内核版本之前,我必须检查正在运行的内核版本是什么:
User@PC:~$ uname -r
5.4.0-48-generic
Run Code Online (Sandbox Code Playgroud)
User@PC:~$ uname -sr
Linux 5.4.0-48-generic
Run Code Online (Sandbox Code Playgroud)
3.后来我去KERNEL官网查了下最新稳定的Kernel版本是什么,例如:5.8.13
毕竟,我打开了应用程序 Ubuntu Mainline Kernel Installer,然后单击了最后一个稳定的内核版本,例如:5.8.13。最后点击按钮Install。
4.安装重启后,我再次检查:
User@PC:~$ uname -r
5.8.13-050813-generic
Run Code Online (Sandbox Code Playgroud)
User@PC:~$ uname -sr
Linux 5.8.13-050813-generic
Run Code Online (Sandbox Code Playgroud)
我看到它成功了,蓝牙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)
Run Code Online (Sandbox Code Playgroud)
我看到有一个问题:
bluetoothd[2173]: Failed to set mode: Blocked through rfkill (0x12)
Run Code Online (Sandbox Code Playgroud)
2 rfkill list .:
1: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
Run Code Online (Sandbox Code Playgroud)
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)
Run Code Online (Sandbox Code Playgroud)
我看到一切正常。
4. btmon:
Bluetooth monitor ver 5.53
Failed to bind channel: Operation not permitted
Run Code Online (Sandbox Code Playgroud)
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...
Run Code Online (Sandbox Code Playgroud)
还有一个问题:
Bluetooth: hci0: inquiry failed: status 0x0c
Run Code Online (Sandbox Code Playgroud)
6.还有一次,我在终端上打字hcidump -X进入,然后进入蓝牙的设置,尝试配对连接音箱,在终端上得到如下结果:
HCI sniffer - Bluetooth packet analyzer ver 5.53
device: hci0 snap_len: 1500 filter: 0xffffffffffffffff
Run Code Online (Sandbox Code Playgroud)
【与HCI Event相关的几行】
> 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
Run Code Online (Sandbox Code Playgroud)
Soundcore Flare+ 是扬声器的模型。我看到还有另一个问题:
Unknown type 0xff with 9 bytes data
Run Code Online (Sandbox Code Playgroud)
蓝牙 USB 5.0 在 Windows 10 上运行良好,但在 Ubuntu 20.04 上,它不起作用。所以 Ubuntu 需要蓝牙 5.0 的驱动程序。
在 5.8.14 Kernel 上,Ubuntu 确实显示了要配对和连接的设备,但是配对和连接不起作用。
那么,谁能帮我解决这个与 Ubuntu 设备配对和连接的问题?
我在这个网站上找到了针对 Linux 的问题,但我不知道如何在 Ubuntu 20.04 上编译和打补丁,它仅适用于 Kernel 的 5.8 版。
小智 0
Ubuntu 20.04.4 下的 0a12/0001 也有同样的问题。我的第二台计算机可以使用 debian 11 bullseye,适配器工作正常。在那里我发现了一个已安装的软件包,默认情况下 Ubuntu 20.04 中未安装该软件包。所以在20.04中尝试安装蓝牙包。适用于供应商 0a12/0001。打开终端并输入sudo apt install bluetooth
| 归档时间: |
|
| 查看次数: |
10964 次 |
| 最近记录: |