Celeb Glow
general | March 29, 2026

Need help installing wifi driver for TP-Link tl-wn821n v6 [duplicate]

I have a TP-Link tl-wn821n v6 and there is no driver for the 18.04 version of Ubuntu. The latest one that I found is this one.

I don't know much about Linux in general... I would really appreciate it if you could help me out.

This is the bottom part of what popped up after "make":

/home/johnk/Downloads/TP-Link_Driver_Linux_series8_beta/rtl8192EU_WiFi_linux_v5.2.19.1_25633.20171222_COEX20171113-0047/include/osdep_service_linux.h:299:8: error: ‘_timer {aka struct timer_list}’ has no member named ‘data’ ptimer->data = (unsigned long)cntx; ^~
/home/johnk/Downloads/TP-Link_Driver_Linux_series8_beta/rtl8192EU_WiFi_linux_v5.2.19.1_25633.20171222_COEX20171113-0047/include/osdep_service_linux.h:300:2: error: implicit declaration of function ‘init_timer’; did you mean ‘_init_timer’? [-Werror=implicit-function-declaration] init_timer(ptimer); ^~~~~~~~~~ _init_timer
cc1: some warnings being treated as errors
scripts/Makefile.build:332: recipe for target '/home/johnk/Downloads/TP-Link_Driver_Linux_series8_beta/rtl8192EU_WiFi_linux_v5.2.19.1_25633.20171222_COEX20171113-0047/core/rtw_cmd.o' failed
make[2]: *** [/home/johnk/Downloads/TP-Link_Driver_Linux_series8_beta/rtl8192EU_WiFi_linux_v5.2.19.1_25633.20171jjjjjjjj

lsusb list:

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 005: ID 2357:0107
Bus 003 Device 002: ID 1532:0214 Razer USA, Ltd
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 054c:0ba0 Sony Corp.
Bus 001 Device 004: ID 12d1:14dc Huawei Technologies Co., Ltd.
Bus 001 Device 003: ID 046d:c08b Logitech, Inc.
Bus 001 Device 002: ID 0951:16a4 Kingston Technology
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
1

2 Answers

Please follow these steps: READ THROUGH FIRST BEFORE IMPLEMENTING

  1. Unzip that file and inside you will find the following:

    • pdf instructions
    • license and warning as this is a beta version
    • zip folder with the driver files
  2. unzip the zip file mentioned above and then read the pdf file

  3. The steps for Ubuntu are:

    1. Install build essentials:

      sudo apt install build-essential
    2. Go into that folder and run the following commands:

      make clean
      make
    3. If step 3.2 was successful load the driver with the following commands:

      sudo insmod 88x2bu.ko
    4. Check if the driver was load with:

      lsmod | grep 88x2bu.ko

Note:

  1. I assume the driver name is 88x2bu.ko so grep command in step 3.4 should work else check the folder for the driver and you should see the compiled driver and then use that to grep to see if it loaded.

  2. WARNING: this according to the readme_beta.txt file this is a beta version so thread with care

  3. In case of any issues remove that driver with the command sudo rmmod <driver_name>

1

Ok, so I had also ran into this problem when upgrading rtl8188fu to 4.15.0 kernel.

Fair warning: It is not the only error you will face, as the kernel revamped many core APIs since 4.4 (from 16.04) to 4.15 (18.04) and many drivers are an year old.

Basically, the kernel timer API has changed (among many other things.)

Basically use this as a guide for what you need to do.

My changes can be seen here (I am not a kernel dev, so, be warned). So use caution.
The changes are seen where you see
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0))

The corresponding c file.

You will also need to fix del_timer.

And if, after this you run into cfg8011_roamed or sync or BAND or CHANNEL problem, the issues the same, and easy to fix. The core APIs changed drastically, and modules haven't been updated and aren't in the mainline.

2