Hi Jouni, Thanks for the reply. I did more testing and it seems the issue is indeed with the radar detection required on some channels. From the wpa_supplicant debug logs (grepped for P2P messages), I can see the behaviour you described, where the scan is done first on the preferred GO frequency and then on common channels only: P2P: GO Negotiation Confirm TX callback: result=0 P2P: GO Negotiation with e2:b6:f5:82:18:b5 completed (peer will be GO) P2P: own channels: 81:1,2,3,4,5,6,7,8,9,10,11,12,13 115:36,40,44,48 116:36,44 117:40,48 130:36,40,44,48 P2P: peer channels: 81:1,2,3,4,5,6,7,8,9,10,11 115:36,40,44,48 116:36,44 117:40,48 P2P: Clear timeout (state=GO_NEG) P2P: State GO_NEG -> PROVISIONING P2P-GO-NEG-SUCCESS role=client freq=5220 ht40=1 peer_dev=e2:b6:f5:82:18:b5 peer_iface=e2:b6:f5:82:18:b5 wps_method=PBC nl80211: Use separate P2P group interface (driver advertised support) nl80211: use P2P_DEVICE support nl80211: Set mode ifindex 8 iftype 8 (P2P_CLIENT) nl80211: Interface p2p-wlan0-2 mode change to P2P - disable 11b rates P2P: Add operating class 81 P2P: Channels - hexdump(len=13): 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d P2P: Add operating class 115 P2P: Channels - hexdump(len=4): 24 28 2c 30 P2P: Add operating class 116 P2P: Channels - hexdump(len=2): 24 2c P2P: Add operating class 117 P2P: Channels - hexdump(len=2): 28 30 P2P: Add operating class 130 P2P: Channels - hexdump(len=4): 24 28 2c 30 P2P: Update channel list P2P: channels: 81:1,2,3,4,5,6,7,8,9,10,11,12,13 115:36,40,44,48 116:36,44 117:40,48 130:36,40,44,48 P2P: cli_channels: P2P: Add operating class 81 P2P: Channels - hexdump(len=13): 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d P2P: Add operating class 115 P2P: Channels - hexdump(len=4): 24 28 2c 30 P2P: Add operating class 116 P2P: Channels - hexdump(len=2): 24 2c P2P: Add operating class 117 P2P: Channels - hexdump(len=2): 28 30 P2P: Add operating class 130 P2P: Channels - hexdump(len=4): 24 28 2c 30 P2P: Update channel list P2P: channels: 81:1,2,3,4,5,6,7,8,9,10,11,12,13 115:36,40,44,48 116:36,44 117:40,48 130:36,40,44,48 P2P: cli_channels: P2P: Start WPS Enrollee for peer e2:b6:f5:82:18:b5 dev_addr e2:b6:f5:82:18:b5 wps_method 3 P2P: Start WPS Enrollee for SSID - hexdump_ascii(len=14): P2P: Add operating class 81 P2P: Channels - hexdump(len=13): 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d P2P: Add operating class 115 P2P: Channels - hexdump(len=4): 24 28 2c 30 P2P: Add operating class 116 P2P: Channels - hexdump(len=2): 24 2c P2P: Add operating class 117 P2P: Channels - hexdump(len=2): 28 30 P2P: Add operating class 130 P2P: Channels - hexdump(len=4): 24 28 2c 30 P2P: Update channel list P2P: channels: 81:1,2,3,4,5,6,7,8,9,10,11,12,13 115:36,40,44,48 116:36,44 117:40,48 130:36,40,44,48 P2P: cli_channels: P2P: Use specific SSID for scan during P2P group formation (p2p_in_provisioning=1 show_group_started=0) p2p-wlan0-2: P2P: Scan only GO preferred frequency 5220 MHz P2P: * P2P IE header P2P: * Capability dev=25 group=00 P2P: * Listen Channel: Regulatory Class 81 Channel 6 nl80211: P2P probe - mask SuppRates BSS: No P2P IE - skipping BSS 50:6a:03:f3:22:58 update for P2P interface P2P: Use specific SSID for scan during P2P group formation (p2p_in_provisioning=2 show_group_started=0) p2p-wlan0-2: P2P: Scan only GO preferred frequency 5220 MHz P2P: * P2P IE header P2P: * Capability dev=25 group=00 P2P: * Listen Channel: Regulatory Class 81 Channel 6 nl80211: P2P probe - mask SuppRates BSS: No P2P IE - skipping BSS 50:6a:03:f3:22:58 update for P2P interface P2P: Use specific SSID for scan during P2P group formation (p2p_in_provisioning=3 show_group_started=0) p2p-wlan0-2: P2P: Scan only GO preferred frequency 5220 MHz P2P: * P2P IE header P2P: * Capability dev=25 group=00 P2P: * Listen Channel: Regulatory Class 81 Channel 6 nl80211: P2P probe - mask SuppRates BSS: No P2P IE - skipping BSS 50:6a:03:f3:22:58 update for P2P interface P2P: Use specific SSID for scan during P2P group formation (p2p_in_provisioning=4 show_group_started=0) p2p-wlan0-2: P2P: Scan only GO preferred frequency 5220 MHz P2P: * P2P IE header P2P: * Capability dev=25 group=00 P2P: * Listen Channel: Regulatory Class 81 Channel 6 nl80211: P2P probe - mask SuppRates BSS: No P2P IE - skipping BSS 50:6a:03:f3:22:58 update for P2P interface P2P: Use specific SSID for scan during P2P group formation (p2p_in_provisioning=5 show_group_started=0) p2p-wlan0-2: P2P: Scan only common channels P2P: * P2P IE header P2P: * Capability dev=25 group=00 P2P: * Listen Channel: Regulatory Class 81 Channel 6 nl80211: P2P probe - mask SuppRates BSS: No P2P IE - skipping BSS 50:6a:03:f3:22:58 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0d:01 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:11:a2 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:11:a3 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0b:e0 update for P2P interface P2P: Use specific SSID for scan during P2P group formation (p2p_in_provisioning=6 show_group_started=0) p2p-wlan0-2: P2P: Scan only common channels P2P: * P2P IE header P2P: * Capability dev=25 group=00 P2P: * Listen Channel: Regulatory Class 81 Channel 6 nl80211: P2P probe - mask SuppRates BSS: No P2P IE - skipping BSS 50:6a:03:f3:22:58 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0d:01 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0d:05 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0d:04 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:11:a0 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:11:a2 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:11:a3 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0b:e0 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:10:a3 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:10:a4 update for P2P interface P2P: Use specific SSID for scan during P2P group formation (p2p_in_provisioning=7 show_group_started=0) p2p-wlan0-2: P2P: Scan only common channels P2P: * P2P IE header P2P: * Capability dev=25 group=00 P2P: * Listen Channel: Regulatory Class 81 Channel 6 nl80211: P2P probe - mask SuppRates BSS: No P2P IE - skipping BSS 50:6a:03:f3:22:58 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0d:01 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0d:05 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0d:04 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:11:a0 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:11:a2 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:11:a3 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:0b:e0 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:10:a4 update for P2P interface BSS: No P2P IE - skipping BSS 9c:50:ee:09:10:a3 update for P2P interface P2P: Use specific SSID for scan during P2P group formation (p2p_in_provisioning=8 show_group_started=0) P2P: * P2P IE header P2P: * Capability dev=25 group=00 P2P: * Listen Channel: Regulatory Class 81 Channel 6 nl80211: P2P probe - mask SuppRates I tried first setting the region to my country (CH) and sending a plain p2p_connect request (no frequency specified), but the group formation still timed out after the provisioning step. Interestingly though, if I set the country to South Africa (which does not mandate radar detection for the 5700, 5560, 5580 channels), the group is successfully formed each time. There is also a timeout implemented in the code that handles the p2p connection on the tablet. This calls p2p_cancel after a certain number of seconds have elapsed without the group being formed and I will try to test some more with this timeout disabled. I'll follow up on this question if I have some more info later. Thanks once again. Best, Andreea > On Sunday, April 07, 2019 16:10 CEST, Jouni Malinen <j@xxxxx> wrote: > On Tue, Apr 02, 2019 at 12:08:26PM +0200, Andreea Lutac wrote: > > The GO negotiation succeeds, with the tablet always ending up as the group owner, as intended. > > Now the problem is that a lot of the time the group formation step times out. On its end, the tablet seems to set up the DIRECT-xy-<name> group usually on the same frequency as the AP, but on the board wpa_cli shows: > > <3>P2P-GO-NEG-SUCCESS role=client freq=5220 ht40=0 peer_dev=e2:b6:f5:82:18:b5 peer_iface=e2:b6:f5:82:18:b5 wps_method=PBC > > <3>CTRL-EVENT-SCAN-RESULTS > > <3>CTRL-EVENT-SCAN-RESULTS > > <3>CTRL-EVENT-SCAN-RESULTS > > <3>CTRL-EVENT-SCAN-RESULTS > > <3>CTRL-EVENT-SCAN-RESULTS > > <3>CTRL-EVENT-SCAN-RESULTS > > <3>CTRL-EVENT-SCAN-RESULTS > > <3>P2P-GROUP-FORMATION-FAILURE > > <3>P2P-GROUP-REMOVED p2p-wlan0-32 client reason=FORMATION_FAILED > > It would be helpful to look at more detailed debug messages from > wpa_supplicant (-ddt on command line and debug output from stdout).> > > I think I have narrowed this down to an issue with the operating channels, where the board's wpa_supplicant tries to scan the various channels during provisioning, but doesn't find the right one before formation times out. > > wpa_supplicant starts by scanning the exact channel that was negotiated > during the GO negotiation (i.e., 5220 MHz in this particular example)> and if the GO is not found there in number of scans, more channels are > added to the scan. Maybe this device has some issues scanning 5 GHz > channels (which might cause it to use passive scanning). > > > I have tried to add freq=<AP freq> to the p2p_connect command and with some frequencies (5745, 5765) this fixes the timeout and the connection is instant, but with others (5700, 5560, 5580), I get the error message: > > FAIL-CHANNEL-UNSUPPORTED > > wpa_supplicant does not allow channels that require DFS/radar detection > to be used for P2P in most cases which is where that unsupported channel > result comes for those 5700, 5570, 5580 MHz channels. > > > Running "iw reg get" on both the tablet and the board shows that the country is unset (00), so I don't think there should be any restriction on the channels. I have however noticed that the operating frequency of the tablet (as reported by p2p_peer) is often different from that of the AP. But adding this operating frequency to p2p_connect still results in timeouts. > > 00 means that there are lots of restrictions.. I.e., all of 5 GHz is > passive scanning only. > > > What could be causing the "channel usupported" message? Is there a way to tell wpa_supplicant which channels to scan during the provisioning phase? > > wpa_supplicant debug log shows which channels are being scanned. > > -- > Jouni Malinen PGP id EFC895FA _______________________________________________ Hostap mailing list Hostap@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/hostap