Fonte:
http://www.roger.lovato.com.br?p=59#more-59
Em todas as distros que utilizei minha interface wireless BCM 4306, sempre usei o ndiswrapper junto com o driver do Windows. Para a minha surpresa, desde a versão dapper 4 do (k)ubuntu não consegui mais utilizá-la dando sempre a seguinte mensagem de erro:
[4295348.307000] bcm43xx: Error: Microcode "bcm43xx_microcode5.fw" not available or load failed.
Através de minhas pesquisas e também do grupo de discussão do ubuntu (ubuntu-users), percebi que o erro ocorre que a preferência é o uso do driver bcm43xx que agora vem nativo no kernel 2.6.15 em diante. Para a minha infelicidade, o firmware da minha interface não está disponível e assim surgiram dois caminhos para eu poder utilizar:
1 - Colocar o módulo bcm43xx em blacklist e continuar usando o ndiswrapper normalmente como eu já fazia antes;
2 - Utilizar um utilitário chamado fwcutter para extrair o meu firmware do driver do Windows (.sys) e utilizar com o módulo bcm43xx;
1) Utilizando o ndiswrapperPara poder utilizar o ndiswrapper ao invés do módulo, basta colocar o módulo bcm43xx em blacklist para nunca ser carregado. Para isso, edite o arquivo /etc/modprob.d/blacklist e adicione a seguinte linha:
blacklist bcm43xx
Em seguida, basta utilizar o ndiswrapper normalmente conforme já foi explicado
aqui.
2) Utilizando o módulo bcm43xx2.1) Compilando ferramenta fwcutter para extrair o firmware da interfaceComo o meu firmware não está disponível para ser utilizado com esse módulo, há necessidade de utilizar a ferramenta fwcutter para extrair o driver do Windows (arquivo .sys) para posteriormente ser utilizado pelo módulo.
Para instalar o fwcutter, execute o seguinte comando:
$ sudo apt-get install bcm43xx-fwcutter
obs.: quando eu fiz esse howto no meu site, ainda não havia esse pacote, portanto, quem visitar o meu site, vai sugerir a compilação do mesmo.
2.2) Extraindo o firmware da interface através do driver do WindowsPara extrair o firmware da interface wirelless para ser utilizado pelo módulo, basta utilizar a ferramenta que compilamos da seguinte forma:
$ cd /caminho/para/o/driver/do/windows
$ sudo bcm43xx-fwcutter bcmwl5.sys
Vários arquivos com extensão .fw serão gerados. Copie todos esses arquivo para /lib/firmware/versão_do_seu_kernel.
$ sudo cp *.fw /lib/firmware/versão_do_kernel
Para facilitar pode-se utilizar o comando abaixo caso tenha dúvidas em qual diretório colocar quanto há mais de um kernel instalado.
$ sudo cp *.fw /lib/firmware/`uname -r`
2.3) Colocando a interface para funcionarCarregue o módulo bcm43xx:
$ sudo modprobe bcm43xx
Defina o essid de sua rede wireless:
$ sudo iwconfig eth1 essid meu_essid
Defina a sua chave WEP:
$ sudo iwconfig eth1 key minha_chave
Obtenha o endereço IP via dhcp client:
$ sudo dhclient3 eth1
obs: Usando o bcm43xx não há necessidade de instalar o ndiswrapper.
[]s
Roger[/code]