Bluetooth ne fonctionne pas sur Ubuntu 14.04 avec Dell Inspiron 15-3521

9

J'ai un ordinateur portable Dell inspiron 15-3521 avec Ubuntu 12.04 pré-installé, il fonctionnait bien (j'ai supprimé cet Ubuntu). J'ai installé Ubuntu 14.04 (nouvelle installation).

(Le pilote installé est: bcmwl-kernel-source 6.30.223.141+bdcom-0ubuntu2)

Le réseau WiFi fonctionne bien mais Bluetooth ne fonctionne pas (mon téléphone, mon autre PC et mon ordinateur portable ne le voient pas et mon ordinateur portable ne peut rien voir.)

Le périphérique Bluetooth est activé, activé et visible.

lspci résultat:

00:00.0 Host bridge: Intel Corporation 3rd Gen Core processor DRAM Controller (rev 09)
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00:16.0 Communication controller: Intel Corporation 7 Series/C210 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1b.0 Audio device: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 1 (rev c4)
00:1c.1 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 2 (rev c4)
00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation HM76 Express Chipset LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 7 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 7 Series/C210 Series Chipset Family SMBus Controller (rev 04)
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 05)
02:00.0 Network controller: Broadcom Corporation BCM43142 802.11b/g/n (rev 01)

lsusb résultat:

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 005: ID 064e:8132 Suyin Corp. 
Bus 001 Device 004: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller 
Bus 001 Device 003: ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0
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 002: ID 19d2:0031 ZTE WCDMA Technologies MSM MF110/MF627/MF636
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Momo
la source
Il semble qu'il ne soit pas connecté à votre bus PCI, pouvez-vous mettre à jour votre question avec la lsusbsortie en la modifiant ?
P.-H. Lin
Pas celui-là, c'est la carte sans fil.
P.-H. Lin
Le bluetooth apparaît dans lsusb
Momo
Que puis-je faire maintenant?
Momo
Cela peut aider askubuntu.com/questions/845531/…
warsong

Réponses:

4

Malheureusement, votre appareil Bluetooth:

Bus 001 Device 003: ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0

N'est pris en charge par aucune version de stock d'Ubuntu, veuillez vous référer au
Bug1129865 [Broadcom Combo BT / Wifi Card] 21D3 21D7 Bluetooth ne détecte rien du tout
(La raison est indiquée dans le commentaire # 7)

Et je vous suggère de vous abonner à ce bogue:
Bogue 1065400 Prise en charge du chargement du micrologiciel Bluetooth Broadcom
Il pourrait y avoir une solution de contournement dans ce fil, bonne chance!

P.-H. Lin
la source
8

Étapes similaires à celles de Diabolik2. Les nouvelles informations indiquent où et comment obtenir le fichier hex.

Sources:

Pour avoir une solution complète j'écris toutes mes étapes depuis le début:

  1. Trouvez l'ID de votre appareil:

    $ lsusb | grep Bluetooth

    Ma sortie par exemple:

    Bus 001 Périphérique 003: ID 0a5c: 21d7 Broadcom Corp. BCM43142 Bluetooth 4.0

    dont 0a5c: 21d7 doit être rappelé.

  2. Obtenez un fichier hexadécimal pour votre appareil:

    • Après avoir recherché des pilotes Bluetooth dans Google, j'ai choisi ce téléchargement: http://drivers.softpedia.com/get/BLUETOOTH/Broadcom/Broadcom-43142-Bluetooth-40-Adapter-Driver-12007030-for-Windows-8.shtml #Télécharger
    • J'ai extrait le dernier fichier .hex par hasard. Heureusement, cela a fonctionné. ÉTAPES: Dans nautilus, faites un clic droit sur le fichier .cab téléchargé > choisissez Ouvrir avec Archive Manager > sélectionnez le dernier fichier .hex dans la liste des archives> clic droit> Extraire ...
    • télécharger et compiler hex2hcd
      $ git clone git: //github.com/jessesung/hex2hcd.git
      $ cd hex2hcd
      $ make
    • convertir le .hex en .hcd
       $ ./hex2hcd /path/to/extracted.hex /where/you/want/your_new.hcd
  3. Copiez le fichier hcd dans / lib / firmware sous lib / firmware / fw- 0a5c_21d7 .hcd.

    Dans le nom de fichier, utilisez l'ID que vous avez précédemment découvert.

sb.
la source
1
Étape 3. Doit être copié le fichier hcd vers:/lib/firmware/brcm/
david6
I have extracted the last .hex file by chance. Fortunately it worked.- les gens qui lisent ceci, veuillez noter que si cela ne fonctionne pas, cela pourrait casser quelque chose, donc vous ne devriez probablement le faire que si le message de Diabolik2 ne fonctionne pas pour vous.
Wilf
1
Il est également très important de lire ce qui est dmesg | grep Bluetoothdit, car cela vous donnera des informations utiles. Dans mon cas, il disait qu'il n'a pas réussi à charger le fichier brcm / BCM.hcd , j'ai donc nommé le fichier hcd au BCM.hcdlieu de fw-0a5c_21d7.hcdet copié dans /lib/firmware/brcm/. Ça a marché comme sur des roulettes. DELL inspiron 15 - 3543.
Qualphey
Oh et le hexfichier que j'ai choisi en utilisant la méthode suggérée dans la réponse de Florin C. Utilisation du inffichier.
Qualphey
1
Pour Ubuntu 16.04, la solution consiste à obtenir le fichier .hex à partir de Windows comme expliqué ci-dessus, à transformer .hdcégalement comme expliqué, mais vous devez mettre un nom différent pour le fichier du firmware comme: /lib/firmware/brcm/BCM-0a5c-6410.hcd(dépend de votre bus lsusb: devnum ID)
morhook
6

Réponses disant que je dois installer Windows pour obtenir un firmware pour Linux ... ça ne va pas, non?

Mais les réponses précédentes étaient en or. J'ai Bluetooth fonctionnant après longtemps dans mon Dell avec Ubuntu 12.04 386. Voici mes compléments aux réponses précédentes (en particulier sb):

  1. La cabine du sb est bonne et avait les fichiers hexadécimaux pour plusieurs puces sur cette famille.

  2. cabextract est un outil pour extraire une archive .cab. juste:

    sudo apt-get install cabextract

et extrayez-le par:

cabextract 20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab

Sachez qu'il n'y a pas de répertoire dans la cabine, mais juste des fichiers, vous obtiendrez donc beaucoup de fichiers hexadécimaux. Il est bon de mkdir un répertoire spécifique et d'y extraire la cabine.

  1. Comment obtenir le bon fichier hexadécimal .

J'ai donc l'id de la puce: 0a5c: 21d7 et un tas de fichier hexadécimal. Comment puis-je trouver celui qui me convient? L'astuce consiste à rechercher le fichier .inf qui indique à Windows ce qu'il faut installer. Recherche de 21D7 (notez le D majuscule au lieu de 'd') J'obtiens ceci:

% Dell1704.DeviceDesc% = RAMUSB21D7, USB \ VID_0A5C & PID_21D7; BRCM Generic 43142A0 RAMUSB

L'USB / VID & PID est ce que j'obtiens sur lsusb: capital (0a5c: 21d7). Le RAMUSB21D7 est ce que je dois rechercher ensuite dans le fichier inf (c'est la description de l'appareil).

Et voici mon résultat:

;;;;;;;;;;;;;RAMUSB21D7;;;;;;;;;;;;;;;;;

[RAMUSB21D7.CopyList]
bcbtums.sys
btwampfl.sys
BCM43142A0_001.001.011.0122.0126.hex

Et le fichier hex que j'utiliserai est BCM43142A0_001.001.011.0122.0126.hex

Le reste est le même que ci-dessus. Obtenez l'outil via git, construisez-le, convertissez le fichier hex en hcd, jetez / rechargez le btusb.

Remarque: sachez que le fichier hcd doit commencer par fw -...... et non fw _...... J'ai fait cette erreur. :)

Florin C
la source
Après avoir extrait le fichier hexadécimal correct et suivi la procédure. Lorsque j'ai redémarré ma machine et lancé la commande dmesg | grep firmware. Je reçois la sortie en tant que[ 15.023826] bluetooth hci0: Direct firmware load for brcm/BCM43142A0-0a5c-21d7.hcd failed with error -2
ravi1991
6

J'ai résolu le problème avec la solution de ce post :

En résumé, j'ai fait ces étapes: Listez votre identifiant:

lsusb

Mon identifiant est: 0a5c:21d7

Récupérez le fichier .hex: dans votre partition Windows (en supposant que vous démarrez en double avec Windows) , récupérez le fichier BCMxxxx.hex C:\windows\system32\drivers. S'il y a deux ou plusieurs fichiers .hex, voyez lequel est en cours d'utilisation avec le gestionnaire de périphériques Windows. Copiez ce fichier dans votre répertoire personnel

Ouvrez le terminal et tapez ces commandes:

sudo apt-get install git
git clone git://github.com/jessesung/hex2hcd.git
cd hex2hcd
make
./hex2hcd ../BCMxxxx.xxx.xxx.xx.hex fw-0a5c_21d7.hcd (Replace 0a5c_21d7 with your id)
sudo cp fw* /lib/firmware

Rechargez les modules avec ces commandes:

sudo modprobe -r btusb
sudo modprobe btusb

Redémarrez votre ordinateur.

Ouvrez le terminal et écrivez:

dmesg | grep firmware

si tout va bien, vous pouvez voir le message:

[   xxxxxxxxxx] Bluetooth: firmware loaded

C'est tout.

Bonne chance Diabolik2

Diabolik2
la source
1
Bien que ce lien puisse répondre à la question, il est préférable d'inclure les parties essentielles de la réponse ici et de fournir le lien de référence. Les réponses de lien uniquement peuvent devenir invalides si la page liée change.
αғsнιη
Notez que le message a apparemment été mis à jour avec les étapes ici
Wilf
0

Dans mon cas, le firmware Bluetooth ne s'est pas chargé jusqu'à ce que j'ai créé le répertoire brcm dans / lib / firmware / et renommé le fichier en

BCM43142A0-0a5c-21d7.hcd

J'utilise Debian 8 et Dell Inspiron 15

À votre santé

Alex
la source
-1

La solution fonctionne (Ubuntu 14.04 kernel-4.2) Dans mon cas, le fichier HCD devait être nommé BCM.hcd. Le nom exact du fichier que vous devez nommer votre fichier hcd sera indiqué dans la description de l'erreur de chargement, qui peut être affiché à l'aide de la commande:

dmesg | grep firmware

comme Wilf l'a dit plus haut!

Gimnasist
la source
Bienvenue sur Ask Ubuntu! Veuillez ne pas ajouter de commentaires comme réponses. Investissez un peu de temps dans le site et vous obtiendrez des privilèges suffisants pour voter des réponses que vous aimez comme celle- ci , ou pour ajouter des commentaires réels lorsque vous cherchez des éclaircissements sur des problèmes.
Martin Thornton