Tutorial:Unlock iPhone 3G with TurboSim

From The iPhone Wiki
Revision as of 12:36, 16 August 2008 by NaysNay (talk | contribs) (TurboSIM Compatibility with Operators)
Jump to: navigation, search

By following these instructions, you acknowledge your responsibility for any damage you cause to your device, and you recognize that you may void your iPhone's warranty.

This article is a step by step instruction to use a net-locked iPhone-3G with a different provider.

The dev team states on their blog that the SIM hacks they examined send illegal signals. <!-- The unlock method here uses zero-g which has been published by Zf, member of dev team, so it can be considered not to cause illegal actions. -->

Update / Warning:

ZeroG, was not intended to do trickery to your cellular network. But due to the way the iPhone's 2.x baseband firmware handles the login, actually it does. Short overview: ZeroG starts up the SIM replacing MCC / MNC with test IMSI codes, leaving the MSIN untouched. Then it restarts the SIM giving the correct IMSI afterwards. Unfortunately the iPhone asks the SIM exactly one time for the IMSI, it doesn't care about the restart. So effectively the login into the cellular network is done in test IMSI mode. Now it is up to your provider, how it handles such requests. For normal logins (no turboSIM) the login request is processed by your provider. In the roaming case your login request is routed from the guest provider to your provider. There is no provider for 'test' MCC / MCN. Your provider has to recognize this upon login (This implies you have to manually select cellular network right from the start.) If your provider accepts the test IMSI code and does authentication with your MSIN (this implies, (real) roaming is not possible, as only _your_ provider can process MSIN correctly), everything could be fine. You don't spoof your identity, there should also be no billing problems. But if you try this method, have successfully installed ZeroG.trb and do _not_ gain access, probably your provider does not accept test IMSI mode. In this case better do not retry as you might risk your IMSI beeing blacklisted.


Swisscom -> O2 Germany

Preamble

Apart from the warning and some other things, the method is quite stable if it works with your provider at all. You have to take care of:

  • never switch on 3G mode
  • before you use your SIM card that you want to unlock, put it in a different 2G phone and manually select provider and check GPRS works
  • for GPRS, "data roaming" has to be enabled on the iPhone (it is not roaming for your provider, but the iPhone thinks it's roaming)

Motivation

Everyone who dislikes pink T's, over-priced unlocked iPhones and likes investigating exciting techniques ... (a.s.o.)

Prerequisites

You need:

  • Jailbroken iPhone 3G with OpenSSH installed (from cydia) and WLAN connection to your PC. (Jailbreak Tutorial)
  • Bladox's TurboSIM. (From http://www.bladox.com)
  • SSH client for Windows Users such as Putty (Putty Download Page)
  • SCP client (e.g. WinSCP) or FTP Client such as Fugu for Mac and SmartFTP for Windows
  • TurboSIM programming sw [download]
  • TurboSIM app zero-g [download] (The version here basically does the same, reset is removed, so you can turn flight mode on and off, without card re-insertion.)

Installation

Before I begin, I will assume that you know some basic stuff, such as FTPing to your iPhone, and SSHing. If you require help, please email me at [nayef@fireblazehost.com nayef@fireblazehost.com].


1. Insert your simcard in another 2G phone, and remove the SIM Card Pin Code. You should also go to the Network Selection, and Manually select your network. Then cut your SIM card to fit with the TurboSIM. Google a little bit how to do this, or use YouTube and insert both into your 1st generation iPhone running 1.1.4.

2. Unpack turbo-cable-utils

3. Rename all files in bin-iphonev2 by adding 2 at the end of each file.

4. Copy contents of bin-iphonev1 and bin-iphonev2 to folder /bin/ on your 1st generation iPhone. (username: root password: alpine)

3. Unpack zerog-0.95 and copy zerog095.trb to /private/var/root/

Winscp turbo-utils.png

5. For Windows users, SSH into your iPhone using Putty. For Mac users, SSH into your iPhone using Terminal (Applications::Utilities::Terminal)

6. Change the permissions of the turbo files to 755

chmod 755 /bin/turbo-*

7. Run

launchctl unload /System/Library/LaunchDaemons/com.apple.CommCenter.plist  in your SSH client in the 1st Generation iPhone

8. You should now lose your signal, but WiFi should stay connected

9. Run turbo-info2

# turbo-info2
 initializing modem
modem initiated
OK. No Error

10. Now run turbo-info

# turbo-info
initializing modem 
modem initiated
Kernel Version 1.2.9.0
Serial Number bosu-e8f8t6o30
OK. No Error

11. Now run turbo-app /private/var/root/zerog095.trb

# turbo-app /private/var/root/zerog095.trb 
SRC /private/var/root/zerog095.trb
SIZE 1032
initializing modem
modem initiated
OK. No Error

12. Run

launchctl load /System/Library/LaunchDaemons/com.apple.CommCenter.plist

13. Now you should see Zero-G in the Sim Applications in Settings -> Phone -> Sim Applications


Ip simapp.png

Ip zerog.png


14. Click on Zero-G

15. Remove your card and TurboSIM from the 1st Generation iPhone

16. Insert the card and TurboSIM into your iPhone 3G

17. You will get No Service

Ip noservice.png


10. Open Settings -> Phone -> Sim Applications and click on Zero-G You may be interrupted by a popup which says Going to Switch, just choose Accept (Green Button) If you do not get interrupted, it will appear in a minute after choosing Zero-G from Sim Applications.


Ip zerog2.png


11. That's it!!

Ip unlocked.png


2G data settings

  • roaming must be enabled
  • make sure APN settings are correct (if APN options don't show up, just install a configuration file created with Apple's 'Web Configuration Utility' (Mac / Windoze) (In Windoze you can reach it with http://localhost:3000 ). Send this file to yourself and open it with the mail client.
  • in BossPref (if you don't use it, don't care) 'edge' should be left enabled, even if network does not provide it (seems the BossPref option is a little bit misleading and 'edge' actually means 'GPRS/edge')

3G-SIM / USIM

It works with (some?) USIMs (blau.de Germany) as well. 3G must no be activated on the iPhone. Once 3G is activated, it stops working, even if it is deactivated afterwards. To revive such SIM, put it in a non UMTS capable phone (did it together with turboSIM), check phone and GPRS functions and then this USIM will work again on the iPhone-3G. The SIM application (zero-g) was not visible, but it worked though. If GPRS does not work after a while (3 minutes or so), reboot your phone and try again.

GPRS-'Fix'

Today GPRS stopped working for me. Seems to be there are some 'states', stored on the SIM. This fixed the issue:

  • removed SIM+TSim
  • put SIM (without TSim) into non UMTS, but GPRS/edge mobile
  • checked GPRS
  • repacked Sim+TSim and put it back to the iPhone

Voilà, here we go :-) GPRS for another few days :-)

Tho' this might really not be the ultimate solution, I could hardly switch back to my old XDA Orbit. But XDA is a good device to revive the TSim solution... For that, I still love it a litte bit ;-)


Stuck in No Signal after a period

Randomly you can get stuck in a bad No Signal. To correct that:

  • remove SIM+TSim
  • put SIM (without TSim) into non 3G phone
  • Manually select your provider (desired to unlock) network
  • repack Sim+TSim and put it back to the iPhone

Here we go again, unlock iphone for a few days more also.


TurboSIM Compatibility with Operators

Actually this table gives a rough overview of all *sim solutions because it reflects working of MCC/MNC = 001/01 and all *sim known so far use this method. The table doesn't give information about 3G though, as turbosim does not support 3G SIM-ME communication at the moment. So could be, some *sim solutions work with 3G where this table indicates no. Most probably there isn't any *sim solution that works in a specific configuration if this table indicates 'no' for the method at all.

Unlocked Provider SIM type calls SMS 2G data 3G data
O2 Germany 3G yes yes yes no
Turkcell 2G yes yes yes -
TIM Brazil 2G yes yes yes -
Zain Jordan 2G yes yes yes -
Orange Jordan 2G yes yes yes -
Umniah Jordan 2G yes yes yes -
Congstar 3G yes yes no no
Blau.de Germany 3G yes yes yes no
O2 Germany 2G yes yes ? -
VodaFone (UK) 2G yes yes ? -
Tesco 2G yes yes ? -
Virgin (UK) 2G yes yes ? -
T-Mobile 2G no no no -
Orange (UK) 2G no no no -


Remarks

  • Important is you get zero-g into your turboSim. So you could also try with a first gen iphone, this needs the other version of turbo-cable-utils (bin-iphonev1) in case you didn't upgrade to 2.x yet.
  • If you get ERROR: Not Enough RAM run turbo-rm-apps
  • If you should encounter any problems with your TurboSIM (no access anymore, wrong app, ...) there is an easy method to remove installed turbo sim applications: instead of giving your SIM-Pin, enter the TPIN which you can find next to the serial number on the cover. This will reset your TurboSIM. Afterwards the phone asks a second time for your PIN, now use the SIM-Pin.