Instalardriver ipw3945 para Intel PRO Wireles 3945abg en
Ubuntu
Como comenté en la entrada Problema con Wireless en Acer Aspire, al
instalar Ubuntu 8.04 (de 32 ó 64 bits) en un notebook con tarjeta
inalámbrica Intel PRO Wireless 3945abg, si utilizamos el mismo para
conectarnos a Internet por un access point, o para cosas relativamente
sencillas, no surgen problemas mayores. El único problema que encontré
en este caso es que en Palola, un notebook Acer Aspire 5920, no
enciende el led del botón de activación de la tarjeta wireless:
funciona (se activa/desactiva al presionarlo), pero no enciende el led
de activación.
Ahora bien. Si queremos “juguetear” con la tarjeta wireless, es decir,
usar programas de detección de redes inalámbricas, configurarla en
distintos modos (Managed, Ad-hoc, Monitor), y otras cosas que se me
ocurren cuando ando aburrido, los problemas se complican hasta llegar a
un punto en el que el notebook no responde y debemos apagarlo de botón.
Revolviendo en Internet encontré la causa y solución: con Ubuntu 8.04
se instala automáticamente el driver libre iwl3945. El mismo no
funciona aún del todo bien para la Intel PRO Wireless 3945abg. Para
solucionarlo vamos a compilar e instalar el driver privativo ipw3945. A
continuación el procedimiento en “El Diario de Palola”:
1.- Crear el directorio donde vamos a trabajar
$ mkdir ipw3945
$ cd ipw3945
2.- Descargar el microcódigo ipw3945 y copiar al directorio de
firmwares de Ubuntu
$ wget http://bughost.org/ipw3945/ucode/ipw3945-ucode-1.14.2.tgz
$ tar -xvzf ipw3945-ucode-1.14.2.tgz
$ sudo cp ipw3945-ucode-1.14.2/ipw3945.ucode /lib/firmware/`uname
-r`/ipw3945.ucode
3.- Descargar el demonio ipw3945 y copiar a /sbin
$ wget http://bughost.org/ipw3945/daemon/ipw3945d-1.7.22.tgz
$ tar -xvzf ipw3945d-1.7.22.tgz
$ sudo cp ipw3945d-1.7.22/x86_64/ipw3945d /sbin/ipw3945d (si el sistema
operativo es de 32 bits, sustituir x86_64 por x86)
4.- Descargar los fuentes ipw3945 y extraer
$ wget
http://surfnet.dl.sourceforge.net/sourceforge/ipw3945/ipw3945-1.2.2.tgz
$ tar -xvzf ipw3945-1.2.2.tgz
5.- Descargar y aplicar el parche necesario para poder compilar en
kernel 2.6.24
$ wget http://james.colannino.org/downloads/patches/ipw3945-1.2.2.patch
$ cp ipw3945-1.2.2.patch ipw3945-1.2.2/ipw3945-1.2.2.patch
$ cd ipw3945-1.2.2
$ patch -p1 ipw3945.h < ipw3945-1.2.2.patch
Nota: si no reconoce el comando patch, instalarlo con la siguiente
sentencia:
$ app-get install patch
6.- Editar el archive Makefile para que la tarjeta soporte el modo
Monitor
$ vi Makefile
Descomentar la línea #CONFIG_IPW3945_MONITOR=y borrándole el numeral (#)
7.- Compilar
$ make SHELL=/bin/bash clean
$ make SHELL=/bin/bash
8.- Instalar
$ sudo make SHELL=/bin/bash install
9.- Editar el archivo /etc/modprobe.d/ipw3945 (si no existe, crearlo).
$ vi /etc/modprobe.d/ipw3945
Agregar las siguientes líneas:
install ipw3945 /sbin/modprobe --ignore-install ipw3945 ; sleep 0.5 ;
/sbin/ipw3945d --quiet
remove ipw3945 /sbin/ipw3945d –kill ; /sbin/modprobe -r –ignore-remove
ipw3945
10.- Descargar de memoria el módulo del driver libre
$ sudo rmmod iwl3945
11.- Editar el archivo /etc/modprobe.d/blacklist para que no cargue más
el driver libre iwl3945 al iniciar el sistema
$ vi /etc/modprobe.d/blacklist
Agregar la línea siguiente al final del archivo:
blacklist iwl3945
12.- Cargar en memoria el driver privativo recién compilado
$ sudo modprobe ipw3945
Si llegaste hasta acá sin problemas, vas a ver la luz prendida y
tintineando del botón de activación de la wireless!!! Se quedará
prendida fija cuando estemos asociados a una red inalámbrica.
Notas:
* El procedimiento es aplicable a otras distribuciones Linux con kernel
2.6.24 y superiores, de 32 y 64 bits.
* Si se actualiza el kernel de Linux, le pasará por arriba a los
cambios que hicimos. En este caso debemos repetir el último comando del
paso 2 y los pasos 6, 7, 8 y 12.
* “Jugueteé” un poco con la wireless y no saltó ningún problema, además
de corregirse el encendido del led del botón de activación.
* Sigue dando error al setear la wireless en modo Master para hacer de
Palola un access point. Tengo pendiente revolver más para ver si esto
se puede corregir o definitivamente el hardware wireless no lo permite.
No me voy a rendir tan fácil!!!
Instalar
driver ipw3945 para Intel PRO Wireless 3945abg en Ubuntu « El Diario de
Palola