You are here: Home / Getting WiFi 7 Working on Linux: The ASUS ROG USB-BE92

Getting WiFi 7 Working on Linux: The ASUS ROG USB-BE92

I recently upgraded to 5.5 Gbps TDS fiber, installed a shiny new ASUS RT-BE86U WiFi 7 access point capable of 10 Gbps, and grabbed an ASUS ROG USB-BE92 WiFi 7 USB adapter to take advantage of it all. The goal? Get my GPU cluster (what I call DGPUNET - Distributed GPU Network) running at multi-gigabit speeds for distributed AI workloads.

by Hawke Robinson, Chief Information & Technology Officer at PracticingMusician.com, ClimgHigh.AI, and "The Grandfather of Therapeutic Gaming".

October 4, 2025

I recently upgraded to 5.5 Gbps TDS fiber, installed a shiny new ASUS RT-BE86U WiFi 7 access point capable of 10 Gbps, and grabbed an ASUS ROG USB-BE92 WiFi 7 USB adapter to take advantage of it all. The goal? Get my GPU cluster (what I call DGPUNET - Distributed GPU Network) running at multi-gigabit speeds for distributed AI workloads.

Then I plugged it into my Alienware M18R2 Nvidia 4090 laptop running Q4OS Trinity Desktop Environment (TDE) on Debian 12 with a backported 6.12 kernel, and... nothing. The adapter just sat there, unrecognized, taunting me with its blinking LED. This is the story of how I got it working, complete with all the details you'll need if you find yourself in the same boat.

The Problem: No Driver, No Dice

Here's what I found when I started digging:

lsusb
# Bus 001 Device 010: ID 0b05:1bcf ASUSTek Computer, Inc. 802.11be WLAN Adapter

The device was there. The USB subsystem saw it. But the kernel had no idea what to do with it. Running dmesg showed the device going through some bizarre mode-switching behavior - first appearing as a USB storage device (Realtek's installer gimmick for Windows), then switching to WiFi mode. But even in WiFi mode, no driver claimed it.

The ASUS ROG USB-BE92 uses a Realtek RTL8912AU or RTL8922AU chipset (WiFi 7 / 802.11be). These are brand new chips, and the mainline Linux kernel doesn't have USB drivers for them yet. The kernel has rtw89 drivers, but they're PCIe-only. No USB support.

The Solution: Community to the Rescue

After some research, I found that Nick Morrow (morrownr on GitHub) maintains an out-of-tree driver repository specifically for these newer Realtek USB WiFi adapters. His rtw89 repo includes USB support for multiple chipsets, including the RTL8922AU.

Here's the complete step-by-step process I followed to get it working.

Installation Guide: ASUS ROG USB-BE92 on Debian/Ubuntu

Prerequisites

You need kernel headers, build tools, and DKMS. If you're running Secure Boot (like I am), DKMS will handle module signing automatically (as long as you already have setup MOK and keys, as I had to do to get Cuda working for AI work with the Nvidia 4090 on this laptop).

sudo apt update
sudo apt install -y build-essential git dkms linux-headers-$(uname -r)

Important: Make sure you're running kernel 6.6 or newer. This driver won't work on older kernels. Check your version:

uname -r
# My system: 6.12.30+bpo-amd64

Step 1: Clone the Driver Repository

cd ~/Downloads  # or wherever you want to work
git clone https://github.com/morrownr/rtw89
cd rtw89

Step 2: Remove Conflicting Kernel Modules

If you have any existing rtw89 modules (from other attempts or older installations), clean them out:

sudo make cleanup_target_system

This searches your kernel modules directory and removes any conflicting drivers.

Step 3: Install via DKMS (Recommended)

DKMS is the right way to do this, especially if you have Secure Boot enabled. It will:

  • Build the modules
  • Sign them with your MOK (Machine Owner Key)
  • Automatically rebuild when you upgrade your kernel

First, create a symlink in /usr/src:

sudo ln -sf $(pwd) /usr/src/rtw89-6.18

Add to DKMS:

sudo dkms add -m rtw89 -v 6.18

Build the modules:

sudo dkms build -m rtw89 -v 6.18

You should see output showing it's signing each module:

Sign command: /lib/modules/6.12.30+bpo-amd64/build/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub

Building module(s).... done.
Signing module /var/lib/dkms/rtw89/6.18/build/rtw89_8922au_git.ko
...

Install the modules:

sudo dkms install -m rtw89 -v 6.18

Step 4: Install Firmware

The driver needs firmware files to initialize the hardware:

sudo make install_fw

This copies updated firmware to /lib/firmware/rtw89/, including rtw8922a_fw-4.bin.

Step 5: Configure Module Blacklist

Copy the configuration file that blacklists conflicting in-kernel drivers:

sudo cp -v rtw89.conf /etc/modprobe.d/

Step 6: Load the Modules

sudo modprobe rtw89_core_git
sudo modprobe rtw89_8922au_git

Check that they're loaded:

lsmod | grep rtw89

You should see:

rtw89_8922au_git       12288  0
rtw89_usb_git          24576  1 rtw89_8922au_git
rtw89_8922a_git        73728  1 rtw89_8922au_git
rtw89_core_git       1007616  2 rtw89_usb_git,rtw89_8922a_git

Step 7: Verify the Interface

Check your network interfaces:

ip link show

You should see a new wireless interface with a name like wlxa0ad9f72131a (based on the device's MAC address).

Install wireless tools if needed:

sudo apt install -y iw

Bring the interface up:

sudo ip link set wlxa0ad9f72131a up

Scan for networks to verify it's working:

sudo iw dev wlxa0ad9f72131a scan | grep SSID

If you see network names, you're in business.

Step 8: Auto-Load on Boot

To have the modules load automatically on boot, add them to /etc/modules:

echo "rtw89_core_git" | sudo tee -a /etc/modules
echo "rtw89_8922au_git" | sudo tee -a /etc/modules

What You Get

Once installed, the driver provides:

  • Full WiFi 7 (802.11be) support
  • HE (High Efficiency) capabilities
  • Multiple modes: Managed (client), AP (access point), P2P, Monitor
  • Advanced features: LDPC, STBC, A-MSDU, A-MPDU

The firmware version loaded is 0.35.80.3, and dmesg shows successful initialization:

rtw89_8922au_git 2-1:1.0: loaded firmware rtw89/rtw8922a_fw-4.bin
rtw89_8922au_git 2-1:1.0: Firmware version 0.35.80.3 (8ef4f0cf), cmd version 1, type 1
rtw89_8922au_git 2-1:1.0: chip rfe_type is 1

Performance Reality Check

Here's the thing nobody tells you: most USB WiFi 7 adapters are USB 3.0, not USB 4.0.

My ASUS adapter shows as USB 3.0 SuperSpeed (5 Gbps theoretical max). In practice, USB 3.0 overhead limits you to around 3-3.5 Gbps for WiFi traffic. That's still excellent - way better than the 1 Gbps my built-in Ethernet provides - but it's not the full 10 Gbps+ that WiFi 7 can theoretically deliver.

The adapter is connected to a USB 3.2 Gen 2x2 port (20 Gbps capable), but the device itself is USB 3.0. The port isn't the bottleneck; the adapter is.

If you need true multi-gigabit for something like distributed GPU workloads (my DGPUNET cluster), consider:

  • USB-C to 10GbE adapter (wired, guaranteed throughput)
  • PCIe WiFi 7 card (if your laptop has a replaceable M.2 WiFi card)
  • Intel AX210/AX211 (WiFi 6E with excellent Linux support out-of-box)

But for most use cases, 3+ Gbps over WiFi is pretty darn good.

Secure Boot Considerations

If you have Secure Boot enabled (I do), the modules must be signed. DKMS handles this automatically if you have a MOK (Machine Owner Key) set up.

Check your Secure Boot status:

sudo mokutil --sb-state

If it says "SecureBoot enabled," DKMS will sign the modules during the build process. You should see "Signing module..." messages in the build output.

If you don't have a MOK set up, DKMS creates one at /var/lib/dkms/mok.{key,pub}. The first time you build a DKMS module, it should prompt you to enroll the key. If not, you can manually enroll it:

sudo mokutil --import /var/lib/dkms/mok.pub

Then reboot and complete the MOK enrollment through the blue MOK Manager screen.

Troubleshooting

Module won't load: "Key was rejected by service"

This probably means Secure Boot is blocking unsigned modules. Make sure you installed via DKMS (which signs automatically) and that your MOK is enrolled.

Device keeps switching between "DISK" and WiFi mode

This is normal USB mode-switching behavior for Realtek adapters. The device first appears as a USB storage device (Windows installer), then switches to WiFi mode. The usb-modeswitch package should be installed by default on Debian/Ubuntu to handle this automatically.

No wireless interface appears

  1. Check that modules are loaded: lsmod | grep rtw89
  2. Check dmesg for errors: dmesg | grep rtw89
  3. Make sure firmware is installed: ls /lib/firmware/rtw89/
  4. Verify the device is in WiFi mode: lsusb should show 0b05:1bcf, not 0bda:1a2b

Interface appears but can't scan

Make sure you bring the interface up first:

sudo ip link set <interface-name> up

Then scan with sudo:

sudo iw dev <interface-name> scan

The Bigger Picture

This experience highlights a persistent issue in the Linux hardware ecosystem: cutting-edge consumer hardware often gets released without Linux drivers. That being said, some systems, increasingly I have had better luck setting up the drivers under Linux than Windows, but that is highly variable.

WiFi 7 has been standardized since 2024, but we're in late 2025 and still relying on community-maintained out-of-tree drivers for many adapters. Realtek has the resources to contribute USB drivers to the mainline kernel, but they don't. Instead, great people like Nick Morrow step in and do the work for free. Thank you Nick!

This isn't sustainable, and it's not how a healthy open-source ecosystem should work. Companies selling hardware that runs on Linux need to support Linux properly. Not as an afterthought. Not only by relying on community volunteers. Properly, such as 8x8 paying their staff to support the open source communities a number of hours every week.

That said, I am, as always, extremely grateful for the community members who fill these gaps. Without morrownr's work, my $80 WiFi 7 adapter would be a paperweight.

Conclusion

If you're running into issues with newer Realtek USB WiFi adapters on Linux, check out the morrownr repositories on GitHub. The rtw89 driver worked perfectly for my ASUS ROG USB-BE92, and it supports a wide range of chipsets.

The installation process is straightforward if you follow the steps, and DKMS integration means it'll survive kernel updates. Just be aware of the USB 3.0 bandwidth limitations if you're expecting true multi-gigabit performance.

For my DGPUNET cluster, I'll likely end up using a USB-C to 10GbE adapter (I'm still trying to track down a 10Gbps switch that has more than just 4 10 Gbps ports, that I can afford for less than a thousand+ dollars (haven't found one yet) for the guaranteed bandwidth, but this WiFi 7 adapter gives me solid wireless performance when I need mobility.

If you found this helpful, or if you have experience with other WiFi 7 adapters on Linux, drop a comment. I'm always curious to hear what's working (or not working) for other people in the trenches.


Quick Reference Commands

# Clone and setup
git clone https://github.com/morrownr/rtw89
cd rtw89
sudo make cleanup_target_system

# Install via DKMS
sudo ln -sf $(pwd) /usr/src/rtw89-6.18
sudo dkms add -m rtw89 -v 6.18
sudo dkms build -m rtw89 -v 6.18
sudo dkms install -m rtw89 -v 6.18

# Install firmware and config
sudo make install_fw
sudo cp rtw89.conf /etc/modprobe.d/

# Load modules
sudo modprobe rtw89_core_git
sudo modprobe rtw89_8922au_git

# Auto-load on boot
echo "rtw89_core_git" | sudo tee -a /etc/modules
echo "rtw89_8922au_git" | sudo tee -a /etc/modules

# Verify
lsmod | grep rtw89
ip link show
sudo iw dev <interface> scan | grep SSID

Hardware Details

  • Adapter: ASUS ROG USB-BE92
  • Chipset: Realtek RTL8922AU (WiFi 7 / 802.11be)
  • USB: 3.0 SuperSpeed (5 Gbps)
  • Firmware: rtw8922a_fw-4.bin v0.35.80.3
  • Driver: rtw89_8922au_git from morrownr/rtw89
  • Kernel: 6.12.30+bpo-amd64 (Debian 12)
  • Secure Boot: Enabled (modules signed via DKMS)
Navigation