wpa_supplicant's p2p wouldn't connect to Sony Bravia TV
vitalywool at gmail.com
Tue Nov 29 19:03:55 EST 2011
let me describe another interoperability problem found while testing my
wpa_supplicant based P2P implementation.
The peer device is Sony Bravia TV with Wi-Fi Direct support (KDL-22EX320).
This device is a persistent GO.
The problem is the following (wpa_cli used):
P2P-DEVICE-FOUND 12:a0:96:9e:cd:5b p2p_dev_addr=02:a0:96:9e:cd:5b
pri_dev_type=7-0050F204-1 name='BRAVIA KDL-22EX320' config_methods=0x188
[wpa_cli] p2p_connect 02:a0:96:9e:cd:5b pbc join
[Bravia] A pop up appears and I confirm the connection.
After that nothing happens till the connection times out.
Notable is, if I switch the TV to automatic mode (no confirmation), it
works just fine. So I investigated this deeper, including getting /
analyzing air logs and it turns out the problem is the following.
Before the connection is confirmed, TV responds to probe requests with
responses that don't include active session attribute (which is quite fine
IMO). So connection process on my prototype device is not started and the
scan is rescheduled. But after the connection has been confirmed, the TV
would not respond to probe requests at all so that's why nothing happens.
And it actually turns out to be the valid behavior also: according to the
specification, a Wi-Fi Direct device should not answer to probe requests
that either do not contain P2P wildcard SSID or do not contain this
device's SSID while in listen mode.
And the scan wpa_supplicant runs in this case is just plain wildcard scan
(no SSID at all). This is of course valid for basic WPS case but is not
going to work with P2P.
So what's next? I'm eager to come back with a patch but it looks like we
need to have a common ground on how to fix this. I suggest that we run
specific scan in P2P case for this SSID (it is known by p2p_supplicant), it
will require very minimal changes in the whole flow. Alternatively, P2P
wildcard SSID can be used but then there should be some additional logic in
picking up the right session (e. g. if the scan was run for P2P wildcard,
do not request exact SSID match). Of course one may have a better idea :)
Looking forward to suggestions,
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the HostAP