Open-source project
morrownr/USB-WiFi avatar
morrownr/USB-WiFi

morrownr/USB-WiFi: Linux USB Adapter Reviews and Driver Reference

USB WiFi Adapter Information for Linux

4,467 stars259 forksUnknownLicense varies

At a glance

What is it?
The morrownr/USB-WiFi repository is a community-maintained reference for Linux users choosing USB WiFi adapters, covering which chipsets work with in-kernel drivers, how to install firmware, how to set up access point mode, and how to enable monitor mode. It answers questions that Linux distribution documentation rarely covers in a single place.
Who is it for?
Linux users who need a USB WiFi adapter and do not want to compile out-of-kernel drivers should start with the Plug and Play List in this repository: it documents which adapters work immediately on current kernels. Users who already own an adapter with a Realtek chipset and are hitting driver problems will find the out-of-kernel driver section useful.
Can I use it commercially?
Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
Is it still maintained?
Yes. The repository last received commits 29 days ago.
What is it written in?
GitHub does not report a main language for this repository.

Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What the repository covers and who maintains it

Most Linux distributions ship support for a limited set of USB WiFi chipsets, and users who buy an adapter without checking compatibility often end up compiling drivers from source or abandoning the device. The morrownr/USB-WiFi repository exists to close that information gap. It provides reviews of USB WiFi adapters, links to specific adapters known to work well with Linux, technical support documentation, and educational material on drivers and chipsets.

The site is maintained by @morrownr and @Lucid-Duck, both active Linux wireless contributors. As of September 2026, the README reports the site averages 47,230 views per month across the maintainer's GitHub presence, which reflects the scale of the Linux USB WiFi compatibility question. The last push was on 2026-09-02. The repository has no license file listed and no GitHub releases; the content lives entirely in the home/ folder and the README index.

For organizations that need professional Linux wireless driver work, the README lists contract availability:

code
Contract work: Linux wireless drivers. Lab testing, patches, and ongoing support.
[email protected]
https://github.com/Lucid-Duck

This contact is for Lucid-Duck, one of the two maintainers, and covers lab testing, patches, and ongoing support for wireless drivers.

The Plug and Play List: adapters with in-kernel drivers

The most frequently referenced section of the repository is what the README calls the Plug and Play List: a curated collection of USB WiFi adapters supported by Linux in-kernel drivers. An in-kernel driver ships with the Linux kernel itself, which means no separate compilation, no third-party DKMS setup, and no dependency on a kernel version that the driver source may or may not support. Plugging in an adapter from this list on a modern distribution should work without additional steps.

The list is specific about chipsets and adapter models rather than simply listing brands. Selecting an adapter that is on the Plug and Play List is the single most effective step a Linux user can take before purchasing. The repository also provides a separate sub-list of recommended adapters for Kali Linux, recognizing that Kali users often need monitor mode and packet injection support, which not every in-kernel driver provides. A further linked list covers recommended Bluetooth adapters for Linux, following the same in-kernel-driver preference.

Chipset guidance: Mediatek and Realtek compared

The repository distinguishes between two main chipset families in its coverage. Mediatek-based adapters tend to use drivers from the mt76 or mt7921/mt7922/mt7925 families, all of which are included in the mainline Linux kernel. The firmware installation document in the repository covers how to install or update firmware for Mediatek and RTW88 based adapters, which is a step that some distributions do not handle automatically.

Realtek-based adapters are covered in a separate document on out-of-kernel drivers. Many Realtek chipsets require drivers that are not part of the mainline kernel, maintained instead as external repositories. The repository links to these out-of-kernel driver sources and documents the trade-offs: out-of-kernel drivers require recompilation on kernel updates and may lag behind kernel interfaces, making them less suitable for systems that update frequently. The repository does not recommend out-of-kernel adapters for most users. If a Realtek out-of-kernel driver breaks after a kernel update, the user must recompile the driver against the new kernel headers.

Access point mode and monitor mode configuration

Beyond adapter selection, the repository documents two advanced use cases. For access point mode, it provides a guide to building a bridged wireless access point along with example hostapd configuration files for three Wi-Fi generations: a WiFi 4 hostapd.conf for mt76 and rtw88 chipset-based adapters, a WiFi 6 hostapd.conf for mt7921 and mt7922 chipset-based adapters, and a WiFi 7 hostapd.conf for mt7925 chipset-based adapters. It also includes a guide for updating hostapd to the latest git version, which is useful when the packaged hostapd version in a distribution does not support newer chipset features.

Monitor mode, which security researchers and network analysts use to capture wireless traffic, is covered through a link to a separate morrownr/Monitor_Mode repository. The USB-WiFi repository also includes a guide for using a USB adapter inside VirtualBox, which addresses the specific problem of passing through a USB WiFi device from the host to a guest virtual machine. This is a common point of friction for users who run Kali Linux or other security distributions in a VM.

Navigating the home/ folder

Almost all of the repository's content lives in the home/ subdirectory rather than in the README itself. The README functions as an indexed table of contents: each numbered menu item links to a specific Markdown document inside home/. The README cautions that the home/ directory contains some outdated documents and testing files; users are advised to follow only the links listed in the README rather than browsing the directory directly.

The additional documents in home/ include a speed comparison test, a USB ports troubleshooting document (covering how USB port quality affects adapter reliability), a guide to installing multiple gcc compiler versions (needed for out-of-kernel driver compilation), and a guide to compiling the Linux mainline kernel. The Frequently Asked Questions document is also in home/. This structure means the repository is not a wiki where every page carries equal weight: the README-linked pages are the maintained ones, while the unlisted files in home/ may be outdated.

What this resource does not provide

The repository is documentation only. There is no installable package, no setup script, and no tool that automates adapter detection or driver configuration. Every step described in its documents must be performed manually by the reader using standard Linux commands. The README notes that the site is maintained by Linux users for Linux users; it explicitly states there is no intention to add Windows support.

The README also notes that while Windows users are welcome to consult the Plug and Play List for adapter quality information, the repository does not document Windows-specific setup. The speed comparison test documents its results but the README does not describe the test methodology or hardware in the top-level README; that information is inside the linked document. Professional contracts for Linux wireless driver work are available through Lucid-Duck, as the contact block in the README shows, which is relevant for organizations that need ongoing driver maintenance rather than self-service documentation.

Alternative: the official Linux wireless kernel documentation

The kernel project publishes official Linux wireless documentation at wireless.docs.kernel.org, which the repository links to directly. That documentation covers the kernel's wireless subsystem at a lower level: driver APIs, cfg80211 architecture, and mac80211 internals. It is written for driver developers and kernel contributors rather than end users trying to get an adapter working.

The morrownr/USB-WiFi repository occupies a different position: it is user-facing, focused on which specific hardware works today and how to configure it, rather than on how the kernel wireless stack is implemented. For a user who just wants a working adapter, this repository is the more direct resource. For a developer writing or debugging a wireless driver, the official kernel documentation at wireless.docs.kernel.org is the authoritative source. Both are linked from the morrownr/USB-WiFi README, so users who outgrow the user-facing documentation have a clear path to the kernel-level reference.

Editorial conclusion

Linux users who need a USB WiFi adapter and do not want to compile out-of-kernel drivers should start with the Plug and Play List in this repository: it documents which adapters work immediately on current kernels. Users who already own an adapter with a Realtek chipset and are hitting driver problems will find the out-of-kernel driver section useful. The repository does not help Windows users, and it provides no package or tool to install: all guidance is documentation that the reader applies manually.

Frequently asked questions

How do I use a USB WiFi adapter in VirtualBox with Kali Linux?

The repository includes a dedicated document titled "Using a USB Adapter in VirtualBox" linked from its monitor mode section. It addresses the specific challenge of passing a USB WiFi device from a host machine into a VirtualBox guest running Kali Linux.

How do I install a USB WiFi adapter on Linux?

The repository's Plug and Play List identifies adapters that work with in-kernel drivers and need no separate installation. For adapters with out-of-kernel Realtek drivers, the repository links to the relevant driver repositories and documents the compilation steps. Firmware-based adapters follow the firmware installation guide in the home/ directory.

What is the best USB WiFi adapter for Linux?

The repository's Plug and Play List documents USB WiFi adapters that work with Linux in-kernel drivers, which the maintainers consider the most reliable option for most users. The list is organized by chipset family and includes specific adapter models known to perform well on Linux. A sub-list also identifies adapters recommended specifically for Kali Linux, noting monitor mode support.

Official sources

  1. Issues
  2. morrownr/USB-WiFi on GitHub
  3. README
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/morrownr-usb-wifi.svg)](https://hysenlabs.com/projects/morrownr-usb-wifi)