Here are the steps I took for unlocking from a MacBook Pro. These are paraphrased from: http://www.freeiphoneunlock.com/guide/ NB!!! There has been talk recently of a firmware upgrade that will "break" present non-AT&T activators and unlocks. See the link above and follow discussions on forums such as Engadget.com for the latest news. This guide was up to date at the time I last unlocked my iPhone. Procedures may have changed, been simplified and improved since then. 0. Read and make sure you understand all the steps before starting. Don't mix and play software until the unLock works. Read and understand all the documentation that comes with the files you download to perform this unlock. Unpack your iPhone, plug it into the USB port of your Mac with the provided cable to start charging it and for initial communications. Make a directory named something like "iPhone" somewhere convenient on your Mac in which to download the various files needed. (In a shell, cd to that directory before logging into the iPhone.) 1. Make sure your iPhone firmware is version 1.02 and iTunes is 7.4. (If it's not, you will have to upgrade the firmware with iTunes. This involves going a couple of steps into the iTunes activation process and then back out until iTunes offers to Restore the phone to firmware 1.02.) 2. Get iNdependence and then get the appropriate iPhone firmware from Apple. (See the iNdependence README file) http://iphone.fiveforty.net/wiki/index.php/INdependence 3. Activate and jailbreak the iPhone with iIndependence 4. Make sure your Modem Firmware is 03.14.08_G (Settings > General > About > Version) 5. Get AppTapp Installer, unpack and install Installer on the iPhone http://iphone.nullriver.com/beta/ 6. Make sure your iPhone is connected to the Internet. Get its IP address from Settings > General > WiFi > [basestation] > [10.0.1.4] 7. Use Installer (on the iPhone) to install (in this order): - Community Sources - BSD Subsystem (might take some minutes) - OpenSSH Installer will install these over the WiFi connection. Installing "Community Sources" will bring up a list of available resources, among them OpenSSH and BSD Subsystem 8. You can now log in on your iPhone from a shell on your Mac with "ssh root@10.0.1.4" (user: root password:dottie) It takes 30-40 seconds for the iPhone to respond the first time as it generates keys. Log in to ensure that you have a connection over which to move the files below. 9. Get these files onto your Mac like this: curl -O http://www.freeiphoneunlock.com/unlock/files/iUnlock curl -O http://www.freeiphoneunlock.com/unlock/files/nor curl -O http://www.freeiphoneunlock.com/unlock/files/ICE03.14.08_G.fls curl -O http://www.freeiphoneunlock.com/hardware/minicom curl -O http://www.freeiphoneunlock.com/hardware/minirc.dfl curl -O http://www.freeiphoneunlock.com/hardware/bbupdater 10. Copy the following files to /usr/bin on the iPhone with scp. - iUnlock - ICE03.14.08_G.fls - nor - minicom - bbupdater For example ("khadija $" is the prompt in the shell on my Mac): khadija $scp iUnlock root@10.0.1.4:/usr/bin/ root@10.0.1.4's password: iUnlock 100% 19KB 19.3KB/s 00:00 khadija $ 11. Make a folder under /usr/ called local/etc I'm logged in on the iPhone: # pwd /usr # mkdir local # mkdir local/etc # 12. Upload minirc.dfl to /usr/local/etc/ khadija $scp minirc.dfl root@10.0.1.4:/usr/local/etc/ root@10.0.1.4's password: minirc.dfl 100% 104 0.1KB/s 00:00 khadija $ 13. Log in to the iPhone and run the following commands: # cd /usr/bin # chmod +x iUnlock # launchctl unload -w /System/Library/LaunchDaemons/com.apple.CommCenter.plist # # iUnlock ICE03.14.08_G.fls nor iUnlock v42.PROPER -- Copyright 2007 The dev team Credits: Daeken, Darkmen, guest184, gray, iZsh, pytey, roxfan, Sam, uns, Zappaz, Zf * Leet Hax not for commercial uses Punishment: Monkeys coming out of your ass Bruce Almighty style. Sending Begin Secpack command Sending Erase command Waiting For Erase Completion... 00% 00% [Wait a while - usually around 20 minutes.] ........ 95% Sending End Secpack command Validating the write command FW are equal! Completed. Enjoy! # 14. Remove the AT&T SIM and install your own. 15. Then: # chmod +x bbupdater # bbupdater -v Resetting target... pinging the baseband... issuing +xgendata... firmware: DEV_ICE_MODEM_03.14.08_G eep version: EEP_VERSION:207 eep revision: EEP_REVISION:7 bootloader: BOOTLOADER_VERSION:3.9_M3S2 Done # 16. Then run minicom: (you type the commands after the ">") # minicom Welcome to minicom 2.2 OPTIONS: Compiled on Jul 21 2007, 05:09:51. Port /dev/tty.baseband Press CTRL-A Z for help on special keys > AT OK > AT+CLCK="PN",0,"00000000" OK > AT+CLCK="PN",2 +CLCK: 0 OK > [ctrl + A Z and choose "X" to reset and exit] 17. Now run: # launchctl load -w /System/Library/LaunchDaemons/com.apple.CommCenter.plist SUCCESS! This guide is up to date on Sept 15, 2007 for revisions see: http://www.freeiphoneunlock.com/guide/