东芝 Satellite C845 中的蓝牙

东芝 Satellite C845 中的蓝牙

我正在使用 Ubuntu Gnome 15.10 和 Linux 4.2.0-22-generic #27-Ubuntu SMP Thu Dec 17 22:57:08 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux。

我无法启用笔记本电脑 Toshiba Satellite C845 内置的蓝牙设备。它有一个 Toshiba ACPI 蓝牙设备驱动程序。有一个设备 hci0,我在执行命令后超时:

$ hcitool scan
Scanning ...
Inquiry failed: Connection timed out

但是,我得到了一个 MAC 地址:

$ hcitool dev
Devices:
    hci0    44:6D:57:05:6A:81

我从命令中得到以下输出:

$ dmesg | grep -i bluet
[    1.590914] usb 3-1.3: Product: RT Bluetooth Radio
[    8.168356] toshiba_bluetooth: Toshiba ACPI Bluetooth device driver
[   10.178847] Bluetooth: Core ver 2.20
[   10.178864] Bluetooth: HCI device and connection manager initialized
[   10.178868] Bluetooth: HCI socket layer initialized
[   10.178871] Bluetooth: L2CAP socket layer initialized
[   10.178876] Bluetooth: SCO socket layer initialized
[   10.498021] Bluetooth: hci0: rtl: examining hci_ver=06 hci_rev=0e3d lmp_ver=06 lmp_subver=a5b1
[   10.498026] Bluetooth: rtl: assuming no firmware upload needed.
[   17.512991] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   17.512994] Bluetooth: BNEP filters: protocol multicast
[   17.512998] Bluetooth: BNEP socket layer initialized
[   19.514692] Bluetooth: hci0 command 0x0c56 tx timeout
[   27.481207] Bluetooth: RFCOMM TTY layer initialized
[   27.481216] Bluetooth: RFCOMM socket layer initialized
[   27.481223] Bluetooth: RFCOMM ver 1.11
[ 4118.722944] usb 3-1.3: Product: RT Bluetooth Radio
[ 4119.317636] Bluetooth: hci0: rtl: examining hci_ver=06 hci_rev=000b lmp_ver=06 lmp_subver=1200
[ 4119.317646] Bluetooth: hci0: rtl: loading rtl_bt/rtl8723a_fw.bin
[ 4128.043128] Bluetooth: hci0 command 0x200c tx timeout
[ 4235.120749] Bluetooth: hci0 command 0x0401 tx timeout
[ 4365.282581] Bluetooth: hci0 command 0x0c1a tx timeout
[ 5014.738593] usb 3-1.3: Product: RT Bluetooth Radio
[ 5015.335446] Bluetooth: hci0: rtl: examining hci_ver=06 hci_rev=000b lmp_ver=06 lmp_subver=1200
[ 5015.335455] Bluetooth: hci0: rtl: loading rtl_bt/rtl8723a_fw.bin
[ 5023.586749] Bluetooth: hci0 command 0x200c tx timeout
[ 5281.283140] Bluetooth: hci0 command 0x0c1a tx timeout
[ 5294.988048] Bluetooth: hci0 command 0x0401 tx timeout
[ 9177.900062] Bluetooth: hci0 command 0x0401 tx timeout
[10898.765848] Bluetooth: hci0 command 0x0c20 tx timeout
[10920.331256] Bluetooth: hci0 urb ffff8801d0bda180 failed to resubmit (113)
[10920.331629] Bluetooth: hci0 urb ffff8801d0bda0c0 failed to resubmit (113)

我知道有一个物理设备没有驱动程序来运行。当我看到 的输出时lsusb,我得到了:

Bus 003 Device 002: ID 0930:021d Toshiba Corp.
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass          224 Wireless
  bDeviceSubClass         1 Radio Frequency
  bDeviceProtocol         1 Bluetooth
  bMaxPacketSize0        64
  idVendor           0x0930 Toshiba Corp.
  idProduct          0x021d 
  bcdDevice            2.00
  iManufacturer           1 Realtek
  iProduct                2 RT Bluetooth Radio
  iSerial                 3 00e04c000001
  bNumConfigurations      1

... 缺少什么导致我无法加载驱动程序/模块来启用此蓝牙设备?东芝不是 Ubuntu 友好制造商吗?

请问有什么想法吗?

答案1

去年这里也报告过类似的问题(内核 4.1.1:蓝牙:hci0:无法加载 rtl_bt/rtl8723b_fw.bin) 在 Ubuntu 论坛上。

解决该问题的步骤摘要(你可能不应该使用它!):

sudo dpkg -i  linux-firmware_1.145_all.deb
sudo updatedb
rfkill list all; hciconfig -a

另一方面,Ubuntu 15.10 的更新步骤如下:

sudo apt update
sudo apt install linux_firmware
rfkill list all; hciconfig -a

这是基于此处的 15.10 说明(https://www.howtoinstall.co/en/ubuntu/wily/linux-firmware

您可以在此处找到其他可能有用的信息(蓝牙未检测到任何设备) 其中 Pilot6 为一位rtl8723au-bt司机写了一份答案。

至于东芝是否适合 Linux……从历史上看,它一直都很好,但最近我读到一些新机器Windows only的评论。但在这种情况下,它更多地反映了安装的 RealTek / Broadcom 硬件,戴尔也可能有。不过,任何一家制造商也可能有英特尔硬件 WiFi / 蓝牙。

FTR 我有一台内置英特尔芯片的戴尔笔记本电脑,到目前为止还没有遇到任何真正的蓝牙问题(祈祷)。希望你的问题能尽快得到解决!

答案2

本地 AskUbuntu 用户 Pilot6 提供了一个 PPA(ppa:hanipouspilot/rtlwifi) 包含所需的驱动程序,以确保 RTL8723 芯片组与您的机器兼容。

本质上,您需要将此 PPA 添加到您的系统中:

sudo add-apt-repository ppa:hanipouspilot/rtlwifi && sudo apt update

接下来,在您的系统中安装适当的 DKMS 模块和驱动程序:

sudo apt install rtlwifi-new-dkms linux-firmware rtl8723au-bt-dkms

这两个命令(组合)将安装所需的驱动程序到您的系统和内核。此外,由于 DKMS 的性质,这将在任何内核更新后起作用。

此外,您还安装了linux-firmware,这可以为类似的古怪设备提供一些(更好的)固件支持。


如果你希望从源代码进行编译,你可以看到这个答案,其中还包含(更多)PPA 信息。或者,如果您需要 DKMS 支持,点击此处

答案3

在终端中尝试这个:

安装 bluez

更多步骤解释如下:

http://quehow.com/how-to-enable-and-configure-bluetooth-in-ubuntu/3851.html

因此,正如上面这个链接所解释的,下一步是:

sudo /etc/inet.d/networking 重启

sudo /etc/inet.d/bluetooth 启动

干杯。

相关内容