以下内容源于朱有鹏课程,如有侵权,请告知删除。

本课程实现内容:

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

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

本部分参考之前工作,没什么难度。

1、源码修改

(1)用sta版本的driver,可以简单看一下区别

(2)修改makefile,参考AP模式下的修改点修改

(3)config.mk中修改,参考AP模式下的修改点修改

(4)修改网卡名称为wlan

(5)make clean && make

2、部署驱动

(1)部署/etc/Wireless/RT2870STA/RT2870STA.dat

  • 此时先别修改里面的参数,后续配合wpa_supplicant来修改。

(2)部署ko(即把生成的mt7601sta.ko文件安装在板子上)

  • 记得先卸载之前的mt7601uap.ko模块(如果有的话),否则报错。

二、移植wpa_supplicant

1、源码下载与解压【网盘资源1111】

(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

(2)tar -zxvf 命令解压wpa_supplicant-2.5.tar.gz、openssl-0.9.8za.tar.gz。

2、移植openssl

(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。

3、移植wpa_supplicant

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

  • /root/hisisdk/usb-wifi/MT7601_driver/sta/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_supplicant、wpa_cli,则移植成功完成。

  • wpa_supplicant 服务器端,wpa_cli客户端。
  • 这是linux底下运用命令行管理无线网络的方式。

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

1、部署wpa_supplicant

(1)将wpa_supplicant、wpa_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

  • /mnt insmod mt7601Usta.ko

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

  • 因为没有移植DHCP因此这里设置静态IP。
  • 另外在前面我忘记修改网卡名字了,于是这里是ra0,不过无妨。
  • ifconfig ra0 up, ifconfig ra0 192.168.43.233
  • 这个板子的静态ip之所以这样设置,是因为查询我房间的无线网络信息得知网段是192.168.43.xx,由于xx自动分配是从小开始,所以我这里设置一个比较大的233,以防止和其他的冲突。(实际情况应该不可能冲突,因为我房间的路由器只有我一个人用,只连接了手机、笔记本。)

(3)开发板作为STA,连接AP    (-dd打开调试信息)

  • 使用命令wpa_supplicant -Dwext -ira0 -c/etc/wpa_supplicant.conf -dd &
  • & 符号表示让其工作在后台。这行命令表示让wpa_supplicant 工作起来。
  • 因为我没有拷贝到/usr/bin目录下(该目录下一般是命令文件内容,只要将命令放在该目录下,可以不带路径),我猜想上面的命令要带绝对路径/mnt,但实际上带绝对路径好像也不行。需要把这两个文件放在/usr/bin下。
  • 我查到这个文件系统是10M的容量,但实际可以12M,那可以修改其大小为12M的吧?根据之前的博客文章https://blog.csdn.net/oqqHuTu12345678/article/details/82812123中的“二3(5)1)”,可以在uboot设置启动传参设置为12M的。因为本来最大可以12M。于是重启uboot对参数进行设置,问题完美解决。但是当我把驱动放在/home目录,把wpa_*文件放在/usr/bin中,然后安装驱动时又出现问题。我猜想这个问题应该还是容量不足导致的。因此尽量不要在可怜兮兮的SPIFLASH放太多东西。
  • 这步之后记得重新安装mt7601Usta.ko并设置其静态IP,因为重启过uboot了。

(4)查看连接状态

  • 使用命令wpa_cli -i ra0 status

(5)测试连接效果

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

3、ORTP视频传输测试

(1)在mpp/sample/common/sample_common_ven.c,修改LOCAL_HOST_IP 为192.168.43.96(笔记本无线接入时自动分配的IP)

(2)编译得到sample并到开发板运行

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

注:
AP:        192.168.43.1

PC:        192.168.43.96

开发板:    192.168.43.233

ubuntu:    192.168.43.244

四、全程无线调试

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设置静态IP地址。

设置过程如图所示。

然后vim /etc/network/interfaces,修改为DHCP(不改也可以,之所以一开始ping不通,是以内widow中没有关闭防火墙)。

接着使用ifconfig eth0 192.168.43.244设置其IP。

(5)开发板重启,看效果。

附,/etc/profile中设置的内容。

#ifconfig eth0 192.168.1.10
#mount -t nfs -o nolock 192.168.0.103:/home/aston/rootfs /mnt
cd /ko            
./load3518e -i -sensor ar0130 -osmem 32 -total 64
                                           
insmod /home/mt7601Usta.ko                       
ifconfig ra0 up                          
ifconfig ra0 192.168.43.233               
wpa_supplicant -Dwext -ira0 -c/etc/wpa_supplicant.conf &
route add default gw 192.168.43.1 dev ra0                   
                                                             
mount -t nfs -o nolock 192.168.43.244:/root/all_qianrushi/rootfs/hisrootfs
/mnt
cd /mnt

第五季2:STA模式USB-WIFI网卡移植与测试相关推荐

  1. 海思平台上USB WIFI的移植与局域网无线调试和视频流预览-第5/11季视频课程-朱有鹏-专题视频课程...

    海思平台上USB WIFI的移植与局域网无线调试和视频流预览-第5/11季视频课程-143人已学习 课程介绍         本季课程在开发板上移植USB WIFI模块(套装附带的MT7601模块), ...

  2. 第五季1:AP模式USB-WIFI网卡移植与测试

    以下内容源于朱有鹏课程,如有侵权,请告知删除. 1.WIFI接口 WIFI模块与SoC的接口有多种,如SDIO.USB.串口(低带宽)等. 2.AP.STA AP(Access Poin,接入点t), ...

  3. USB WIFI网卡在S5PV210上的移植和使用最全攻略(1)

    目录 一.本季文章将会带来那些干货 1.MT7601网卡驱动的移植 2.无线网卡的配置和使用 3.在自己定制的rootfs中移植USB WIFI 4.在自己定制的rootf中添加dhcp支持 二.项目 ...

  4. 嵌入式linux usb wifi驱动移植

    文档名称:嵌入式linux usb wifi驱动移植 版本历史 版本号        时间        内容 v1.0b001        2012-6-18        初始版本,介绍在嵌入式 ...

  5. EP-N8530S USB WIFI 驱动移植

    /************************************************************************ EP-N8530S USB WIFI 驱动移植* 说 ...

  6. USB WIFI网卡在S5PV210上的移植和使用最全攻略(2)

    目录 一.在自己制作的rootfs中移植网卡 1.确认自己制作的rootfs可正常工作并启动 2.需要的工具集确认 3.交叉编译iwconfig 二.移植wpa_supplicant并制作镜像 1.交 ...

  7. android的wifi网卡移植详细过程已经通用驱动的问题

    这里有一篇详细的教程,看完还有一个问题 就是android的wifi驱动移植,如果有wifi网卡的驱动代码,是一定需要对android系统本身的代码修改重写编译吗?就是说,有无可能不改变android ...

  8. RTL8188CUS usb wifi驱动移植到(arm-linux)

    一.开发环境 linux主机:ubuntu-18.04 交叉编译器:gcc version 4.6.2 20110630 (prerelease) wifi硬件:RTL8188CUS 迷你WIFI W ...

  9. Linux驱动:在imx6ull上适配RT3070 USB WiFi网卡

    1.说明 如图,这是一款基于Ralink Technology RT3070芯片的USB Wi-Fi无线网卡和IEEE 802.11b/g/n标准,支持WEP 64/128,WPA,WPA2,TKIP ...

最新文章

  1. 05-Windows Server 2012 R2 会话远程桌面-标准部署-RD连接代理高可用性(RemoteApp)
  2. 大数据可视化html模板开源_5个最受工程师欢迎的大数据可视化工具
  3. QtObject QML类型
  4. apache http server 停止工作_Springboot以Tomcat为容器实现http重定向到https的两种方式
  5. express设置html模板,node express使用HTML模板的方法示例
  6. java 嵌套类implement_有关 C++ 嵌套类
  7. 白盒测试的测试用例设计方法
  8. 正则表达式验证ip是否是内网ip
  9. HTML学习日记-第二篇
  10. 匿名内部类以及Lambda表达式(Java和C#)
  11. PhotonServer中PhotonServer.config文件的配置
  12. 大电影 剧来风 山东方言版 下载
  13. 计算机电源认证,买PC电源就一定要看80Plus认证吗?
  14. 计算机错误651是什么故障,错误651是什么意思
  15. 脉冲波形的产生和整形
  16. 小波变换(wavelet transform)的通俗解释
  17. [已解决]实验室内频繁断网 重设IP后可以使用 几分钟后又掉
  18. 乐Phone征途、联想谋变和iAD可能
  19. 七年级计算机与信息安全教案,苏教版七年级信息技术上册2.3《计算机与信息安全》教学课件1 (共18张PPT)...
  20. 深入理解Asp.net MVC路由

热门文章

  1. 虚拟机NAT模式联网
  2. 漫谈微服务架构:什么是Spring Cloud,为何要选择Spring Cloud
  3. 精读《V8 引擎 Lazy Parsing》
  4. AutoLayout的那些事儿
  5. [转载]使用Vitamio打造自己的Android万能播放器(7)——在线播放(下载视频)...
  6. 面向对象的故事~数据底层操作告诉了我们接口,抽象类,继承与多态性的使用~续(TestBase继承ITest是多余的?)...
  7. 读《程序员的SQL金典》[2]--函数
  8. Andorid Scrolling Activity(CoordinatorLayout详情)
  9. 《游戏视频主播手册》——2.2 哪些人适合做游戏主播
  10. Variant 与 内存泄露