AIC8800 Linux Driver
This driver supports AIC8800-family chipsets used by devices such as the Tenda U11, AX913B, and TP-Link Archer TX1U Nano.
Legacy MCU revision 1 branch: You are viewing
legacy-mcu1. This branch is only for AIC8800D80 or AIC8800DC/DW devices that reportchip_id=7, chip_mcu_id=1. It provides complete matched V3 firmware and loader profiles for the D80 upload-limit failure validated in issue #58 and the DC/DW V5 main-application timeout validated in issue #71. Usemainfor newerchip_mcu_id=0hardware or when the MCU revision is unknown. See the D80 and DC/DW support notes before installing.
Added support for devices with Vendor ID 368B (tested).
Tested on Linux kernel 6.16 with Ubuntu 25.04 and 6.1.0.27 with Debian 12.
Bluetooth support: This branch initializes the integrated Bluetooth controller for the kernel's standard
btusbdriver. It does not contain or installaic_btusb.
Note
Bluetooth branch retirement: Do not switch MCU1 hardware to the separate
bluetoothbranch. That branch is deprecated, is being kept only during migration, and will be removed after the unified builds are validated.legacy-mcu1already provides Bluetooth through the kernel's standardbtusbdriver. Its unified installer and device-scoped368b:8d81ZLP support are being validated in PR #74; the ZLP module remains inactive on other VID:PID combinations.
Disclaimer
I did not develop this software, The code is sourced from the Tenda U11 driver. I only made some modifications to the code to adapt it to newer kernel versions. Apart from compilation issues, I am unable to address other problems.
Attention
Before installing the driver, delete all aic8800-related folders under /lib/firmware. Using an incorrect firmware version may cause the system to freeze.
Installation Steps
Method 1: Quick Installation (Recommended)
Method 2: Manual Installation
Copy udev rules:
Copy the aic.rules file to /lib/udev/rules.d/:
sudo cp aic.rules /lib/udev/rules.d/
Copy firmware:
Copy the aic8800D80 folder from ./fw to /lib/firmware/:
sudo cp -r ./fw/aic8800D80 /lib/firmware/
Navigate to the driver directory:
Change to the drivers/aic8800 directory:
cd ./drivers/aic8800
Compile and Install the Driver:
First, compile the driver:
make
Then, install the driver:
sudo make install
For any kernel updates, you'll need to reinstall the driver:
make clean
make
sudo make install
Load the Driver
After installation, load the driver with the following command:
sudo modprobe aic8800_fdrv
Verify the Module is Active
Check if the module is loaded correctly:
lsmod | grep aic
You should see output similar to:
aic8800_fdrv 536576 0
cfg80211 1146880 1 aic8800_fdrv
aic_load_fw 69632 1 aic8800_fdrv
usbcore 348160 10 xhci_hcd,ehci_pci,usbhid,usb_storage,ehci_hcd,xhci_pci,uas,aic_load_fw,uhci_hcd,aic8800_fdrv
After that, plug in your USB wireless network card.
Verify Wi-Fi Device is Active
To check if the Wi-Fi interface is recognized, run:
iwconfig
If the device is still not active, check the kernel logs for any errors related to the driver:
sudo dmesg