Trying to install drivers for a TP-LINK AC-600 USB Wireless adapter, failing

Hi everyone,

Outcome sought

Drivers that work on the Nano under Ubuntu Linux for the rtl8812au chipset used by the TP-LINK AC600 adapter


I’m using the Jetson Nano with the Ubuntu 18.04 LTS image;

kathyreid@kathyreid-jetson-nano:~$ uname -a
Linux kathyreid-jetson-nano 4.9.140-tegra #1 SMP PREEMPT Thu Jun 25 21:25:44 PDT 2020 aarch64 aarch64 aarch64 GNU/Linux

I need to connect the Jetson Nano to a WPA-PEAP authenticated network on the 5Ghz band. I’ve purchased a TP-LINK AC-600 USB wireless adapter for this purpose, but I cannot get drivers installed on the Nano. I am comfortable hand-editing wpa_supplicant.conf if required, but we haven’t got to that yet.

Diagnostics that show this is likely a driver issue

  • output of lsusb shows the USB Wireless adapter as Bus 001 Device 003: ID 2357:011f
  • Looking this up it uses a Realtek rtl8812au chipset
  • No wireless connection information is shown in Network Manager
  • attempts to bring up the wireless interface show no device detected
kathyreid@kathyreid-jetson-nano:~$ sudo ifconfig wlan0
wlan0: error fetching interface information: Device not found
kathyreid@kathyreid-jetson-nano:~$ sudo ifconfig wlan0 up
wlan0: ERROR while getting interface flags: No such device
  • There are no wifi-ish modules loaded as shown in lsmod:
kathyreid@kathyreid-jetson-nano:~$ lsmod
Module                  Size  Used by
cfg80211              589351  0
fuse                  103841  2
zram                   26166  4
overlay                48691  0
bnep                   16562  2
btusb                  40213  0
btrtl                   7318  1 btusb
btbcm                   8808  1 btusb
btintel                10771  1 btusb
spidev                 13282  0
nvgpu                1579891  33
bluedroid_pm           13912  0
ip_tables              19441  0
x_tables               28951  1 ip_tables

The output from nmcli also confirms no wireless interface is found:

eth0: connected to Wired connection 1
        "Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller"
        ethernet (r8168), 00:04:4B:E6:83:5C, hw, mtu 1500
        ip4 default
        inet4 10.21.82.118/23
        route4 0.0.0.0/0
        route4 10.21.82.0/23
        route4 169.254.0.0/16
        inet6 fe80::3c91:3795:1d8e:5c66/64
        route6 ff00::/8
        route6 fe80::/64
        route6 fe80::/64

dummy0: unmanaged
        "dummy0"
        dummy, 7E:BE:DF:67:EF:E9, sw, mtu 1500

lo: unmanaged
        "lo"
        loopback (unknown), 00:00:00:00:00:00, sw, mtu 65536

So, now I’ve established it’s a driver issue, which drivers have I tried?

Issues with various drivers

There are several rtl8812au drivers available on GitHub, but they are all failing in various ways.

  • github . com /jeremyb31/rtl8812au-1.git (link max rule for new users)
    FAILED - doesn’t support aarch64
kathyreid@kathyreid-jetson-nano:~/rtl8812au-1$ cat /var/lib/dkms/rtl8812au/5.3.4/build/make.log | more
DKMS make.log for rtl8812au-5.3.4 for kernel 4.9.140-tegra (aarch64)
Thu 30 Jul 19:49:25 AEST 2020
make ARCH=aarch64 CROSS_COMPILE= -C /lib/modules/4.9.140-tegra/build M=/var/lib/
dkms/rtl8812au/5.3.4/build O="" modules
make[1]: Entering directory '/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aa
rch64/kernel-4.9'
Makefile:667: arch/aarch64/Makefile: No such file or directory
make[1]: *** No rule to make target 'arch/aarch64/Makefile'.  Stop.
make[1]: Leaving directory '/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aar
ch64/kernel-4.9'
Makefile:1711: recipe for target 'modules' failed
make: *** [modules] Error 2
  • github . com /aircrack-ng/rtl8812au (link max rule for new users)
/var/lib/dkms/rtl8812au/5.6.4.2/build/os_dep/linux/ioctl_cfg80211.c: In function ‘rtw_cfg80211_indicate_sta_assoc’:
/var/lib/dkms/rtl8812au/5.6.4.2/build/os_dep/linux/ioctl_cfg80211.c:4449:3: error: implicit declaration of function ‘cfg80211_sinfo_alloc_tid_stats’; did you mean ‘cfg80211_inform_bss_width’? [-Werror=implicit-function-declaration]
   cfg80211_sinfo_alloc_tid_stats(&sinfo, GFP_KERNEL);

This appears to be related to this GitHub issue.

I tried this again after editing the Makefile so CONFIG_PLATFORM_ARM_NV_NANO = y, but this still failed.

*github . com /gordboy/rtl8812au-5.6.4.2 (link max rule for new users)

kathyreid@kathyreid-jetson-nano:~/rtl8812au-5.6.4.2$ make
make ARCH=aarch64 CROSS_COMPILE= -C /lib/modules/4.9.140-tegra/build M=/home/kathyreid/rtl8812au-5.6.4.2  modules
make[1]: Entering directory '/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9'
Makefile:667: arch/aarch64/Makefile: No such file or directory
make[1]: *** No rule to make target 'arch/aarch64/Makefile'.  Stop.
make[1]: Leaving directory '/usr/src/linux-headers-4.9.140-tegra-ubuntu18.04_aarch64/kernel-4.9'
Makefile:2271: recipe for tar

Any other ideas / advice / drivers that actually work?

Best, Kathy

Hi Kathy,
I found this answer

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

that worked for me at

With the default Tegra-Nano disk image “sd-blob-b01.img” and using the above commands I was about to build and install the drive. Through the GUI I joined my phone hotspot and download some GitHub webpages. Range is limited and I have not tested throughput nor stability.

I hope this works for you.
Regards
Kelly

Yeah, I had the same situation with Jetson Nano and TP LInk T2U. This driver perfectly works.