The iPhone Dev Team had warned iPhone 3G and iPhone 3GS users who had jailbroken and/or unlocked their iPhone to avoid upgrading to iPhone OS 3.1 a day before it was released and had asked them to wait for them to release the PwnageTool.
This step-by-step guide will show you how to use Dev Team's PwnageTool 3.1 courtesy folks at iClarified.
Some important points to note before we start:
Hacking your iPhone could void its warranty. So please proceed with caution.
PwnageTool 3.1 is ideal for all those who have iPhone firmware 3.0.1 or lower running on their iPhone 3G as it preserves the baseband but can also be used if you have already upgraded to iPhone OS 3.1.
PwnageTool does not unlock iPhone 3G. It allows you to only jailbreak your iPhone 3G by allowing you to create a pre-jailbroken iPhone OS 3.1. But as it also preserves your iPhone’s baseband from getting updated so that you can use UltraSn0w to unlock it. (After unlocking your iPhone running jailbroken iPhone 3.1 if you notice that the name and/or logo of the carrier is missing then it appears to be a cosmetic issue, it shouldn’t impact coverage or signal. iPhone Dev Team hope to fix this issue when they release the PwnageTool to jailbreak iPhone 3GS).
Upgrading to iPhone OS 3.1 breaks tethering and MMS hack, though AT&T customers can refer to this guide to enable MMS.
This guide cannot be used to downgrade your baseband from 05.11.07 to 04.26.08 (currently there no method away to downgrade the baseband from 05.11.07 included in iPhone OS 3.1).
If you already have a jailbroken iPhone and have installed jailbreak apps then this method will also result in wiping out the jailbreak apps. You'll need to reinstall them via Cydia.
The only way to update to iPhone firmware 3.1 and preserve baseband is by using the PwnageTool 3.1. PwnageTool is only available for Mac users, so Windows users who want to unlock their iPhone 3G should either get the custom firmware created by the PwnageTool on a Mac from someone they trust or borrow their friend's Mac and follow this guide.
Preparatory steps before Jailbreaking your iPhone 3G and preserving its baseband:
1. Please take a backup of your iPhone, refer to this post for more details.
2. Please download PwnageTool from any of these download links:
3. You need to download the iPhone firmware 3.1 file for iPhone 3G from this link (iPhone1,2_3.1_7C144_Restore.ipsw).
Create Custom Firmware 3.1 using PwnageTool 3.1:
1. Launch PwnageTool 3.1. You will see the following warning message, click OK.
2. Please select the Expert Mode from the menu bar in the next screen.
3. Then select iPhone 3G from the options presented and then click on the blue arrow button to continue.
4. You will see the "Browse for IPSW" screen. PwnageTool will automatically find the iPhone1,2_3.1_7C144_Restore.ipsw file that you had downloaded on your Mac. If PwnageTool doesn't automatically find the ipsw file you can click Browse and select the file.
5. Click iPhone1,2_3.1_7C144 to select the IPSW file, a checkmark will appear next to it. Then click the blue arrow button to continue.
6. In the next screen, select General and then click on the blue arrow button to continue.
7. The General settings allows you to decide the partition size (you have to increase the size of the root partition, 695 MB worked fine for us). Keep "Activate the phone" option checked if you want to unlock your iPhone or deselect it if you are using an official iPhone carrier. Click the blue arrow button to continue.
8. In the next screen, you will see the Bootneuter settings greyed out for the 3G iPhone. Click the blue arrow button to continue.
9. In the next Cydia settings screen; you can pre-install the packages in the custom firmware so you don't have to manually install them later. Select the packages and click the blue arrow button to continue
10. The Custom Logos Settings screen allows you to change the boot and restore logos. Once you have selected the boot and restore logos, click the blue arrow button to continue.
11. In the next screen, select Build and then click on the blue arrow button to continue. You will be prompted to save the custom firmware file, save it as iPhone1,2_3.1_7C144_Custom_Restore.ipsw so that you differentiate the custom firmware file created by PwnageTool with the firmware file you had downloaded earlier.
12. While building the custom firmware, you will be prompted to enter a password. Enter your administrator password and then click OK.
13. You will then be prompted with following message:
Its safer to select "No".
14. PwnageTool will put your iPhone into DFU mode (Device Firmware Upgrade mode). It will prompt you to turn off your iPhone 3G (ensure that it is connected to your Mac).
15. Then you will be prompted to hold both the Home and Power buttons for 10 seconds.
16. Finally, you will prompted to release the Power button while you continue holding down the Home button for another 10 seconds.
17. If it is successful in putting your iPhone 3G in DFU mode, PwnageTool will display the following message:
18. iTunes will also pop-up with the following message:
Restore your iPhone 3G in DFU mode with Custom iPhone Firmware created using PwnageTool 3.1:
You can now use the custom iPhone firmware created using the PwnageTool 3.1 to restore your iPhone 3G in DFU on either Mac or Windows by following these steps.
1. Connect your iPhone to your Mac or PC and select your iPhone from the list of devices in iTunes.
2. In the Summary Tab, Hold down Option and press the "Restore" button. If you are using Windows hold down Shift and press the Restore button. (This is a VERY IMPORTANT STEP as just pressing the "Restore" button will result in restoring your iPhone with the latest firmware which is firmware 3.1 currently, by holding down Option in case of Mac or Shift in case of Windows, allows you choose the custom iPhone firmware file.)
3. You should be able to see all the older iPhone firmware files you had downloaded so far, select the custom iPhone firmware (iPhone1,2_3.1_7C144_Custom_Restore.ipsw file) that was created earlier using PwnageTool to restore your iPhone 3G (it’s important that you use the custom firmware file iPhone1,2_3.1_7C144_Custom_Restore.ipsw).
4. Once your iPhone 3G is restored, it will be jailbroken and updated with iPhone firmware 3.1 but the baseband will still be 04.26.08 (and not 05.11.07) so you can unlock your iPhone 3G using UltraSn0w. You can check it by going to Settings -> General -> About and looking for Version, it should be 3.1 (7C144) and Modem firmware should be 04.26.08.
5. The last step is to set up your iPhone 3G from a backup.
As always, don't forget to drop us a line to tell us how it goes.