[Q] Wi-Fi 802.11n doesn't work with a Russian sim card, is there a fix?
Hello. I've poked, googled and searched around trying to find a way to fix this annoying issue.
Long story short: till 2004-2005 Wi-Fi N bands weren't legalized for civilian use in Russia. Now they are and we here still sometimes receive such devices which block usage of those bands. I've faced the same idiocy with Xperia S.
GB worked with channels 1-11 of Wi-Fi N (yet 12-13 should have been available too since Russia != US). Still it was bearable. ICS was the same (I've inquired about this issue a couple of times on the official forum to no avail).
Here the long-awaited JB update comes up (hooray) and bam - Wi-Fi N is blocked. Now if I pull out the sim card and turn on my phone - it will successfully connect to Wi-Fi N network. If I put it in and reboot the phone - the phone will connect to the N network for the first few seconds and then - as soon as it initializes the sim card - it will drop the connection. If I don't enable 'G/N mixed mode' on my home router, it will be sitting with no connection and showing me that N network but it would not connect to it.
Now as I told before I've been searching around internetz and was able to find some lose ends and few possible fixes to this issue.
1. Region code change. Doesn't work. It did before when the phone wasn't able to connect to channels 12-13. But now when N doesn't work at all this fix doesn't help. It looks like the problem lies deeper now.
2. Messing with wpa_supplicant. Works... sorta. I've replaced stock wpa_supplicant file with this one: http://forum.xda-developers.com/show....php?t=2399391
. It kinda works after that but starts acting up further down the line. E.g. it connects to a N network and everything's cool and dandy BUT when I leave my home and wake up the phone somewhere else I see that it still thinks it's being connected to my home network. It sees the other networks around it at the moment but it doesn't want to choose them as it kinda connected to my home one. Which is nowhere near. And if I get back to my home with the phone in such state - it won't continue to exchange data over my Wi-Fi network. So to fix that I have to turn wi-fi off and then on again but I don't like such a behavior since in my town there are a lot of free wi-fi hot spots around (in public transport, at bus stations, in cafes, etc) and I'd like my phone to choose and connect to open hot spots automatically.
So could someone please shed some light on how all this restricting thing works, what mechanism is responsible for available Wi-Fi modes except region code field in the databases and how do I fix that? (or break it?). I mean the second fix is almost works but it looks like wpa_supplicant wasn't hacked properly. Maybe there are other wpa_supplicant files available?
Edit: forgot to mention that I'm talking here about Xperia S, firmware versions are: JB .200, .211, .96