Wifi Fixer

SWIFI is an example of a “fakeblanked serial payload”. It examines your wifi calibration tables and corrects them if necessary. It doesn't require a baseband erase and is very quick, but it requires you to be fakeblanked. The BootNeuter application (part of the pwnage release by the Dev Team) lets you quickly go back and forth between fakeblanked and normal.

When do I need this fix?

The tool fixes the grey wifi problem - when your phone can make and receive calls but wifi (and/or bluetooth) is grey. This happens when your baseband nvram gets corrupted for some reason (like some buggy unlocking programs).

You can check if your phone's baseband nvram is corrupted using ibooter. Connect to your phone, give the command radio readnvram and check if you see 3 mac addresses (wifi, bluetooth, ethernet), wifi calibration checksum and build tag. If you dont see one of the fields you should use the tool. If you see all the fields but are experiencing the grey wifi problem you probably have another issue and we dont advise you to use this tool.

CAUTION! This fixer should not be used unless you have the grey wifi problem described above!

Installation and usage

To run this utility:

  1. Become fakeblanked by using BootNeuter (set FakeBlank to ON before selecting Flash).
  2. Download the archive swifi.zip, unzip it, and transfer it to your iPhone. You can either bundle it into a custom ipsw via PwnageTool, or use something like iphuc. Make sure swifi has execute permission (chmod +x swifi).
  3. Log into your iPhone via VT100 terminal application as root
  4. Unload your CommCenter (otherwise you'll probably see “Error 0xffffffff” from swifi).
    • launchctl unload /System/Library/LaunchDaemons/com.apple.CommCenter.plist
    • killall -9 CommCenter
  5. Run the swifi tool. It should complete in less than 3 seconds.
  6. If you've manually changed your wifi MAC address via ibooter, or if you've had your wifi MAC address changed on you by a buggy unlocker, change it back to its original value.
  7. If swifi reports “actions taken”, reboot your iPhone to use the new tables. You may also need to do “Settings→General→Reset→Reset Network Settings”

Here's an example run, used on an iPhone whose tables I had previously intentionally corrupted:

# swifi
wifi fixer
by MuscleNerd, gray, and the iPhone Dev Team
Actions taken:
  Backup table checksum was corrected
  Active table was restored from backup

After a reboot, my wifi button was no longer grey and swifi reports good tables:

# swifi
wifi fixer
by MuscleNerd, gray, and the iPhone Dev Team
Nothing to fix!
sgold_bootrom/fixwifi.txt · Last modified: 2008/04/04 04:25 (external edit)
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki
Part of the iPhone Dev Team Archive