Saturday, January 26, 2008

iPhone 1.1.3 Jailbreak Journey

So today I finally got the new iPhone 1.1.3 jailbreak working. After figuring out all the tools that I needed and doing lots and lots of searching, and getting everything working, I erased and started over to write this blog. In this blog, I will explain in as much detail as I can the upgrade process. I will try and address any issues that I ran into and also try and answer some commonly asked questions. So, let’s begin.

Don’t forget to sync with iTunes before starting!

First off, I have only one iPhone. So this tutorial explains my journey with a more recent iPhone. My iPhone is an OTB (out of the box) 1.1.2 (meaning when I activated my phone with the original software, it was firmware 1.1.2) and bootloader 4.6. You may be thinking, ummm....yeah, but this is significant (about to address the people with older iPhones....ready?) If you have an older iphone, like the ones shipped before the 1.1.2 release, then upgrading and downgrading were much simpler. If an older iPhone got upgraded to 1.1.3, then when it was ready to be downgraded, the baseband (which is the Phone in iPhone) could also be downgraded, allowing the iPhone to function correctly. Us OTB 1.1.2 owners were not so lucky. OTB 1.1.2 iPhone got their baseband upgrades with 1.1.3, but could not go back the anything pre 1.1.3 without loosing their phone functions. Why not downgrade the baseband then right? Well, to do that you need bootloader 3.9. The only way to achieve that is to take the iPhone apart. Not going there.

What Tools I Used:
Powerbook G4 (any mac should do, only for the SSH part)
Dell Dimension w/Vista (for all the Upgrade/Downgrade)
Official 1.1.1 Firmware from Apple
iBrickr 0.91
iBrickr Jailbreak 1.1.3 Edition
Cyberduck(for mac)
WiFi Connection
An iPhone OTB 1.1.2 that had been upgraded to 1.1.3 via iTunes from Apple and an ATT iPhone contract.
iTunes (I used 7.6)
Original Lockdownd file (link given in instructions)

NOTE: I am not 100% sure, but I do not think this jailbreak updates the Modem Firmware that is updated by the official 1.1.3 update. The official firmware update does not allow OTB 1.1.2 iPhones to go to anything less than 1.1.3 without loosing phone features. However, this update does enable and better use the Locate Me (pseudo GPS) feature in the Maps application. The phone features do return after the jailbreak is complete for 1.1.3.

What I Did:

First, get all of the tools. You can find iBrickr 0.91 at

http://ibrickr.com/downloads/ibrickr_v0.91.zip

This is for windows, so download the extract the files to a folder named iBrickr91 on your desktop, for example.

Then download iBrickr Jailbreak 1.1.3 edition

http://www.iphone-hacks.com/download.php?id=80

Extract these files to another folder called iBrickr113.

The next file you will need is the official 1.1.1 firmware

http://appldnld.apple.com.edgesuite.net/content.info.apple.com/iPhone/061-3883.20070927.In76t/iPhone1,1_1.1.1_3A109a_Restore.ipsw


Download it and leave it alone. iTunes will use this file, just put it somewhere accessible.


Next, the iPhone must be put into what is called Recovery Mode. To do this, just hold the Sleep/Wake and Home buttons on the top and front of the iPhone and release when the iTunes/Cable graphic shows.

Attatch the iPhone to the PC and launch iBrickr ver. 0.91, by opening the iBrickr file from iBrickr91 folder.

iBrickr will ask if you would like to boot the phone, or begin downgrade to 1.0.2. Click the downgrade option.

This puts iPhone into a special recovery mode, with the iPhone showing just a white screen.

Now open iTunes (If this wasn’t already done for you) and shift+click the Restore button in the iPhone summary in iTunes (You can also do this on the mac if you unplug it from the PC while the screen is still white, and then restore from iTunes there by option(alt)+click). Doing this brings up a file browser, point iTunes to the 1.1.1 Firmware.

While this is going on, you can close iBricker 0.91.

After a few minutes, iTunes will report an error (error 1015) and the iPhone will show the iTunes/Cable graphic again.

Close iTunes after this error, then launch iBrickr 0.91 again and this time click boot phone. If the screen turns Red, wait, iPhone will boot itself in a minute.

If the screen is green, close the program, turn iPhone off then back on, and try again. Try several times if it keeps happening. If you do this on a mac, use independence then just wait for the iPhone to boot. When I tried it on a mac, sometimes it was instant, sometimes it took 15 mins, sometimes it never did anything.

Now iPhone is requesting activation. It may also say invalid SIM (mine did). So now bypass this (even if you have an AT&T contract, which I do). These are the steps for that

At the activation screen, slide to make an emergency call;

Dial *#301# — the phone will call itself;

Answer and immediately tap "Hold";
The phone will call itself again, hit "Decline";

At the keypad, go to Contacts, add a new contact;

Hit "Add new URL" and enter "prefs:" (without the quotes);

Add another new URL, enter "jailbreakme.com";

Save the contact and go to the first URL by tapping it;

This opens the iPhone Settings, add an accessible Wi-Fi network;

Also recommended: set General -> Auto-Lock -> Never;

Press the Home button and slide for emergency call;

Dial 0, answer, do steps 3 and 4 (Hold, then Decline);

Browse to that contact you created and select the second URL, jailbreakme.com;

Read, then install AppSnapp Installer;

Wait... The phone should restart within 2 minutes.

After iPhone has restarted, launch iBrickr.exe from the iBrickr113 folder. This program will check to see if you have a jailbroken 1.1.1 phone, which now you do. So click the “check my phone button”

New screen pops up, click the “Do it!” Button

The next screen asks if you have the 1.1.3 firmware, just let iBrickr download it and rename it. Found that its just much easier.

The next screen will have a button that says “Do you have to ask?” Click it.

After a few minutes, the next screen will have a button that says “Ready to go!” Click it. THIS PART TAKES A WHILE (less than 20mins for me)

iBrickr will say that its part is done. Close it.

Now go back to the installer application and find the 1.1.3 Soft Upgrade package. Install it. It will appear to stall half way through, 1 time it went all the way through no errors, 3 times it had a “Main Script Error”. If this error occurs, tap OK and leave the iPhone alone. It should restart within at most 20 minutes. DO NOT USE THE iPHONE WHILE THIS IS HAPPENING.

After iPhone restarts, you are in Jailbroken 1.1.3! BUT...
The phone stuff doesn’t work. Lets fix that.

Go to installer and find the BSD Subsystem and Open SSH. Install both of these.

After these are installed, go to Settings, Wifi, then select the blue right arrow icon NEXT TO THE NETWORK YOU ARE CONNECTED TO. Take a note of the IP address assigned to your iPhone. Unless you have a static IP (most people don’t) then this might change if your iPhone leaves the network.

This next part should be able to be done on a PC, however, I used a mac. Obtain the lockdownd file from:

http://rs323.rapidshare.com/files/86377952/lockdownd

extract the file and remember where it is.

And (if you don’t have it already) get Cyberduck from:

http://cyberduck.ch/

Lauch Cyberduck, then go to preferences with in the application. Under the SFTP tab, look for the phrase “Transfer Files” followed by a drop box. In the drop box, select Using SCP

Close the preferences and at the top left of the application, click Open Connection

Make sure the protocol is SFTP, Server is your iPhones IP address, the Username is”root”, and the password is “alpine”.

Connect and wait, the program should say retrying, the eventually a message pops up about Hostkey Mismatch. Click ALWAYS.

In the drop box above the list of files, click the hard drive icon with the slash.

Double click “usr”, then the folder “libexec” and drag the extracted lockdownd file to the directory and overwrite.

Click disconnect.

Now restart iPhone, which you may have to do a couple times, but eventually, iPhone finds the AT&T network and asks you to activate.

Connect the iPhone to your main computer, re-sync, and then the phone features are back and you can install apps!

Almost Done!

If you have a hard time with your ringtones, go to installer, tap sources, tap edit, then tap add.

Add sleepers.net/iphonerepo as a source.

Find the newly added tweaks 1.1.3 and run the ringtone fixer.