我想使用Wifi-Direct连接两台设备.一个是RaspBerry PI 3(与Raspbian Jessie合作),另一个是
Android智能手机. Raspberry作为服务器,Android作为客户端.
我决定在Raspbian中使用wpa_supplicant和Android的WifiDirect示例应用程序:
https://developer.android.com/guide/topics/connectivity/wifip2p.html
我的wpa_supplicant.conf包含:
ctrl_interface=/var/run/wpa_supplicant update_config=1 device_name=raspberry device_type=1-0050F204-1 driver_param=use_p2p_group_interface=1 p2p_go_intent=1 p2p_go_ht40=1
我正在按照以下步骤操作:
1)在树莓派中:
sudo wpa_supplicant -B -iwlan0 -Dnl80211 -c/etc/wpa_supplicant.conf sudo wpa_cli -iwlan0 p2p_group_add ifconfig p2p-wlan0-0 192.168.1.2 wpa_cli -ip2p-wlan0-0 wps_pbc
2)然后在Android应用程序中,我可以看到树莓作为同行,但我得到连接失败.
我尝试使用设置应用程序(Wifi => Advanced => Wifi Direct),我也可以看到树莓作为同行,但不同之处在于,当我尝试建立连接时,应用程序请求我输入PIN码而我如果我在树莓中引入p2p_pin返回的引脚,我能够建立连接.
我试图了解这种行为:
为什么要求我提供个人识别码?这就是为什么我无法通过WifiDirect示例应用程序建立连接的原因?我在这里遗漏了什么?
谢谢.
解决方法
你在哪里:
wpa_cli -ip2p-wlan0-0 wps_pbc
使用:
sudo wpa_cli -ip2p-wlan0-0 wps_pin any 12345670