Instalar controladores del adaptador inalámbrico TP-Link TL-WN822N en Linux (actualización 2018)

Aunque mi intención en este nuevo rescate al blog era no escribir únicamente sobre Linux, yo me crié leyendo cómics de Spider-Man, así que llevo grabado a fuego aquello del gran poder que conlleva una gran responsabilidad. Sé que es una exageración, porque esto lo leen cuatro gatos de una determinada raza y paremos de contar, pero me siento de algún modo en deuda con dichos usuarios. Repasaba el otro día las estadísticas del blog con una mezcla de desidia y añoranza – rarito que es uno – cuando caí en la cuenta de que el artículo que más visitas recibía era el tutorial para instalar el caprichoso adaptador Wi-Fi de TP-Link que cometí el error de comprar en su momento pensando que recibiría buen soporte en Linux. Me preguntaba si seguiría siendo válido y, a tenor de mi experiencia estos días, la respuesta es no. Sigue leyendo «Instalar controladores del adaptador inalámbrico TP-Link TL-WN822N en Linux (actualización 2018)»

Anuncio publicitario

Ejecutar un script al inicio como root

Ya sabía yo que lanzando al aire mi duda alguien la contestaría y, de paso, todos aprenderíamos algo. El escueto artículo de hoy da respuesta a mi pregunta y soluciona mis problemas con NetworkManager, utilizando a mi «querido» systemd para correr un script al iniciar el sistema, no como usuario normal, sino con privilegios de super-usuario. Sigue leyendo «Ejecutar un script al inicio como root»

Instalar controladores del adaptador inalámbrico TP-Link TL-WN822N en Linux

IMPORTANTE: el presente tutorial está obsoleto para versiones modernas del kernel, pues los controladores no compilan. La última versión probada con la que funciona es la rama 4.4. Nueva versión del tutorial, aquí.

Durante mis vacaciones de verano he decidido aceptar una oferta de la compañía Orange y contratar la fibra óptica y el móvil con ellos. Había salido escopeteado de allí tras una mala experiencia con el ADSL en dirección a Jazztel, solo para descubrir, apenas un par de meses después del cambio, que la primera absorbía a la segunda. Luego, técnicamente, nunca había dejado de estar en Orange y, la verdad por delante, no tuve problema alguno con la conexión de 20 Mbps de bajada y 2’5 de subida que me proporcionaban. Se ve que el problema era el alquiler de las líneas de cobre a Movistar.

Con la adopción de su tarifa Canguro he pasado a disfrutar de fibra simétrica con 50 Mbps de subida y bajada que, de momento – cruzo los dedos – van de fábula. Me he beneficiado también de un aumento en la cobertura del móvil en zonas rurales – como en la que desarrollo mi actividad profesional, la Enfermería – que ha pasado de apenas poderse hablar a disponer de 4G en todo su esplendor. Hasta aquí el artículo parece un anuncio patrocinado por la compañía francesa, pero al igual que le di palos en su día justo es reconocer que actualmente funciona bien.

Descubrí que las nuevas velocidades traían nuevas dificultades. Mi obsoleto adaptador inalámbrico Conceptronic no era capaz de gestionar más allá de 30-35 Mbps, a unos escasos 5 metros del router Livebox y con un único muro de por medio. Os parecerá pedir demasiado, sobre todo a quienes por desgracia todavía no tienen acceso a conexiones de alta velocidad, pero la cuestión era que yo quería el 100% de la velocidad contratada. Aquí es donde entró en juego Amazon – otra compañía de la cual no tengo queja – y su web de compras. Tras leer comentarios a favor y en contra acerca de varios modelos y marcas, me decidí por adquirir un TP-Link TL-WN822N que llegó al día siguiente de pedirlo.

En Windows, como suele ocurrir, todo fue muy sencillo. Con solo conectar el aparato ya era reconocido y se instalaban los controladores correspondientes desde los servidores de Microsoft. A pesar de esto, procedí a instalar los que venían en la caja del adaptador, que además incluían una utilidad de conexión a la que, valga la redundancia, me cuesta hallarle la utilidad. Sin dramas ni investigaciones, ya tenía el adaptador andando en Windows con excelente desempeño: de las 3 redes escasas que detectaba el Conceptronic pasé a 15 ó más. Y con los 50 Mbps que entrega el router clavaditos. Ventajas, supongo, de un modelo que tiene 2 antenas de ganancia de las cuales dejo 1 paralela a la del router y la otra la coloco en perpendicular, como muestra la foto. El cable de extensión USB de metro y medio ayuda también, al permitir alejar el aparato de las interferencias del propio ordenador, los altavoces y el adaptador Bluetooth.

 

Adaptador TP Link TL-WN822N
El adaptador colocado estratégicamente, con una antena en paralelo y otra en perpendicular

 

Pero en Linux – ay, amigo, qué me vas a contar – la película es otra bien distinta. Sabía que este modelo dispone de soporte por los comentarios de Amazon. En las propias especificaciones así lo detallan también. Acudí contento y feliz a la web del fabricante para descubrir que los controladores garantizaban su funcionamiento con un kernel de las ramas comprendidas entre la versión 2.6.18 y la 3.10.10. Para que os hagáis una idea, esto es soportar únicamente hasta el kernel que venía con Ubuntu 13.04 y pare usted de contar. Antiquísimo, lo cual es llamativo si se tiene en cuenta la fecha de publicación: marzo de este 2016 en curso. Mi primera reacción fue pensar que era un error fruto de la escasa actualización de la página. Me bastó descargar los controladores y tratar de compilarlos para darme cuenta de que estaba equivocado. Efectivamente, con kernels modernos esto no iba a funcionar.

 

Controladores TP-Link TL-WN822N Linux
La web de TP-Link no deja lugar a dudas: solo hasta el kernel 3.10.10

 

Me costó unas cuantas horas de investigación encontrar un repositorio en github donde se daba solución a mi problema. Aunque se centraban en Debian y derivadas, para variar, y mi único Linux a día de hoy es el del Geeko. Como la cosa salió bien, he aquí un artículo-tutorial sobre los pasos necesarios para que el cacharro funcione igual de bien en openSUSE.

Antes de comenzar, una advertencia: existen 4 modelos diferentes del citado adaptador TP-Link. El mío es el último disponible, la cuarta versión. Al parecer, tanto éste como la versión anterior incorporan un chip Realtek al cual va dirigido el controlador que vamos a instalar. Las versiones 1 y 2 venían con un Atheros que, según he podido leer por la red, funcionaba con soporte directo del kernel, con lo que no se hacía necesario instalar ningún controlador adicional. En cristiano: si tienes las versiones 1 y 2, no se te ocurra seguir el tutorial. Sólo válido para versiones 3 y 4 del TL-WN822N.

Instalar las herramientas de compilación y desarrollo

A los que estamos habituados a la forma de proceder de las distribuciones basadas en Debian, lo primero que nos viene a la cabeza cuando hablamos de compilación es el paquete build-essential (en singular, que en muchos sitios lo he visto en plural y no es correcto). De modo que si vuestra distribución es Ubuntu, Linux Mint, Elementary o la propia Debian, es lo primero que deberéis hacer:

$ sudo apt install build-essential linux-headers-'uname -r'

El segundo de los paquetes instala las fuentes correspondientes a vuestro kernel actual, el cual se averigua con la orden incluida entre las comillas simples. Esto es necesario porque el controlador se ha de compilar necesariamente contra el kernel que se va a utilizar y no otro. Lo de «compilar contra» es un puro anglicismo que ruego me perdonen los Informáticos, pues no lo sé expresar de otra manera.

En openSUSE se debe hacer de un modo algo distinto. Dentro de Yast escogemos «Instalar/desinstalar software». En la pestaña «Ver», que se encuentra arriba a la izquierda, seleccionamos «Patrones» y marcamos «Desarrollo base» (ésta suele venir ya seleccionada) y «Desarrollo en C/C++», que es el lenguaje de programación en que están escritos estos controladores. Aceptamos e instalamos los paquetes propuestos.

 

Instalar herramientas de desarrollo en openSUSE
El sistema de instalación por patrones característico de openSUSE

 

Nunca está de más, al terminar, lanzar por consola un:

$ sudo zypper inr

Para que se instalen las nuevas recomendaciones. Hecho esto solamente queda instalar algunas herramientas más:

$ sudo zypper in automake make linux-kernel-headers kernel-desktop-devel kernel-syms

Y tendremos nuestro ambiente de compilación y desarrollo listo para la tarea a acometer.

Clonando el repositorio de github e instalando los controladores

Para ello vamos a empezar con el paquete git:

$ sudo zypper in git

Y seguimos con la clonación del repositorio:

$ git clone https://github.com/jeremyb31/rtl8192eu-linux-driver

Entramos en el directorio:

$ cd rtl8192eu-linux-driver

Compilamos:

$ make

Instalamos:

$ sudo make install

Y solo nos quedará reiniciar. Si todo ha ido como debe, la lucecita verde de nuestro adaptador comenzará a parpadear poco después de iniciar el sistema para reafirmar nuestro rotundo éxito. Doy fe del mío propio con una captura de la velocidad medida en mi equipo con openSUSE Leap 42.1 edición KDE.

 

Velocidad fibra en Linux
Muy buena velocidad la que consigo con este adaptador. Esa simetría es genial.

 

Espero que os sirva y os ahorre unas cuantas búsquedas por Internet.

¡Salud y Geeko!