hciconfig hci0 hoch

hciconfig hci0 hoch

Dies ist ein HP 15-BS576TX-Laptop, der mit einem Realtek RTL8723DE Wireless/Bluetooth-Modul ausgestattet ist. Ich kann ehrlich gesagt keine Möglichkeit finden, Bluetooth zu aktivieren, obwohl die Firmware vollständig verfügbar ist. Die RTL8723DE-Firmware ist seit kurzem im Kernel-Baum linux-firmware.git verfügbar und ich habe sie auch in das Verzeichnis /lib/firmware/rtl_bt kopiert.

Der Fehler besteht darin, dass nach der Datei rtl8723b_config.bin gefragt wird, die nicht verfügbar ist. Außerdem wird der Bluetooth-Teil dieses Laptops laut Kernel-Protokoll als RTL8723B erkannt. Die Antwort des Firmware-Betreuers lautete: „Nicht alle Geräte benötigen die Konfigurationsdatei – rtl8723be nicht.“

# dmesg  |grep -i bluetooth
[   11.325095] Bluetooth: Core ver 2.22
[   11.325111] Bluetooth: HCI device and connection manager initialized
[   11.325113] Bluetooth: HCI socket layer initialized
[   11.325115] Bluetooth: L2CAP socket layer initialized
[   11.325118] Bluetooth: SCO socket layer initialized
[   11.414774] Bluetooth: hci0: rtl: examining hci_ver=08 hci_rev=000d lmp_ver=08 lmp_subver=8723
[   11.414775] Bluetooth: hci0: rtl: loading rtl_bt/rtl8723b_config.bin
[   11.466838] bluetooth hci0: Direct firmware load for rtl_bt/rtl8723b_config.bin failed with error -2
[   11.466840] Bluetooth: hci0: rtl: loading rtl_bt/rtl8723b_fw.bin
[   11.478765] Bluetooth: hci0: rom_version status=0 version=2
[   11.478767] Bluetooth: hci0: didn't find patch for chip id 2
[   21.410553] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   21.410555] Bluetooth: BNEP filters: protocol multicast
[   21.410557] Bluetooth: BNEP socket layer initialized

Ich habe die Firmware rtl8723D im Verzeichnis, aber der Kernel erkennt das Gerät trotzdem als RTL8723B, und ich kann es nicht aufrufen.

hci0:   Type: Primary  Bus: USB
    BD Address: 00:00:00:00:00:00  ACL MTU: 0:0  SCO MTU: 0:0
    DOWN 
    RX bytes:63 acl:0 sco:0 events:6 errors:0
    TX bytes:18 acl:0 sco:0 commands:6 errors:0
    Features: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
    Packet type: DM1 DH1 HV1 
    Link policy: 
    Link mode: SLAVE ACCEPT

Als ich es versuchte,

hciconfig hci0 hoch

Gerät hci0 kann nicht initialisiert werden: Ungültiges Argument (22)

tail -f /var/log/kern.log zeigt Folgendes:

Mar  8 01:51:21 HP-LAPTOP-15-BS00X kernel: [ 3116.853960] Bluetooth: hci0: rtl: examining hci_ver=08 hci_rev=000d lmp_ver=08 lmp_subver=8723
Mar  8 01:51:21 HP-LAPTOP-15-BS00X kernel: [ 3116.853970] Bluetooth: hci0: rtl: loading rtl_bt/rtl8723b_config.bin
Mar  8 01:51:21 HP-LAPTOP-15-BS00X kernel: [ 3116.854019] bluetooth hci0: Direct firmware load for rtl_bt/rtl8723b_config.bin failed with error -2
Mar  8 01:51:21 HP-LAPTOP-15-BS00X kernel: [ 3116.854024] Bluetooth: hci0: rtl: loading rtl_bt/rtl8723b_fw.bin
Mar  8 01:51:21 HP-LAPTOP-15-BS00X kernel: [ 3116.855913] Bluetooth: hci0: rom_version status=0 version=2
Mar  8 01:51:21 HP-LAPTOP-15-BS00X kernel: [ 3116.855920] Bluetooth: hci0: didn't find patch for chip id 2

Und so sieht /lib/firmware/rtl_bt aus. Die neueste Firmware für RTL8723D wurde ebenfalls in das Verzeichnis kopiert:

rtl8192ee_fw.bin
rtl8192eu_fw.bin
rtl8723a_fw.bin
rtl8723b_fw.bin
rtl8723d_config.bin
rtl8723d_fw.bin
rtl8761a_fw.bin
rtl8812ae_fw.bin
rtl8821a_fw.bin
rtl8821c_config.bin
rtl8821c_fw.bin
rtl8822b_config.bin
rtl8822b_fw.bin

Was falsch ist, kann ich nicht herausfinden. Das System erkennt die Bluetooth-Hardware als RTL8723B, während das drahtlose Modul definitiv RTL8723DE ist, wie auf der Rückseite des Laptops angegeben. Der Treiberbetreuer hat angemerkt, dass der Bluetooth-Teil von RTL8723B und RTL8723D ähnlich ist. Was ist also das Richtige, das ich versuchen sollte? Gibt es eine Möglichkeit, die Firmware und Konfigurationsdatei von RTL8723D anstelle der Firmware von RTL8723B zu laden? Wird das das Problem beheben?

Antwort1

Die Lösung erfordert etwas Handarbeit. Zunächst müssen Sie die neueste RTL8723D-Firmware aus dem Git-Repository „Linux-Firmware“ herunterladen. Die Firmware wird von Larry Fingers von rtlwifi-new git bereitgestellt: https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=6d5131107f2ba67a13f469ac770a55f101ba654d

  1. Klonen Sie das Verzeichnis linux-firmware in ein beliebiges Verzeichnis (~/Downloads) mit dem Git-Tool in einem Terminal. Ich gehe davon aus, dass Sie in das Verzeichnis ~/Downloads herunterladen:

    git-Klon git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git

Die Firmware befindet sich unter: ~/Downloads/linux-firmware/rtlwifi/rtl8723defw.bin ~/Downloads/linux-firmware/rtl_bt/rtl8723d_config.bin ~/Downloads/linux-firmware/rtl_bt/rtl8723d_fw.bin

1. ist WiFi-Firmware und 2,3 sind Bluetooth-Firmware.

Diese Firmware muss jeweils in die folgenden Verzeichnisse kopiert werden: /lib/firmware/rtlwifi/rtl8723defw.bin /lib/firmware/rtl_bt/rtl8723d_fw.bin /lib/firmware/rtl_bt/rtl8723d_config.bin

Sie können ein Terminal öffnen und Folgendes verwenden (sudo: geben Sie Ihr Passwort ein):

sudo cp ~/Downloads/linux-firmware/rtlwifi/rtl8723defw.bin /lib/firmware/rtlwifi/

sudo cp ~/Downloads/linux-firmware/rtl_bt/rtl8723d_fw.bin /lib/firmware/rtl_bt/

sudo cp ~/Downloads/linux-firmware/rtl_bt/rtl8723d_config.bin /lib/firmware/rtl_bt/
  1. Jetzt müssen Sie den aktuellen Linux-Kernel (>= 4.17) und die Kernel-Header auf Ihrem Linux-System installieren. Im Falle von Ubuntu können Sie von herunterladenhttp://kernel.ubuntu.com/~kernel-ppa/mainline/. Laden Sie den generischen Kernel mit amd64 (relevante Architektur) und Headern herunter. Sie können ihn in ein Verzeichnis herunterladen und mit dem Befehl „dpkg -i *.deb“ installieren. Nach dem Neustart funktioniert Bluetooth.

Antwort2

Die Unterstützung für dieses Bluetooth-Gerät rtl8723de wurde gerade zum 4.17rc-Kernel hinzugefügt.

Der Code kann problemlos auf die Kernel 4.4 - 4.15 zurückportiert werden. Es gibt ein PPA mit DKMS-Paketen für Bionic und Xenial mit dem aktualisierten Btrtl-Modul.

Die Installation erfolgt durch

sudo add-apt-repository ppa:hanipouspilot/bluetooth sudo apt update sudo apt install btrtl-rtl8723de-dkms

NEUSTART

Ab dann funktioniert Bluetooth wieder normal

verwandte Informationen