Autonomous GO and Station on Intel Edison

Peer, Ilan ilan.peer at intel.com
Sun May 28 03:10:19 PDT 2017


> -----Original Message-----
> From: Hostap [mailto:hostap-bounces at lists.infradead.org] On Behalf Of
> Marco Zavatta
> Sent: Sunday, May 28, 2017 12:10
> To: hostap at lists.infradead.org
> Subject: Autonomous GO and Station on Intel Edison
> 
> Hello,
> 
> I would kindly ask for advice regarding autonomous GO. I’m using the Intel
> Edison and I need to support the use case of having station and AP at the
> same time. Intel claims this dual-mode is not supported, but also states that
> “The multirole feature is the capability to have simultaneously a station (STA)
> connection (to an AP) and a P2P connection (GO role). The BCM-43340 Wi-Fi
> driver supports this multirole feature.” So I could support the use case by
> activating an autonomous GO (which has AP-like functionality, correct me if
> I’m wrong), and then still be able to scan for available networks and connect
> as station to an AP simultaneously. Performance in terms of bandwidth is less
> of a concern for this use case.
> 
> The output of iw list on the Edison shows:
> ..
> Supported interface modes:
> * IBSS
> * managed
> * AP
> * monitor
> * P2P-client
> * P2P-GO
> * P2P-device
> ..
> software interface modes (can always be added):
> valid interface combinations:
> * #{ AP } <= 1, #{ managed } <= 2, #{ P2P-client, P2P-GO } <= 2, #{ P2P-device
> } <= 1, #{ IBSS } <= 1, total <= 4, #channels <= 2 Device supports scan flush.
> ..
> 
> wpa_supplicant installed is version 2.1.

Better update your version to something newer :)

> 
> At boot, ifconfig shows only wlan0 but wpa_supplicant shows:
> Available interfaces:
> p2p-dev-wlan0

There is not netdev attached to this wireless interface, so that's why it is not showing in ifconfig output. You can use 'iw dev' to show the current wireless interfaces.

> wlan0
> 
> I’m somehow able to turn on the autonomous GOs using this script, after
> which a new interface p2p-wlan0-x (as listed with ifconfig) is
> created:
> wpa_cli -ip2p-dev-wlan0 disconnect
> wpa_cli -ip2p-dev-wlan0 remove_network all wpa_cli -ip2p-dev-wlan0
> add_network wpa_cli -ip2p-dev-wlan0 set_network 0 ssid \"$ssid\"
> wpa_cli -ip2p-dev-wlan0 set_network 0 psk \"$psk\"
> wpa_cli -ip2p-dev-wlan0 set_network 0 mode 3 wpa_cli -ip2p-dev-wlan0
> set_network 0 disabled 2 wpa_cli -ip2p-dev-wlan0 P2P_GROUP_ADD
> persistent=0
> 
> But I don’t feel it’s the proper way to do it (for example “mode 3”
> should not be required, right?). Customization of SSID is not important, as
> long as the autonomous GO is visible by everybody.
> What is the proper way to activate the autonomous GO? When wpa_cli
> should be invoked on the “default” interface (that is without –i) and when on
> p2p-dev-wlan0?

Try running the wpa_supplicant with a global control interface, and use it to run the P2P operations Something like:

- wpa_supplicant -Dnl80211 -iwlan0 -c<config file> -g/tmp/wpa_global -G adm -BdtsT

Make sure that the configuration file does not disable P2P :)

Generally, as the P2P Device functionality can be running on different interfaces, it should be accessed from the global control interface (having the wpa_supplicant direct the commands to the interface that manages the P2P device operation).

- Once the wpa_supplicant is running setting up a P2P GO is:

wpa_cli -g /tmp/wpa_global -G adm p2p_group_add.


> Will the autonomous GO be discoverable and connectable by stations like a
> usual AP?

It should be discoverable by stations.. These stations can connect to the P2P GO using WPS or by manually configuring the network block and credentials.

> Will it be possible to freely scan for available networks while being in
> autonomous GO? On which interface should the scan be started?

It should be possible to scan on the station interface (wlan0 in the example above).

> Do you see any limitation, or something I should pay special care to, for
> example for channels dependency between the autonomous GO and
> station?
> 

This really depends on the device, and how well it supports multi-channel operation etc.

One last note: tests/hwsim contains many useful example on configuring P2P and testing common use cases (you can start with test_p2p_autogo.py). In addition you might also want to have a look at the README-P2P and README-WPS files.

Good luck,

Ilan.


More information about the Hostap mailing list