MMS working on iPhone 3.1 Firmware!

I remember how everyone was all excited when the original MMS/Tethering hack for iPhone 3.0 came out (although 2G iPhone users must use this tutorial ). I thought it was a great way to kinda get back at AT&T for all the issues they’ve been giving us about making these things active.

However, with the new 3.1 firmware, many of the people who had MMS/Tethering working have lost the functionality of both. I know a few cases in which people still have access to both, but they are few and far between. Luckily, there has been a way to get at least MMS back and running, without jailbreaking, on an iPhone (still no 2nd gen support… sorry).

The tutorial is fairly straightforward, although you must be an AT&T customer. This means any users running an unlocked phone on T-Mobile will have to wait. Sorry. In addition, no 2G iPhones just yet. To be honest, I’m not sure if this works with the iPhone 3GS or not, but if anyone has any feedback please post a comment and I’ll update this post.

Step 1: Getting things ready

To unlock MMS on a non-jailbroken phone, you’ll need to update the phone’s carrier file. This involves changing a hidden iTunes setting to allow carrier files to be written to your phone. The carrier file, ATT_US.ipcc, can be modified to allow MMS. To get a copy of the modified carrier file, click here and download it.

Next, you need to make sure iTunes is running version 8.2 or later (9.0). I have to say, 9.0 is worth the upgrade. It works well, and some of the new features, like Genius Mixes, are pretty cool. You can download the latest version of iTunes here.

Step 2: Setting Permissions

By default, iTunes can NOT modify carrier files on your iPhone, for obvious reasons. This can be fixed by a simple console command. I’ll show you how to do that in just a second.

First, however, you need to make sure that iTunes is closed. We will be modifying a hidden iTunes  setting, and if iTunes is open, things could get a little hairy.

Windows Users: You’ll need to open a command prompt with administrative privileges, also called an ‘elevated’ command prompt. If you’re on Windows XP, just go to start, All Programs, Accessories, System Tools, and click on Command Prompt. If you’re on Windows Vistas or Windows 7, click start, type in “Command Prompt,” right click the command prompt menu item, and select “Run as administrator.”

Next, you’ll need to run the following command;

C:\Program Files\iTunes\iTunes.exe” /setPrefInt carrier-testing 1

If you’re running 64x, you’ll need to replace “Program Files” with “Program Files (x86)”. Similarly, if you have iTunes installed in a folder that is different from your default folder, you should change “C:\Program Files\iTunes\iTunes.exe” to the location of your iTunes.exe.

Mac users: Mac users have it a little easier. Run Terminal, which is in the Utilities folder of your Applications folder. You can also find it easily by typing “Terminal” into the Spotlight search box (the little magnifying glass in the upper right hand corner on all recent Apple computers).

Next, run the following command;

defaults write carrier-testing -bool TRUE

Thats it. Not so bad, right?

Updating the Carrier File

You’ll need to run iTunes and plug in your iPhone next. After iTunes recognizes your iPhone, wait until it has finished syncing (or cancel the sync), then select it from the device listing menu on the left side of the window.

On windows, you’ll need to hold down “shift” and click “Check for updates” (on a mac, hold down “alt” instead). You’ll be prompted to select a file. Browse to the ATT_US.ipcc file that you downloaded earlier, select it, and wait for your iPhone to update. After it updates, it is imperative that you reboot your iPhone. When it turns back on, MMS should be enabled!

If you get it working, let me know! Post a comment, or send an MMS txt to salem[at] I’d appreciate it.