On the first day of 360iDev, I was in a session to learn about programming an iPhone, and somebody mentioned that a friend of theirs had updated their iPod firmware, and couldn’t figure out how to reset it back to the prior version. Since I had recently done this, I thought I could write this walk-through.

Apple uses the iTunes application to upgrade your operating system which does a nice job and for the most part protects you from doing anything too terrible by automating the process. On the iPhone, iTunes will give you an alert about the availability of a new operating system, and ask you if you’d like to upgrade, and tell you that if you have problems you will have the option to restore from a backup.

The interesting thing about the backup piece though, is that it doesn’t really restore the firmware, only the settings. For most users this is fine since the reason for needing to go through the “restore” process is actually because of a problem with the firmware, and the “restore” does all the work required to get your phone back to working with the new firmware and your old settings.

If however, you need to go to a prior version of the firmware, the process is not so obvious. Until recently I didn’t even think this was possible for somebody to restore to the prior version unless they were a developer.

After I updated my firmware on my iPhone recently, I noticed that my hard drive was getting to be very full, which prompted me to search for what was using up my disk space. This led me to find that the old version of the firmware gets saved by iTunes when you do the update.

Firmware files have an .ipsw extension and can be found at the following locations:

On Windows:
Documents and Settings\Application DataApple ComputeriTunesiPhone Software Updates

On Mac:
~/Library/iTunes/iPhone Software Updates

Sotware updates on my Mac

To restore the firmware to the prior version, do the following:

  1. Launch iTunes (with your iPhone connected)
  2. Click the button that says “Restore” while holding down the “Option” key (use the Shift key on Windows). Note: if you get a prompt asking if you want to back up your phone, you probably weren’t holding down the key when you clicked, and you’re actually going through the restore process.

Alternatively, if you’re an iPhone developer, the XCode Organizer can also drive this process of selecting a version to install on your phone.

Organizer

In either case, the actual firmware change is done through iTunes. Now you should see the firmware file being extracted:

extracting firmware

Your phone will be reset, and you’ll see the firmware being validated in iTunes:

validate firmware

Next you’ll see the update message:

Restoring

At this point your phone will be reset back to factory settings for that prior version of the firmware. You’ll probably get the prompt that tells you an update is available, which you can cancel.

Finally if you want to restore your settings, pick the backup you want to use (you can also tell it to set up as a new iPhone, which just means you won’t have any of your settings from before).Ā  This will restore all of your apps and setting, although you may end up with a message that tells you about applications that won’t work if you have any that are for a newer version of the firmware (in other words if your backup contains an App version that wasn’t available for the firmware you reloaded).

App warning

After all of this, iTunes will probably ask you if you want to upgrade your firmware to the current version, which is how you would go back to the current version when you are ready to do so (or you can go through this whole process again to go to a specific version). You may want to turn off the automatic update checking if you are going to switch to other versions very often.

Note that your “problem” applications from the prior message will work once again after you are on a version of the firmware that is current enough to support thos applicatons.

I took the day off and spent it at my father-in-law’s house, watching all the excitement in Washington D.C.

I was still thinking about how emotional I felt watching Martin Luther King’s “I Have a Dream” speech on the drive over the bridge. My wife hadn’t been there when King’s speech aired, so I pulled it up (iPhone is amazing) and read it to her as she was driving. Reading the text aloud, once more underlined for me the power of the words. There were times that I had to pause in order to get the words out because I was so choked up.

I was once again taken by the fact that Dr. King could be so optimistic with all the rage and oppression surrounding him. Listening to our new President speak, I could clearly hear the determined optimism in his voice and words. I was swept up by the historic moment, and excited about the turning away from the culture of fear toward one of hope.

It is far too easy to look at all of the problems of the world, listen to the news, and give in to the fear of all things that could happen. Terrorists around every corner, economy collapsing, no work anywhere, global warming, and the USA on the verge of collapse. But for me, every problem appears more as something to be solved, every challenge is an opportunity for growth that can be solved by working together.

The words of Barack Hussein Obama II in his inaguaral address are filled with that, and I’m excited by the way he is using the bully pulpit already to rally us to service. This is a seminal event: the promise made to every small child, that they can work hard and grow to become President of the United States has moved closer to reality. Martin Luther King’s dream of a nation where children will be judged by the content of their character and not the color of their skin, is just a little more real.

I was moved in many places by Barack’s speech. Calling us back to the traditions of our founding fathers in continuing the great social experiment that is the United States. When he said that America was ready to lead, I just wanted to hear him say “follow me”.

When he spoke to the troubled nations of the world, challenging the despots, offering “that we will extend a hand if you are willing to unclench your fist”, I was again deeply moved. By speaking to our part in the world, that we could not be apart from it, he seemed to me to be reminding us that service goes beyond our nation. We can’t retreat inside our borders, nor follow some crusade to get every nation to be like ours.

At the end of the day, Barack and Michelle Obama crossed the threshold of the White House, across steps that were built by slaves, to lead our country in it’s ever progressing quest toward protecting life, liberty and the pursuit of happiness.

A couple of days back, I solved a problem I was having with Plaxo. For a few weeks, I was unable to connect to any of the Plaxo web servers from any of my home machines.

Being a fairly knowledgeable network person, I spent hours trying to diagnose the problem. I could get to all other web sites, but not to anything in the plaxo.com domain. Worse, I could resolve, ping and traceroute looked fine.

First I thought it might be something caused by Plaxo being bought by Comcast. Comcast had just recently been in the news for blocking traffic to keep bandwidth available, so I figured it wasn’t inconceivable that somebody made a mistake in a firewall somewhere that was blocking traffic between them and AT&T.

I sent an email to Plaxo to ask them if their site was up, and called AT&T to see if we could diagnose the problem. AT&T as usual was very nice (and annoying) and started me out with the normal insane steps:

  1. Turn off your firewall
  2. Clear your cache
  3. Turn off your router

After getting past all the annoying stuff, I got to their level 2 support, and then to the 2Wire support to see if they could find anything with my router that might be causing this. Naturally they found nothing, and everything looked OK.

So I escalated with Plaxo, calling them on the phone to see if there was anything they could do. There were emails and phone calls back in forth that never solved the problem:

  • First call I was told that there was a problem with one of their servers, and that it would be working the next day (not).
  • Another call I was told they had found the problem in their web server, and it would be fixed shortly
  • I got numerous emails telling me to uninstall the Plaxo software and log in again, which of course didn’t work since I couldn’t even get to the web site.
  • I had numerous emails diagnosing the problem as a Mac issue, or a PC issue, which again it wasn’t since it was happening on the Mac, iPhone and PC (and the iPhone doesn’t even have a Plaxo client).

Finally at some point, I got a support guy who told me that my IP address was indeed blocked at their server. Now we’re getting somewhere. But no, it still doesn’t work.

Luckily for me this guy is good, so he tells me that there was an old version of the Plaxo client for Mac that their servers were detecting as a bot attack, so if I uninstall that everything should be golden. I do, and lo and behold I can get to Plaxo again …

So it appears that Plaxo can be incompatible with itself …

I wonder how many people are blocked with the same problem right now.