资讯 社区 文档
技术能力
语音技术
文字识别
人脸与人体
图像技术
语言与知识
视频技术

适配wifi上网卡

EdgeBoard适配wifi上网卡

1 说明

本说明适用于edgeboard平台petalinux工具构建的18.3版本的文件系统和1.3.0版本以上的软核,以及当前支持的使用Realtek RTL8188CUS芯片的网卡。
Ubuntu系统使用wifi网卡请参考Ubuntu使用说明

2 已经验证的网卡及芯片型号

厂家 型号 芯片 购买链接
基信达 免驱动C 300M高速 RTL8192 https://item.taobao.com/item.htm?spm=a1z0d.6639537.1997196601.4.30ba7484JKnRrH&id=595761389125

3 准备

  1. 查看内核默认是否支持usb无线网卡 插入USB无线网卡,串口或者dmesg命令查看内核是否打印以下信息,如果没有说明默认不支持。需要安装相关驱动及固件

usb 1-1.2: New USB device found, idVendor=0bda, idProduct=8176
[10172.874613] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[10172.881926] usb 1-1.2: Product: 802.11n WLAN Adapter
[10172.886882] usb 1-1.2: Manufacturer: Realtek
[10172.891144] usb 1-1.2: SerialNumber: 00e04c000001
[10172.922507] rtl8192cu: Chip version 0x10
[10172.964510] rtl8192cu: Board Type 0
[10172.968088] rtl_usb: rx_max_size 15360, rx_urb_num 8, in_ep 1
[10172.974466] rtl8192cu: Loading firmware rtlwifi/rtl8192cufw_TMSC.bin

也可以查看wlan接口是否加载,ifconfig -a, 如果发现wlan0设备,说明系统已经支持 另外,已经验证发布的zu5 1.3.0版本内核image.ub已经带了该模块, 可以不需要单独的ko驱动,如果未发现wlan0设备,可使用我们提供好的驱动和固件。

4 安装驱动(初次使用需安装)

  1. 下载驱动和固件 我们提供了已经编译好的驱动文件,以及依赖的官方固件程序。
  • 先备份系统文件
cp -a /lib/modules/ /lib/modules_bak
  • 拷贝文件modules_zu5_183.tgz到板子上,并解压,如果第一步已经支持,可以略过
 tar -xzvf modules_zu5_183.tgz -C /lib/
 depmod
  • 拷贝文件firmware_183_wifi.zip到板子上,并解压、复制
unzip firmware_183_wifi.zip
mkdir /lib/firmware/rtlwifi/
cp -a firmware_183/* /lib/firmware/rtlwifi/

5 应用配置

驱动和固件安装完成后,下一步是wifi热点的配置,edgeboard提供了wifi配置工具为wpa_supplicant,是Linux常用WIFI配置组件,可以搜索相关教程进行详细设置, 这里给出简单示例 启动wifi适配器

ip link set wlan0 up

使用命令 wpa_supplicant 及 wpa_cli 配置WIFI连接 备份配置文件 /etc/wpa_supplicant.conf

cp /etc/wpa_supplicant.conf /etc/wpa_supplicant.conf_bak

修改配置文件 /etc/wpa_supplicant.conf ,为如下内容

ctrl_interface=/var/run/wpa_supplicant
update_config=1

启动wpa_supplicant服务工具

wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf > /dev/null &

其中wlan0为适配器接口名称,有可能变化,可根据ifconfig -a 命令获取具体命令 使用命令行工具wpa_cli加入热点, 其为交互式命令行,根据顺序输入各子命令即可,输入命令 wpa_cli

add_network
0
set_network 0 ssid "SSID名称"
OK
set_network 0 psk "SSID密码"
OK
enable_network 0
OK
save
OK
q

退出 ,然后配置IP地址为动态IP,可以使用命令行

udhcpc -i wlan0

或者配置IP为静态IP,可以使用ifconfig命令,手动配置,也可以设置/etc/network/interfaces文件,内容类似如下

auto wlan0
iface wlan0 inet static
address 192.168.1.28
netmask 255.255.255.0
network 192.168.1.0
gateway 192.168.1.253

6 常见问题

  • 启动WIFI适配器时候,如果提示错误:RTNETLINK answers: Operation not possible due to RF-kill 可以使用下面命令解决。该问题参考这里有详细说明
rfkill unblock all
  • 连接失败,提示认证失败 系统默认启动了一个wpa_supplicant服务,会连接默认配置,造成用户配置冲突,可以先杀死该进程,再启动自己的服务。

    查看相关进程

ps -ef | grep wpa

杀掉所有wpa_supplicant服务后重新启动

pkill -9 wpa_supplicant<br>
wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf > /dev/null &<br>
  • 都配置成功后,仍然ping不通,请关掉eth0有线连接。因为两个网络不能配置同一个网段
ifconfig eth0 down