/rtw88-usb

8723d 8821c 8822bu 8812bu 8822cu 8812cu linux mac80211 driver

Primary LanguageCGNU General Public License v2.0GPL-2.0

rtw88-usb

It's under GPL license, and please feel free to use it. Also welcome to upstream to the Linux kernel if you want, and please refer to the branch, for_kernel_upstream, which meets the Linux coding style, and may be easier to upstream.

Thank to many people's kind help on this project.

Driver for 802.11ac USB Adapter with chipset: RTL88x2BU / RTL88x2CU

supports at least managed (i.e. client) and monitor mode.

This driver is based on Realtek's rtw88 driver in Linux main trunk.

A few known wireless cards that use this driver include

Build

$ make clean
$ make

Installation

Load driver for test:

$ sudo mkdir -p /lib/firmware/rtw88
$ sudo cp fw/rtw8822* /lib/firmware/rtw88/
$ sudo insmod rtw88.ko
$ sudo insmod rtwusb.ko

Load driver at boot:

$ sudo mkdir -p /lib/firmware/rtw88
$ sudo cp fw/rtw8822* /lib/firmware/rtw88/
$ sudo mkdir /lib/modules/`uname -r`/kernel/drivers/net/wireless/realtek/rtw88
$ sudo cp rtw88.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/realtek/rtw88
$ sudo cp rtwusb.ko /lib/modules/`uname -r`/kernel/drivers/net/wireless/realtek/rtw88
$ sudo depmod -a
$ sudo echo -e "rtw88\nrtwusb" > /etc/modules-load.d/rtwusb.conf
$ sudo systemctl start systemd-modules-load

General Commands

Scan:

$ sudo iw wlanX scan

Connect to the AP without security:

$ sudo iw wlanX connect <AP name>

Wifi Sniffer - monitor mode

$ sudo ip link set wlanX down
$ sudo iw dev wlanX set type monitor
$ sudo rfkill unblock all
$ sudo ip link set wlanX up

Then you can use "iw info" to check if the wireless mode is correct.

e.g.
    wlan1    IEEE 802.11  Mode:Monitor ... 

And you can use the program like wireshark to sniffer wifi packets.

  1. set up the sniffer channel
$ sudo iw dev wlanX set channel xxx
  1. run the program
$ sudo wireshark

Test

test ok with general commands with the latest kernel ubuntu 18 + kernel v5.3 test with Network Manager ok.

Known Issues

  • None atm. Need to checkpatch and clean some code only.