The following step-by-step tutorial/guide will help you in running fully unlocked and jailbroken iPhone 3GS with iPhone firmware 3.1 on a Windows PC without having to wait for Windows version of PwnageTool or redsn0w. Mac version of the tutorial can be found here.
NOTE: This guide is for those of you who are on a jailbroken firmware 3.0 or 3.0.1. If you have updated to firmware 3.1 from iTunes but have saved your SHSH file to Cydia then you can still jailbreak but you’ll first have to downgrade your firmware back to 3.0 or 3.0.1. Complete guide on how to downgrade your iPhone 3GS to firmware 3.0 or 3.0.1 from 3.1 can be found here. In any other case, you are pretty much out of luck for now.
Step 1: Make sure you have downloaded the latest version of iTunes if you haven’t already.
Step 2: Now connect your iPhone with your PC. You must connect it to a single usb port on the backside of your computer. Do not use any usb hub or the ports in the front as this could result in an error during update process.
Step 3: Start iTunes. Sync your iPhone with your PC so that iTunes backs-up all your important data including settings, apps, music, contacts and photos.
Step 4: As a Windows user, you will have to now download a custom firmware for your iPhone 3GS which has been cooked on OS X using PwnageTool 3.1.3. Don’t ask us for the download links for these custom firmware files. Just Google “iPhone 3GS Custom 3.1” or “iPhone2,1_3.1_7C144_Custom_Restore” and use one of the torrent links to download the custom created .ipsw file
Step 5: Once you have downloaded the required .ipsw file, Move it into the following location depending on the Windows version you are using:
“C:\Documents and Settings\[username]\Application Data\Apple Computer\iTunes\iPhone Software Update\” (Windows XP)
Step 6: Restart iTunes. You will now be prompted to install the new firmware 3.1 from iTunes. DO NOT UPDATE from this prompt. Just close this dialog by clicking on “x” from the top right-most corner of the window.
Step 7: Now you will have to restore your iPhone to this custom firmware 3.1 that you have downloaded for iPhone 3GS. Click on your phone from the sidebar in iTunes to get to this screen as shown in the screenshot below:
Step 8: Press and hold left “Shift” button on the keyboard and then click on “Restore” (Not “Update” or “Check for Update”) button in the iTunes and then release the “Shift” button.
This will make iTunes prompt you to select the location for your downloaded custom firmware 3.1. Select that custom .ipsw file and click on “Open”.
Step 9: Now sit back and enjoy as iTunes does the rest for you. This will involve a series of automated steps. Be patient at this stage and don’t do anything silly. Just wait while iTunes installs the new firmware 3.1 on your iPhone. Your iPhone screen at this point will be showing a progress bar indicating installation progress. After the installation is done, iPhone will restart automatically and you should now have a fully jailbroken iPhone 3GS running on firmware 3.1.
You can now follow the tutorial/guide posted here to unlock iPhone 3GS on firmware 3.1 using ultrasn0w.
Step 10: Once you are done with the unlocking and jailbreak process. You can now restore all your settings, apps, music, contacts and photos to the newly installed firmware version 3.1 by restoring the backup that you made in Step 2 from iTunes.
You can follow me on twitter or join our facebook fanpage to keep yourself updated on all the latest jailbreaking and unlocking releases.
Feel free to ask me any question here should you run into any problem during the update process.
Disclaimer: This guide is for testing & educational purposes only. I’m not responsible for any loss of important data or malfunctioning of your iPhone.