Desde mi retorno a los mundos de Tux llevo peleándome con mi adaptador de red inalámbrica. Resulta doblemente fastidioso, ya que cuando lo compré se suponía que tenía soporte en GNU/Linux utilizando los controladores que la empresa proporciona en su web. Sin embargo, éste se limita a kernels muy antiguos (hasta la rama 3.10), con lo que si deseamos utlizarlo en distribuciones modernas hemos de recurrir a tutoriales para compilar dichos controladores. De ésos, ya llevo dos en mi web personal.

Soporte nativo bastante deficiente

No obstante, lo primero que descubrí tras probar Manjaro KDE hace un par de meses fue que el kernel 4.14 ya daba soporte nativo al adaptador. Un soporte lamentable, por otra parte. Se encuentran las redes WiFi pero resulta imposible conectar la mayoría de las veces. Otras veces sí que hay conexión, pero la velocidad no pasa de los 3 ó 4 Mbps. Ridículo, teniendo en cuenta que ahora mismo me llegan 100 Mbps por parte de mi proveedor.

Como indicaba en el segundo de los tutoriales, mi solución – y una de las razones para quedarme en Manjaro – fue apostar por un kernel de la rama 4.4 ó 4.9, con los cuales sí era posible compilar los controladores y el funcionamiento era el adecuado. Sin embargo, mientras hacía una breve excursión por Fedora, logré hallar una manera de hacer funcionar el adaptador con kernels modernos. Sí, amig@s, el distro hopping no siempre es negativo. En determinadas situaciones nos puede devolver la inspiración que nos faltaba para resolver un problema concreto.

Al probar la nueva Fedora me percaté de que allí hay que currarse bastante lo de instalar un kernel antiguo, así que no tuve más remedio que ingeniármelas para poderme apañar con uno más nuevo. Y mira por dónde, lo conseguí.

El repositorio de Mange

Vamos, para variar, por partes. Lo primero es seguir las instrucciones que se detallan en el repositorio en Github de Mange, un usuario que en su día se encargó de obtener los controladores para un modelo similar (australiano, si mal no recuerdo), y que ha ido manteniendo los ficheros hasta hoy.

Instalar las herramientas necesarias

Tal y como indica en su web, primero debemos instalar las herramientas de compilación. En Debian y derivadas (Ubuntu, Linux Mint o KDE Neon, por ejemplo):

sudo apt install git linux-headers-generic build-essential dkms

En Arch, sería:

sudo pacman -S git linux-headers dkms

En Manjaro se puede utilizar Octopi o Pamac, teniendo en cuenta que linux-headers se llama de otro modo, según la versión del kernel instalada. Para el kernel 4.14, por ejemplo, sería linux414-headers.

Clonar el repositorio

Clonamos el repositorio de Mange en nuestro equipo con:

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

Entramos al directorio recién clonado:

cd rtl8192eu-linux-driver

Y ejecutamos las instrucciones del repositorio:

sudo dkms add .
sudo dkms install rtl8192eu/1.0

Luego nos vamos al directorio del controlador:

cd /usr/src/rtl8192eu-1.0

Compilar los controladores

Y procedemos a compilar para todos los usuarios:

sudo make clean
sudo make
sudo make install
sudo modprobe -a 8192eu

 

Podemos hacerlo todavía más fácil abriendo una terminal dentro de Dolphin. KDE es genial…

 

Después de eso, recomiendan comprobar que el controlador cargado es el correcto, haciendo:

lshw -c network

Si lshw no está instalado, procedemos a instalarlo primero. En mi caso, en lugar de la salida esperada que sería “driver=8192eu”, me aparecía el controlador del kernel, “driver=rtl8xxxu”. De ahí que nos falten un par de pasos más por dar para concluir con éxito la tarea.

Poniendo el anterior controlador en la lista negra

La solución es muy simple. Creamos un fichero con el nombre que nos parezca en el directorio /etc/modprobe.d. Yo lo he llamado “realtek.conf”:

sudo nano /etc/modprobe.d/realtek.conf

También podemos hacerlo con un editor de texto gráfico, si no somos muy amigos de la consola. En dicho fichero pondremos la línea:

blacklist rtl8xxxu

Tan solo nos quedaría reiniciar y ya estaría funcionando nuestro adaptador al cien por cien. Este paso, que no viene detallado en las instrucciones, era el que me faltaba y no era capaz de deducir. Rebuscando en la documentación de Fedora se me encendió, finalmente, la bombilla.

 

La velocidad conseguida a unos 5 metros del router, con paredes de por medio

 

Eso es todo. No entiendo muy bien por qué se consigue un soporte nativo del kernel que es tan deficiente en todos los sentidos. Supongo que el controlador incluido por los desarrolladores dará servicio a varios chips inalámbricos, resultando que el que hoy nos ocupa no funciona del todo bien. Sea como fuere, espero que este pequeño tutorial ayude a que podamos disfrutar, de una vez por todas, de la máxima velocidad que nos brinde nuestra conexión en GNU/Linux.

Salud


Fuentes de información:

https://github.com/Mange/rtl8192eu-linux-driver

Imágenes: Capturas de pantalla o fotografías realizadas por el autor. Recuerda que nuestra licencia es Creative Commons Attribution-ShareAlike 4.0 International License. Eso te permite, básicamente, usarlas para cualquier propósito pero aportando información sobre el origen de las imágenes, o sobre su autor.

avatar
4 Comment threads
3 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
4 Comment authors
Enrique Bravokal3lBloedMarceloTP-Link WN822N en GNU/Linux: solución definitiva | Software libre y Tecnologia Recent comment authors

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

  Subscribe  
más nuevo más antiguo más votado
Notificarme de
trackback

[…] entrada TP-Link WN822N en GNU/Linux: solución definitiva se publicó primero en […]

Marcelo
Lector
Marcelo

Muchas gracias por el artículo, yo tengo un WN722N que compré por la supuesta compatibilidad con linux y en un principio no lo hacía funcionar en un ubuntu 16.04 pero luego en alguna actualización supongo por fin quiso funcionar sin tener que compilar nada, aunque desconozco si funciona al 100 pues mi proveedor de internet no da tanta velocidad para navegar.

Bloed
Lector
Bloed

Hola. Solia tener el mismo problema con el TL-WN821N Version 4. (conexion inestable, drivers para versiones anteriores del kernel) Pero con Ubuntu 18.04 con el Kernel 4.15 todo va de maravilla. Solo he tenido que esperar como 5 años. .___________. jaja Saludos Enrique. Mi busqueda tambien me llevo a tu blog.

kal3l
Lector
kal3l

Muy buen post, funciona para TL-823N en ubuntu 18.04 lo certifico xD