As a Nexus 7 tablet user I’ve been struggling with my Nexus 7 WiFi from the moment that I’ve owned it. It was originally released with Android 4.2.0 installed. Nonetheless, Android 4.2.1 and 4.2.2 didn’t get me anywhere with the WiFi issue. In fact, you may have suffered from this issue, and are already familiar with. After inserting a SIM-Card into the device, Android asks to restart the device. However, after rebooting you will notice the WiFi module won’t work. No matter how hard you try it won’t see any WiFi network while keeps saying “WPS failed. Please try again in a few minutes”. Even tried an open unencrypted WiFi without any luck. In fact, the only solution that worked for me was removing the SIM-Card completely and do a factory reset.
Also as you may have noticed, it’s been quiet some time since an issue has been opened on Google Code around this issue on Nexus 4, Nexus 7 and Nexus 10 devices. Unfortunately, it seems that Google doesn’t care about this issue at all, and they closed the issue while ago. Even worse, they won’t allow comments any more (At the time of this writing there are 1223 comments on the issue which shows how serious the situation is).
Anyway, if you’re one of the sufferers from this issue, still there may be some good news for you. It appears that the root of all evil is inserting a non-U.S. SIM-Card on your device. Hopefully, I suddenly came across an Android application called WiFi Fix for Android 4.x by Fardjad Davari, which completely solved the problem for me. It’s been a week since I tried this application and found no more issue with my WiFi.
In fact, the process is very easy and straightforward to follow. Here is what worked for me on Nexus 7 with latest CyanogenMod 10.1 nightly builds (It may work on Nexus 4 or Nexus 10, too):