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
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?
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
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.