[1.1.3/1.1.4](all)[Tutorial] Create custom carrier bundle in a minute
I have created a page&script on my webserver that auto-generates completete, ready-to-go custom carrier bundles including all plist files, custom carrier-logos and customized reademe for installing and creating the symlink. Too many ppl having trouble to deal with plist-files and correct settings. There is no need anymore for that.
After entering a few parameters in the form you just hit the download-button. It downloads a zip arcive containing the complete custom carrier bundle and your Readme with custom install instructions. The only thing for you to find out is the IP of your iPhone to upload the bundle and create the symlink - the easiest way so far.
You do not have to deal with any plist-files, no editing of any of the carrier bundle files on the iPhone. The downloaded bundle even contains the two custom logos that are to appear on top of the iPhone right to the signal strengh bars. You may of cause open and edit them, apply logos etc, just don't rename them.
The use of custom carrier bundles is to be the preferred way, it works with 1.1.3/1.1.4 and Apple did not change this in 2.0 so far.
Apple wanted the iPhone to be tied to a few partner carriers like AT&T (USA), o2 (UK), Orange (France), T-Mobile (Germany), TIM (Italy) aso. For each of those carriers/simcards/contracts Apple developed Carrier Bundles containing special data like apn for EDGE, carrier IDs (MCC/MNC), access to services, voicemail etc.
Altering the unknown bundle on the other hand is not always a good idea. This one should be intact and working when travelling aboard. Some rules apply then like letting you know you are roaming, no data-roaming while not on your carrier etc. Thats why custom carrier bundles are the preferred solution.
Quote:
[EDIT August 9, 2008]
This solution is only for users with firmware 1.1.3 and 1.1.4. For Firmware 2.0.1 and PwnageTool 2.0.2 please use the solution here:
http://www.hackint0sh.org/forum/showthread.php?t=48683
You dont have to use SSH or SFTP to apply, all done by PwnageTool 2.0.2 - thanks to the Dev Team.
The bundles created in this tutorial here wont work with FW 2.0.1 due to changes made by Apple!!!
[/EDIT]
1. Get ready, collect some information
Stuff you will need later to copy the bundle to your iPhone and create the symlink:
An SFTP client (Fugu, Cyberduck, Transmit or other on Mac, WinSCP on Windows) to connect to the iPhone.
A terminal programm for SSH connection (Terminal on Mac, Putty on Windows) to create symlinks.
The IP-number of your iPhone and your WLAN of cause
Next you have to find out the MCC/MNC code of your simcard.
On the iPhone start the Phone app and switch to the keypad and type
*3001#12345#*
tap the green dial button. That opens the hidden Field Test Application on the iPhone. Tap "Cell Information", some lines will be displayed.
On the end you will find something like
N:3 #:262
or
N:10 #:234
In the first case, the MCC/MNC is 26203 (if N only has one digit add a zero in front), in the second MCC/MNC is 23410.
Write it down!
For using the custom carrier logo you need one mandatory field in the form to be filled out properly (* First character/digit of carrier logo name). The file carrier.plist has a "key" called "AllowPrefixMatching" that has to be set to "true". The following string is compared to the string your simcard/carrier issues when normally using (before having the custom carrier logo). Main carriers like Vodafone issue "Vodafone UK" or so. Some do different. One of our members here is on Wataniya from Kuwait, the issue "KT WATANIYA". The value for "AllowPrefixMatching" has to match the string and NO SPACE ALLOWED. So in this example you would have to type ktwataniya (it's not case sensitive). Use the easy way and just type the first character (or if so digit) that is displyed, it works. In our example k would do.
Write the displayed name down (only the first character/digit)
2. Create and download your custom carrier bundle
Got to my page at
http://www.volkspost.de/carrierbundle/
3. Fill out the requested fields and hit "Download my carrier bundle and readme (zip-archive). After Download unzip the archive. The resulting folder contains your carrier bundle and a customized readme with detailed instruction how-to install and use.
You will find explanation concerning all to be filled fields on my website, please read them carefully. There are a few things to keep in mind.
I have tested this on a Mac and on Windows. Bundles work for me on 1.1.3/1.1.4 iPhones. Cause the way Apple handles this in 2.0 (beta for now) it should work later on.
If you have any suggestions, more fields to be integrated, just let me know, I will do my best.
Use of the service is free of cause. If you want to have/use the script on your website, download it here:
http://http.volkspost.de/carrierbundle/cb_script.zip
The script is kind of commented so it should be easy to adjust the path and the fonts you may want to need. You need GD2 lib with font support, PHP, zip support on your webserver to run it. The script is made to work with deja Vu fonts, downloadlink is above. You may of cause use others.
Please leave feedback if you like to. Check next post on explanation of the fields to be filled in.
hope that helps,
volkspost
Part 2: Some explanations on the field
...continued from post before
Information on fields and folders
The script creates everything on the server, after all is complete, it's downloaded to your PC, all data on the server deleted.
a. Info.plist
* Bundle Name (e.g. my_o2_UK, do NOT add .bundle!)
This field is mandatory. Will be the name of the bundle. Do not add .bundle, the script will do. Do not use any special character here (no umlauts, no & aso)
b. carrier.plist
* Carrier Name (e.g. o2 UK, Vodafone DE)
This field is mandatory. Will show up on the iPhone in "Settings->Phone" as "Carrier Name-Services".
Account URL Title and Account URL
If set it will show up under "Settings->Phone->Carrier Name-Services" providing an Link that opens Mobile Safari
Service Name 1 / Service Code 1 to Service Name 5 / Service Code 5
If set you will find Access to the services in "Settings->Phone->Carrier Name-Services" on the iPhone. If you like to use one or more, please start with service 1 and continue then.
* Supported SIM (Your MCC/MNC e.g. 20622)
This field is mandatory. Fill in the MCC/MNC (you wrote it down)
* First character/digit of carrier logo name
This field is mandatory. Type in the first character of the carriername that is displayed on the iPhones top left, right from the signal bars.
Voicemail number
Type in the access numer for your voicemail here. No need anymore for the "*5005*86*xxx#"-hack. Type in the number here and it will work when hitting the voicemail-button in the Phone app. You can either use the local one or the complete (starting with +XXX)
APN, Username, Password
You may type in the data here or leave it blank. You can find/edit them later on the iPhone at "Settings->General->Network->EDGE"
The following fields are set automatically: AllowEDGEEDiting (true), ShowCallForwarded (false), ShowCallForwarding (false), ShowDialAssist (false), ShowTTY (false), SupportsNITZ (true)
c. version.plist
The complete file is created automatically
d. carrier logo
Width of carrier logo
Apples logosize is 60*20 (width*height). You may choose another, the logo pushes the display of WLAN and time to the right then.
Font type
Apple uses Helvetica 14 for displaying the carrier name. Helvetica is not free. I have been choosing the free font family "DejaVu", you can checkout/get it here http://dejavu.sourceforge.net/wiki/index.php/Main_Page.
DejaVu Sans Condensed Bold looks best to me.
Font size
Apple uses helvetica 14, DejaVu Sans Condensed Bold 12 looks best to me.
Logo text
Type in the desired text. The cool thing about DejaVu is that it supports Latin, Greek, Cyrillic and Arabic. So just use the language of your choice.
best,
volkspost