I want to connect two devices using Wifi-Direct. One is a RaspBerry PI 3 (with Raspbian Jessie), the other is an Android smartphone. Raspberry as server and Android as client.
I decided to use wpa_supplicant in Raspbian and the WifiDirect example app for Android:
https://developer.android.com/guide/topics/connectivity/wifip2p.html
My wpa_supplicant.conf contains:
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
I am following this steps:
1) In the raspberry pi:
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) Then in the Android app, I can see the raspberry as a peer but I get a connection failure. I try with the settings app (Wifi => Advanced => Wifi Direct) and I can see the raspberry as a peer too but the diference is that when I try to make the connection, the application request me a PIN code and I am able to make the connection if I introduce the pin returned by p2p_pin any in the raspberry.
Im trying to understand this behavior:
Why is requesting me a PIN? This is the reason why I am not able to make the connection through the WifiDirect example app? Im missing something here?
Thank you.
Connect the Raspberry Pi to WiFi using the desktop Once the Raspbian OS is installed you can connect the microcontroller to WiFi as on a PC via the desktop. All you need to do is activate Wifi in the task bar at the top right of the screen, select the network name (SSID) and enter the network key (WPA-PSK).
Where you have:
wpa_cli -ip2p-wlan0-0 wps_pbc
use:
sudo wpa_cli -ip2p-wlan0-0 wps_pin any 12345670
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With