Buscar en el blog de Andrés Cifuentes

viernes, 4 de julio de 2008

Configuracion de la tarjeta wireless Broadcom 4310 sobre Linux Fedora 9


Primer paso identificar la tarjeta wireless

Identificar la tarjeta wireless es el primer paso en el proceso y fue el dato que realmente me mostró el camino a seguir, por que les advierto que escribo este blog por si algún alma en pena está buscando la solución al mismo problema, de paso para los registros escritos y los buscadores el portátil es un HP Pavillion dv2000 (HP = Hewlett Packard), pero la referencia es dv2810us, la tarjeta es una Broadcom 4310.


El comando en shell es un simple lspci para los elementos pci, para los usb lsusb, parte del problema es que esta referencia particular tiene los dos, pues en una sola tarjeta integraron el bluetooth y el wlan.

[root@warhol ~]# lspci

retorna :


04:00.0 Network controller: Broadcom Corporation BCM4310 USB Controller (rev 01)

En este caso si se tiene otra tarjeta Broadcom, le recomiendo que busque en Google, yo encontré varios post para las referencias Broadcom 4311, 4315, 4330 ... pero para esta en particular no hay nada, bueno no había nada cuando yo busque (Julio 1, 2008).

Alternativas aparentes

Aparentemente hay dos alternativas con las tarjetas Broadcom y el problema se reduce a que Broadcom no libera los fuentes de los drivers, por tanto a la comunidad le toca aplicarle ingeniería reversa a los mismos para ofrecerlos sobre Linux.

La primera alternativa es usar los drivers nativos de Linux, luego de actualizarle el firmware a la tarjeta, se descomprimen los fuentes, se ponen en /lib/firmware y listo. Sin embargo esta alternativa no funciona pues particularmente esta tarjeta no está soportada, mas información se puede encontrar en Linux Wireless. Si uno es un usuario promedio (Sin ánimo de ofender) puede incluso probar con aplicaciones que hacen este proceso con una cómoda interfaz gráfica (autonine, easylife).

La segunda alternativa es usar ndiswrapper, que básicamente encapsula el driver nativo de windows en Linux. Tiene sus desventajas evidentemente, pero en este caso vamos a ser prácticos porque yo duré dos dias intentando con los drivers nativos, tanto b43, b43XX como b43 legacy y ninguno me dio resultado.

Instalando y configurando ndiswrapper


Paradójicamente esto se hace en un par de comandos y se edita solamente un archivo de configuración, pero antes de que se emocionen, resulta que conseguir el HP driver (HP <> Hewlett Packard) archivo .inf, es una tarea similar a conseguir una aguja en un pajar, porque de nuevo Broadcom no libera los drivers al público, solamente se consiguen con los resellers que por "facilidad" para los usuarios los ponen en instaladores .exe o en .cab. Afortunadamente siempre existe un alma caritativa que pone el vínculo a los drivers en algún blog o foro y hay otros que los "hostean" aunque no sea 100% legal hacerlo.

Comandos : (Yo siempre me conecto como root por que odio no tener permisos suficientes en mi propia máquina, si no es de esta misma política adicione sudo 'comando' a los comandos siguientes)

1. Instalar ndiswrapper

yum -y install kmod-ndiswrapper

2. Crear un directorio para almacenar los drivers

mkdir /etc/ndiswrapper-drivers

cd /etc/ndiswrapper-drivers

3. Obtener los drivers (Solo por las dudas estos son los drivers específicos para esta tarjeta)

wget http://myspamb8.googlepages.com/R174291-pruned.zip

unzip R174291-pruned.zip
rm R174291-pruned.zip

4. Instalar los drivers

ndiswrapper -i bcmwl5.inf

ndiswrapper -l

5. Cargar el módulo en el kernel

modprobe ndiswrapper

ndiswrapper -ma

6. Configuración manual de modprobe

vi /etc/modprobe.conf


Adicionamos la línea

alias wlan0 ndiswrapper


7.Probamos

ifconfig


Debemos ver la interface de red wlan0


iwlist wlan0 scan

Debemos ver la lista de los ESSID de las redes inalámbricas disponibles


Configurando la conexión, red, seguridad y demás opciones

Definitivamente ya no estamos para hacerlo por línea de comandos, Fedora 9 con Gnome incluyen un applet que se adiciona en la barra de menú por defecto para realizar la configuración (NetworkManager Applet) este está activado por defecto para las redes wireless y desactivado para las wired. En mi caso como no tengo ningún servicio de red en mi portátil, usando la utilidad de system-config-network activé el servicio para manejar ambas conexiones con el applet.

Andrés Cifuentes
Julio 4, 2008

1 comentario:

  1. Hace poco actualize mi fedora 9 a fedora core 10, y aunque la tarjeta wireless continua funcionando sin problema con el driver usando ndiswrapper, ya hay una actualizacion de los driver de broadcom para linux que funciona con la tarjeta BCM4312.

    Mas información se puede encontrar en este blog, donde explican: Como instalar los drivers nativos para la tarjeta BCM4312 usando rpmforge y yum.

    ResponderBorrar