Configuring GSM phones so that data aware Java applications like gMail, UC Browser and Opera Mini can connect to the Internet is a total disaster. Opera Mini is an amazing mobile browser that gives almost any phone iPhone like Internet capabilities. But many people have trouble getting it to work. They download it from mini.opera.com, it installs without error but when they try to run it they get the error "Failed to connect to the internet". The same thing often happens with the UC browser, gMail, Picomail, Google Maps, eBuddy Nimbuzz and other mobile Java applications. Because the user can surf the web with the phone's built in browser, they clearly have a connection to the web. So why doesn't the app work? Although it's natural to blame the app, in almost all cases, it's a setup issue caused by brain dead GPRS data configuration model.
Many mobile operators who are more than happy to sell you an "unlimited" data plan deliberately put roadblocks in the way of using 3rd party data aware applications to reduce data traffic on their networks. Even setting up unbranded, unlocked phones is a hassle. Phone manufacturers do a terrible job of documenting how to configure handsets so that Java applications can connect to the network. The terminology and menu options vary from one phone to the next even from the same manufacturer.
This post is an attempt to demystify the process by explaining the concepts and providing links to sources of operator and phone specific setup information. You won't find instructions on how to set up your phone here but I'll try to point out the best resources for finding the right settings for your phone and operator.
First of all you need a phone that can run Java, meaning that it has a Java runtime (JVM) installed in firmware. Most recent GSM phones have Java, but many CDMA carriers including Verizon, MetroPCS, Cricket and US Cellular in the US use Qualcomm's BREW application platform rather than Java. There's nothing technically wrong with BREW but its security model is completely hopeless when it comes to installing 3rd party applications. The only way to get BREW applications is to buy them from your carrier, there are no free BREW applications. My advice, if you want to be able to run free, state of the mobile applications like gMail and Opera Mini, is to avoid the BREW carriers. GSM phones from most operators, CDMA phones from Sprint and iDEN phones from Sprint/Nextel and Boost Mobile all support Java.
Unlike GSM phones Sprint and Boost Mobile CDMA and iDEN handsets don't require or allow any sort of user data configuration. Java applications usually just work on these phones. When Opera Mini or another Java app installs but won't connect on a CDMA or iDEN phone, it means that packet data is not provisioned on the carrier side. There's nothing the user can do except call and try to convince customer support to escalate the issue to a data specialist who can actually fix the problem.
GSM phones, in addition to requiring provisioning by the carrier to turn on data, have many data configuration settings that all have to be correct for data aware applications to work. Having a working browser is not an indication that data is set up correctly. Many built in mobile browsers connect to a WAP/GPRS access point or gateway that doesn't provide the direct socket or http connectivity that applications need.
Just about all GSM phones support multiple data profiles, each of which is a collection of settings which can be assigned to the built in browser, MMS or applications. Different phone manufacturers call these profiles by different names. Common ones are:
Nokia: Access Points
Samsung: Browser Profiles
Motorola: Data Sessions
LG and Sony Ericsson: Internet Profiles
Blackberry: TCP Settings
A data profile contains dozens of settings, most of them optional. The ones we need to be concerned with are:
Profile Name: A user selected unique name for the access point.
APN or Access Point Name: the hostname or IP address of a switch or server within the carrier's network which routes data between the mobile network and the Internet.
Bearer: The type of connection like CSD or GPRS.
Username: often but not always blank.
Password: blank if the username is blank.
WAP Gateway IP address and port: Required with some low end and older phones.
Some carriers also require data traffic to pass though a proxy server which has an address and a port.
Proxy Address: The IP address of a proxy server.
Proxy Port: The HTTP port used by the proxy server.
There must be a data profile assigned to your applications. How this is configured varies from phone to phone. There might be a menu option within the data profile setup called Packet Data Access Point or Default Access Point or the profile might need to be set in an Application Manager's context menu or in an Options menu at the individual application level. Motorola's are unusual, Java applications will look for and use a data session named Java Session.
Your carrier or phone manufacturer may be able to push all the required settings to your phone. This is the easiest and usually the best way to configure your phone, if it's available. I recommend trying the carrier first as they should always have the most up to data settings. Check the support section of the carrier's web site, looking for "send settings to your phone" or something similar. The carrier may offer a choice of several different types of settings like WAP, MMS, Internet or GPRS Data. For applications you generally want Internet or GPRS Data if they are available and WAP as a last resort. When in doubt have all the settings sent.
Recent Nokia phones have a built in Settings Wizard containing settings for most operators. Instructions on using the settings wizard are at here.
Many times having the settings sent to your phone is all you need to get Opera Mini working. If it doesn't work with your carrier's settings try the manufacturer settings and vice versa. If Opera still can't connect don't give up. It's possible to enter the settings manually. here's how:
1) First you will need to find the right settings for your carrier and data plan. Usually they can be found on the carrier web site or by calling customer support. Many third party application vendors sites provide lists of settings for operators around the world. Some good ones include: Opera, eBuddy and Nav4All. It doesn't matter whether you are using the vendor's app or not, the settings are the same for any Java or native application. If you can't find your operator's settings anywhere else, try doing a Google search for "<Operator Country> GPRS Settings", i.e. MTN South Africa GPRS Settings.
For US users here are the current settings for the national GSM operators AT&T and T-Mobile:
APN or Access Point Name: wap.cingular
Username: <leave blank>
Password: <leave blank>
WAP Gateway IP address: 220.127.116.11
Proxy Address: <not required>
Proxy Port: <not required>
APN or Access Point Name: wap.voicestream.com or epc.tmobile.com
Username: <leave blank>
Password: <leave blank>
WAP Gateway IP address: 216.155.165.050
Proxy Address: <not required>
Proxy Port: <not required>
2) Once you have the settings, enter them on your phone manually. The process varies from phone model to phone model. The phone manual should have this information, but often it doesn't. eBuddy has step by step guides for setting up popular phone models.
Some mobile operator's sites including, AT&T, O2 and Sun Cellular also have good instructions for setting up many phones. These operator guides are helpful for figuring out the often arcane setup menus. Of course, if you are using instructions from an operator other than your own you need to substitute the actual setting values specific to your operator that you found in step 1 for the ones provided.
If you can't find setup instructions for your specific model try looking through the instructions for similar models from the same manufacturer to find one that has the same menu structure. For example all Nokia s40 2nd, 3rd, 4th and 5th edition phones have the same setup menus and are set up the same way. For obscure phone models you might have to resort to a Google search for "<phone make phone model> GPRS setup".
Note: If you have a Nokia S40 phone and your operator's settings specify a proxy IP and/or proxy port, manual set up may not work because Nokia stupidly does not provide any way to enter the proxy settings. If this applies to you try doing the setup without the proxy settings, as in some cases including AT&T and T-Mobile USA, the proxy isn't actually necessary.
If the proxy really is required, you must use the Nokia setup wizard, if it exists on your phone. or have the settings sent to the phone by your operator or phone manufacturer.
It is also possible to send the proxy settings to your phone yourself using Bluetooth. It's a somewhat complicated process and requires that your phone support Bluetooth and that you have a Bluetooth equipped computer or computer plus a second Bluetooth phone. The procedure is documented on the web at: Howard Forums, NXG and Mobilomania. I've never actually had to do this myself so you are on your own if you try this.
If you have tried everything and you still can't get it to work I recommend asking for help on one of the many mobile users forums like The Opera Mini Forum, Howard Forums, Mobiledia, Esato or country specific forums like Nairaland for Nigeria or Talk.ph in the Philippines. When using forums it's important to follow forum etiquette to avoid being "flamed". Before posting a help request, use the forum's search function to be sure your question hasn't already been answered. If you do post asking for help on a forum be sure to give as much information as possible including, make and model of phone, carrier, country, the name and price of your data plan and the exact text of any error messages.
You can also leave a comments on this post if you get stuck. I try to answer as many questions as possible. I'm not able to answer questions about settings for specific operators or phones as I do not have them. Comments asking for operator or phone settings will be ignored. You need to do your own research using the resources in this post.
Please don't ask me for "cheat" codes or other ways to enable free browsing. Comments asking how to browse for free will be deleted.
Last Updated: 15-Mar-2012 - fixed some link rot.