RK3588 (ARM64) 绿联 AX900 USB 无线网卡驱动安装教程
RK3588 (ARM64) 绿联 AX900 USB 无线网卡驱动安装教程芯片方案AIC 8800D80 (爱科微)适用平台Rockchip RK3588 / ARM64 Linux测试环境LubanCat-5 / Debian 12 Bookworm / Linux 6.1.99-rk3588网卡型号绿联 CM763 AX900 (USB 3.0, WiFi 6)一、前言最近给手头的 RK3588 开发板LubanCat-5配了一个绿联 AX900 USB 无线网卡型号 CM763芯片方案是爱科微AICSemi的 AIC 8800D80支持 WiFi 6 (802.11ax)。官方的 Linux 驱动包虽然提供了源码但在 ARM64 较新内核6.x下编译会踩一些坑。本文记录完整的驱动安装过程供有同样需求的朋友参考。二、环境信息项目信息开发板RK3588 (LubanCat-5)操作系统Debian GNU/Linux 12 (bookworm)内核版本6.1.99-rk3588架构aarch64 (ARM64)编译器GCC 12.2.0 (Debian 12)USB 网卡绿联 CM763 (AIC 8800D80)USB 设备 ID368b:8d88(WiFi 模式)三、驱动准备3.1 下载驱动绿联官方或网卡配套光盘/U盘中的驱动包解压后目录结构如下UGREEN-CM763-35265_USB无线网卡驱动_V1.4.zip └── Linux/ ├── aic8800_linux_driver/ # 驱动源码 │ ├── drivers/aic8800/ │ │ ├── aic8800_fdrv/ # WiFi 主驱动 │ │ ├── aic_load_fw/ # 固件加载 蓝牙 │ │ └── Makefile │ ├── fw/aic8800D80/ # 固件文件 │ ├── tools/aic.rules # udev 规则 │ └── install_setup.sh └── release_note.txt3.2 安装内核头文件编译内核模块需要匹配当前内核的头文件sudoaptinstalllinux-headers-$(uname-r)确认 build 链接存在ls/lib/modules/$(uname-r)/build注意RK3588 的定制内核头文件包名通常是linux-headers-6.1.99-rk3588这类带后缀的格式。3.3 插入网卡 模式切换插入 USB 网卡后lsusb会先看到存储模式Bus 001 Device 003: ID a69c:5724 aicsemi Aic MSC此时网卡被识别为 USB 大容量存储设备虚拟光盘内含 Windows 驱动。需要 eject 切换到 WiFi 模式# 先查看设备节点lsblk|grepsda# 设备通常挂载在 /media/xxx/UGREENsudoeject/dev/sda再次lsusb设备变为 WiFi 模式Bus 001 Device 004: ID 368b:8d88 AICSemi AIC 8800D80四、编译驱动4.1 复制固件和 udev 规则# 复制固件sudocp-rfaic8800_linux_driver/fw/aic8800D80 /lib/firmware/# 复制 udev 规则用于下次插入时自动 ejectsudocpaic8800_linux_driver/tools/aic.rules /etc/udev/rules.d/sudoudevadm control--reloadsudoudevadm trigger4.2 修复编译错误直接make会遇到 GCC 12 将警告视为错误的问题。主要报错如下# 错误1: 未使用的变量 aic_compat_8800d80.c:375:31: error: unused variable patch_info [-Werrorunused-variable] aic_compat_8800d80.c:374:31: error: unused variable head [-Werrorunused-variable] aic_compat_8800d80.c:340:12: error: aicbt_ext_patch_data_load defined but not used [-Werrorunused-function] # 错误2: 类型溢出 aicbluetooth.c:760:15: error: conversion from long unsigned int to u32 changes value [-Werroroverflow] # 错误3: 数组地址永远非空内核 API 变更bssid 从指针变为数组 rwnx_msg_rx.c:792:29: error: the comparison will always evaluate as true for the address of bssid will never be NULL [-Werroraddress]解决方法在两个子模块的 Makefile 中添加-Wno-error禁用警告即错误文件1aic8800_fdrv/Makefile第2行后添加EXTRA_CFLAGS $(USER_EXTRA_CFLAGS) EXTRA_CFLAGS -Wno-implicit-fallthrough EXTRA_CFLAGS -Wno-error # -- 添加此行文件2aic_load_fw/Makefile第35行后添加ccflags-y -DAICWF_USB_SUPPORT ccflags-y -Wno-error # -- 添加此行4.3 编译cdaic8800_linux_driver/drivers/aic8800# 清理makeclean# 8 核并行编译make-j$(nproc)编译完成后生成两个.ko文件aic_load_fw/aic_load_fw.ko # 固件加载模块 aic8800_fdrv/aic8800_fdrv.ko # WiFi 主驱动模块五、安装与加载驱动5.1 安装模块sudomakeinstall这将模块安装到/lib/modules/$(uname -r)/kernel/drivers/net/wireless/aic8800/并执行depmod。5.2 ⚠️ 重要覆盖旧模块RK3588 的 LubanCat 镜像可能预置了旧版aic_load_fw.ko位于rockchip_wlan目录下。modprobe会优先加载旧版导致符号不匹配aic8800_fdrv加载失败aic8800_fdrv: Unknown symbol get_testmode (err -2) aic8800_fdrv: Unknown symbol get_flash_bin_size (err -2) aic8800_fdrv: Unknown symbol aicwf_prealloc_txq_alloc (err -2)解决用新编译的aic_load_fw.ko覆盖旧版# 查找旧模块位置find/lib/modules/$(uname-r)-nameaic_load_fw.ko# 备份并替换sudomv/lib/modules/$(uname-r)/kernel/drivers/net/wireless/rockchip_wlan/aic8800_usb/aic_load_fw/aic_load_fw.ko{,.bak}sudocpaic_load_fw/aic_load_fw.ko /lib/modules/$(uname-r)/kernel/drivers/net/wireless/rockchip_wlan/aic8800_usb/aic_load_fw/sudodepmod-a5.3 加载模块sudomodprobe aic_load_fwsudomodprobe aic8800_fdrv检查是否加载成功lsmod|grepaicdmesg|tail-10|grepaic此时wlan0接口应该已出现iplinkshow wlan0# 6: wlan0: NO-CARRIER,BROADCAST,MULTICAST,UP mtu 1500 ...六、连接 WiFi6.1 使用 NetworkManager推荐# 扫描可用网络nmcli dev wifi list# 连接sudonmcli dev wifi connectysdlabpasswordyour_password6.2 验证连接# 查看 IPipaddr show wlan0# 查看连接信息iwconfig wlan0示例输出wlan0 IEEE 802.11ax ESSID:ysdlab Nickname:AIC8800 Mode:Auto Frequency:2.437 GHz Access Point: 9C:47:82:A8:D2:4E Bit Rate:286 Mb/s Link Quality0/100 Signal level-4 dBm Noise level0 dBm6.3 外网连通性测试ping-c4-Iwlan08.8.8.864 bytes from 8.8.8.8: icmp_seq1 ttl112 time46.7 ms 64 bytes from 8.8.8.8: icmp_seq2 ttl112 time43.4 ms 64 bytes from 8.8.8.8: icmp_seq3 ttl112 time43.9 ms --- 8.8.8.8 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss rtt min/avg/max/mdev 43.410/44.664/46.698/1.450 ms七、最终结果总结项目状态驱动编译✅ 成功模块加载✅aic_load_fwaic8800_fdrvWiFi 接口✅wlan0(802.11ax)IP 地址192.168.3.100/24连接速率286 Mb/s信号强度-4 dBm外网访问✅ ping 8.8.8.8 1% 丢包八、常见问题 FAQQ1: 插入网卡后仍是存储模式如何切换A: 执行sudo eject /dev/sda替换为实际的设备节点。也可安装usb-modeswitch自动处理。Q2: 编译报all warnings being treated as errorsA: 在aic8800_fdrv/Makefile和aic_load_fw/Makefile中添加-Wno-error编译选项。Q3:modprobe aic8800_fdrv报 Unknown symbolA: 系统中存在旧版aic_load_fw.ko需找到并用新版覆盖见第 5.2 节。Q4: 重启后驱动需要重新加载A: 可将模块名加入/etc/modulesechoaic_load_fw|sudotee-a/etc/modulesechoaic8800_fdrv|sudotee-a/etc/modulesQ5: 内核升级后需要重新编译A: 是的。建议将驱动源码保留在本地内核升级后重新编译安装。或用 DKMS 管理。参考链接绿联官网 AX900 驱动下载页LubanCat-RK3588 官方文档Linux Wireless Wiki: cfg80211 API changes本文写于 2026-07-31在 LubanCat-5 (RK3588) Debian 12 内核 6.1.99-rk3588 上验证通过。

相关新闻

35ms低延迟跨屏革命:QtScrcpy如何重新定义安卓设备桌面控制体验

35ms低延迟跨屏革命:QtScrcpy如何重新定义安卓设备桌面控制体验

35ms低延迟跨屏革命:QtScrcpy如何重新定义安卓设备桌面控制体验 【免费下载链接】QtScrcpy Android real-time display control software 项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy 在数字设备日益多元化的今天,手机与电脑之间…

2026/10/20 11:12:38 阅读更多 →
【AI网页设计实战指南】:零基础30天打造高转化率响应式网站(附12个可商用Prompt模板)

【AI网页设计实战指南】:零基础30天打造高转化率响应式网站(附12个可商用Prompt模板)

更多请点击: https://kaifayun.com 第一章:AI网页设计的核心范式与认知重构 传统网页设计以“人—工具—输出”为线性链条,设计师主导视觉决策、编码实现与交互逻辑;而AI网页设计则转向“人—意图—AI协同生成—验证迭代”的闭环…

2026/10/20 11:11:56 阅读更多 →
从入门到贡献:MicroPython 内核开发的科普与入门路径

从入门到贡献:MicroPython 内核开发的科普与入门路径

MicroPython 内核开发 由于本教程内容主要聚焦于应用 MicroPython 编写传感器模块驱动程序和简单程序开发以及如何使用树莓派 Pico 入门 MCU 编程,因此对本节内容仅作简单概述。 首先,我们需要了解基本名词: 源码:就是 MicroPytho…

2026/10/19 5:12:19 阅读更多 →

最新新闻

AI辅助毕业答辩PPT制作:逻辑压缩与实操全攻略

AI辅助毕业答辩PPT制作:逻辑压缩与实操全攻略

每年四五月份,总有一批人要熬夜改答辩PPT。我当年也没躲过这关——论文写完了,数据跑完了,结果卡在“怎么把几十页Word变成十几页PPT”上,一页页截图、复制、删减、调整格式,那几天基本是崩溃的。现在情况好多了&#…

2026/10/20 12:02:59 阅读更多 →
Qwen2.5-VL-7B LoRA微调实战:从原理到训练全流程指南

Qwen2.5-VL-7B LoRA微调实战:从原理到训练全流程指南

开始前先说一句:这篇是 Qwen2.5-VL-7B 模型低秩适配 LoRA 微调方法应用连载的第八篇,前面几篇已经零零散散聊过部署、数据、评估这些东西,这一篇想把这些内容收敛到一条能从零跑通的实战链路上。Qwen2.5-VL-7B 是目前在文档理解、截图问答、智…

2026/10/20 12:02:59 阅读更多 →
智能支持员的技术协助与问题解决:架构设计与落地实践

智能支持员的技术协助与问题解决:架构设计与落地实践

一个智能支持员如果只能“答上话”,却解决不了问题,那它在实际业务里基本就是个摆设。我见过太多团队上一套智能客服系统,上线时演示效果惊艳,真正跑起来之后用户问两句就转人工,后台堆满未闭合工单,最后整…

2026/10/20 12:02:59 阅读更多 →
C++快速排序全解析:分治思想、三种分区写法与工程级优化

C++快速排序全解析:分治思想、三种分区写法与工程级优化

先说一个我自己的体会。有一阵子我在处理一批模拟订单数据,几十万条结构体记录,需要按时间戳排序。头一回图省事,直接套了个最简单的选择排序,结果跑了快半分钟,整个后端接口直接超时。换成快排之后,同一批…

2026/10/20 12:02:59 阅读更多 →
彻底解决C盘空间不足:从清理临时文件到长效预防的完整攻略

彻底解决C盘空间不足:从清理临时文件到长效预防的完整攻略

C盘变红应该是Windows 10用户遇到最多的糟心事之一。明明是同一个系统,别人用了三年还干干净净,自己用半年就满得连输入法升级都要提示磁盘不足。我前些年帮人处理过不少这类问题,发现大多数人的第一反应是手动删文件——删完确实空了一点&am…

2026/10/20 12:02:59 阅读更多 →
AI应用开发实战:需求定义、模型选型与RAG调优指南

AI应用开发实战:需求定义、模型选型与RAG调优指南

AI 应用的开发方法,这个话题我聊了很多次,每次和人聊完都发现大家卡在最开始的地方——拿到了大模型的能力,却不知道怎么把它变成一个真正能上线的应用。市面上都在说“人人都是开发者”,可真正动手做的时候,选模型、搭…

2026/10/20 12:01:58 阅读更多 →

日新闻

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
ESP32舵机控制指南:原理、多路驱动与避坑实战

ESP32舵机控制指南:原理、多路驱动与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
位移法实现一阶低通滤波:单片机ADC采样降噪实战

位移法实现一阶低通滤波:单片机ADC采样降噪实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/20 10:02:13 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/20 2:50:50 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 10:02:08 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:17 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 9:50:45 阅读更多 →