iPhone 3G and 3GS users who have basebands 5.14.02 and 5.15.04 can be "unlocked" using a non-conventional method. Your iPhone's baseband needs to be updated to version 6.15.00. If the WiFi on your iPhone is not working, do not dismay as it is still possible to unlock it.
There are 3 major steps to unlock your iPhone.
1. Update your iPhone to 4.2.1 via iTunes. However, you can continue using iOS 4.1 to enjoy untethered jailbreak; although now you can untethered jailbreak iOS 4.2.1 with GreenPois0n RC5.
2. Jailbreak your iPhone using redsn0w 0.9.6b6 and at the same time update the baseband to 6.15.00 (iPad's baseband). (download here for Windows or Mac).
3. Unlock for any carrier using the new ultrasn0w 1.2. (Note: iPhone Dev Team skipped the unlock for 5.14.02 and 5.15.04, they did the unlock for iPad's baseband 6.15.00 which is compatible with 3G and 3GS)
WARNING: Please do not proceed if you are unsure what to do.
1. There is no way to downgrade your baseband if you are already on 6.15.00.
2. Starting from iOS 4.2.1 and if you have a baseband 6.15.00, you will NOT be able to restore using the original firmware. You can only do it via a custom firmware.
1. Download iOS 4.2.1 for iPhone 3GS or 3G. [iPhone 3G iOS 4.2.1 download link | iPhone 3GS iOS 4.2.1 download link ] NOTE: If you wish to stay at iOS 4.1, you can download them here [iPhone 3G iOS 4.1 download link | iPhone 3GS iOS 4.1 download link]
2. Update and restore to iOS 4.2.1 firmware using the IPSW file you just downloaded via iTunes 10.1.
NOTE: You can choose to stay on 4.1, just check the Install iPad Baseband option on redsn0w. Make sure you choose 4.1 IPSW when using redsn0w.
3. Download and start Redsn0w 0.9.6b6 and select the iOS 4.2.1 firmware to start with the jailbreak.
4. Select “Install Cydia” and “Install iPad baseband” options and then click “Next” to continue. Redsn0w will now download the 06.15.00 baseband from iPad's 3.2.2 firmware and will replace it the baseband in iOS 4.2.1.
5. Switch off your device and make sure it is plugged in to the computer before you click “Next”. Follow the on screen instructions on how to put your iPhone into DFU mode.
6: Redsn0w will jailbreak your iPhone and once done, it will restart automatically and you will find it jailbroken state (you will find Cydia) on iOS 4.2.1 firmware, with the unlockable 06.15.00 baseband.
Additional Notes: For iPhone 3GS (New Bootrom) to be able to run Cydia, you must first run your device in the so called “jailbroken state” on every reboot by using “Just boot tethered right now” option in Redsn0w.
Unlock using ultrasn0w 1.2 [Without WiFi]
1. Download iFunBox, mobile substrate 0.9 and ultrasn0w 1.2.
2. Remove the SIM card from your iPhone and then launch Cydia from the springboard.
3. Launch iFunBox and copy mobile substrate 0.9 and ultrasn0w 1.2 into Raw File System/Private/var/root/Media/Cydia/AutoInstall. If this folder is not present, you can manually create it. Note: Folder name is case sensitive.
4. Reboot your iPhone and insert your SIM card. Toggle the Airplane mode to ON and then OFF. Your iPhone will search and register to your mobile phone network. Please be patient, sometimes it may take up to 3 minutes. If it doesn’t register, reboot your iPhone again.
Note: for iPhone 3GS on iOS 4.2.1 (unless already jailbroken with GreenPois0n), if you need to reboot your iPhone: Switch off your iPhone first then bring it to DFU mode. Then use Redsn0w and choose just boot tethered right now.