HP ubuntu 20.04 上的蓝牙无法使用

HP ubuntu 20.04 上的蓝牙无法使用

我的笔记本电脑上的蓝牙无法工作,使用的是搭载 ubuntu 20.04 LTS 的 hp 笔记本电脑。

输入:lspci -nnk | grep -iA3 net; lsusb; dmesg | egrep -i 'blue|firm'

01:00.0 Network controller [0280]: Ralink corp. RT3290 Wireless 802.11n 1T/1R PCIe [1814:3290]
    DeviceName: Ralink RT3290LE  802.11bgn 1x1 Wi-Fi and Bluetooth 4.0 Combo Ad
    Subsystem: Hewlett-Packard Company Ralink RT3290LE 802.11bgn 1x1 Wi-Fi and Bluetooth 4.0 Combo Adapter [103c:18ec]
    Kernel driver in use: rt2800pci
--
02:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL810xE PCI Express Fast Ethernet controller [10ec:8136] (rev 05)
    DeviceName: Realtek PCIe FE Family Controller
    Subsystem: Hewlett-Packard Company RTL810xE PCI Express Fast Ethernet controller [103c:183f]
    Kernel driver in use: r8169
    Kernel modules: r8169
03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd. RTS5229 PCI Express Card Reader [10ec:5229] (rev 01)
Bus 002 Device 003: ID 04f2:b34f Chicony Electronics Co., Ltd 
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 050: ID 03f0:0941 HP, Inc X500 Optical Mouse
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
[    0.117085] Spectre V2 : Enabling Restricted Speculation for firmware calls
[    0.150990] ACPI: [Firmware Bug]: BIOS _OSI(Linux) query ignored
[    0.552112] [Firmware Bug]: Invalid critical threshold (0)
[    6.127240] ieee80211 phy0: rt2x00lib_request_firmware: Info - Loading firmware file 'rt3290.bin'
[    6.129380] ieee80211 phy0: rt2x00lib_request_firmware: Info - Firmware detected - version: 0.37

输入:systemctl | grep -i blue

  sys-devices-pci0000:00-0000:00:1c.0-0000:01:00.0-net-wlo1.device                         loaded active     plugged   RT3290 Wireless 802.11n 1T/1R PCIe (Ralink RT3290LE 802.11bgn 1x1 Wi-Fi and Bluetooth 4.0 Combo Adapter)
  sys-subsystem-net-devices-wlo1.device                                                    loaded active     plugged   RT3290 Wireless 802.11n 1T/1R PCIe (Ralink RT3290LE 802.11bgn 1x1 Wi-Fi and Bluetooth 4.0 Combo Adapter)

答案1

您好,欢迎咨询 Ubuntu,

问题是,你必须安装非自由固件。确保你的 sources.list 正在查找非自由存储库,然后执行

sudo apt update
sudo apt upgrade
sudo apt install linux-firmware
sudo apt install rfkill

然后尝试sudo rfkill list。您应该在输出中看到蓝牙是否已启用,或者它是否被软件阻止(soft blocked: yes)以及它是否被硬阻止(hard blocked: yes)。当您关闭物理开关时就是这种情况(免责声明:如果您在 BOIS 中将其停用,我不知道它是否显示为硬阻止)。

分享 的输出sudo rfkill list

答案2

让我们关注你的第一个输出,主要是“01:00.0 网络控制器 [0280]:“部分。根据本节,您有Ralink 公司 RT3290 无线网络控制器。因此,在 GitHub 上简单搜索“Ralink RT3290 的 Linux 驱动程序”,就会得到以下结果:https://github.com/loimu/rtbth-dkms

下载并安装最新版本(https://launchpad.net/~blaze/+archive/ubuntu/rtbth-dkms/+files/rtbth-dkms_3.9.7~git20210905-1~focal1_amd64.deb2021 年 9 月发布),您可以解决蓝牙问题。现在,根据同一存储库的 README,您可以使用几个命令打开/关闭蓝牙。我所做的是在 ~/.bashrc 中定义一些别名,这样我就可以轻松地做到这一点:

alias on='sudo modprobe rtbth ; sudo rfkill unblock bluetooth'
alias off='sudo rfkill block bluetooth && sudo pkill -2 rtbt ; sudo pkill -2 rtbt && sudo rmmod rtbth'

(出于某种原因,就我的情况而言,仅应用一次命令 pkill 是不够的。)您还可以尝试其他对我来说不起作用的方法来打开/关闭蓝牙:以下博客中有解释: https://webwiks.com/techcorner/get-ralink-rt3290-bluetooth-work-in-linux/

相关内容