# 前缘

去年在淘宝上买了一个无线网卡,由于是给办公室电脑用,系统是 Windows 10 ,就买了个便宜的,只支持 Windows 和 MAC 。

期间也尝试过插在蜗牛星际上(Ubuntu Server 18.04),只看到多了一个 usb 设备,并不能产生无线网络接口,问淘宝卖家,给了一个驱动链接

CF-811AC驱动下载地址:http://www.comfast.cn/index.php?m=content&c=index&a=show&catid=30&id=335

下载下来也没编过,结果就没在 Linux上用上。

# 再续

最近在研究 Wi-Fi ,又把它掏了出来,看看能不能在 Linux 上用起来。

直接插在树莓派上,情况还是和之前在蜗牛星际上一样,只显示多了一个 usb 设备,并没有无线网络接口产生。

网上搜到了这篇教程 《Linux安装comfast 811AC usb网卡驱动》 ,就跟着上面的步骤下载编译。

由于树莓派里面没有装内核头文件,所以编译报错,解决办法,安装内核头文件

sudo apt install raspberrypi-kernel-headers

注意,ARM 架构的话要执行 README.md 里的三句指令

sudo cp /lib/modules/$(uname -r)/build/arch/arm/Makefile /lib/modules/$(uname -r)/build/arch/arm/Makefile.$(date +%Y%m%d%H%M)
sudo sed -i 's/-msoft-float//' /lib/modules/$(uname -r)/build/arch/arm/Makefile
sudo ln -s /lib/modules/$(uname -r)/build/arch/arm /lib/modules/$(uname -r)/build/arch/armv7l

继续编译,又报错

/home/pi/project/c/DRIVERS/rtl8821CU/core/rtw_debug.c: In function ‘dump_drv_version’:
/home/pi/project/c/DRIVERS/rtl8821CU/core/rtw_debug.c:45:62: error: macro "__DATE__" might prevent reproducible builds [-Werror=date-time]RTW_PRINT_SEL(sel, "build time: %s %s\n", __DATE__, __TIME__);^
/home/pi/project/c/DRIVERS/rtl8821CU/core/rtw_debug.c:45:62: error: macro "__TIME__" might prevent reproducible builds [-Werror=date-time]
/home/pi/project/c/DRIVERS/rtl8821CU/core/rtw_debug.c:45:62: error: macro "__DATE__" might prevent reproducible builds [-Werror=date-time]
/home/pi/project/c/DRIVERS/rtl8821CU/core/rtw_debug.c:45:62: error: macro "__TIME__" might prevent reproducible builds [-Werror=date-time]
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:304: /home/pi/project/c/DRIVERS/rtl8821CU/core/rtw_debug.o] Error 1
make[1]: *** [Makefile:1522: _module_/home/pi/project/c/DRIVERS/rtl8821CU] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-4.19.97-v7+'
make: *** [Makefile:2217: modules] Error 2

提示没有 __TIME____DATE__ 宏,grep查看一下哪些地方使用了这些宏

pi@raspberrypi:~/project/c/DRIVERS/rtl8821CU $ grep -rn "__DATE__"
core/rtw_debug.c:45:    RTW_PRINT_SEL(sel, "build time: %s %s\n", __DATE__, __TIME__);

本来想给它手动改个时间日期填上,发现只有一句,并且感觉不是什么重要的语句,就直接注释掉了

void dump_drv_version(void *sel)
{RTW_PRINT_SEL(sel, "%s %s\n", DRV_NAME, DRIVERVERSION);//RTW_PRINT_SEL(sel, "build time: %s %s\n", __DATE__, __TIME__);
}

编译通过,安装到内核

pi@raspberrypi:~/project/c/DRIVERS/rtl8821CU$ sudo modprobe 8821cu

查看驱动是否安装成功

pi@raspberrypi:~/project/c/DRIVERS/rtl8821CU$ lsmod
Module                  Size  Used by
8821cu               2404352  0
r8188eu               438272  0
lib80211               16384  1 r8188eu
nls_ascii              16384  1
btsdio                 20480  0
bluetooth             557056  1 btsdio
ecdh_generic           16384  1 bluetooth
ecc                    36864  1 ecdh_generic
brcmfmac              385024  0
brcmutil               24576  1 brcmfmac
bcm2835_v4l2           45056  0
bcm2835_mmal_vchiq     40960  1 bcm2835_v4l2
vc_sm_cma              45056  1 bcm2835_mmal_vchiq
v4l2_common            16384  1 bcm2835_v4l2
videobuf2_vmalloc      20480  1 bcm2835_v4l2
videobuf2_memops       20480  1 videobuf2_vmalloc
cfg80211              692224  3 r8188eu,brcmfmac,8821cu
videobuf2_v4l2         28672  1 bcm2835_v4l2

出现了 8821cu 说明驱动模块载入内核成功。

接着,拔插无线网卡,看到无线网卡已经被成功驱动,并且可以正常使用了,wlan0 是树莓派自带的无线网卡,wlan1 就是 comfast 无线网卡。

pi@raspberrypi:~/project/c/DRIVERS/rtl8821CU $ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.2.116  netmask 255.255.255.0  broadcast 192.168.2.255inet6 fe80::c294:4582:7476:70d5  prefixlen 64  scopeid 0x20<link>ether b8:27:eb:8a:bc:f4  txqueuelen 1000  (Ethernet)RX packets 1122  bytes 123550 (120.6 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 849  bytes 280450 (273.8 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 172  bytes 14084 (13.7 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 172  bytes 14084 (13.7 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.2.211  netmask 255.255.255.0  broadcast 192.168.2.255inet6 fe80::7186:984c:b898:8ef3  prefixlen 64  scopeid 0x20<link>ether de:88:c4:e0:37:89  txqueuelen 1000  (Ethernet)RX packets 330  bytes 42876 (41.8 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 225  bytes 31375 (30.6 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0wlan1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.2.178  netmask 255.255.255.0  broadcast 192.168.2.255inet6 fe80::5ca7:f148:acc7:565a  prefixlen 64  scopeid 0x20<link>ether 6e:b8:f3:2a:7b:76  txqueuelen 1000  (Ethernet)RX packets 462  bytes 76567 (74.7 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 245  bytes 34741 (33.9 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

树莓派使用 comfast 无线网卡相关推荐

  1. 树莓派驱动水星无线网卡(MW150UH)教程指南

    目录 1.树莓派版本 2.无线网卡 查询无线网卡 1.如果为 Bus 001 Device 005: ID 0bda:b711 Realtek Semiconductor Corp. RTL8188G ...

  2. 树莓派4B 不同无线网卡自动连接不同wifi

    树莓派4B中只有一张无线网卡,在日常使用中,有时可能会出现需要两张无线网卡分别连接不同WIFI的情况.如果想让树莓派开机后两张无线网卡能自动连接上对应的WIFI,不产生连接的错位,首先,需要购买一张无 ...

  3. 树莓派配置usb无线网卡

    树莓派配置usb无线网卡 参考: http://blog.csdn.net/hw5226349/article/details/37877877 用到的几个指令: lsusb iwconfig iwl ...

  4. 树莓派水星USB无线网卡MW150US配置

    自从玩了下树莓派,之前买的水星无线usb网卡总算派上用场了. 不过网卡不像usb 鼠标.键盘,一插上去就能识别. 而且无线网卡如果没有合适的驱动是无法识别的,通过命令lsusb. lsmod 就可以看 ...

  5. 服务器屏蔽了无线网卡,树莓派永久禁用无线网卡

    之前树莓派一直用的无线网卡,不过更新系统,安装软件,传输文件都实在太慢了,所以我找了一根网线把树莓派连在路由器上面.这样感觉好多了还是有线稳定啊.因为基本不再用无线,所以就准备把无线网卡禁用掉. 首先 ...

  6. 把树莓派改造成无线网卡(3)-----共享无线网络,无线网络转换成有线网络,让有线网络设备连上无线网络

    本文目录 1.准备工作 2.安装DNS和配置管理软件 3.设置网络路由功能 3.1.树莓派的有线网络接口IP配置 3.2.启用路由和IP伪装 3.3.为有线网络配置DHCP和DNS服务 4.运行 5. ...

  7. 实验:树莓派通过网线连接笔记本实现网络共享

    作者:爱编程的小金毛球球 日期:2021年4月15日 这段时间重拾起遗忘很久的树莓派,为导师准备几个无线网络安全的小实验,在Freebuf上找到几个比较有意思的小实验,复现了一番,操作比较简单,比较适 ...

  8. 树莓派机器视觉环境搭建

    主要内容: 树莓派安装系统 设置静态网络 更换镜像源 安装中文输入法 电脑控制树莓派 OpenCV3.4.1安装 设置通用(UART)串口 1.树莓派安装系统 下载你所要的树莓派系统 https:// ...

  9. [树莓派1] 硬件选购指南

    树莓派是一款基于 ARM 架构的微型电脑主板,你可以把它理解成一台微型服务器.目前最新版是树莓派 4b,最大支持 8G 内存. 以前树莓派内存太小了,就没怎么折腾:现在树莓派 CPU 和内存都提高了, ...

最新文章

  1. Educational Codeforces Round 86 (Rated for Div. 2)c和d
  2. c语言移数有n个整数使其,有N个整数,使其前面各数顺序向后移动M个位置,最后M个数变成前面的...
  3. JavaScript实现CountingSort计数排序算法(附完整源码)
  4. iPhone SDK发布
  5. java中哈希表怎么表示_java中HashMap概念是什么?怎么存取实现它?
  6. windows 2013 datacenter 安装sql server2008 r2兼容性
  7. 组态王通过TCP和MCGS触屏通讯
  8. SUSE Linux Enterprise Server 12 SP5 Install
  9. etc的常见算法_UI图集压缩优化,以及对Dither和ETC1算法的深入了解
  10. 升级mac系统正在计算机,苹果电脑系统更新,能用手机 APP 了,但我不建议你升级...
  11. java手风琴代码_[Java教程]18款jquery抽屉式手风琴导航特效代码
  12. 基于QT(c++)的家庭财务管理系统
  13. 什么是生产管理系统?
  14. Electron主进程与渲染进程相互通信
  15. python thinker canvas详解_python thinker canvas create_arc 使用详解
  16. 学习 lt MATLAB gt 心得,lt;lt;MATLAB可视化大学物理学gt;gt;使大学物理更具体,更有趣。 - 物理 - 小木虫 - 学术 科研 互动社区...
  17. 那么厉害的个人所得税计算器代码你竟然不点开看看,你膨胀了!
  18. 人在年轻的时候,最核心的能力是什么?
  19. 渗透测试之攻击Windows认证
  20. Facebook商业模式分析

热门文章

  1. 关于Django框架和Flask框架的区别。
  2. 人工智能--自动编码器
  3. 利用USB摄像头,免费快速搭建浏览器远程监控
  4. linux debian 安装gcc,如何在Debian 10 Linux上安装GCC编译器
  5. 双链表的初始化(带头结点)
  6. Embedded Coder Support Package for Texas Instruments C2000 Processors
  7. 基于ETest的航空火控装备板卡测试系统设计
  8. MQTT协议(概括与详解)
  9. 安装mysql黑屏电脑卡死_电脑卡屏死机是怎么回事?
  10. 2023最新SSM计算机毕业设计选题大全(附源码+LW)之java实验室预约管理系统5x7en