Monday, August 6, 2012

Hardware/Software stack:
 iPhone 3Gs having iOS 5.1.1(latest as of today). 

The Xcdode 4.2 failed to detect this iphone as it has support only till SDK 5.0..

[UPDATE]
 Follow this : http://stackoverflow.com/questions/9614918/xcode-4-2-snow-leopard-and-ios-5-1
Copy few ios 5.1 folders/version.plist/SDK and you are ready

The below steps will mostly not work. Too many to tackle.. Best go with the link above..tada
--------------

I had 2 choices for getting iPhone ready for development:

1. Upgrade Xcode to 4.4
       - This was not possible as Xcode 4.4 would only run on Lion or more (i have snow leopard which i thought is pretty new ,,but no you need the lion) . So had to drop this option as it was too much effort and setup for new OS..

2. Downgrade iPhone iOS 5.1 to 5.0 or less
        - Had to look around for jailbreaking iphone . But no luck using iFaith, redsn0w.
        - iFaith 1.4.2 runs on windows support SHSH extract till ios 5.0 only. But as i did not had shsh saved. I was literally screwed. Googled more, then found TinyUmbrella5.11.01 had support to extract SHSH from 5.1 . With a catch - in advanced tab uncheck Request SHSH from cydia - very important.
If you not uncheck you get the below error:
05/21/2012 17:10:21.796 CYDIA DOES NOT HAVE YOUR SHSH FOR iPhone3GS 4.3.5 (8L1) THERE IS NO WAY FOR YOU TO GET THEM. SORRY. YOU ARE JUST TOO LATE.

Then got the SHSH for 4.1 from TinyUmbrella. I had an SHSH for 4.1, using it i downloaded the IPSW (the iOS) file from iFaith --> Download from server..

So far so good, it is downloading IPSW for 4.1 SHSH file.  

Hope these steps saves time for someone stuck with iOS 5.1.1 as I spent almost 10 hrs figuring and downloading softwares. 

References:

Glossary:
SHSH blobs  -  Hash signature system (Signature HaSH blobs) to control manual software downgrades on iPhonesiPads, and iPod touches (using this we download IPSW file from iFaith)
IPSW file - iOS package i think
iFaith - Tool for downgrading iOs 5.1 to 5.0 or less
TinyUmbrella - Tool to extract SHSH (details below