RK3588 (ARM64) 绿联 AX900 USB 无线网卡驱动安装教程

发布时间:2026/9/24 12:43:33

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 上验证通过。
延伸阅读

更多相关文章

2026/9/25 10:14:31

如何快速生成Android应用图标:终极Android Asset Studio指南

如何快速生成Android应用图标:终极Android Asset Studio指南 【免费下载链接】AndroidAssetStudio A set of web-based tools for generating graphics and other assets that would eventually be in an Android applications res/ directory. 项目地址: https:/…

2026/9/22 13:48:12

QCMA完全指南:免费开源跨平台PS Vita内容管理终极解决方案

QCMA完全指南:免费开源跨平台PS Vita内容管理终极解决方案 【免费下载链接】qcma Cross-platform content manager assistant for the PS Vita 项目地址: https://gitcode.com/gh_mirrors/qc/qcma 如果你正在寻找一款真正自由、功能强大的PS Vita内容管理工具…

2026/9/25 10:13:00

正则表达式[1-9]完全指南:字符集、量词与数字匹配实战

正则表达式里的[1-9],恐怕是每个新手都会写、但又未必真的理解的一行小玩意儿。很多人一看“匹配1到9”,随手就写/[1-9]/,结果在"10"里匹配不到、在"123"里又只匹配到一个字符,一脸懵。其实[1-9]是一个字符集…

2026/9/25 10:13:00

微信小程序酒店管理系统三端源码解析与本地跑通实战

简介:这是一套面向高校计算机相关专业毕业设计场景的微信小程序酒店管理系统全套源码,适合正在准备毕设或课程设计的学生、需要快速搭建酒店业务原型的开发者参考。系统由前台管理、后台管理与用户手机端小程序三部分构成,覆盖在线预订、客户…

2026/9/25 10:13:00

MyBatis框架原理与核心特性深度解析:从动态代理到缓存实战

用MyBatis写增删改查几年了,坦白说,很多人用了很久也未必真搞懂这个框架的底层逻辑。它表面上是个“简化JDBC的持久层框架”,但实际运行起来,动态代理、反射、缓存链、类型处理器这些机制全都堆在里头。我刚毕业那会儿用MyBatis&a…

2026/9/25 10:08:00

VMware虚拟机USB直通实战:笔记本摄像头连接与排错指南

1. 为什么要在虚拟机里折腾摄像头把笔记本摄像头直通给 VMware 虚拟机,这个需求听起来小众,实际踩坑的人非常多。我最早碰到这个场景,是要在虚拟机里跑一个视频采集的测试程序,宿主机是 Windows,虚拟机里装的是 Ubuntu…

2026/9/24 20:24:47

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/23 12:06:55

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/25 0:02:35

AI元人文:从工具使用到思维重构的深度探索

最近半年我一直在琢磨一件事:AI元人文到底是什么?说白了,就是“用元视角重新审视人与AI的关系”,也在“探索AI如何反向逼着我们发现自己的思考边界”。标题里的“元探索”,在我看就是一层套一层的追问——当你用AI解决…

2026/9/25 0:02:35

Python+CNN车牌识别实战:从数据预处理到模型训练与部署

简介:基于Python与卷积神经网络的车牌识别项目,面向计算机视觉初学者及智能交通开发者,目标是帮助用户掌握从数据预处理、模型构建到实际部署的完整流程。压缩包共25个文件,包含jpg/png图像样本、py训练脚本、md说明文档、dat数据…

2026/9/25 0:02:35

Vim基础操作全攻略:保存退出、模式切换与高频命令实战

1. 项目概述1.1 核心需求解析今天聊聊Vim。写这个题目的原因是:几乎每个后端开发者、运维人员、数据工程师某天都会遇到一个场景——深夜加班,服务器登录界面只有黑底白字,编辑器只有vi/vim,你必须在五分钟内完成一次配置修改并保…

2026/9/22 16:34:32

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/22 20:01:30

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/22 13:25:41

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑