Bluetooth non funziona su Ubuntu 14.04 con Dell Inspiron 15-3521


9

Ho un laptop Dell inspiron 15-3521 con Ubuntu 12.04 preinstallato, funzionava bene (ho rimosso questo Ubuntu). Ho installato Ubuntu 14.04 (nuova installazione).

(Il driver installato è: bcmwl-kernel-source 6.30.223.141+bdcom-0ubuntu2)

La rete WiFi funziona bene ma il Bluetooth non funziona (il mio telefono, altri PC e laptop non riescono a vederlo e il mio laptop non riesce a vedere nulla.)

Il dispositivo Bluetooth è abilitato, acceso e visibile.

lspci risultato:

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 risultato:

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

Sembra che non sia collegato al bus PCI, puoi aggiornare la tua domanda con l' lsusboutput modificandolo ?
P.-H. Lin,

Non quella, è la scheda wireless.
P.-H. Lin,

Il bluetooth viene visualizzato in lsusb
Momo

Cosa posso fare ora?
Momo,

Risposte:


4

Sfortunatamente, il tuo dispositivo Bluetooth:

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

Non è supportato da nessuna versione di Ubuntu di serie, fare riferimento a
Bug1129865 [Broadcom Combo BT / Wifi Card] 21D3 21D7 Bluetooth non rileva nulla
(il motivo è elencato nel commento # 7)

E ti suggerirò di iscriverti a questo bug:
Bug 1065400 Supporto per il caricamento del firmware bluetooth Broadcom
Potrebbe esserci una soluzione alternativa in quel thread, buona fortuna!


8

Passaggi simili a quelli di Diabolik2. Le nuove informazioni sono dove e come ottenere il file esadecimale.

fonti:

Per avere una soluzione completa scrivo tutti i miei passi dall'inizio:

  1. Trova l'ID del tuo dispositivo:

    $ lsusb | grep Bluetooth

    La mia uscita per esempio:

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

    da cui 0a5c: 21d7 dovrebbe essere ricordato.

  2. Ottieni un file esadecimale per il tuo dispositivo:

    • Dopo aver cercato i driver Bluetooth in Google, ho scelto questo download: http://drivers.softpedia.com/get/BLUETOOTH/Broadcom/Broadcom-43142-Bluetooth-40-Adapter-Driver-12007030-for-Windows-8.shtml #Scarica
    • Ho estratto l'ultimo file .hex per caso. Fortunatamente ha funzionato. PASSAGGI: In nautilus fai clic con il pulsante destro del mouse sul file .cab scaricato > scegli Apri con Archive Manager > seleziona l'ultimo file .hex nell'elenco degli archivi> fai clic con il pulsante destro del mouse> Estrai ...
    • scarica e compila hex2hcd
      $ git clone git: //github.com/jessesung/hex2hcd.git
      $ cd hex2hcd
      $ make
    • converti il ​​.hex in .hcd
       $ ./hex2hcd /path/to/extracted.hex /where/you/want/your_new.hcd
  3. Copia il file hcd su / lib / firmware come lib / firmware / fw- 0a5c_21d7 .hcd.

    Nel nome file usa l'ID che hai scoperto in precedenza.


1
Passaggio 3. Dovrebbe essere copiare il file hcd in:/lib/firmware/brcm/
david6

I have extracted the last .hex file by chance. Fortunately it worked.- le persone che lo leggono, tieni presente che se non funziona potrebbe rompere qualcosa, quindi probabilmente dovresti farlo solo se il post di Diabolik2 non funziona per te.
Wilf,

1
Inoltre è molto importante leggere ciò che dmesg | grep Bluetoothdice, in quanto ti darà informazioni utili. Nel mio caso stava dicendo che non è stato possibile caricare il file brcm / BCM.hcd , quindi ho chiamato il file hcd come BCM.hcdinvece di fw-0a5c_21d7.hcde copiato /lib/firmware/brcm/. Ha funzionato come un fascino. DELL inspiron 15 - 3543.
Qualphey,

Oh, e il hexfile che ho scelto usando il metodo suggerito nella risposta di Florin C. Utilizzando il inffile.
Qualphey,

1
Per Ubuntu 16.04, la soluzione è ottenere il file .hex da Windows come spiegato sopra, trasformarlo in .hdcanche come spiegato, ma è necessario inserire un nome diverso per il file del firmware come: /lib/firmware/brcm/BCM-0a5c-6410.hcd(dipende dal bus lsusb: ID devnum)
morhook, l'

6

Risposte dicendo che devo installare Windows per ottenere un firmware per Linux ... sembra sbagliato, vero?

Ma le risposte precedenti erano oro. Ho Bluetooth funzionante dopo tanto tempo nel mio Dell con Ubuntu 12.04 386. Qui i miei completamenti alle risposte precedenti (specialmente sb):

  1. La cabina dello sb è buona e aveva i file esadecimali per diversi chip su questa famiglia.

  2. cabextract è uno strumento per estrarre un archivio .cab. appena:

    sudo apt-get install cabextract

ed estrailo da:

cabextract 20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab

Ricorda che non c'è una directory all'interno della cabina, ma solo file, quindi otterrai molti file esadecimali. È bene mkdir una directory specifica ed estrarre la cabina.

  1. Come ottenere il file esadecimale giusto .

Quindi ho l'ID del chip: 0a5c: 21d7 e un mucchio del file hex. Come posso ottenere quello giusto per me? Il trucco è indagare sul file .inf che indica a Windows cosa installare. Cercando 21D7 (nota la D maiuscola invece di 'd') Ottengo questo:

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

USB / VID & PID è quello che ottengo su lsusb: capital (0a5c: 21d7). Il RAMUSB21D7 è ciò di cui ho bisogno per cercare successivamente nel file inf (è la descrizione del dispositivo).

E questo è il mio risultato:

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

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

E il file esadecimale che userò è BCM43142A0_001.001.011.0122.0126.hex

Il resto è uguale a sopra. Ottieni lo strumento tramite git, costruiscilo, converti il ​​file esadecimale in hcd, scarta / ricarica btusb.

Nota: tenere presente che il file hcd dovrebbe iniziare con fw -...... e non con fw _...... ho fatto questo errore. :)


Dopo aver estratto il file esadecimale corretto e seguito la procedura. Quando ho riavviato la mia macchina e ho sparato il comando dmesg | grep firmware. Sto ottenendo un output come[ 15.023826] bluetooth hci0: Direct firmware load for brcm/BCM43142A0-0a5c-21d7.hcd failed with error -2
ravi1991,

6

Ho risolto il problema con la soluzione da questo post :

In sintesi, ho fatto questi passaggi: Elenca il tuo ID:

lsusb

Il mio id è: 0a5c:21d7

Ottieni il file .hex: nella partizione di Windows (presumendo che avvii il doppio avvio con Windows) , ottieni il file BCMxxxx.hex C:\windows\system32\drivers. Se sono presenti due o più file .hex, visualizza quale è in uso con Gestione dispositivi di Windows. Copia questo file nella tua home directory

Apri il terminale e digita questi comandi:

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

Ricarica i moduli con questi comandi:

sudo modprobe -r btusb
sudo modprobe btusb

Riavvia il tuo computer.

Apri il terminale e scrivi:

dmesg | grep firmware

se tutto va bene puoi visualizzare il messaggio:

[   xxxxxxxxxx] Bluetooth: firmware loaded

Questo è tutto.

Buona fortuna Diabolik2


1
Sebbene questo collegamento possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il collegamento come riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia.
αғsнιη,

Nota che il post apparentemente è stato aggiornato con i passaggi qui
Wilf

0

Nel mio caso il firmware bluetooth non si è caricato fino a quando non ho creato la directory brcm in / lib / firmware / e rinominato il file in

BCM43142A0-0a5c-21d7.hcd

Sto usando Debian 8 e Dell Inspiron 15

Saluti


-1

La soluzione funziona (Ubuntu 14.04 kernel-4.2) Nel mio caso, il file HCD doveva essere chiamato BCM.hcd. Il nome esatto del file da assegnare al file hcd verrà indicato nella descrizione dell'errore di caricamento, che può essere visualizzato usando il comando:

dmesg | grep firmware

come ha affermato Wilf sopra!


Benvenuto in Ask Ubuntu! Si prega di non aggiungere commenti come risposte. Investi un po 'di tempo nel sito e otterrai privilegi sufficienti per valutare le risposte che ti piacciono come questa o per aggiungere commenti effettivi quando chiedi chiarimenti su eventuali problemi.
Martin Thornton,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.