With all of the hype that the iPhone 4, iPad 2 and iOS 4.3 currently going on, you might have missed this news. I (and others) have encountered a rather bad issue (Error 29) when trying to upgrade an iPhone 3GS’s iOS to a later version. It seem that is related to previous versions of iOS as well and is NOT just limited to iOS 4.3. There is definitely an issue with iPhone 3GS’s that have had their original battery replaced by a 3rd party or done by yourself.
Here is what happened to me. This weekend, I tried to update my iPhone 3GS to iOS 4.3 from a previous version of iOS. First, I made a backup of my iPhone (prior to trying to install iOS 4.3). It is always important (if not critical) to do a full backup of your iPhone prior to doing any type of upgrade. Once I had done this, I went ahead and tried to install the upgrade and I got an Error 29 (seen above): “The iPhone could not be restored. An unknown error occurred (29).”
I’m usually not daunted by issues like this. In fact, this had happened to me before and I was able to use iRecovery to resolve the issue. You can see my blog post on iRecovery here “How To Get Your iPhone Out of a Recovery or Restore Mode Loop“.
Here are ALL of the things that I tried to resolve (none of which worked):
- iRecovery – I tested trying to kick my iPhone out of this mode quite a few times (too many to count actually). And each time, I got the same issue “Error 29”.
- DFU Mode – tried putting my iPhone into DFU mode (which bypasses the loading of the OS when upgrading/installing). That didn’t work.
- Pwnage Tool/Blackra1n/RedSn0w – tried using each of these to see if I could make something work – nothing did.
- Previous/Custom Version of iOS – I created some custom .ipsw files and tried to use previous versions of the iOS, loading manually through iTunes. Those didn’t work either.
It looked like my iPhone was officially “bricked.”
The “Cause” – Replaced Battery (?)
Then I started reading through some interesting support threads within the Apple Discussion Forums as well as iFixIt. And I started seeing some interesting conclusions being offered. First, the threads:
- Apple Discussions – “Error 29 iPhone locked in recovery mode“
- iFixIt Forums – “Why do I receive error code 29 when I attempt a restore?“
It seems that if you have had your battery replaced (or done the replacement yourself – something that I show how to do here), there may be some incompatibility from a hardware perspective. The iFixIt post seems to point to the logic board within the replacement battery, as well as when your iPhone 3GS was built.
iFixIt’s Scott Head writes:
This is something we are looking into. As far as we can tell, this is caused by the battery and the logic board. With newer builds of the iPhone 3GS, it appears that they come with a battery with an Apple part number (APN) of 616-0433, 616-0434, or 616-0435. All 3 of those part number were successful in updating to iOS 4.0 with the “newer” 3GS. These batteries have to be replaced with a battery of the same part number. If you try to use a battery with a part number of 616-0428 or 616-0431 on a newer 3GS, it will give you the “Error 29” message every time.
We have not figured out how to determine which battery you need other than taking the battery out and looking at the part number. Most of the iPhone 3Gs out there will work fine with our part, 616-0431, but as more people with the newer builds need to replace the battery, I imagine we’ll see this issue more.
Contact iFixit if you bought a 3GS battery from us and are getting the “Error 29” message. iFixit is currently sourcing more batteries that will be compatible.
How To Fix…
So, it looks like the only way to have this corrected is to:
- Try to see if Apple will swap out your battery for you,
- See if the party that did the battery replacement will put in the proper battery,
- See if Apple will simply replace you iPhone 3GS with a refurbished one – needs to be in warranty, I believe,
- Get a new, replacement battery from the vendor you bought your battery from and replace your existing one.
Since I used an iFixIt battery and did it myself, I have asked them to send me a new battery so that I can try to replace it (again) and do the upgrade. Once I receive the new battery and install it, I will update this post to comment on whether this resolved the issue. I’m thinking that it will since I have tried everything else imaginable.
UPDATE 3/18/11: I have successfully installed the proper iPhone 3GS battery (from iFixIt.com) and successfully gotten my iPhone out of recovery mode AND upgraded it to iOS 4.3. Read the details on the confirmation in this blog post.
This is obviously a very frustrating situation. If this had been my primary iPhone, I would be livid, however, this is my kids’ “iPod Touch” (used for playing games mainly and a sound machine for sleeping). It should be fun replacing the battery (again).
HTD says: Don’t panic when you run into issues like this. There are usually ways to fix it, but sometimes the resolution takes time and effort.