La verdad es que el adaptador wifi integrado en mi portátil funciona muy bien, incluso detecta 5G, sin embargo, no tiene mucho alcance y en algunos casos se quedaba corto.
Recordaba tener en alguna parte un TP-Link externo que utilizaba en un sobremesa, el TL-WN822N, blanco con dos antenas. El caso es que es un modelo antiguo y esperaba que Lubuntu lo pillara sin problemas, pero lo pinché y… nada, como el que pincha un cartón.Tras infructuosas busquedas por internet, varios intentos y apaños que no funcionaron, me topé en GitHub con el repositorio de Mange, a quien estoy profundamente agradecido, gracias Magnus.
No es hacer un download e instalar, pero casi.
Instalando git y compiladores
git nos permite acceder a GitHub desde terminal, posiblemente lo tengamos ya instalado.
Con una sola llamada apt instalamos lo necesario:
sudo apt install git linux-headers-generic build-essential dkms
Lo más probable es que todo esté ya instalado y veamos lo siguiente:
build-essential ya está en su versión más reciente (12.4ubuntu1). dkms ya está en su versión más reciente (2.3-3ubuntu9.2). git ya está en su versión más reciente (1:2.17.1-1ubuntu0.4). linux-headers-generic ya está en su versión más reciente (4.15.0.39.41). 0 actualizados, 0 nuevos se instalarán, 0 para eliminar y 0 no actualizados.
Descarga de los fuentes rtl8192eu-linux-driver
Descargamos los fuentes https://github.com/Mange/rtl8192eu-linux-driver a local:
git clone https://github.com/Mange/rtl8192eu-linux-driver.git
por consola veremos la descarga, apenas tarda unos segundos:
Clonando en 'rtl8192eu-linux-driver'... remote: Enumerating objects: 1220, done. remote: Total 1220 (delta 0), reused 0 (delta 0), pack-reused 1220 Recibiendo objetos: 100% (1220/1220), 3.92 MiB | 2.86 MiB/s, listo. Resolviendo deltas: 100% (648/648), listo.
Compilar driver
Con los fuentes ya en local, entramos en el directorio y usamos dkms:
cd rtl8192eu-linux-driver sudo dkms add . sudo dkms install rtl8192eu/1.0
Por el terminal veremos info de las operaciones y finalmente el mensaje «DKMS: install completed.»
El driver estará en /usr/src/rtl8192eu–1.0, vamos al directorio y compilamos con make.
sudo make clean sudo make sudo make install
- Veremos un monton de info en el shell… dejamos que termine sin prisas.
- Con make clean nos aseguramos de eliminar los .o que pudieran estar de compilaciones anteriores, no es imprescindible pero tampoco está de más.
Añadimos el módulo al kernel
sudo modprobe -a 8192eu
La lista negra
Con todo lo anterior debería funcionar, sin embargo no es así, por algún motivo el sistema utiliza el driver rtl8xxxu por defecto y debe usar rtl8192eu.
Para obtener info del hardware utilizamos lshw, en este caso recuperamos los datos de dispositivos de red:
lshw -c network
dará una salida con muchas lineas, buscamos el nuevo adaptador, vemos entre otros, fabricante, mac, bus utilizado, …, buscamos configuración y veremos que el driver es rtl8xxxu:
... configuración: broadcast=yes driver=rtl8xxxu driverversion=4.19.0-041900rc3-generic firmware=N/A link=no multicast=yes wireless=IEEE 802.11
Hay que «capar» el rt18xxxu poniendolo en la lista negra.
Para ello creamos, como root, un archivo en /etc/modprobe.d
sudo nano /etc/modprobe.d/tplink.conf
Y añadimos la linea
blacklist rtl8xxxu
Reiniciar y conectar
ya solo queda reiniciar y tenemos nuestro tp-link funcionando.
Si tras reiniciar hacemos lshw -C network veremos el driver correcto, rtl8192eu:
configuración: broadcast=yes driver=rtl8192eu ip=192.168.1.173 multicast=yes wireless=IEEE 802.11bgn
Como curiosidad comentar que el led indicador no parpadea.
Espero que os sirva, un saludo!!
Muchísimas gracias, me ha sido de gran ayuda. Mil gracias.
Gracias a ti! 😉
Muchas gracias por tu tutorial. Me ha ayudado mucho. Muy bien explicado
Te agradezco mucho este tutorial. Mil gracias por explicarlo tan facil.
Te agradezco mucho este tutorial y por explicarlo tan facil. Muchas gracias.