w8782工作在station模式一切正常,于是想试试AP模式(master mode):

Arm-linux:$> iwconfig mlan0 mode master
Error for wireless request "Set Mode" (8B06) :
    SET failed on device mlan0 ; Invalid argument.

Arm-linux:$> iwconfig mlan0 mode ad-hoc

Arm-linux:$>

设置master模式失败,而设置ad-hoc模式是正常的, 没有出错。

检查移植过来的w8782的驱动,在moal_wext.c 和 moal_uap_wext.c中都有一个名为woal_set_bss_mode()的函数用于设置工作模式。

跟踪了一下,发现使用iwconfig mlan0 mode master 或 iwconfig mlan0 mode managed 时,都调用到moal_wext.c中的woal_set_bss_mode()函数,

而这个函数中,如下所示,竟然没有对maser 模式 IW_MODE_MASTER的处理,看来8782的ap模式不能用iwconfig来进行配置?!!

394     switch (*uwrq) {
 395     case IW_MODE_INFRA:
 396         bss->param.bss_mode = MLAN_BSS_MODE_INFRA;
 397         break;
 398     case IW_MODE_ADHOC:
 399         bss->param.bss_mode = MLAN_BSS_MODE_IBSS;
 400         break;
 401     case IW_MODE_AUTO:
 402         bss->param.bss_mode = MLAN_BSS_MODE_AUTO;
 403         break;
 404     default:
 405         ret = -EINVAL;
 406         break;
 407     }

仔细检查w8782驱动原码中附带的文件,发现一个README_UAP文件,仔细研读一下,原来是需要使用另外一个称为uaputl的工作进行AP模式的配置。

uaputl在驱动原码中的mapp/uaputl 下面。 交叉编译后生成uaputl,拷贝到开发板中:

终端运行 uaputl bss_start后,用手机搜索wifi,新发现了一个名为 "Marvell Micro AP"无线网线,无加密。连上后查看一下IP地址,是169.254.201.15

使用WPA2加密:

uaputl bss_stop                                              //if started, stop it first
       uaputl sys_cfg_protocol 32                             //choose WPA2 protocol
       uaputl sys_cfg_wpa_passphrase 1234567890   //set encryption keys
       uaputl sys_cfg_cipher 8 8
       uaputl bss_start

再用手机搜索wifi,又新出现一个名为 "Marvell Micro AP"的WPA2加密的无线网线,输入密钥:1234567890,OK,连接成功。

前面提到,连上后IP地址是169.254.201.15, 这是因为板子上Linux没有启动DHCP服务的原因,client使用伪随机算法,使得

地址取得分布在169.254.1.0和169.254.254.255之间。下面启动dhcpd(busybox中带有udhcpd,可直接用):

创建udhcpd.conf文件,放在/etc/目录,内容如下所示:

start 192.168.0.20

end 192.168.0.254

interface uap0

opt dns 192.168.1.1

option subnet 255.255.255.0

opt router 192.168.0.1

#opt wins 192.168.0.1

option dns 192.168.1.1 # appened to above DNS servers for a total of 3

option domain local

option lease 864000 # 10 days of seconds

配置AP的IP地址:ifconfig uap0 192.168.0.1 netmask 255.255.255.0 up

启动dhcpd : udhcpd /etc/udhcpd.conf

重新启动AP: uaputl bss_stop

uaputl bss_start

用手机重新搜索 "Marvell Micro AP"并连接后,查看其IP地址为: 192.168.0.21 , 在板子上ping 192.168.0.21, OK.

Arm-linux:$>ping 192.168.0.21
PING 192.168.0.21 (192.168.0.21): 56 data bytes
64 bytes from 192.168.0.21: seq=0 ttl=128 time=13.971 ms
64 bytes from 192.168.0.21: seq=1 ttl=128 time=2.805 ms
64 bytes from 192.168.0.21: seq=2 ttl=128 time=2.680 ms
64 bytes from 192.168.0.21: seq=3 ttl=128 time=2.958 ms
64 bytes from 192.168.0.21: seq=4 ttl=128 time=2.839 ms
64 bytes from 192.168.0.21: seq=5 ttl=128 time=2.839 ms
^C
--- 192.168.0.21 ping statistics ---
6 packets transmitted, 6 packets received, 0% packet loss
round-trip min/avg/max = 2.680/4.682/13.971 ms
Arm-linux:$>

Marvell w8782 sdio wifi AP模式设置相关推荐

  1. ESP8266(基于arduino平台)每篇一个知识点——2.wifi AP模式设置

    ESP8266(基于arduino平台)每篇一个知识点--2.wifi AP模式设置 一.ESP8266(基于arduino平台)每篇一个知识点--2.wifi AP模式设置 1.添加头文件引用 2. ...

  2. ap mt7260a 华硕_华硕(ASUS)路由器AP模式设置_华硕路由器当无线AP设置-192路由网

    问:华硕路由器AP模式怎么设置? 原来网络中已经有一台无线路由器了,因此,我想把这台华硕路由器当作无线AP,用来扩展原来的wifi信号覆盖范围. 请问要如何设置,才可以把华硕路由器作为无线AP使用? ...

  3. tplinkwr710n改无线打印服务器,TP-Link TL-WR710N V1无线路由器AP模式设置

    本文介绍了TP-Link TL-WR710N V1版本迷你无线路由器,在"AP:接入点模式"下的设置方法.TL-WR710N工作在"AP:接入点模式"时,相当于 ...

  4. 捷讯fw300r虚拟服务器口号,迅捷(Fast)FW300RM迷你路由器AP模式设置 | 192路由网

    本文介绍了迅捷(Fast)FW300RM迷你无线路由器,在"AP:接入点模式"下的设置方法:FW300RM工作在"AP:接入点模式"时,相当于一台"无 ...

  5. fwr171改无线服务器,迅捷(Fast)FWR171无线AP模式设置

    本文介绍了迅捷FastFWR171无线路由器的无线AP模式的设置方法,首先将FWR171-3G与前端有线 Fast(迅捷)FWR171迷你无线路由器的无线AP模式的配置过程需要3个步骤:1.设置电脑I ...

  6. 腾达ap设置说明_腾达(Tenda)F9路由器AP模式设置方法

    本文介绍了腾达(Tenda)F9路由器AP模式的设置方法.家里已经有一台可以正常使用上网的主路由器了,又购买了一台腾达f9路由器,此时要想实现两台路由器都可以使用上网,可以设置腾达f9路由器的AP模式 ...

  7. ESP32系列--第六篇 WiFi AP模式

    一.目的 在上一篇<ESP32系列--第五篇 WiFi Station模式>我们介绍了station模式,本篇我们介绍一下AP模式. 二.准备 首先我们从esp-idf里面拷贝一份官方的示 ...

  8. imx6 linux wifi ap模式配置(usb-wifi模块rt3070)

    不是所有的usb-wif模块在linux下面都可以支持ap模式. 在linux下的ap模式是通过工具hostapd工具进行配置运行的,该工具一般使用nl80211协议驱动无线网卡ap模式的运行.所以一 ...

  9. 水星迷你无线路由器ap模式 下要不要启用 dhcp服务器,水星(Mercury)Mini无线路由器AP模式设置...

    本文介绍了水星(MERCURY)Mini系列无线路由器AP模式的设置方法,水星迷你路由器实现了即插即用,非常适合出差或者在旅行途中入住酒店时使用,直接把酒店房间里面的网线插在水星迷你无线路由器上,就可 ...

最新文章

  1. 争议中挺进全新里程——中国“超级对撞机”《概念设计报告》发布侧记
  2. 才一年,智能车就不再是新势力专利!
  3. 网站被k不要慌,看看“老油条”们是怎么解决的吧!
  4. 使用JDBC获取Oracle连接时报错
  5. c语言学生成绩查询课设报告,C语言课设报告(学生考试成绩查询程序)【荐】.doc...
  6. Sentinel(六)之集群流控
  7. 如何解决Win11开始菜单无法固定的问题
  8. 充分地享受母爱的飞鸽传书
  9. 干货收藏!Python完整代码带你一文看懂抽样
  10. 【Elasticsearch】解除索引只读限制 read-only
  11. python绘制矩形图_Python。在底图中绘制矩形
  12. apscheduler 任务管理
  13. Spring Boot学习总结(11)——SpringBoot的Starter依赖包及作用
  14. java实现键盘输入_java 键盘输入的多种实现方法
  15. Android之制作img镜像文件系统
  16. antd中分页器如何自定义_react+antd分页 实现分页及页面刷新时回到刷新前的page...
  17. Struts2中的异常处理
  18. python模板注入_Python 模板引擎的注入问题分析
  19. 杭州·云栖 2050 大会日程(5.25-5.27)
  20. python 抓取行政区划

热门文章

  1. 北航2022应届硕,被小米集团毁约了!
  2. 用LR给人物照片调出正宗的复古范儿
  3. 【Linkedin快速开发客户技巧,一周即可拿到订单】
  4. BaseRpm 机械角度 电角速度
  5. android progressbar 进度圆角,android ProgressBar 进度条的进度两端是圆角的方法
  6. 异步电动机直接转矩matlab仿真,异步电机直接转矩控制原理MATLAB仿真.docx
  7. 清明祭祀 防火常识要记牢
  8. 阿里云服务器 实现二级域名并对应不同项目 即 不同目录
  9. [附源码]计算机毕业设计JAVAjsp旅游景点管理系统
  10. php读取word格式,php读取word格式 phpword 读取word内容