海思3518E开发笔记5.2——MT7601U网卡STA模式移植

前言

  • HI2518E+WIFI做STA,PC做STA,外部路由器做AP,实现局域网内ortp视频传
  • HI2518E+WIFI做STA,PC做STA,外部路由器做AP,实现局域网全程无线调试

STA模式USB-WIFI的驱动移植与部署

源码修改

参考上一篇
修改Makefile的plantform、linux设备树地址、plantform对应交叉编译、驱动保存地址
修改os/linux/config.mk
修改include/rtmp_def.h
然后编译

驱动部署

从共享文件夹中将mt7601Usta.koRT2870STA.dat复制到开发板目录下

此时先不用修改RT2870STA.dat中的参数,后续配合wpa_supplicant进行修改

在AP模式时,需要修改,因为AP模式是向外广播自己的源

装载新ko的时候需要将之前AP模式的KO卸载,否则报错

移植wpa_supplicant

(1)下载wpa_supplicant、openssl(因为wpa_supplicant依赖于openssl)

  • http://hostap.epitest.fi/wpa_supplicant/,下载wpa_supplicant-2.5.tar.gz
  • ftp://ftp.openssl.org/source/old/0.9.x/,下载openssl-0.9.8za.tar.gz

移植openssl

用于ssl验证,有很多地方会用到

(1)给openssl打补丁

  • 把wpa_supplicant-2.5里面的patches文件夹下的openssl-0.9.8za-tls-extensions.patch文件拷贝到openssl-0.9.8za目录下,运行:patch -p1 < openssl-0.9.8za-tls-extensions.patch

(2)修改openssl-0.9.8za目录下的Makefile

CC=arm-hisiv300-linux-gcc
AR=arm-hisiv300-linux-ar $(ARFLAGS)  r
AD=arm-hisiv300-linux-ar $(ARFLAGS)  d
RANLIB=arm-hisiv300-linux-ranlib
INSTALLTOP = /tmp/openssl(/tmp目录重启之后就没有,适合临时一次使用)
OPENSSLDIR = /tmp/openssl

(3)make,然后make install
(4)make install时报错,因为OpenSSL 与 perl版本不兼容,解决方法:rm -f /usr/bin/pod2man

****Expected text after =item, not a number
****Expected text after =item, not a number
****Expected text after =item, not a number
****Expected text after =item, not a number

(5)安装好后,在/tmp/openssl目录有诸多文件,我们需要的是lib和include。
在这里插入图片描述

移植wpa_supplicant

(1)解压并进入下面的目录

~/wpa_supplicant-2.5/wpa_supplicant

(2)在此目录下执行cp defconfig .config

(3)修改.config,增加以下内容

CC=arm-hisiv300-linux-gcc -L/tmp/openssl/lib
CFLAGS+=-I /tmp/openssl/include
LIBS+=-L/tmp/openssl/lib

(4)执行make,如果报错如下:

driver_nl80211.c:17:31: fatal error: netlink/genl/genl.h

则进入wpa_supplicant目录下.config ,将CONFIG_DRIVER_NL80211=y 注释掉。

(5)执行make,生成wpa_supplicantwpa_cli,则移植成功完成。
在这里插入图片描述

  • wpa_supplicant 服务器端
  • wpa_cli客户端。

这是linux底下运用命令行管理无线网络的方式。

STA模式USB-WIFI的ORTP视频传输测试

部署前确定sta的驱动和配置文件放在/etc/Wireless/RT2870STA/RT2870STA.dat
1、部署wpa_supplicant

(1)将wppa_cli丢到开发板/usr/bin目录

  • 出现板载系统容量不足的问题……使用df -h 查看空间使用情况。由于不熟悉哪些文件可以删除,我直接通过/mnt/访问,后面遇到问题再处理。

(2)在板载系统上,创建/etc/wap_supplicant.conf并配置内容如下:(可在虚拟机写好拷贝进去的,如果直接复制的haunt,记得每行前面的空格去掉。

ctrl_interface=/var/run/wpa_supplicant

network={
ssid="A209"//当前我房间的无线路由器的网络名字
scan_ssid=1
key_mgmt= WPA-EAP WPA-PSK IEEE8021X NONE//加密方式
pairwise=TKIP CCMP
group=CCMP TKIP WEP104 WEP40
psk="12345678"//路由器的密码
}

2、STA模式USB-WIFI的设置

(1)安装驱动 insmod mt7601Usta.ko

(2)设置静态IP地址(注意要与实际路由器的地址段一致)

  • 因为没有移植DHCP因此这里设置静态IP。
    ifconfig wlan up, ifconfig ra0 192.168.43.233
    这个板子的静态ip之所以这样设置,是因为查询我房间的无线网络信息得知网段是192.168.43.xx,由于xx自动分配是从小开始,所以我这里设置一个比较大的233,以防止和其他的冲突。

(3)开发板作为STA,连接AP (-dd打开调试信息)
使用命令wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf -dd &
& 符号表示让其工作在后台。这行命令表示让wpa_supplicant 工作起来。

(4)查看连接状态

使用命令wpa_cli -i wlan0 status
在这里插入图片描述
(5)测试连接效果

ping 192.168.2.1 (网关AP,即路由器的IP)
如果想上网,先添加网关信息,即路由器的IP,使用命令route add default gw 192.168.2.1 dev wlan0
测试ping 8.8.8.8(google的dnw server)。
因为没有添加DNS,所以不能直接类似ping www.baidu.com.cn这种形式。

ORTP视频传输测试

(1)在mpp/sample/common/sample_common_ven.c,修改LOCAL_HOST_IP 为192.168.2.13(pc接入时自动分配的IP)

(2)编译得到sample并到开发板运行,如果虚拟机重启过,要在ortp源码那再make install,确保tmp中有ortp

(3)修改sdp中c=IN IP4 192.168.2.233,打开sdp播放。

无限调试环境搭建

1、原理

  • (1)ubuntu与Windows桥接,这样ubuntu、windows、开发板三者都做STA,连接同一个AP。

  • (2)开发板事先移植部署好USB WIFI驱动、wpa_supplicant等。

  • (3)开发板/etc/profile中设计好配置WIFI启动、连接AP、静态IP等。

  • (4)开发板/etc/profile中设置让开发板通过无线mount虚拟机

2、实战

  • (1)先确认开发板部署好USB-WIFI驱动、wpa_supplicant工具。

  • (2)sample放到虚拟机ubuntu的共享文件夹中。

  • (3)开发板/etc/profile中做好各种配置。

  • (4)设置ubuntu桥接到windows的无线网卡,并给ubuntu设置静

  • (5) 开发板重启,看是否能成功挂载。

ifconfig lo 127.0.0.1
#ifconfig eth0 192.168.2.111

cd /ko
./load3518e -i -sensor ar0130 -osmem 32 -total 64 &
cd -

insmod /etc/mt7601Usta.ko
ifconfig wlan0 up
ifconfig wlan0 192.168.2.233
wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant.conf -dd &
route add default gw 192.168.2.1 dev wlan0
sleep2
mount -t nfs -o nolock 192.168.2.84:/home/test/nfsShare /mnt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Spark!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值