在Android和Raspberry Pi 3 Linux之间建立Wifi-Direct连接

时间:2017-05-19 11:22:56

标签: android raspberry-pi raspbian p2p wifi-direct

我想使用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示例应用程序建立连接的原因?我在这里遗漏了什么?

谢谢。

1 个答案:

答案 0 :(得分:0)

你在哪里:

wpa_cli -ip2p-wlan0-0 wps_pbc

使用:

sudo wpa_cli -ip2p-wlan0-0 wps_pin any 12345670