Ubuntu 13.10: Broadcom 43142 não encontrando dispositivos bluetooth [duplicado]

6

Eu tenho um laptop Lenovo B590. O laptop é certificado do Ubuntu para o Ubuntu 12.04 64bit , então eu não estava esperando nenhum problema. Primeiro eu tentei fazer com que o módulo Broadcom 43142 wifi / bluetooth funcionasse no Ubuntu 12.10 64bit, mas falhou. Portanto, fiz uma nova instalação do Ubuntu 13.10 64bit ontem. Aqui o módulo wifi foi reconhecido fora da caixa. A única coisa que eu precisava fazer era ativar o driver restrito. O módulo bluetooth também é reconhecido, mas não funciona.

O problema é: Eu tenho mais dois dispositivos bluetooth próximos ao laptop, não-pareados e cada um capaz de descobrir o outro, respectivamente. Nenhum deles é capaz de descobrir o laptop, nem hcitool scan encontra nenhum dispositivo. Não dá nenhum erro embora.

lspci | grep -i broadcom:

02:00.0 Network controller: Broadcom Corporation BCM43142 802.11b/g/n (rev 01)1

dmesg | grep -i blue:

[    8.023496] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked
[    8.384905] Bluetooth: Core ver 2.16
[    8.384936] Bluetooth: HCI device and connection manager initialized
[    8.384943] Bluetooth: HCI socket layer initialized
[    8.384944] Bluetooth: L2CAP socket layer initialized
[    8.384959] Bluetooth: SCO socket layer initialized
[    8.721266] Bluetooth: can't load firmware, may not work correctly
[   11.274285] Bluetooth: RFCOMM TTY layer initialized
[   11.274298] Bluetooth: RFCOMM socket layer initialized
[   11.274299] Bluetooth: RFCOMM ver 1.11
[   11.283683] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   11.283686] Bluetooth: BNEP filters: protocol multicast
[   11.283696] Bluetooth: BNEP socket layer initialized
[   13.417478] Bluetooth: hci0 command 0x1003 tx timeout

hciconfig:

hci0:   Type: BR/EDR  Bus: USB
        BD Address: 1C:3E:84:E8:81:98  ACL MTU: 1021:8  SCO MTU: 64:1
        UP RUNNING PSCAN ISCAN 
        RX bytes:1265 acl:0 sco:0 events:84 errors:0
        TX bytes:3794 acl:0 sco:0 commands:81 errors:0

bluez-simple-agent hci # 1C: 3E: 84: E8: 81: 98:

Creating device failed: org.bluez.Error.ConnectionAttemptFailed: Page Timeout

lista de tarefas:

0: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no
1: brcmwl-0: Wireless LAN
        Soft blocked: no
        Hard blocked: no
2: tpacpi_bluetooth_sw: Bluetooth
        Soft blocked: no
        Hard blocked: no
3: hci0: Bluetooth
        Soft blocked: no
        Hard blocked: no

uname -a:

Linux B590 3.11.0-14-generic #21-Ubuntu SMP Tue Nov 12 17:04:55 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

E finalmente, aqui está a saída da tentativa de verificação, que não dá nenhum resultado:

verificação do hcitool:

Scanning...

O que eu perdi? Como devo fazer o dispositivo bluetooth funcionar?

    
por user228890 26.12.2013 / 14:38

2 respostas

0

Estou usando o driver wl da Broadcom no link O driver precisa ser corrigido e eu tenho o arquivo de patch de um dos fóruns do Arch Linux. Faça e instale o wl.ko e lembre-se de carregar o módulo btusb para o bluetooth funcionar

    
por user245913 08.02.2014 / 04:25
0

O Broadcom 43142 bluetooth é suportado pelo kernel do Linux, mas ele requer um arquivo de firmware binário que as distribuições não podem incluir devido a problemas de licenciamento.

Se você olhar para o log do sistema, provavelmente verá que o kernel tenta carregar o firmware de um arquivo chamado BCM43142A0-04ca-2007.hcd e falha.

Obter o arquivo envolve baixar os drivers do Windows para o chip, localizar o arquivo chamado BCM43142A0_001.001.011.0122.0153.hex e, em seguida, convertê-lo para o formato hcd usando hex2hcd . O arquivo convertido deve ser colocado em /lib/firmware/brcm/BCM43142A0-04ca-2007.hcd .

O instalador do Windows drivers EXE pode ser descompactado usando o wine - o instalador criará uma pasta em drive_c onde você deve encontrar o arquivo .hex necessário. Os drivers atuais para o B590 aparentemente mudaram os nomes dos arquivos .hex, então eu tive que fazer googling extra para obter o arquivo do instalador para outro modelo.

Se você não quiser fazer a conversão, use o BCM43142A0-04ca-2007.hcd arquivo que eu fiz que deve ser copiado para onde o kernel irá procurá-lo:

    sudo cp BCM43142A0-04ca-2007.hcd /lib/firmware/brcm/

E este é o BCM43142A0_001.001.011.0122.0153.hex original retirado de um instalador do Windows, apenas no caso de você precisar dele.

    
por ccpizza 26.09.2015 / 12:05