After months with my unlocked iPhone still running firmware 1.0.2, the arrival of Zibri's ZiPhone tool persuaded me to try an upgrade. I'm glad I did - I now have an unlocked 1.1.3 iPhone.
Why didn't I do so before? Cowardice, really. Having read how tricky upgrading became with subsequent firmware releases, I was worried about bricking my handset. And the gains from firmware 1.1.1 and 1.1.2 seemed too small to warrant the risk.
Version 1.1.3 persuaded me otherwise, but research revealed I'd have to put my phone back into its pre-unlock state - a process dubbed 'virginisation' by iPhone hackers - and the published procedures were long and tortuous, involving lots of FTP'ing and command-line tweaking. All this is necessary to repair the damage done to the original iPhone code by early unlocking routines - damage that prevents firmware updates from taking hold.
Again, the risk seemed to high.
And then I found The Virginizer, a utility put together by the guy who runs the Unlock.no website. You can find the details at the site, here. It involves a small download, which you can acquire by tweaking the Installer application's sources settings. Run The Virginizer and it'll repair your handset's baseband software but relock it and deactivate it, so it's right back at square one.
But it works, and with a virginised iPhone, I was able to use iTunes 7.6 running under Mac OS X 10.5.2 to restore the handset to firmware 1.1.1, which I'd downloaded already, as advised by Unlock.no. Connecting the iPhone to the computer then pressing down both the power and home keys puts it into Restore mode.
Option-clicking on iTunes' Restore button lets you manually select which firmware file to restore from. In Windows, you CTRL-click. I used 1.1.1, because that's what's mentioned in Unlock.no's instructions. However, having done the restore, I immediately used the same process to restore to a downloaded copy of the 1.1.3 firmware.
ZiPhone 2.2 on the Mac
Could I have gone straight to 1.1.3? Possibly, but being a cautious fellow, I did both. The firmware downloads comes straight from Apple - you can find links to the files here.
Zibri's site has links to download his command-line utility, along with a GUI version for Mac OS X 10.5 Leopard - but not earlier versions of the OS. I downloaded it and, having quit iTunes and its Helper application, ran it.
My iPhone's an older model, so I couldn't unlock it using ZiPhone, so I just selected the Activation and Jailbreak options. These allow me to use the handset essentially as an iPod and to download and run third-party apps. It did it's stuff and I had a usable iPhone in a few minutes.
Basically, if an iPhone came with 1.1.2 or 1.1.3, it can have ZiPhone activate, jailbreak and unlock it. If it came with 1.0.1, 1.0.2 or 1.1.1, you can only use ZiPhone to activate and jailbreak. You need to check your iPhone's serial number to see which of these two approaches is best - check out the tutorials linked to in this article for more details.
ZiPhone auto-installs the popular Installer app. From that, I selected and installed the BSD Subsystem option - a stack of Unix utilities - and the unlocking tool AnySIM 1.1.3. AnySIM takes a short time to run, which has to be done with the phone in Airplane mode, but when it was finished I had a working, unlocked iPhone connected - coincidentally, since I bought my iPhone in the US - to the O2 network.
Top marks, then to Zibri and to Frederik at Unlock.no for making the process as painless as it was. Thanks to the ModMyiPhone site for instructions on using ZiPhone on a Mac. There's a slightly more basic, Windows-oriented version on HowardForums here.