Which SDK you use?
I have use SDK 2.3.1 / 2.4.1 and can join an AP at the first try.
So could you try to join another AP? And see how's going?
Please in a normal environment.
(I mean don't in the critical env ex:exhibition center)
You can also use the Console app to manually join the AP.
> join <ssid> wpa2 <passphrase> ...
See if this works as expected and you can join the first try.
Are we OK here, or do we still have an issue?