ubuntu 18.04 LTS蓝牙[0cf3:3004]发现无效


27

我已经将ubuntu 16.04 LTS升级到了ubuntu 18.04 LTS,从那时起,蓝牙没有发现任何设备。

这是我执行的步骤:

从设置打开了蓝牙(似乎滞后于转向蓝牙选项而不是其他设置)。

它仍然没有发现任何设备,并且打开/关闭切换需要花费太多时间才能打开设备才能发现,但是无论如何它都没有发现设备。

在降级之前,我尝试运行实时ubuntu 18.04 LTS,这就是我在快照中看到的内容:

在此处输入图片说明

因此,根据蓝牙切换开关,应该将其打开,但仍然表示蓝牙已关闭,并且不扫描附近的任何设备。

尝试运行以下一些命令:

ubuntu@ubuntu:~$ bluetoothctl
Agent registered
[bluetooth]# list
[bluetooth]# devices
No default controller available
[bluetooth]# scan on
No default controller available
[bluetooth]# power on
No default controller available
[bluetooth]# 

笔记本电脑:联想Z50-70


更新资料

jarvis@jarvis:~$ lspci -knn | grep Net -A3; lsusb
02:00.0 Network controller [0280]: Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter [168c:0036] (rev 01)
    Subsystem: Lenovo QCA9565 / AR9565 Wireless Network Adapter [17aa:4026]
    Kernel driver in use: ath9k
    Kernel modules: ath9k
03:00.0 3D controller [0302]: NVIDIA Corporation GM108M [GeForce 840M] [10de:1341] (rev a2)
Bus 001 Device 002: ID 8087:8000 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 004: ID 0cf3:3004 Atheros Communications, Inc. AR3012 Bluetooth 4.0
Bus 002 Device 003: ID 174f:14b2 Syntek 
Bus 002 Device 002: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller
Bus 002 Device 006: ID 093a:2532 Pixart Imaging, Inc. 
Bus 002 Device 005: ID 0781:5583 SanDisk Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
jarvis@jarvis:~$ dmesg | grep -i blue
[   27.147743] Bluetooth: Core ver 2.22
[   27.147759] Bluetooth: HCI device and connection manager initialized
[   27.147761] Bluetooth: HCI socket layer initialized
[   27.147764] Bluetooth: L2CAP socket layer initialized
[   27.147769] Bluetooth: SCO socket layer initialized
[   27.160218] Bluetooth: hci0: don't support firmware rome 0x31010000
[   31.361588] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   31.361590] Bluetooth: BNEP filters: protocol multicast
[   31.361593] Bluetooth: BNEP socket layer initialized
jarvis@jarvis:~$ 

编辑您的问题并添加lspci -knn | grep Net -A3; lsusb终端命令的输出。
飞行员

@ Pilot6根据您的要求更新了问题
Gahan

然后运行dmesg | grep -i blue并发布输出。
飞行员

@ Pilot6更新了输出信息
Gahan

Answers:


20

一位名叫Takashi Iwai的杰出开发人员提出了一个解决方案,我将其集成到4.15内核中

sudo apt install git build-essential dkms
git clone https://github.com/jeremyb31/newbtfix-4.15.git
sudo dkms add ./newbtfix-4.15
sudo dkms install btusb/4.0
重启

对于6月13日之前尝试过此操作的人,您可能需要

sudo -H gedit /usr/src/btusb-4.0/Makefile
将内容更改为
KVER ?= $(shell uname -r)
obj-m += btusb.o

all: make -C /lib/modules/$(KVER)/build M=$(PWD) modules

clean: make -C /lib/modules/$(KVER)/build M=$(PWD) clean

使用新内核正确构建

编辑:此错误已在内核4.15.0-31中修复,因此安装此修复程序的人可以根据需要删除。

sudo dkms remove btusb/4.0 -k $(uname -r)
sudo dkms remove btusb/4.0 --all


就在一天前,我回滚到16.04 LTS,尽管感谢您的帮助,但是我需要再次运行18.04来检查解决方案。
加汉

不适用于我的Razer Blade Pro。我来宾高志先生并不像杰里米31所说的那样出色。有没有真正的解决方案?
Sileria

4
@Sileria问您自己的问题
Jeremy31 '18

@ Jeremy31感谢您的回复,但这与我的问题相同。我有相同的蓝牙卡:总线003设备007:ID 0cf3:3004 Atheros Communications,Inc. AR3012蓝牙4.0
Sileria

1
@vikrant提出您自己的问题,并包括终端机的结果lspci -nnk | grep -iA3 net; lsusb; rfkill list; uname -r; dmesg | egrep -i 'blue|firm'
Jeremy31 '18

1

问题在于Atheros发布了使用与旧版AR3012相同的VID / PID的新ROME设备。代码是[0cf3:3004]。

找不到找到安装哪个设备的好方法。

内核维护者在此处更改了较新设备的代码 http://kernel.ubuntu.com/git/ubuntu/ubuntu-bionic.git/commit/drivers/bluetooth/btusb.c?id=c91729972ac67983a37270d0856f1ee93af54913

这意味着较旧的设备正在尝试加载错误的固件。可以通过还原此修补程序来解决此问题。

我曾经为较旧的内核和较新的设备构建DKMS模块以对其进行修复。现在看来,我们需要一个用于新内核和旧设备的模块。


似乎有一个适用于两个芯片组的新补丁
Jeremy31,2018年

这看起来很棒。
飞行员

@ jeremy31。如何获得补丁?该链接将我定向到一个差异文件,我认为呢?
hatterman

@hatterman安装内核4.15.0-31或内核4.15.0-33并在修补时使用它们中的任何一个
Jeremy31 '18

我在18.10(内核4.18.0-16)上看到了相同的行为。您确定要“打开自己的问题”吗?通常情况下,这里的mod会说“已经问”并提出疑问。
反击

1

在花了很多时间在线搜索解决方案(还重新安装了18.04)之后,在DELL 9550笔记本电脑(仅运行Ubuntu)上,我遇到了此链接

我还使用闪存驱动器升级了BIOS(从官方DELL驱动程序网站链接下载后)

我认为从上面的链接提供的解决方案确实起到了实际作用,如下所示(也可能是BIOS问题,但不能100%确定-无论如何都必须这样做):

wget https://memcpy.io/files/2017-10-28/BCM-0a5c-6410.hcd
sudo cp BCM-0a5c-6410.hcd /lib/firmware/brcm/
sudo chmod 0644 /lib/firmware/brcm/BCM-0a5c-6410.hcd
sudo reboot

希望对您有所帮助。


1
这仅适用于ID为0a5c:6410的Broadcom蓝牙设备,而对Gahan则无效,因为该蓝牙是ID为0cf3:3004的Atheros,与我的Ubuntu笔记本电脑具有的蓝牙设备相同
Jeremy31 '18

症状在Dell XPS上相同,因此是正确的答案。它在戴尔上可以达到目的。
Sven

@Sven,提问的人有联想Z50-70,那么这个答案有何意义?所有Atheros蓝牙固件都在linux-firmware软件包中提供
Jeremy31 '18

您将BIOS更新到哪个版本?
musicformellons

@ Jeremy31,您对此有何看法:ID 0a12:0001 Cambridge Silicon Radio,Ltd蓝牙加密狗(HCI模式),我的意思是我应该下载哪个文件?
Menai Ala Eddine

1

我通过使用UKUU工具将Ubuntu内核升级到最新版本来解决了这个问题。


1
并未为我解决此问题(ubuntu 18.04,已更新至内核4.18.4-041804-generic,broadcom蓝牙:0a5c:216f Broadcom Corp. BCM20702A0)。
musicformellons

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.