2

I recently upgraded Ubuntu from kernel 5.0.0-37 to 5.3.0-26 (x86_64). It seems coincident with this upgrade, my wifi USB dongle stopped working (Archer T4U). It normally has some flashing lights on the side, but they are now all unlit. I did boot into Windows to verify it is still functional, which it is. Here's the steps I did to attempt to get it operational again (I still have wired connectivity):

$sudo apt remove rtl8812au-dkms

$sudo apt install rtl8812au-dkms

Next, I check that I can see the USB dongle, and get the following output:

$cat /var/lib/usbutils/usb.ids | grep  "Archer T4U"
0101  RTL8812AU Archer T4U 802.11ac
0103  Archer T4UH wireless Realtek 8812AU

Good so far. Next, I check that it's part of my network:

$sudo lshw -C network
  *-network                 
       description: Ethernet interface
       product: 82567LM-3 Gigabit Network Connection
       vendor: Intel Corporation
       physical id: 19
       bus info: pci@0000:00:19.0
       logical name: eth2
       version: 02
       serial: b8:ac:6f:1d:64:14
       size: 100Mbit/s
       capacity: 1Gbit/s
       width: 32 bits
       clock: 33MHz
       capabilities: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k duplex=full firmware=0.4-3 ip=192.168.0.40 latency=0 link=yes multicast=yes port=twisted pair speed=100Mbit/s
       resources: irq:32 memory:f7fe0000-f7ffffff memory:f7fd9000-f7fd9fff ioport:ece0(size=32)

This shows my wired connection, but not the wifi USB. All the help I research on this makes the assumption that the system can see the wifi when this command is issued.

I check to verify it's in the USB id list:

$cat /var/lib/usbutils/usb.ids | grep  'Archer T4U'
0101  RTL8812AU Archer T4U 802.11ac
0103  Archer T4UH wireless Realtek 8812AU

That's okay. Next I check that the wifi module is installed:

$sudo lsmod | grep 8812au
8812au               1290240  0
cfg80211              704512  1 8812au

Yes, it is. Okay, let me try to activate the module:

$sudo modprobe 8812au
$echo $?
0

It seems it activated okay. Now I run iwconfig:

$iwconfig
lo        no wireless extensions.

eth2      no wireless extensions.

As with the previous lshw command, it doesn't see the wifi dongle as part of the network. I've tried rerunning these steps multiple times, which have always worked before, and have rebooted several times, all to no avail. I'm at a loss for how to get this working.

  • Sometimes with kernel upgrades I have to rebuild the driver for the USB dongles. The repos don't alway keep up to date and I've been through quite a few of them. Try apt source rtl8812au-dkms or even https://github.com/gnab/rtl8812au. These USB wifi dongles can be tricky with kernel upgrades. – Stephen Boston Jan 24 '20 at 09:18

3 Answers3

2

For kernel 5.3 you may need the newer / modified driver.

You could install the latest driver from this GitHub repo: https://github.com/aircrack-ng/rtl8812au.git

As per the repo, this is how you can install the driver using DKMS method:

sudo apt update
sudo apt install dkms
git clone -b v5.6.4.2 https://github.com/aircrack-ng/rtl8812au.git
cd rtl8812au
sudo ./dkms-install.sh

Your USB WiFi adapter should be working now.

Jags
  • 2,176
  • for the previous kernel, my method worked, but for the latest kernel build, Linux 5.3.0-28-generic x86_64, it did not. I followed your recommendation this time, and it worked. Why the diff, I don't know. Thanks again for your help. – randyman99 Feb 03 '20 at 09:36
0

Thanks @Jags. I downloaded the sourcefile

https://github.com/abperiasamy/rtl8812AU_8821AU_linux/archive/master.zip

After I unzipped it, I performed the following sequence of commands which I put in a script file:

cd rtl8812AU_8821AU_linux-master
make
sudo make install
sudo modprobe rtl8812au

sudo apt-get update

# already installed
#sudo apt-get install dkms 

sudo cp -R . /usr/src/rtl8812AU_8821AU_linux-1.0
sudo dkms add -m rtl8812AU_8821AU_linux -v 1.0
sudo dkms build -m rtl8812AU_8821AU_linux -v 1.0
sudo dkms install -m rtl8812AU_8821AU_linux -v 1.0

The dongle started flashing before it had finished the make. I checked my wifi, and it was already operational, and the make hadn't even finished yet! Go figure.

0

I am on Ubuntu 20.04 (and also 18.04), with 5.4.0-66-Generic kernel (uname -r), with a RTL8811au dongle which I used a few years ago on Ubuntu 16.04. I was having problems of connecting Wifi with a new ubuntu installation. I was asked to provide password after each cold boot.

The solution involves 2 parts.

  1. Install the correct wifi driver. Follow the above answer by @Jags above (see exact Github source/instruction for RTL8812au driver, other github solution didn't work). After the installation, I was able to see Wifi routers and connect to it, except that the wifi won't be connected after each reboot. It would ask for wifi password again even though password was saved in a prior successful link.

  2. I traced it to the dynamic interface name. (Do 'iwconfg', you will see the wireless interface name in this format: wlsxxxxxxxxxxxx', and it is different each time after reboot). The following code is used to force a persistent name.

     sudo cp /lib/udev/rules.d/80-net-setup-link.rules /etc/udev/rules.d/
     sudo vi /etc/udev/rules.d/80-net-setup-link.rules
    

    change "$env{ID_NET_NAME}" to "wlan0" instead of "$env{ID_NET_SLOT}", save, and reboot. Note that "$env{ID_NET_SLOT}" per the link below worked for me only when I do a hot plug of the wifi dongle. If I leave it on the computer, and reboot, it could not find any hotspot nearby.

Refer to solutions to avoid dynamic usb wifi interface name

VictorL
  • 101
  • I did that back when they first changed it because it was giving me problems then. This wifi dongle has given me so many connect problems I forgot that was part of my (ongoing) solution. Thankfully, since the remedy of this post, I haven't had any additional problems. With each release, I keep thinking Linux is getting closer to prime time, but problems like this keep it in nerdland only. I prefer to be able to fix the problem myself, with input from others, rather than be dependent on a paid vendor to fix it, but most people aren't like that. – Randyman99 Mar 02 '21 at 07:46