wifi测试相关

本文详细介绍了如何在高通平台下通过命令行进行WiFi调试,包括获取root权限、加载模块、复制配置文件、修改所有权、启用wpa_supplicant、使用wpa_cli命令进行扫描和连接网络等步骤。

高通平台wifi命令行调试

1. 进入命令行窗口,#adb shell
2. #su 命令获取root权限
3. #lsmod 命令来查看wlan.ko是否加载
   如果没有加载,运行 #insmod /system/lib/modules/wlan.ko
   重新查看 #lsmod,如下显示表示加载成功:

root@msm8974:/ # lsmod
lsmod
Module                  Size  Used by
wlan                 4197051  0
4. copy文件wpa_supplicant.conf到/data/misc/wifi,以便测试

 #cp /system/etc/wifi/wpa_supplicant.conf /data/misc/wifi/
5. 更改文件wpa_supplicant.conf的ownership,以允许读(root:root->system:wifi)

#chown system:wifi /data/misc/wifi/wpa_supplicant.conf
6. Enable wpa_supplicant

#wpa_supplicant -iwlan0 -Dnl80211 -c/data/misc/wifi/wpa_supplicant.conf -O/data/misc/wifi/sockets -ddd &
 使用‘ps’命令查看wpa_supplicant是否enable成功,ps wpa_supplicant,如下显示表示enable成功:

root@msm8974:/ # ps wpa_supplicant
ps wpa_supplicant
USER      PID   PPID  VSIZE  RSS   WCHAN            PC  NAME
wifi      19184 1     7772   2884  poll_sched b6e35b54 S wpa_supplicant
7. 执行wpa_cli命令用于scan和连接网络

 #wpa_cli -i wlan0 -p /data/misc/wifi/sockets
127|root@msm8974:/ # wpa_cli -i wlan0 -p /data/misc/wifi/sockets
wpa_cli -i wlan0 -p /data/misc/wifi/sockets
wpa_cli v2.5-devel-6.0.1
Copyright (c) 2004-2015, Jouni Malinen <j@w1.fi> and contributors

This software may be distributed under the terms of the BSD license.
See README for more details.

Interactive mode
8. 使用wpa_cli中的scan命令来搜索附近的APs

 #scan
> scan
scan
OK
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=3 BSSID=00:00:00:00:00:00 SSID=
<3>CTRL-EVENT-SCAN-STARTED 
<3>CTRL-EVENT-SCAN-RESULTS 
<3>CTRL-EVENT-STATE-CHANGE id=-1 state=0 BSSID=00:00:00:00:00:00 SSID=
查看搜索的结果

   #scan_results
> scan_results
scan_results
bssid / frequency / signal level / flags / ssid
5c:93:a2:fd:1b:9f	2462	-77	[WPA2-PSK-CCMP][ESS]	XXX
bc:85:56:c1:9e:fa	2462	-90	[WPA2-PSK-CCMP][ESS]	TP-LINK_MSUI
18:64:72:54:81:11	5300	-74	[WPA2-EAP-CCMP][ESS]	XXX
9. adb pull /data/misc/wifi/wpa_supplicant.conf and add the AP profile for association testing change ctrl_interface parameter to /data/misc/wifi

 #exit
   #exit
   #adb pull /data/misc/wifi/wpa_supplicant.conf .
   add:
   ctrl_interface=/data/misc/wifi/sockets
// For AP without security, add
network={
    # The ssid of the AP is AP_WITHOUT_SECURITY
	ssid="AP_WITHOUT_SECURITY"
	key_mgmt=NONE
}

// For AP using WEP security with passphrase 1234567890 and key index 1, add
network={
	ssid="AP_WEP_SECURITY"
	key_mgmt=NONE
	auth_alg=OPEN SHARED
	wep_key0=1234567890
}

//For AP using WPA-PSK/WPA2-PSK mixed mode, add
network={
	ssid="CH5_OPEN_TEST"
	key_mgmt=WPA-PSK
	psk="1234567890"
}
10. adb push wpa_supplicant.conf back to /data/misc/wifi with new settings and enforce wpa_supplicant to read new configuration setting by executing "reconfigure" command in wpa_cli

   #adb push ./wpa_supplicant.conf /data/misc/wifi
   #adb shell
   #su
   #reconfigure
11. wpa_supplicant would trigger auto connection to the APs set in wpa_supplicant.conf
12. Suppose the AP's IP address is 192.168.0.1, set the DUT's IP address to same network like 192.168.0.100
   #ifconfig wlan0 192.168.0.100
13. Ping AP's address
   #ping 192.168.0.1
14. When test is done, remove temporarily created /data/misc/wifi/wpa_supplicant.conf
   #rm /data/misc/wifi/wpa_supplicant.conf

其它厂商的进入交互模式后和高通一样,没什么差异。

wpa_cli三星平台

连接wpa工具,进入配置wlan0接口的配置交互模式

wpa_cli -i wlan0 -p /data/misc/wifi/sockets

交互模式下常用命令如下:

查看当前网络接口信息

list_network

扫描其能探测到的wifi信号

scan

显示探测到的wifi连接结果,

scan_results
按如下格式显示
bssid / frequency / signal level / flags / ssid

添加网络接口

> add_network 
1
设置其ssid

> set_network 1 ssid "you ssid"
OK
设置其加密方式
>set_network 1 psk "your pre-shared key"
使能该网络

enable_network 1
保存网络配置

 save_config
以上命令可以不进入交互模式,在终端下敲入:
wpa_cli -i wlan0 -p /data/misc/wifi/sockets list_networks
wpa_cli -i wlan0 -p /data/misc/wifi/sockets add_network
wpa_cli -i wlan0 -p /data/misc/wifi/sockets set_network 0 ssid '"XXX"'
wpa_cli -i wlan0 -p /data/misc/wifi/sockets set_network 0 key_mgmt WPA-PSK
wpa_cli -i wlan0 -p /data/misc/wifi/sockets set_network 0 psk '"XXXX"' 
wpa_cli -i wlan0 -p /data/misc/wifi/sockets  enable_network 0
wpa_cli -i wlan0 -p /data/misc/wifi/sockets  save_config

对于无密码的ssid其key_mgmt的设置如下:

set_network 0 key_mgmt NONE


以上的命令都在修改wpa_supplicant.conf 文件的内容,另外还有一个比较有用的命令来查看网络的状态,status。

2断开android启动wifi相关服务,手动启动wpa_supplicant工具

svc wifi disable
wpa_supplicant -Dwext -iwlan0 -c /data/misc/wifi/wpa_supplicant.conf -O /data/misc/wifi/sockets -e /data/misc/wifi/entropy.bin -B
wpa_cli -i wlan0 -p /data/misc/wifi/sockets

在静态IP设置时,为了防止dhcp刷掉配置的静态ip等,可能会使用该命令。

3san_result的意义

> scan_results 
bssid / frequency / signal level / flags / ssid
a4:6c:2a:63:38:5f	5745	-44	[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP-preauth][ESS]	
ac:e0:10:0f:6b:41	2422	-48	[WPA2-PSK-CCMP][ESS]	Bruce
18:8b:9d:91:51:2f	5260	-71	[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP-preauth][ESS]	
18:8b:9d:91:53:7f	5220	-72	[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP-preauth][ESS]	
dc:eb:94:22:17:f0	2447	-68	[WPA2-PSK-CCMP][ESS]	ROKID-SHOW
18:8b:9d:6a:fe:1f	5180	-79	[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP-preauth][ESS]	
18:8b:9d:91:51:20	2447	-70	[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP-preauth][ESS]dc:eb:94:38:0d:30	5825	-81	[WPA2-PSK-CCMP][ESS]	ROKID-SHOW
18:8b:9d:90:3b:0f	5320	-81	[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP-preauth][ESS]	
b0:7d:47:63:d4:90	5805	-83	[WPA2-PSK-CCMP][ESS]	ROKID-SHOW
18:8b:9d:6a:fe:10	2447	-74	[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP-preauth][ESS]	
b0:7d:47:61:d4:90	2447	-81	[WPA2-PSK-CCMP][ESS]	ROKID-SHOW
a4:6c:2a:63:3a:00	2472	-82	[WPA-PSK-CCMP+TKIP][WPA2-PSK-CCMP-preauth][ESS]
04:18:d6:b4:82:e0	2437	-87	[WPA-PSK-CCMP][WPA2-PSK-CCMP]
78:1d:ba:33:55:86	2417	-65	[WPS][ESS]	WirelessNet

天线厂会进行无源和有源测试,无源测试使用网络分析仪分析天线的频率-增益关系;有源测试测试系统的发射衰减和接收灵敏度,上面的负数就是探测到的信号的灵敏度,单位是dbm,需要注意的是探测到并不等于可以使用,这牵涉到丢包率,即通信的可靠性问题。一般天线厂在微波暗室里会测出一组数据,其中TIS就是指接收灵敏度,scan_results显示的值大于TIS值才能保证可靠的通信,TRP是强发命令,通常在3C等认证中会使用到,好的天线的衰减一般在3db以内,强发测试通常是固件厂商提供的测试固件和测试命令。这个在传导测试时也会使用到,并且天线有源测试结果需要传导测试的结果才能分析出正确的结果。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

shichaog

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

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

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

打赏作者

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

抵扣说明:

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

余额充值