Every day I look for ways to tweak my non-jailbroken iPhone 5. I must have over a hundred wallpapers which I change often to make up for the fact I can’t customize it… yet. However I stumbled upon two posts in Beau Giles’ blog which describes how to display a custom carrier logo image instead of the usual written name of your carrier (links to Beau’s
articles are at the bottom of this post). If you have jailbroken your iPhone before, you probably are aware of a tweak called Zeppelin (FREE on ModMyi) which does the same thing. You might have even downloaded Zeppelin logos for Jaku that I have made (available on my repository). Unfortunately, the trick I will show you for the non-jailbroken iPhone is not as straightforward, but follow the instructions closely and you will end up with a fantastic result.
- iPhone 5 / iOS 6 (for previous versions just use Zeppelin)
- iTunes (download latest version here)
- xCode (download latest version here)
I will be describing how to perform the tweak on Mac OSX, but from Beau’s posts it appears this can also be done on PC/Windows (and I ask you to refer to his posts for instructions/clarifications).
Step 1 – Make sure you can perform the tweak on your computer. If you have never performed an OTA upgrade of your carrier settings you might miss out (but don’t panic, I didn’t remember ever doing one and yet apparently I have). Using Finder look for this file:
~/Library/iTunes/iPhone Carrier Support/[carrier's name].ipcc (the ~/Library/ folder is actually hidden – you may unhide it by holding the option/alt button on the keyboard while clicking on Go in the menu bar).
If it is there, copy it onto your Desktop and go to Step 2. If it is not, you may try to perform an OTA upgrade of your carrier settings followed by a backup to iTunes. Open Settings, then tap General, then About, and wait for a prompt. If it appears, upgrade. If not, bad luck! If you find a way around this problem please post a comment with a description. Thank you!
Step 2 – Make a backup to iTunes. Use iCloud if you are comfortable with it (I prefer the good ol’ fashioned over-the-cable backup). Be aware that you will not be able to go back to the original written carrier name unless you restore your iPhone (to be avoided if possible once iOS 6.1 comes out if you want to jailbreak it “someday”). You will, however, be able to change carrier logos (or other custom images) as often as you like.
Step 3 – Instruct iTunes that you want to side load your own carrier bundles (by default iTunes will not let you). First, make sure you quit iTunes. Then open Terminal and enter the following command:
defaults write com.apple.itunes carrier-testing -bool true
Step 4 – Explore the .ipcc file you have copied onto your Desktop. Change the extension from .ipcc to .zip and unzip the file. This should place a folder called Payload on your Desktop. Inside the folder you will find a file called [carrier's name].bundle. Right-click on the file and select Show Package Contents. You should now see a long list of files.
Among this list you will find 4 files that are important to us. Two of them are .png image files (FSO_***.png and TS_***.png) for the carrier logos. The other two are Info.plist and version.plist.
Step 5 – Make two carrier logo images. Search for and download or design two .png image files: one for a black/translucent/tinted status bar, and one for the notification center linen status bar (N.B. if you ever made images for Zeppelin you will notice that you no longer need to make an image file for a silver status bar). They should have a maximal height of 40px. From my personal experience here are my recommendations when choosing / making these .png files:
- make the height of the images 40px, but limit the height of the logo itself to maximum 32px.
- try to limit the amount of color to a minimum on both images, but especially the one made for the tinted status bar; I highly recommend making both images in greyscale only.
- from previous experience making Zeppelin carrier logos, I remembered that for some reason the logos are not perfectly centered between the signal bars and the 3G/LTE/WiFi icon. If you are a perfectionist, you can add exacly 11 columns of transparent pixels to the left of your logo to even it out.
Save the carrier logo image for the black/translucent/tinted status bar as FSO_email@example.com (copying the name of the file previously found in the [carrier's name].bundle package, but adding “@2x” to the end of the name), and similarily, save the carrier logo image for the notification center linen status bar as TS_firstname.lastname@example.org. Copy both files to the [carrier's name].bundle package.
Step 6 – Update the Info.plist and version.plist files version numbers. First open Info.plist with Xcode and change the “Bundle version” and “Bundle versions string, short” to a new version that is higher than current (eg. 13.1/13.1.0 to 13.1.1). Make sure you enter the same new version number in both fields. Save the file.
Next open version.plist with Xcode and change the “CFBundleShortVersionString” and “CFBundleVersion” to the same new version as done in the Info.plist file. Save the file.
Step 7 – Prepare the new .ipcc file. Make sure the newly modified [carrier's name].bundle package is still inside the Payload folder which should be sitting on your Desktop. If so, right-click on the Payload folder and select Compress “Payload”. This should make a Payload.zip file. Now right-click on this compressed file and select Get Info. Under Name & Extension change it to [whatever you want to call it].ipcc. Make sure you use the extension .ipcc. For some reason I don’t understand, you need to do this step via Get Info as opposed to directly on the Desktop or else it won’t work. Great, you should have a file called [whatever you want to call it].ipcc on your Desktop. One last step…
Step 8 – Side load your own carrier bundle onto your iPhone. Open iTunes (iTunes 11 is a beauty, ain’t she?) and on the iPhone page, while holding the option/alt button on the keyboard, click on “Restore iPhone…”. Find the [whatever you want to call it].ipcc file (on your Desktop) and select it. For a short time a pop-up window will inform you that it is Updating iPhone Carrier Settings… et voila. All you have to do is reboot your iPhone and enjoy.
Some extra info…
If you want to change the carrier logo again, just replace the .png files and update the Info.plist and version.plist files to an even higher new version.
If you restore your iPhone or upgrade to new iOS version, your carrier logo will restore to the written name of the carrier and you need to redo this whole process again.
Oddly, the carrier logo reverts to the old written form when using the Apple Maps application (but not the Google Maps app). Unlike many if not most iOS 6 users, I really like Apple Maps, and this must be the first bad thing I hold against them.
Lastly, if you live in Australia, Beau has made .ipcc files for Telstra, Optus, Virgin (Australian carrier only), and Vodafone (Australian carrier only). They can be downloaded from his post and all you have to perform then are Steps 2, 3, and 8. Lucky us!
I hope this was helpful and your iPhone now displays your own custom carrier logo. Please do not hesitate to contact me with feedback, comments, bug reports, or demands for further clarifications.
Many thanks to Beau Giles for his fantastic work. I highly recommend you go and read his posts:
@Pix3lDemon has posted a YouTube video based on this post. Check it out:
@Pix3lDemon and a friend of his have converted this tweak into an easy-to-use application for Mac (
sorry Windows users. I actually feel sorry for you… just ever so slightly not anymore > see Update 3!). It is called Carrier Editor and you can download it from here.
Wow, things have really took off since I published this post (it’s bizarre that noone picked up Beau’s post written over 3 months earlier!). First, CarrierEditor for Mac (see Update 2), and now CustomCarrierLogo for Windows. I have no way to test and describe how to use it, but it seems to work (judging by comments made on different forums/blogs). Here is a video about it: