web-dev-qa-db-fra.com

ubuntu 14.04 bluetooth BCM43142 pas de découverte (délai d’expiration pour tx)

je parcourais de nombreux articles sur le sujet, même si je ne trouvais pas de réponse monolithique.

le problème: impossible de découvrir\détecter d'autres noeuds Bluetooth.

information:

$ uname -r
3.13.0-59-generic

$ cat /etc/*release* | grep -i dist
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.2 LTS"

$ lsusb | grep -i bluetooth
Bus 002 Device 003: ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0

$ Sudo lshw -c network
  *-network               
       description: Wireless interface
       product: BCM43142 802.11b/g/n
       vendor: Broadcom Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       logical name: wlan0
       version: 01
       serial: XX:XX:XX:XX:XX:XX
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=wl0 driverversion=6.30.223.248 (r487574) ip=192.168.1.103 latency=0 multicast=yes wireless=IEEE 802.11abg
       resources: irq:16 memory:d0500000-d0507fff

$ usb-devices

T:  Bus=02 Lev=02 Prnt=02 Port=04 Cnt=01 Dev#=  3 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=ff(vend.) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=0a5c ProdID=21d7 Rev=01.12
S:  Manufacturer=Broadcom Corp
S:  Product=BCM43142A0
S:  SerialNumber=XXXXXXXXXXXXX
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=(none)
I:  If#= 3 Alt= 0 #EPs= 0 Cls=fe(app. ) Sub=01 Prot=01 Driver=(none)

$ lsmod | grep -i 'bluetooth\|btusb\|wl'
btusb                  32412  0 
wl                   6367819  0 
cfg80211              484040  1 wl
bluetooth             391136  22 bnep,btusb,rfcomm

$ dmesg | grep -i bluetooth
[    2.964011] Bluetooth: Core ver 2.17
[    2.964049] Bluetooth: HCI device and connection manager initialized
[    2.964056] Bluetooth: HCI socket layer initialized
[    2.964058] Bluetooth: L2CAP socket layer initialized
[    2.964062] Bluetooth: SCO socket layer initialized
[    2.969253] Bluetooth: RFCOMM TTY layer initialized
[    2.969268] Bluetooth: RFCOMM socket layer initialized
[    2.969273] Bluetooth: RFCOMM ver 1.11
[    2.969744] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    2.969746] Bluetooth: BNEP filters: protocol multicast
[    2.969751] Bluetooth: BNEP socket layer initialized
[    3.460974] Bluetooth: can't load firmware, may not work correctly
[    5.462029] Bluetooth: hci0 command 0x1003 tx timeout

comme vous pouvez le voir dans l'extrait ci-dessus, sur les deux dernières lignes - il semble qu'il y ait un problème avec le pilote.

notez que nous parlons d'un combo-nic. c’est-à-dire qu’il s’agit d’un réseau Wi-Fi et d’un périphérique Bluetooth sur la carte d’interface réseau physique.

peut-on s'il vous plaît éclaircir la question:

  1. qu'est-ce qui ne va pas?
  2. existe-t-il une solution logicielle? (Je sais que je peux acheter du matériel différent)

PDATE: J'ai suivi le lien pilot6 et y ai effectué les étapes décrites pour les deux architectures. c'est-à-dire 32 bits et 64 bits. J'ai éteint l'ordinateur, mais le problème était encore résolu. Ci-joint plus d'informations, si d'autres informations sont nécessaires, s'il vous plaît faites le moi savoir.

$ dmesg | grep -i bluetooth
[    3.137118] Bluetooth: Core ver 2.17
[    3.137138] Bluetooth: HCI device and connection manager initialized
[    3.137145] Bluetooth: HCI socket layer initialized
[    3.137148] Bluetooth: L2CAP socket layer initialized
[    3.137155] Bluetooth: SCO socket layer initialized
[    3.139875] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    3.139878] Bluetooth: BNEP filters: protocol multicast
[    3.139884] Bluetooth: BNEP socket layer initialized
[    3.155867] Bluetooth: RFCOMM TTY layer initialized
[    3.155877] Bluetooth: RFCOMM socket layer initialized
[    3.155881] Bluetooth: RFCOMM ver 1.11
[    3.574991] Bluetooth: can't load firmware, may not work correctly
[    5.583477] Bluetooth: hci0 command 0x1003 tx timeout

je ne suis pas certain, bien qu'il semble que le firmware n'ait pas été chargé:

T:  Bus=02 Lev=02 Prnt=02 Port=04 Cnt=01 Dev#=  3 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=ff(vend.) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=0a5c ProdID=21d7 Rev=01.12
S:  Manufacturer=Broadcom Corp
S:  Product=BCM43142A0
S:  SerialNumber=C01885BC70F0
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=(none)
I:  If#= 3 Alt= 0 #EPs= 0 Cls=fe(app. ) Sub=01 Prot=01 Driver=(none)

voir 4 rangées du bas - Driver=btusb. donc, je ne suis pas sûr que la copie du firmware ait aidé de toute façon.

PDATE 2: c'est exactement ce que j'ai fait:

$ mkdir /tmp/bt && cd /tmp/bt

$ wget http://download.windowsupdate.com/msdownload/update/driver/drvs/2013/07/20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab
--2015-07-28 19:00:45--  http://download.windowsupdate.com/msdownload/update/driver/drvs/2013/07/20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab
Resolving download.windowsupdate.com (download.windowsupdate.com)... 191.234.4.50
Connecting to download.windowsupdate.com (download.windowsupdate.com)|191.234.4.50|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1134497 (1.1M) [application/octet-stream]
Saving to: ‘20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab’

100%[=============================================================================================================>] 1,134,497   2.01MB/s   in 0.5s   

2015-07-28 19:00:46 (2.01 MB/s) - ‘20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab’ saved [1134497/1134497]

$ cabextract 20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab 
20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab: WARNING; possible 16136 extra bytes at end of file.
Extracting cabinet: 20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab
  extracting bcbtums-win8x86-brcm.cat
  extracting bcbtums-win8x86-brcm.inf
  extracting bcbtums.sys
  extracting BCM20702A1_001.002.014.0889.0903.hex
  extracting BCM20702A1_001.002.014.0889.0926.hex
  extracting BCM20702A1_001.002.014.1055.1056.hex
  extracting BCM20702A1_001.002.014.1055.1057.hex
  extracting BCM20702A1_001.002.014.1055.1058.hex
  extracting BCM20702A1_001.002.014.1055.1060.hex
  extracting BCM20702A1_001.002.014.1055.1061.hex
  extracting BCM20702A1_001.002.014.1055.1062.hex
  extracting BCM20702A1_001.002.014.1055.1063.hex
  extracting BCM20702A1_001.002.014.1055.1064.hex
  extracting BCM20702A1_001.002.014.1055.1065.hex
  extracting BCM20702A1_001.002.014.1055.1067.hex
  extracting BCM20702A1_001.002.014.1055.1068.hex
  extracting BCM20702A1_001.002.014.1055.1070.hex
  extracting BCM20702A1_001.002.014.1055.1071.hex
  extracting BCM20702A1_001.002.014.1055.1072.hex
  extracting BCM20702A1_001.002.014.1055.1073.hex
  extracting BCM20702A1_001.002.014.1055.1074.hex
  extracting BCM20702A1_001.002.014.1055.1076.hex
  extracting BCM20702A1_001.002.014.1055.1079.hex
  extracting BCM20702A1_001.002.014.1055.1080.hex
  extracting BCM20702A1_001.002.014.1055.1082.hex
  extracting BCM20702A1_001.002.014.1055.1143.hex
  extracting BCM20702A1_001.002.014.1055.1229.hex
  extracting BCM20702A1_001.002.014.1055.1239.hex
  extracting BCM20702A1_001.002.014.1159.1168.hex
  extracting BCM20702A1_001.002.014.1159.1171.hex
  extracting BCM20702A1_001.002.014.1159.1174.hex
  extracting BCM20702A1_001.002.014.1159.1176.hex
  extracting BCM20702A1_001.002.014.1159.1178.hex
  extracting BCM20702A1_001.002.014.1159.1183.hex
  extracting BCM20702A1_001.002.014.1159.1187.hex
  extracting BCM20702A1_001.002.014.1159.1190.hex
  extracting BCM20702A1_001.002.014.1159.1193.hex
  extracting BCM20702A1_001.002.014.1159.1201.hex
  extracting BCM20702A1_001.002.014.1159.1208.hex
  extracting BCM20702A1_001.002.014.1159.1212.hex
  extracting BCM20702A1_001.002.014.1159.1214.hex
  extracting BCM20702A1_001.002.014.1159.1216.hex
  extracting BCM20702A1_001.002.014.1159.1230.hex
  extracting BCM43142A0_001.001.011.0084.0099.hex
  extracting BCM43142A0_001.001.011.0084.0100.hex
  extracting BCM43142A0_001.001.011.0084.0102.hex
  extracting BCM43142A0_001.001.011.0122.0124.hex
  extracting BCM43142A0_001.001.011.0122.0126.hex
  extracting BCM43142A0_001.001.011.0122.0127.hex
  extracting BCM43142A0_001.001.011.0122.0128.hex
  extracting BCM43142A0_001.001.011.0122.0131.hex
  extracting BCM43142A0_001.001.011.0122.0133.hex
  extracting BCM43142A0_001.001.011.0122.0135.hex
  extracting BCM43142A0_001.001.011.0122.0137.hex
  extracting BCM43142A0_001.001.011.0122.0139.hex
  extracting BCM43142A0_001.001.011.0122.0146.hex
  extracting BCM43142A0_001.001.011.0122.0152.hex
  extracting BCM43142A0_001.001.011.0122.0156.hex
  extracting BcmBtRSupport.dll
  extracting btwampfl.sys
  extracting btwdi.dll
  extracting BtwRSupportService.exe

All done, no errors.


$ wget https://github.com/jessesung/hex2hcd/archive/master.Zip
--2015-07-28 19:03:56--  https://github.com/jessesung/hex2hcd/archive/master.Zip
Resolving github.com (github.com)... 192.30.252.130
Connecting to github.com (github.com)|192.30.252.130|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://codeload.github.com/jessesung/hex2hcd/Zip/master [following]
--2015-07-28 19:03:57--  https://codeload.github.com/jessesung/hex2hcd/Zip/master
Resolving codeload.github.com (codeload.github.com)... 192.30.252.146
Connecting to codeload.github.com (codeload.github.com)|192.30.252.146|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/Zip]
Saving to: ‘master.Zip’

    [ <=>                                                                                                          ] 8,902       --.-K/s   in 0.1s    

2015-07-28 19:03:58 (59.0 KB/s) - ‘master.Zip’ saved [8902]

$ unzip master.Zip 
Archive:  master.Zip
1175dcef12aff35a6ce8d0422c7d811a9a2a8801
   creating: hex2hcd-master/
  inflating: hex2hcd-master/LICENSE  
  inflating: hex2hcd-master/Makefile  
  inflating: hex2hcd-master/hex2hcd.c 

$ lsusb | grep -i bluetooth
Bus 002 Device 003: ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0
geek@nebula:/tmp/bt$ grep 'VID_0A5C&PID_21D7' bcbtums-win8x86-brcm.inf 
%Dell1704.DeviceDesc%=RAMUSB21D7,           USB\VID_0A5C&PID_21D7       ; BRCM Generic 43142A0 RAMUSB

$ grep RAMUSB21D7 bcbtums-win8x86-brcm.inf -A 3 | grep -i hex
BCM43142A0_001.001.011.0122.0126.hex
HKR,,%RAMPatchFileName%,0x00000, "BCM43142A0_001.001.011.0122.0126.hex"

$ cd hex2hcd-master/

$ make
gcc -O2 -march=native    hex2hcd.c   -o hex2hcd

$ ./hex2hcd ../BCM43142A0_001.001.011.0122.0126.hex ../BCM43142A0-0a5c-21d7.hcd
15, :020000040021D9

bump addr to 0x00210000
281, :8700000001060069999942041FC15E00000014222200001422223B02570258025802590259025A025A025B025B025C025C025D025D025E025E025F025F02600260026102610262026202630263026402640265026502660266026702670268026802690269026A026A026B281F0AFD0400FFFFFFFF400600000000A40100020A008700210000000000000003

411, :C800870041250044656C6C20576972656C657373203137303420426C7565746F6F74682076342E302B485300980100035C01000172060003000708000193040020000000920600A300C80014648F0300020202B209000000008000000000006F210002331F05CF000000AA147F8C00AA00800A9200000000140000000000006C584E6C6A3600018012000000B0000000A0000000431008045310020180000000900000006310040273100402C1000000D000000022000000320000007C0400010A00020A05001C0A200001C463

411, :C8014F0008007800320000030000C30000C0000698F83100FFFFFFFFFF7F00009CF83100FFFFFFFF083B0000A0F83100FFFFFFFF06000000A4F83100FFFFFFFF5C340000A8F83100FFFFFFFF04000000ACF83100FFFFFFFF36300000B0F83100FFFFFFFF09000000B4F83100FFFFFFFFF5330000B8F83100FFFFFFFFC5C40000C0F83100FFFFFFFF00000000C4F83100FFFFFFFF35C90000ECF83100FFFFFFFF28C9000038F93100FFFFFFFF320000003CF93100FFFFFFFF2805000040F93100FFFFFFFF1705000044F931001D

411, :C8021700FFFFFFFF0C09000048F93100FFFFFFFF300500004CF93100FFFFFFFF0C08000050F93100FFFFFFFF160700005CF93100FFFFFFFF1509000060F93100FFFFFFFF0809000064F93100FFFFFFFF170A00006CF93100FFFFFFFF9C05000070F93100FFFFFFFFED01000030FC3100FFFFFFFF6A0400005CFC3100FFFFFFFF0200000070FC3100FFFFFFFF0B09000094FC3100FFFFFFFF5E000000C0FC3100FFFFFFFF02800000C8FC3100FFFFFFFF48850000CCFC3100FFFFFFFF37450000D0FC3100FFFFFFFF2DC900001A

... TRUNCATED

27, :0860D0000000000000000000C8

43, :1063000028000000C8E00E39F0000000020303007E

11, :00000001FF

$ Sudo cp -v ../BCM43142A0-0a5c-21d7.hcd /lib/firmware/brcm
‘../BCM43142A0-0a5c-21d7.hcd’ -> ‘/lib/firmware/brcm/BCM43142A0-0a5c-21d7.hcd’

PDATE 3: Après l’installation du noyau 3.19:

$ dmesg | grep -i bluetooth
[    2.985774] Bluetooth: Core ver 2.20
[    2.985802] Bluetooth: HCI device and connection manager initialized
[    2.985806] Bluetooth: HCI socket layer initialized
[    2.985809] Bluetooth: L2CAP socket layer initialized
[    2.985816] Bluetooth: SCO socket layer initialized
[    2.992686] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    2.992689] Bluetooth: BNEP filters: protocol multicast
[    2.992694] Bluetooth: BNEP socket layer initialized
[    2.995595] Bluetooth: RFCOMM TTY layer initialized
[    2.995602] Bluetooth: RFCOMM socket layer initialized
[    2.995607] Bluetooth: RFCOMM ver 1.11
[    3.521077] Bluetooth: hci0: BCM: patching hci_ver=06 hci_rev=007e lmp_ver=06 lmp_subver=210b
[    4.056118] Bluetooth: hci0: BCM: firmware hci_ver=06 hci_rev=007e lmp_ver=06 lmp_subver=210b
2
Mr.

Vous devrez d'abord installer le firmware. Cela peut être fait en utilisant cette réponse .

Mais il semble que le noyau 3.13.0-59 comporte de nombreux bogues. Parmi eux, l’incapacité de charger le micrologiciel.

Je suggère de mettre à jour le noyau à 3.19. Cela peut être fait en exécutant dans le terminal

Sudo apt-get install linux-generic-lts-vivid

et redémarrez.

1
Pilot6