#1 Le 15/10/2016, à 13:42
- seebz
Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
Edit: Petit résumé afin de vous éviter de parcourir toute la page...
Pour rendre fonctionnel mon adaptateur bluetooth, j'ai du créer le fichier BCM.hcd à partir des drivers windows.
Ensuite, pour corriger les erreurs de type Protocol not available, il m'a suffit d'installer pulseaudio-module-bluetooth.
Pour que l'audio switche automatiquement quand un périphérique bluetooth est connecté, il suffit d'ajouter la ligne suivante dans le fichier /etc/pulse/default.pa :
load-module module-switch-on-connect
------------
Bonjour, je souhaiterai faire fonctionner le bluetooth de mon adaptateur Broadcom BCM43142.
J'ai effectué diverses tentatives infructueuses et j'en appelle à votre expérience car j'atteins mes limites sur linux.
J'ai essayé de détailler au mieux les différents résultats obtenus lors de mes essais.
Merci par avance pour l'aide que vous pourrez m'apporter.
Descriptif du PC
CONNECTIVITÉ RÉSEAU
Carte LAN sans fil: IEEE 802.11b/g/n
Ethernet: Oui
Bluetooth®: Bluetooth® version standard + HS 4.0
Taux de transfert de données max. LAN sans fil: 150 (réception) / 150 (transmission)
http://www.sony.fr/support/fr/content/c … 21C2E/list
À noter qu'il est pourvu d'un adaptateur NFC, mais ce n'est pas le sujet actuellement.
$ uname -a
Linux vaio 4.4.0-43-generic #63-Ubuntu SMP Wed Oct 12 13:48:03 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.1 LTS
Release: 16.04
Codename: xenial
Le controlleur réseau
$ lspci -vvnn | grep Network
07:00.0 Network controller [0280]: Broadcom Corporation BCM43142 802.11b/g/n [14e4:4365] (rev 01)
$ usb-devices
...
T: Bus=01 Lev=02 Prnt=02 Port=01 Cnt=02 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=ff(vend.) Sub=01 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=0489 ProdID=e062 Rev=01.12
S: Manufacturer=Broadcom Corp
S: Product=BCM43142A0
S: SerialNumber=0C84DCEE31E8
C: #Ifs= 4 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
I: If#= 1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=01 Driver=btusb
I: If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=btusb
I: If#= 3 Alt= 0 #EPs= 0 Cls=fe(app. ) Sub=01 Prot=01 Driver=(none)
...
Nom: BCM43142 / BCM43142A0
http://www.broadcom.com/products/wirele … h/bcm43142
Il semblerait donc que l'adaptateur puisse être identifié des deux façons suivantes :
- PCI\VEN_14E4&DEV_4365
- USB\VID_0489&PID_E062
Dernière modification par seebz (Le 30/10/2016, à 17:40)
Hors ligne
#2 Le 15/10/2016, à 13:42
- seebz
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
linux-firware / linux-firmware-nonfree
$ rfkill list
0: sony-wifi: Wireless LAN
Soft blocked: no
Hard blocked: no
1: sony-bluetooth: Bluetooth
Soft blocked: no
Hard blocked: no
2: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
3: nfc0: NFC
Soft blocked: no
Hard blocked: no
dmesg_default.log à la demande
Pas d'interface wifi.
$ ifconfig
enp14s0 Link encap:Ethernet HWaddr 78:84:3c:37:fc:4e
UP BROADCAST MULTICAST MTU:1500 Metric:1
Packets reçus:0 erreurs:0 :0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B)
lo Link encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
adr inet6: ::1/128 Scope:Hôte
UP LOOPBACK RUNNING MTU:65536 Metric:1
Packets reçus:2404 erreurs:0 :0 overruns:0 frame:0
TX packets:2404 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1
Octets reçus:177840 (177.8 KB) Octets transmis:177840 (177.8 KB)
Interface Bluetooth disponible mais non fonctionnelle.
$ hciconfig
hci0: Type: BR/EDR Bus: USB
BD Address: 0C:84:DC:EE:31:E8 ACL MTU: 1021:8 SCO MTU: 64:1
UP RUNNING PSCAN ISCAN
RX bytes:1022 acl:0 sco:0 events:61 errors:0
TX bytes:3245 acl:0 sco:0 commands:61 errors:0
$ hcitool inq
Inquiring ...
$ hcitool scan
Scanning ...
$ dmesg | grep -i bluetooth
[ 8.829660] Bluetooth: Core ver 2.21
[ 8.829696] Bluetooth: HCI device and connection manager initialized
[ 8.829704] Bluetooth: HCI socket layer initialized
[ 8.829710] Bluetooth: L2CAP socket layer initialized
[ 8.829720] Bluetooth: SCO socket layer initialized
[ 8.891569] Bluetooth: hci0: BCM: chip id 70
[ 8.909352] Bluetooth: hci0: Computer
[ 8.909360] Bluetooth: hci0: BCM (001.001.011) build 0000
[ 8.910382] bluetooth hci0: Direct firmware load for brcm/BCM.hcd failed with error -2
[ 8.910388] Bluetooth: hci0: BCM: Patch brcm/BCM.hcd not found
[ 9.868971] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 9.868976] Bluetooth: BNEP filters: protocol multicast
[ 9.868982] Bluetooth: BNEP socket layer initialized
[ 27.610056] Bluetooth: RFCOMM TTY layer initialized
[ 27.610065] Bluetooth: RFCOMM socket layer initialized
[ 27.610074] Bluetooth: RFCOMM ver 1.11
Hors ligne
#3 Le 15/10/2016, à 13:43
- seebz
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
bcmwl-kernel-source
$ sudo apt install bcmwl-kernel-source
https://doc.ubuntu-fr.org/wifi_broadcom_bcm43xx
$ rfkill list
0: sony-wifi: Wireless LAN
Soft blocked: no
Hard blocked: no
1: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
2: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
3: sony-bluetooth: Bluetooth
Soft blocked: no
Hard blocked: no
4: brcmwl-0: Wireless LAN
Soft blocked: no
Hard blocked: no
5: nfc0: NFC
Soft blocked: no
Hard blocked: no
dmesg_bcmwl-kernel-source.log à la demande
Wifi fonctionnel.
$ ifconfig
enp14s0 Link encap:Ethernet HWaddr 78:84:3c:37:fc:4e
UP BROADCAST MULTICAST MTU:1500 Metric:1
Packets reçus:0 erreurs:0 :0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B)
lo Link encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
adr inet6: ::1/128 Scope:Hôte
UP LOOPBACK RUNNING MTU:65536 Metric:1
Packets reçus:209 erreurs:0 :0 overruns:0 frame:0
TX packets:209 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1
Octets reçus:16139 (16.1 KB) Octets transmis:16139 (16.1 KB)
wlp7s0 Link encap:Ethernet HWaddr 0c:84:dc:ee:31:e7
inet adr:192.168.0.19 Bcast:192.168.0.255 Masque:255.255.255.0
adr inet6: fe80::c1e9:dd35:7ed0:b39c/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Packets reçus:57 erreurs:0 :0 overruns:0 frame:289
TX packets:79 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:11017 (11.0 KB) Octets transmis:10069 (10.0 KB)
Interruption:16
Interface Bluetooth non fonctionnelle.
Ici je note quelques différences :
- l'applet propose le bouton "Activer Bluetooth" (alors que pas Soft/Hard blocked)
- (après activation) l'interface n'apparait pas dans blueman-adapters (liste vide, uniquement le bouton "Close")
$ hciconfig
hci0: Type: BR/EDR Bus: USB
BD Address: 0C:84:DC:EE:31:E8 ACL MTU: 1021:8 SCO MTU: 64:1
UP RUNNING PSCAN ISCAN
RX bytes:1022 acl:0 sco:0 events:61 errors:0
TX bytes:3245 acl:0 sco:0 commands:61 errors:0
$ hcitool inq
Inquiring ...
$ hcitool scan
Scanning ...
$ dmesg | grep -i bluetooth
[ 8.807589] Bluetooth: Core ver 2.21
[ 8.807611] Bluetooth: HCI device and connection manager initialized
[ 8.807617] Bluetooth: HCI socket layer initialized
[ 8.807621] Bluetooth: L2CAP socket layer initialized
[ 8.807629] Bluetooth: SCO socket layer initialized
[ 10.893182] Bluetooth: hci0 command 0x1001 tx timeout
[ 18.889427] Bluetooth: hci0: BCM: Reading local version info failed (-110)
[ 18.897730] Bluetooth: hci0: BCM: chip id 70
[ 18.914044] Bluetooth: hci0: BCM43142A
[ 18.914052] Bluetooth: hci0: BCM (001.001.011) build 0000
[ 18.914236] bluetooth hci0: Direct firmware load for brcm/BCM.hcd failed with error -2
[ 18.914243] Bluetooth: hci0: BCM: Patch brcm/BCM.hcd not found
[ 19.023724] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 19.023729] Bluetooth: BNEP filters: protocol multicast
[ 19.023735] Bluetooth: BNEP socket layer initialized
À ce stade, si j'active le bluetooth (via l'applet) et que je redémarre à chaud (pas éteindre/allumer) :
- l'applet propose le bouton "Désactiver"
- l'interface apparait dans blueman-adapters
- le pc ne détecte pas d'appareil
- le pc n'est pas visible par les autres appareils
- les lignes "hci0 command 0x1001 tx timeout" et "hci0: BCM: Reading local version info failed (-110)" n'apparaissent plus dans dmesg
$ dmesg | grep -i bluetooth
[ 8.307311] Bluetooth: Core ver 2.21
[ 8.307333] Bluetooth: HCI device and connection manager initialized
[ 8.307338] Bluetooth: HCI socket layer initialized
[ 8.307342] Bluetooth: L2CAP socket layer initialized
[ 8.307349] Bluetooth: SCO socket layer initialized
[ 8.485696] Bluetooth: hci0: BCM: chip id 70
[ 8.510724] Bluetooth: hci0: BCM43142A
[ 8.510731] Bluetooth: hci0: BCM (001.001.011) build 0000
[ 8.513349] bluetooth hci0: Direct firmware load for brcm/BCM.hcd failed with error -2
[ 8.513356] Bluetooth: hci0: BCM: Patch brcm/BCM.hcd not found
[ 9.298377] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 9.298381] Bluetooth: BNEP filters: protocol multicast
[ 9.298387] Bluetooth: BNEP socket layer initialized
Hors ligne
#4 Le 15/10/2016, à 13:43
- seebz
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
firmware brcm/BCM.hcd
bluetooth hci0: Direct firmware load for brcm/BCM.hcd failed with error -2
Bluetooth: hci0: BCM: Patch brcm/BCM.hcd not found
L'objectif est donc de trouver/générer ce fameux firware "BCM.hcd" manquant.
En suivant ces instructions, j'ai donc recherché les drivers pour ma carte.
Il semblerait donc que l'adaptateur puisse être identifié des deux façons suivantes :
- PCI\VEN_14E4&DEV_4365
- USB\VID_0489&PID_E062
En cherchant "USB\VID_0489&PID_E062", je suis tombé sur cette page : http://www.helpjet.net/Pi-12943295.html
J'ai pris le driver le plus récent (v 12.0.1.653 du 2015-06-30) au format zip.
J'ai suivi les instructions et réussi à identifier le fichier .hex correspondant à ma carte : "BCM43142A0_001.001.011.0277.0280.hex"
Je l'ai converti en fichier BCM.hcd et l'ai placé dans le dossier "/lib/firmware/brcm"...
~$ rfkill list
0: sony-wifi: Wireless LAN
Soft blocked: no
Hard blocked: no
1: sony-bluetooth: Bluetooth
Soft blocked: no
Hard blocked: no
2: phy0: Wireless LAN
Soft blocked: no
Hard blocked: no
3: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
4: brcmwl-0: Wireless LAN
Soft blocked: no
Hard blocked: no
5: nfc0: NFC
Soft blocked: no
Hard blocked: no
dmesg_BCM.hcd.log à la demande
Wifi fonctionnel.
À noter que "bcmwl-kernel-source" est encore installé.
$ ifconfig
enp14s0 Link encap:Ethernet HWaddr 78:84:3c:37:fc:4e
UP BROADCAST MULTICAST MTU:1500 Metric:1
Packets reçus:0 erreurs:0 :0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B)
lo Link encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
adr inet6: ::1/128 Scope:Hôte
UP LOOPBACK RUNNING MTU:65536 Metric:1
Packets reçus:209 erreurs:0 :0 overruns:0 frame:0
TX packets:209 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1
Octets reçus:16139 (16.1 KB) Octets transmis:16139 (16.1 KB)
wlp7s0 Link encap:Ethernet HWaddr 0c:84:dc:ee:31:e7
inet adr:192.168.0.19 Bcast:192.168.0.255 Masque:255.255.255.0
adr inet6: fe80::c1e9:dd35:7ed0:b39c/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Packets reçus:141 erreurs:0 :0 overruns:0 frame:1038
TX packets:86 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:26036 (26.0 KB) Octets transmis:10579 (10.5 KB)
Interruption:16
Interface Bluetooth partiellement fonctionnelle.
Donc :
- l'applet propose le bouton "Activer Bluetooth" (alors que pas Soft/Hard blocked)
- (après activation) l'interface n'apparait pas dans blueman-adapters (liste vide, uniquement le bouton "Close")
$ hciconfig
hci0: Type: BR/EDR Bus: USB
BD Address: 0C:84:DC:EE:31:E8 ACL MTU: 1021:8 SCO MTU: 64:1
UP RUNNING PSCAN ISCAN
RX bytes:2448 acl:0 sco:0 events:214 errors:0
TX bytes:32657 acl:0 sco:0 commands:211 errors:0
$ hcitool inq
Inquiring ...
$ hcitool scan
Scanning ...
[ 8.726283] Bluetooth: Core ver 2.21
[ 8.726308] Bluetooth: HCI device and connection manager initialized
[ 8.726314] Bluetooth: HCI socket layer initialized
[ 8.726318] Bluetooth: L2CAP socket layer initialized
[ 8.726327] Bluetooth: SCO socket layer initialized
[ 10.745543] Bluetooth: hci0 command 0x1001 tx timeout
[ 18.534038] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 18.534043] Bluetooth: BNEP filters: protocol multicast
[ 18.534049] Bluetooth: BNEP socket layer initialized
[ 18.741958] Bluetooth: hci0: BCM: Reading local version info failed (-110)
[ 18.749568] Bluetooth: hci0: BCM: chip id 70
[ 18.765578] Bluetooth: hci0: BCM43142A
[ 18.765584] Bluetooth: hci0: BCM (001.001.011) build 0000
[ 19.361601] Bluetooth: hci0: BCM (001.001.011) build 0280
[ 19.377623] Bluetooth: hci0: Broadcom Bluetooth Device (43142)
Après redémarrage à chaud :
- l'applet propose le bouton "Désactiver"
- l'interface apparait dans blueman-adapters
- les lignes "hci0 command 0x1001 tx timeout" et "hci0: BCM: Reading local version info failed (-110)" n'apparaissent plus dans dmesg
- le pc détecte les autres appareil
- le pc est visible par les autres appareils
$ dmesg | grep -i bluetooth
[ 8.284221] Bluetooth: Core ver 2.21
[ 8.285086] Bluetooth: HCI device and connection manager initialized
[ 8.285092] Bluetooth: HCI socket layer initialized
[ 8.285097] Bluetooth: L2CAP socket layer initialized
[ 8.285105] Bluetooth: SCO socket layer initialized
[ 8.377265] Bluetooth: hci0: BCM: chip id 70
[ 8.393638] Bluetooth: hci0: Broadcom Bluetooth Device (43142)
[ 8.393646] Bluetooth: hci0: BCM (001.001.011) build 0280
[ 8.994751] Bluetooth: hci0: BCM (001.001.011) build 0280
[ 9.010701] Bluetooth: hci0: Broadcom Bluetooth Device (43142)
[ 9.352555] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 9.352559] Bluetooth: BNEP filters: protocol multicast
[ 9.352566] Bluetooth: BNEP socket layer initialized
[ 23.632467] Bluetooth: RFCOMM TTY layer initialized
[ 23.632479] Bluetooth: RFCOMM socket layer initialized
[ 23.632487] Bluetooth: RFCOMM ver 1.11
L'association fonctionne (affichage des codes, etc...) mais blueman-assistant affiche :
Périphérique ajouté, mais échec de la connexion
Association avec un Android phone
Oct 15 14:19:00 vaio NetworkManager[924]: <info> [1476533940.5627] manager: (BC:F5:AC:81:4D:59): new Bluetooth device (/org/freedesktop/NetworkManager/Devices/3)
Oct 15 14:19:25 vaio bluetoothd[1097]: a2dp-source profile connect failed for BC:F5:AC:81:4D:59: Protocol not available
Association avec une enceinte bluetooth
Oct 15 14:26:43 vaio bluetoothd[1097]: a2dp-sink profile connect failed for 17:15:11:0E:6F:99: Protocol not available
$ hcitool inq
Inquiring ...
17:15:11:0E:6F:99 clock offset: 0x03fa class: 0x240404
BC:F5:AC:81:4D:59 clock offset: 0x2e92 class: 0x5a020c
$ hcitool scan
Scanning ...
17:15:11:0E:6F:99 TVS 1 High one
BC:F5:AC:81:4D:59 Phone
Hors ligne
#5 Le 15/10/2016, à 13:44
- seebz
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
À ce stade, si j'active le bluetooth (via l'applet) et que je redémarre à chaud (pas éteindre/allumer) :
[...]
Après redémarrage à chaud :
$ sudo modprobe -r btusb
$ sudo modprobe btusb
Ces commandes ont le même effet que le redémarrage à chaud.
Dernière modification par seebz (Le 15/10/2016, à 14:15)
Hors ligne
#6 Le 15/10/2016, à 16:28
- xubu1957
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
Bonjour,
As tu essayé cette commande ?
hciconfig hci0 up
Conseils pour les nouveaux demandeurs et pas qu'eux
Important : Pensez à passer vos sujets en [Réso|u] lorsque ceux-ci le sont, au début du titre en cliquant sur Modifier sous le premier message, et un bref récapitulatif de la solution à la fin de celui-ci. Merci. Membre de Linux-Azur
Hors ligne
#7 Le 15/10/2016, à 16:42
- seebz
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
As tu essayé cette commande ?
hciconfig hci0 up
Salut xubu1957,
j'ai bien entendu essayé les commandes indiquées dans cette doc.
Hors ligne
#8 Le 15/10/2016, à 16:55
- seebz
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
J'ai installé pulseaudio-module-bluetooth, redémarré et ça a l'air d'aller.
sudo apt-get install pulseaudio-module-bluetooth
Ce module résout donc les erreurs Protocol not available, erreurs qui empêchent l'association de se finaliser et de fonctionner correctement.
Dernière modification par seebz (Le 30/10/2016, à 17:29)
Hors ligne
#9 Le 19/10/2016, à 09:14
- VinyMusic
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
De mon côté, je me suis aidé de ce topic ainsi que de celui-ci pour activer le bluetooth sur mon ordinateur HP 15-ay008nf.
Si après toutes ces manips, le bluetooth fonctionne pour l'audio, il n'est fonctionnel qu'à 1 mètre, pas plus. Par contre, après redémarrage, rien ! Je dois à nouveau ressaisir la commande
hciconfig hci0 up
, redémarrer et ça refonctionne. Quant au téléphone, l'appareillage fonctionne... mais pas encore le transfert... A suivre !
- Linux Mint 18, HP 15-ay008nf, 4Gb, intel i3, SSD Samsung Evo 950 256Gb
- Linux Mint 17.03, PC by surcourf (CLEVO) 13,3'', SU2300, 2048 Go, GMA 4500HD
Hors ligne
#10 Le 19/10/2016, à 09:56
- seebz
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
Par contre, après redémarrage, rien ! Je dois à nouveau ressaisir la commande
hciconfig hci0 up
, redémarrer et ça refonctionne
$ sudo modprobe -r btusb $ sudo modprobe btusb
Ces commandes ont le même effet que le redémarrage à chaud.
(sur mon pc en tout cas)
Hors ligne
#11 Le 20/10/2016, à 19:02
- VinyMusic
Re : Bluetooth avec l'adaptateur Broadcom BCM43142 [résolu]
Bonsoir, me revoilà ! (désolé pour la réponse tardive.)
En essayant les 2 commandes indiquées, aucun résultats, le bluetooth reste figé.
Je refais la commande
sudo /etc/init.d/bluetooth restart
puis je redémarre et ça fonctionne !
Je crois qu'il faudra que j'attende quelques màj du noyau pour une meilleure prise en charge...
Merci encore pour le tuto !
- Linux Mint 18, HP 15-ay008nf, 4Gb, intel i3, SSD Samsung Evo 950 256Gb
- Linux Mint 17.03, PC by surcourf (CLEVO) 13,3'', SU2300, 2048 Go, GMA 4500HD
Hors ligne