- Make sure you downloaded the correct firmware from Apple to create your custom 3.1.2 firmware. Here is a direct link to Apple's 3GS 3.1.2 firmware here.
- When creating your custom firmware, select "Advance" mode and Uncheck “Activate the phone” because you have an official carrier like AT&T.
- On a previously jailbroken iPhone 3GS, do not put your iPhone 3GS into DFU mode. Open iTunes, press Option+Restore (MAC) or Shift+Restore (Windows) and select your custom firmware callled iPhone2,1_3.1.2_7D11_Custom_Restore.ipsw.
- If you are successful restoring your custom firmware, open iTunes and set your iPhone as a new Phone. Do not restore from backup.
If you are unsuccessful, put your iPhone 3GS into recovery mode and run iRecovery from your MAC OSX computer.
1. Download iRecovery package for Mac OSX and Unzip iRecovery folder to desktop from
here.
2. Open terminal and perform cd ~/desktop
3. Now change the permission of both files to 777 by following commands.
# chmod 777 libusb-0.1.4.dylib
# chmod 777 iRecovery
4. Now launch Showallfiles you downloaded earlier, and Navigate usr > lib and copy the file libusb-0.1.4.dylib into that folder.
5. Drag-and-drop the iRecovery file into the Terminal so that you get a shortcut to it.
6. Append ‘-s’ to the end and press enter (ex. irecovery -s).
7. Execute the following command: " printenv " from within the irecovery terminal. It should tell you the version of your iBoot.
If your iBoot version is
iBoot-359.3.2, then you will need to jailbreak using Blackra1n RC3. Blackra1n can perform what is called a tethered jailbreak on an iPhone 3GS with iBoot-359.3.2. Tethered JB means that each time your power on your iPhone 3GS w/iBoot-359-3.2, you will need to connect your iPhone 3GS to your MAC OSX computer and run Blackra1n in order to boot. This is because the jailbreak info is lost each time you power on.
If you have iBoot-359.3.2, you will need to first restore a stock 3.1.2 firmware, activate it using iTunes and then jailbreak using BlackRa1n. I suggest you read the Blackra1n JB guide. Do not install "Sn0w" from the guide because you have an official carrier and only install only Cydia not Rock. If you have problems with WiFi, make sure you do a Reset Network Settings from Settings -> General -> Reset -> Reset Network Settings. Install PushFix from Cydia if YouTube and Push notifications do not work.
Good luck.