Flashing a USB Wi-Fi adapter is a task faced by both experienced and novice users looking to improve the device's performance or add support for new communication standards. Flashing the firmware is most often necessary when purchasing inexpensive chip-based adapters. Realtek, Mediatek or Ralink, which run on outdated software out of the box. For example, an adapter based on RTL8812AU may not support Wi-Fi 6 without updating the firmware, although the hardware capabilities allow it.
In this article, we'll walk you through the entire process—from identifying the chip model to restoring the adapter after a failed firmware update. You'll learn what tools you'll need to Windows 10/11, Linux And macOS, how to avoid common errors (such as bricking your device), and where to find the latest firmware. We'll pay special attention to adapters that support monitor mode (For Kali Linux or Wireshark), since their firmware has nuances.
Before you begin, please note: this process requires careful attention. An error during the firmware flashing stage can render the adapter inoperable. However, with the right approach, the risks are minimal—modern chips (for example, MT7921 or AX200) have protection against incorrect firmware.
1. Why you might need to flash your USB Wi-Fi adapter
There are three main reasons for updating adapter firmware: improving performance, adding new features, or restoring functionality. Let's take a closer look at each.
Improved speed and stabilityManufacturers often release updates to fix bugs in drivers or optimize work with new standards (for example, 802.11ax for Wi-Fi 6). For example, an adapter TP-Link Archer T4U on a chip RTL8812AU After flashing, it can show 20-30% higher data reception/transmission speed in busy networks.
Adding new featuresSome firmware unlocks hidden chip capabilities. For example:
- 🔄 Support monitor mode (for traffic analysis in Wireshark or penetration tests).
- 📶 Advanced transmission power settings (up to
30 dBminstead of standard ones20 dBm). - 🔒 Support WPA3 or 802.11r (fast roaming) for corporate networks.
Disaster recoveryIf the adapter is no longer detected by the system after an unsuccessful driver update or physical damage (such as a power surge), reflashing the firmware may restore it to life. This is especially true for cheap adapters without hardware protection, such as EDUP EP-AC1605 or Alfa AWUS036ACH.
⚠️ Attention: Flashing the firmware won't help if the problem is due to physical damage to the chip or antenna. For example, if the adapter stopped working after being dropped or exposed to moisture, first check the integrity of the soldered contacts.
2. How to determine the chip model and current firmware version
Before searching for firmware, you need to know exactly which chip is installed in your adapter. The point is that the same adapter model (for example, TP-Link TL-WN722N) can be produced with different chips: AR9271 (old version) or RTL8188EU (new). The firmware for them is incompatible!
Methods for determining the chip model:
Method 1: Via Device Manager (Windows)
- Connect the adapter to the USB port.
- Open
device Manager(Win + X → Device Manager). - Expand the branch
Network adapters. - Find your device (may appear as
Realtek 802.11n WLAN Adapteror similar). - Right click →
Properties → Details → Hardware ID. - On the list
VEN_XXXXAndDEV_XXXX— these are the manufacturer and device codes. Search for them in the database. DeviceHunt.
Method 2: Via Terminal (Linux/macOS)
Enter the command:
lsusb
In the output, find the line with your adapter. For example:
Bus 001 Device 003: ID 2357:010c TP-Link 802.11ac NIC
Here 2357 - This VEN (manufacturer), and 010c — DEV (device). This data will help you find the exact chip model.
Method 3: Visual inspection
If the adapter isn't detected by the system, disassemble it (carefully pry the housing with a flat-head screwdriver) and check the markings on the chip itself. These markings usually look like this:
- RTL8188EUS (Realtek)
- MT7610U (Mediatek)
- AR9287 (Atheros/QCA)
After identifying the chip, check the current firmware version. Windows This can be done through Adapter Properties → Driver → Driver Details. IN Linux use the command:
dmesg | grep firmware
3. Where can I download firmware for the USB Wi-Fi adapter?
There are several sources of firmware, but not all of them are safe. Here are some proven options:
| Source | Pros | Cons | Example of adapters |
|---|---|---|---|
| Official website of the chip manufacturer | 100% compatible, no viruses | Hard to find (you need to know the exact chip model) | Realtek RTL88x2BU, Mediatek MT7921 |
| GitHub (firmware repositories) | Latest versions, community support | Risk of unstable builds | Alfa AWUS1900, Panda PAU09 |
| Forums (4PDA, XDA-Developers) | Modified firmware with new features | High risk of "brick" | TP-Link TL-WN722N v3 |
| Adapter manufacturer websites | Easy to search by device model | The firmware is often outdated | ASUS USB-AC68, D-Link DWA-192 |
We recommend starting with official sources. For example, for chips Realtek firmware can be found on the website Realtek (chapter Downloads → Wireless LAN ICs). For Mediatek - on Mediatek (in the support section).
If you need modified firmware (for example, for batch injection V Kali Linux), search on GitHub on request type:
[chip model] firmware monitor mode
Example: RTL8812AU firmware monitor mode.
⚠️ Attention: Forum firmware often contains experimental builds. Before using, check reviews from other users and the last repository update date. Builds older than 2023 may be incompatible with modern Linux kernels or Windows 11.
4. Necessary tools for flashing
For successful flashing you will need:
- 🖥️ Computer with Windows 10/11, Linux or macOS (depending on the method chosen).
- 🔌 USB hub with external power supply (recommended for adapters with high power consumption, such as Alfa AWUS036ACS).
- 📁 Firmware in format
.bin,.fwor.img(see previous section). - 🛠️ Flashing utilities (depending on the chip):
dfu-util(For Mediatek and some Realtek).flashrom(for adapters with SPI flash memory).RTL88x2BU_WiFi_linux(for chips RTL88x2BU under Linux).Zadig(for installing drivers in Windows).
For Windows You may also need:
- 🔧 DriverStore Explorer (to remove old drivers).
- 📋 USBDeview (for monitoring connected USB devices).
For Linux install dependencies:
sudo apt install dfu-util git build-essential libusb-1.0-0-dev
For macOS use Homebrew:
brew install dfu-util
☑️ Preparing for firmware
5. Step-by-step instructions for flashing the firmware
The flashing process varies depending on the operating system and chip. Below are instructions for the most common cases.
Firmware in Windows (using the Realtek RTL88x2BU as an example)
- Removing old drivers:
- Open
device Manager. - Find the adapter, right-click →
Remove device. - Check the box
Remove the driver software for this device.
- Open
- Installing the driver in DFU mode:
- Download and run Zadig.
- On the menu
OptionsselectList All Devices. - Find your adapter in the list (may be displayed as
BULKorAP Mode). - Click
Install Driver(select driverlibusb-win32).
- Firmware recording:
- Open Command Prompt as administrator.
- Go to the folder with the firmware and utility
dfu-util. - Run the command (example for RTL88x2BU):
dfu-util -a 0 -D rtl88x2bu.bin --dfuse-address 0x08000000:leave
Linux firmware (using the Mediatek MT7610U as an example)
- Connect the adapter and check its detection:
lsusb - Download the firmware and move it to
/lib/firmware:sudo cp mt7610u.bin /lib/firmware/ - Reboot the adapter (disconnect/connect it physically).
- Check firmware download:
dmesg | grep firmwareIf you see the line
firmware: direct-loading firmware mt7610u.bin— the firmware has been downloaded successfully.
Firmware via SPI (for adapters with external flash memory)
Some adapters (eg. Alfa AWUS036ACH on a chip RTL8812AU) have a separate flash memory chip that can be programmed using a programmer CH341A or FT232HThis method is more complicated, but it allows you to restore the adapter even after serious failures.
What should I do if the adapter is not detected after flashing the firmware?
If the adapter is no longer detected by the system, try:
1. Connect it to another USB port (preferably USB 2.0).
2. Remove all adapter drivers through Device Manager and restart the PC.
3. Flash the adapter in DFU mode using the flashrom utility (requires a programmer).
4. If all else fails, the chip's flash memory may be damaged. In this case, the only solution is to replace the chip.
⚠️ Attention: When flashing via SPI, it is important not to mix up the contacts.MOSI,MISO,CLKAndCSOn the programmer and adapter. Incorrect connection can damage both the adapter and the programmer. Always refer to the datasheet for your chip!
6. Common mistakes and their solutions
Even if you follow the instructions exactly, problems may arise. Here are the most common errors and how to fix them:
| Error | Possible cause | Solution |
|---|---|---|
dfu-util: Cannot open DFU device |
The driver is not installed or the adapter is not in DFU mode. | Reinstall the driver via Zadig or reconnect the adapter |
The adapter is defined as Unknown Device |
Incompatible firmware or damaged flash memory | Flash the original firmware from the official website |
firmware: failed to load [file] (Linux) |
Invalid firmware file name or permissions | Check the file path and permissions (chmod 644 /lib/firmware/*.bin) |
| The adapter gets hot and turns off. | Too high transmit power in the new firmware | Roll back to the previous version or limit the power in the settings |
Error: Flash write failed |
Write lock (if the chip is protected) | Use the utility with the flag --force or programmer |
Critical information: If after flashing the adapter it's no longer detected and doesn't respond to connections to different PCs, don't throw it away. In 80% of cases, it can be restored using an SPI programmer (costs ~500-1000₽) and the original firmware. The main thing is not to damage the soldered contacts during connection.
If the adapter is unstable after flashing the firmware (for example, it loses connection or freezes), try:
- 🔄 Roll back to the previous firmware version.
- 🔧 Update the driver in the system (in Windows via
device Manager, in Linux viaapt upgrade). - ⚡ Connect the adapter to a USB hub with external power (some chips require more current than the standard port provides).
7. How to check the firmware update result
After successfully flashing the firmware, you need to make sure the adapter is working correctly. Here's what to check:
1. Detection of the adapter by the system
IN Windows:
- Open
device Managerand make sure the adapter is displayed without the exclamation mark. - Check the driver version in the device properties.
IN Linux:
iwconfig
Your device should be displayed (eg. wlan0 or wlx).
2. Speed and stability test
Connect to a Wi-Fi network and run:
- 📊 Speed test on Speedtest (compare with the indicators before the firmware).
- 🔄 Disconnection test: Run a ping to the router (
ping 192.168.1.1 -t) and observe the stability of the connection for 10-15 minutes.
3. Testing new features
If the firmware added new features (for example, monitor mode), check them out:
- IN Linux execute:
iw list | grep -A 10 "Supported interface modes"Should show up
monitorin the list of supported modes. - IN Windows use utilities like Wireshark or Acrylic Wi-Fi to check packet capture support.
If the adapter was flashed to work with Kali Linux, check packet injection support:
aireplay-ng --test wlan0
A message should appear Injection is working!.
8. Restoring the adapter after an unsuccessful firmware update
If your adapter is no longer detected or is behaving incorrectly, don't panic. In most cases, it can be restored. Here's the procedure:
Step 1: Check the physical connection
- Connect the adapter to a different USB port (preferably USB 2.0).
- Try a different cable or hub (if using an extension cable).
- Check if the chip is getting hot (if so, there may be a short circuit).
Step 2: Factory Reset
Some adapters (eg. Alfa Network) have a hardware reset button. Press and hold it for 10-15 seconds while connected to USB. If there is no button, try:
- IN Windows: remove all adapter drivers via DriverStore Explorer and restart your PC.
- IN Linux: remove loaded kernel modules:
sudo rmmod rtl8xxxuand reconnect the adapter.
Step 3: Flashing the firmware via an SPI programmer
If the adapter is not detected even as an unknown device, you will need a programmer (for example, CH341A). Instructions:
- Solder the wires to the adapter's flash memory contacts (see the chip datasheet).
- Connect the programmer to the PC and install the driver.
- Read the current firmware:
flashrom -p ch341a_spi -r backup.bin - Write the original firmware:
flashrom -p ch341a_spi -w original_firmware.bin
For chip adapters Realtek (For example, RTL8188EU) you can use the utility rtl8188eufw in recovery mode:
sudo rtl8188eufw -w -f firmware.bin
⚠️ Attention: When working with an SPI programmer, be careful with voltage! Most adapter flash memories operate at3.3V, and not on5VConnecting to5Vwill disable the microcircuit.
FAQ: Frequently asked questions about flashing USB Wi-Fi adapters
Is it possible to flash the adapter without a programmer?
Yes, in most cases flashing is possible through standard utilities like dfu-util or flashrom, if the adapter is detected by the system. The programmer is only needed for recovery after serious failures (for example, if the boot area of the flash memory is damaged).
How do I know which firmware is compatible with my adapter?
You need to accurately determine the chip model (see section 2) and search for the firmware by its name. For example, for the chip RTL8812AU firmware with the mark will be suitable rtl8812au.bin. Pay attention to the chip revision (for example, RTL8812AU v2 may require different firmware than v1).
Why did the adapter become hotter after updating the firmware?
This is normal if the new firmware has unlocked additional features (for example, increased transmit power). However, if the adapter shuts down due to overheating, try:
- Roll back to the previous firmware version.
- Use a USB hub with external power.
- Limit the transmit power in the driver settings (in Linux via
iwconfig wlan0 txpower 15).
Is it possible to flash the adapter to work in monitor mode?
Yes, but it depends on the chip. For example, adapters on RTL8812AU, AR9271 or MT7610U often support monitor mode after flashing modified firmware. For Kali Linux look for firmware marked monitor or packet-injection on GitHub.
What to do if the firmware update is interrupted?
If the firmware is interrupted during the recording stage, try:
- Restart your PC and repeat the process.
- Use a different USB port (preferably USB 2.0).
- Flash the adapter in DFU mode with the flag
--alt 0(For example,dfu-util -a 0 -D firmware.bin --alt 0). - If the adapter is not detected, restore it using the SPI programmer (see section 8).