Netphilos

Configuración de la tarjeta wifi broadcoam bcm4311 en el HP6720s y del Adaptador USB N TP-LINK TP-WN727N para OpenSUSE 13.1

Deja un comentario

INTRODUCCIÓN

Después del lanzamiento de openSUSE 12.3, dediqué dos entradas de este blog a explicar el procedimiento que había seguido yo para configurar la tarjeta wifi y el adaptador wifi de mi equipo. Si buscáis esa información, la podéis encontrar en estos dos enlaces.

Hace unos días fue publicada la nueva versión de openSUSE, la 13.1 y después de instalar esta nueva versión en mi portátil he vuelto a configurar ambas interfaces. Aunque he tenido que modificar el procedimiento el resultado ha sido, una vez más, óptimo. Sin embargo, estos cambios no se deben a openSUSE, sino al kernel que la nueva versión incorpora comparado con el anterior, por lo que lo que expliqué en ambos entradas anteriores no terminaba de funcionar adecuadamente.

Para aquellos que llegan hasta aquí por primera vez resumiré brevemente las características del equipo en el que procederemos a la instalación:

  • Marca y modelo: HP Compaq 6720s
  • CPU: Intel(R) Celeron(R) M CPU 530  @ 1.73GHz, 1728 MHz
  • Tarjeta gráfica: Intel Mobile GME965/GLE960 Integrated Graphics Controller
  • RAM; 1 GB
  • Tarjetas de red integradas: 82562GT 10/100 Network Connection y Broadcom BCM4311 802.11 b/g Wireless Lan Controller

Soy consciente de que es un equipo muy limitado en cuanto a sus prestaciones pero, como sigue funcionando, y siempre he estado en contra de comprar algo nuevo si lo viejo sigue sirviendo, me niego a deshacerme de él. Es cierto que con KDE-plasma o Gnome el equipo se parecería mucho a Windows (me refiero a la lentitud y pesadez con que iría todo…), pero como openSUSE siempre me ha permitido la posibilidad de elegir entre unos cuantos entornos de escritorio (unos más lígeros, otros más pesados), el portátil sigue desempeñando su papel y con una rapidez que a muchos amigos sorprende (usuarios de windows ;-))

Configuración de la tarjeta de red WiFi integrada Broadcom 4311 802.11 b/g

Aquellos Linuxeros cuyo portátil viene con esta antigua tarjeta WiFi integrada conocemos desde hace tiempo los problemas a los que nos enfrentamos cada vez que instalamos una nueva versión de nuestra distro habitual. Si has instalado la nueva openSUSE 13.1, o si eres usuario de otra distro, es posible que te enfrentes a problemas parecidos a los que describo aquí y en mi anterior entrada para openSUSE 12.3.

En esta ocasión, y en cuanto terminé de instalar openSUSE 13.1 con el cabe de red conectado, probé a instalar el firmware para la tarjeta que proporciona Packman, una vez que había añadido el repositorio en YaST. Para ello seguí el mismo procedimiento que expliqué en la entrada que dediqué a este tema para openSUSE 12.3 que ya he mencionado. Sin embargo, éste no funcionó. NetworkManager seguía sin detectar la tarjeta wifi de mi equipo y no me permitía acceder a ninguna red wifi.

Para evitar problemas de compatibilidades, desinstalé entonces todo lo relacionado con el Broacom que acababa de instalar de Packman. Probé entonces, con muy poca esperanza, con el método que siempre me había funcionado en versiones anteriores de openSUSE (hasta la 12.2) pero que ya en la 12.3 terminó en un kernel panic: ejecutar install_bcm43xx_firmware en la terminal. Una vez más, como en la versión anterior, terminé también con el sistema colgado en un kernel panic.

Pero no me rendí. Decidí regresar a una configuración de red básica en openSUSE, y probar otra cosa. Este procedimiento ha funcionado sin kernel panic. Como no soy programador no sabré justificar porqué lo hace, pero espero que sirva a quien esté en una situación similar.

1. Desde nuestro menú de aplicaciones, accedemos a YaST.

2. Dentro de YaST entramos en el módulo “Ajustes de red“.

3. El módulo nos advertirá de que la red está gestionada con NetworkManager por lo que no se puede configurar con YaST. Nos informará de que tenemos dos opciones: o utilizar el editor de conexión de NetworManager o modificar el método de configuración al método tradicional con ifup. Esto será lo que haremos más adelante pues este diálogo sólo nos permite aceptar la información.

4. Si no estáis en la pestaña “Opciones Globales“, hacéis click en ella, y marcamos “Método tradicional con ifup

5. A continuación, y al hacer click en la pestaña “Vista resumen“, veremos las tarjetas de red de nuestro portátil. En la correspondiente a BCM4311 802.11 b/g WLAN no habrá nada configurado. Hacemos click en “Editar” en la parte inferior de la ventana.

6. Una ventana emergente nos informará de que falta el firmware necesario para configurar esa tarjeta de red, y nos preguntará si deseamos descargarlo e instalarlo. Le diremos que sí. YaST lo hará por nosotros – por lo que es necesario que estemos conectados a la red mediante un cable de red.

7. Una vez que haya terminado la instalación, el gestor de red procederá a configurar nuestra red. No es necesario hacer nada salvo pulsar en siguiente y guardar los cambios pues sólo estamos utilizando el módulo para instalar el firmware para nuestra tarjeta BCM 4311. De esta forma, a mí no se me colgó en la instalación.

8. Después de aceptar y que el módulo haya actualizado nuestra configuración de red, volvemos a entrar otra vez en el mismo módulo “Ajustes de red

9. Volvemos a “Opciones globales” y marcamos “Controlada por el usuario mediante NetworkManager“.

10. Aceptamos. El módulo volverá a actualizar los ajustes de red del sistema. NetworkManager arrancará sólo y, al cabo de un tiempo – lo que éste tarde en escanear la red wifi, nos informará de las redes wifi a las que podemos conectarnos.

A partir de aquí, procederemos de manera habitual con la configuración de nuestro acceso wifi desde NetworManager.

Configuración del Adaptador USB N TP-LINK TP-WN727N

La configuración e instalación de este adaptador usb wifi es algo más complicada que la que ya expuse a propósito de openSUSE 12.3. Es posible hacerlo funcionar siguiendo aquel tutorial, pero cuando lo apliqué en openSUSE 13.1, NetworkManager tardaba en conectarse a la red wifi – había que intentarlo más de una vez -, y una vez conectada a la misma sufría una especie de degradación de la calidad del enlace: empezaba con velocidades de 120 Mbps, e iba descendiendo hasta por debajo de 54 Mbps, para terminar en 1 Mbps y luego desconectar.

La verdad es que he tenido mucha suerte a la hora de solucionar el problema y me ha tocado leer muchos foros de fuentes diversas. El proceso que seguí se explica a continuación. Intentaré hacerlo fácil pero nos va a tocar tirar de terminal y compilar a nosotros mismos los módulos necesarios.

1. En primer lugar, y para poder compilar nosotros mismos el firmware que nos hará falta, es necesario que descarguemos e instalemos – con el Gestor de Software de YaST – los paquetes siguientes:

  • kernel-devel
  • kernel-default-devel (si la versión de vuestro kernel no es “default”, sino “desktop”, “PAE”… aquí tendréis que seleccionar la que corresponda: kernel-desktop-devel…
  • Make
  • Bindutils
  • gcc y gcc-c++

Aceptaremos las dependencias que el Gestor nos haya seleccionado y procederemos a la instalación.

2. El chipset del TP-LINK TL-WN727N es un “Ralink RT5370″. Esta información la encontré en esta página que fue la que me puso sobre la pista de la mejor solución:

http://wikidevi.com/wiki/TP-LINK_TL-WN727N_v3

3. Si hacemos click en el enlace que aparece más abajo en rt5370sta, se os abrirá la página correspondiente de MediaTeck (antiguamente Ralink) para la descarga. La dirección es la siguiente:

http://www.mediatek.com/_en/07_downloads/01_windows.php?sn=501

Aseguraos de que estáis en Linux en el menú de la izquierda.

4. Buscamos en la pagina la entrada correspondiente a nuestro chipset, que es la siguiente: RT8070 /RT3070 /RT3370 / RT3572 /RT5370 /RT5372/ RT5572 USB USB. Hacemos click en ella y nos envía a la página de descarga donde debéis introducir vuestro correo electrónico y nombre. Hacemos click en submit y se descargará el archivo:

DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2

5. Descomprimimos el archivo con nuestro archivador preferido en nuestra /home/usuario (cambia usuario por el nombre que tenga tu carpeta de usuario). En xfce, yo lo hago directamente desde Thunar, usando el menú contextual.

6. Entramos en la carpeta donde hemos descomprimido el archivo y iniciamos ahí nuestro terminal. De nuevo, en Thunar podemos hacer esto directamente ingresando primero en la carpeta y luego haciendo click en Archivo -> Abrir terminal aquí. Debes tener cuidado de que no haya ninguna carpeta o archivo seleccionado porque si es el caso es posible que dicha opción no aparezca. Para los más novatos dejo una captura de esta opción:

Captura de pantalla - Terminal en thunar

7. Tal y como se explica en el archivo README_STA_usb para una correcta compilación del módulo y para que ciertas funciones del firmware funcionen con NetworManager es necesario que previamente modifiquemos varios archivos. El primero de ellos es Makefile que podemos abrir con nuestro editor favorito (Leafpad en Xfce). Modificamos – si no aparece así – la linea 2 del archivo makefile para que quede:

RT28xx_MODE = STA

Y la línea 8 del mismo archivo, que debe quedar así:

TARGET = LINUX

Guardamos nuestros cambios.

8. El archivo README_STA_usb también nos dice que modifiquemos algunas líneas en el archivo config.mk, de la carpeta os/linux. Podemos hacerlo desde Thunar, navegando hasta ella. Una vez allí, editamos también dicho archivo con leafpad, y modificamos las líneas 26 y 35 que deben quedar como se especifica a continuación:

Línea 26: “HAS_WPA_SUPPLICANT=y”

Línea35: “HAS_NATIVE_WPA_SUPPLICANT_SUPPORT=y”

9. Con estas dos modificaciones a mí el módulo me ha funcionado. Evidentemente, quienes seáis más expertos podéis repasar todo el makefile y el config.mk y modificar otros parámetros. Guardamos nuestros cambios.

10. Volvemos a nuestro terminal, que debe estar en el directorio donde hemos extraído el archivo DPO_RT5572_LinuxSTA_2.6.1.3_20121022.tar.bz2 y escribiremos las siguientes órdenes. La primera es necesaria porque debemos tener derechos de superusuario para compilar el módulo:

su

(Introduce tu contraseña de root)

make

make install

11. El proceso tardará un rato – no mucho. Una vez terminado reiniciamos el ordenador completamente – sin conectar aún el TP-LINK USB.

12. Sin conectar tampoco todavía el TP-LINK USB, abrimos de nuevo una terminal de órdenes. Los siguientes pasos que vamos a dar se justifican por la historia de las pruebas que realicé. Resumiendo mucho la misma, yo conecté el TP-LINK USB en cuanto el sistema arrancó. NetworkManager lo vio, pero se quejaba de que le faltaba el firmware, lo cual era extraño porque lo acababa de compilar. Hice un dmesg en la terminal y, después de varias lecturas y comprobaciones, me di cuenta de que el módulo que acabábamos de compilar se estaba cargando después del módulo rt2800usb. Se me ocurrió invertir el proceso manualmente (es decir, quitar ambos módulos primero y después insertarlos manualmente en otro orden) y funcionó. Para ello, en la terminal de órdenes, introduciremos lo siguiente:

su

modprobe -r rt5572sta

modprobe -r rt2800usb

modprobe rt5572sta

modprobe rt2800usb

13. Una vez hecho esto, insertamos el TP-LINK USB en el puerto correspondiente.

14. Al cabo de un rato (breve: unos 10 segundos), NetworkManager nos informará de que ha encontrado nuevas redes. Debajo de TP-LINK TP-WN727N en NetworkManager aparecerán las redes wifi que detecta. Configuramos nuestra conexión como habitualmente lo hagamos y… a navegar.

Este procedimiento de quitar los módulos y volverlos a cargar hay que hacerlo cada vez que queramos usar el TP-LINK y SIEMPRE antes de insertar el TP-LINK USB. Esto es un tanto pesado, pero mis conocimientos no me permiten modificar el orden de los módulos para que primero se cargue el rt5572sta y luego el rt2800usb cada vez que iniciemos el sistema. Si alguien sabe cómo hacerlo agradeceré su consejo.

Si hacéis click con el botón derecho en el icono de NetworkManager de vuestra área de notificación, y en el menú emergente pulsáis luego en Información de la conexión, podréis comprobar varias cosas. La primera es que el controlador que se esté usando sea simplemente usb. Si figura rt2800 significa que el módulo rt2800 se cargó antes que el rt5572sta y, por lo tanto, no estáis utilizando el firmware que habéis compilado. Además, si estáis cerca del origen de la red wifi y el módulo se ha cargado correctamente, en la misma ventana emergente veréis como la Velocidad del link se mantiene constante a 135 Mb/s y no fluctúa (evidentemente lo hará si os vais alejando).

Esto es todo por hoy. Espero que este tutorial os sirva.

Autor: Netphilos

Profesor de Filosofía en un Instituto de Educación Secundaria en España. ABD en filosofía. Miembro del equipo de traducción al español de OpenSUSE. Editor de las categorías R. G. Collingwood y History of Aesthetics en philpapers.org.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s