Article History

Choosing a mobile phone

I got my first mobile phone in early 2009 and now over two years later, I have my second. I'm collecting here my thoughts that went into choosing them. Maybe people will find it interesting.

First

Considerations

I originally thought that I would need only a very simple (and cheap) mobile phone. But early in my considerations I happened to be looking at GPS receivers on eBay. I came across these things called Bluetooth GPS receivers, with no display or human interface at all. They use the “Serial Port Profile” (SPP) to provide the stream of NMEA 0183 data to a host wirelessly, just as if they were connected by a serial (RS-232) cable.

This was a very attractive idea. It meant that with some software and map data, my phone could also be a GPS navigation device. While many phones also have built-in GPS receivers, it turned out cheaper this way. And it is more flexible since it's a separate device. I can buy a new unit with a brand-new GPS “engine” that has an insane number of channels, instead of the piddly 16 or 20 channel units often used. I can upgrade it later. I can leave it at home when I don't need it, or use it with my home computer.

So once I had focused on this application for my future phone, I then had to find out precisely which features it needed to make it possible. I dived into the world of J2ME, the standard that allows Java applets (or “MIDlets”) to be run on mobile phones and other portable devices. To cut a long story short, the answer is two optional API's defined by Java Specification Requests - JSR-75 and JSR-82.

JSR-75
PDA Optional Packages for the J2ME Platform. Provides access to PIM data, as well as direct file access. This is very important for reading map data. Without this, a MIDlet can only access file data stored in its JAR file (which often has size limits) or abstract records in the Record Management System.
JSR-82
Java APIs for Bluetooth. Obviously this is necessary for talking to the GPS receiver.

Alternatively, JSR-179 provides location information on devices with built-in GPS receivers.

Beware - Many phones claim to feature “Bluetooth” without supporting JSR-82. Presumably, these phones simply support using a hands-free headset or other device without providing full Bluetooth access to Java MIDlets.

Information about the Java API's supported by different phones can be found at the GetJAR and Mobile Zoo web sites. See the external links section.

Requirements

So I ended up with these requirements:

Fairly early on I chose to avoid 3G handsets for a number of reasons. While 3G would allow fast and cheap downloads from the internet, it is still a relatively new technology and my network of choice (Vodafone) has had no 3G coverage around Bathurst. Many 3G handsets listed separate ‘talk time’ measurements of battery life for use on GSM and 3G networks, with 3G often much shorter. In a few years I'll probably upgrade; by then the 3G networks and handsets should be more mature.

Update: Only a few months after getting my phone, Vodafone Australia announced that their 3G coverage will expand greatly by the end of August to cover everywhere they currently have GSM. So the 3G coverage issue is gone now. Along with my hands-on experience, this makes me much more eager to upgrade. Maybe late 2010 for a 3G phone.

Final contenders

Good:

Acceptable:

In the end I chose the Nokia 5220 because it was available new, reasonably well priced, and did what I wanted to do with it.

Second

I'm quite happy with the first phone I chose. But I now have some real-world experience that will drive my decision when I get a new phone, in early 2011.

Late candidates and schedule

It's the beginning of 2011 now and as I prepare to replace my almost-two-year-old phone, I have recently switched to the Android camp. A major reason for this change has to do with all the attention Android has received and my growing discontentment with Nokia and its ecosystem e.g the Windows-only Symbian SDK versus the cross-platform Android SDK.

I had been looking around at Android phones for a little while, but almost everything that looked interesting was out of my price range. I became interested in the CyanogenMod alternative firmware - it seemed to offer lots of end-user enhancements. It's only available on a certain list of phones, and again they all seemed a little pricey. In early December 2010 I tried using eBay to find some cheap Android phones. I found cheap phones alright, but they were all too simple. Some weren't even 3G!

I went back to the CyanogenMod list of phones to see if I missed any and saw the list of "unsupported devices". There was an entry for the LG GW620. I had seen this on eBay but had dismissed it because it only came with Android 1.5. Quite old! But some hackers at Open Etna have gotten Android 2.2 running on it (mostly). Looking at its specs it started looking more appealing - a hardware keyboard, HVGA (320×480) screen, Wifi, GPS, etc. And best of all, it was only AU$240! I was sold. My only concerns were with the resistive touch-screen and possibly under-powered CPU (528 MHz ARM11-compatible core in a Qualcomm chip).

Over Christmas I got to play with Glenn's LG phone, which has a resistive touch-screen (and some terrible OS), and Scott's HTC Wildfire Android phone which he had bought only a month or two earlier. All the playing around on Scott's phone, installing apps, etc that I did made me think that a capacitive touch-screen is much better than resistive. So I went looking for another Android phone with a hardware keyboard, capacitive touch-screen, and preferably a more powerful CPU. What I came up with was the Motorola Milestone (DROID in the U.S.). It has a much larger screen (854×480) and better CPU (600 MHz Cortex-A8 core, OMAP3). The only downside is that for some reason Motorola chose to try locking down the software, requiring a signed bootloader or similar. Of course, that's been cracked now, rendering their effort a waste of time and allowing third-party firmware (like CyanogenMod) to be loaded.

But it's currently available for around AU$400. That's a little pricey for me at the moment. So the plan is to wait a month or two and see how the price comes down. By that time I should also have saved up enough money. And I may have found a different phone too. I'll have to wait and see...

14th January

Vodafone's having some public problems - people claiming bad coverage and suing them, and in the newyear they had a database breach involving people's information being sold. So now I‘m wondering if I should change network. In particular, I’m wondering if I should change to Telstra. I‘ve hated that company for many years but if it’s finally being split into retail and network parts (as it always should have been), then maybe my moral objections will disappear. Telstra has the best coverage with their NextG network, but it uses the 2100 and 850 MHz bands for UMTS/HSPA. Everyone else uses the 2100 and 900 MHz bands. That will affect my phone choices. There is a North American version of the Milestone (apart from the CDMA2000-based DROID) that has a 2100/850 MHz radio, but it's a little rarer than the 2100/900 version that I would use on Vodafone or other networks.

So I guess this is a decision I have to make during this waiting period.

27th January

The situation with the eFuse lock-down is not as “cracked” as I first thought. After reading a discussion on Slashdot and re-reading some other material it seems that the “rooting” is mainly about gaining root access to the system. All of the alternative “Roms” are just the userspace part of the system — the bootloader and (more importantly) kernel are still the signed ones provided by Motorola. I saw one comment on a forum asking about using the “brasil kernel”, presumably the latest (signed) kernel from Motorola is/was in an update for Brazil. Everyone's eagerly awaiting the release of Android 2.2 for the Milestone in order to get the updated kernel signed by Motorola.

While I don't like this situation, I think it is one I'm going to have to accept. I really want a phone with a hardware keyboard but such a thing is strangely very rare in the otherwise diverse Android smartphone market. One way of looking at it is to say that I currently value the keyboard more than the ability to run any kernel I or someone else might prepare. That value may change in the future however, which is something to consider. What might I want to do (or could be done) with the Milestone in another 2–3 years? Or 5 years? Will I simply throw it away (broken?) or would I want to do something with it? And would I really need to update the kernel if it already supports the hardware?

12th February

Nokia's teaming up with Microsoft to make WP7 phones — not that surprising after they chose an ex-Microsoft executive as the CEO late last year. This certainly removes any niggling doubt I had over whether to get a Nokia phone after all. Android 100% now!

21nd February

Won an eBay auction for a second hand (six month old) Motorola Milestone.

Third

I have mixed feelings about the Milestone. It is a good phone, but its two biggest problems are the limited RAM (256 MiB), and locked bootloader. With a fair amount of tweaking, and remembering not to do/use certain things, Gingerbread (Android 2.3) is very usable. But the amount of RAM limits the number of things I can have running at the same time. I should have paid more attention to this attribute when selecting this phone.

And having a locked bootloader is limiting in many ways. It means we‘re stuck with the kernel(s) that Motorola provides. If we could build our own kernels, we could enable swap and/or compcache and the limited memory wouldn’t be such a problem.

So I will cut the upgrade time on this phone a little shorter than the previous two years. I'll be looking for a new phone sometime in 2012 — certainly by the end of it and maybe even sooner. It depends on whether anything pops up that I feel I could really do with, and of course my money situation.

Desired features

Is there any doubt that my next phone will also be running Android? Meego is pretty much dead, with still no devices launched. And WebOS from Palm/HP has failed in the marketplace. And even if something new does pop up in the mean time, I'm unlikely to feel confident about buying a device with such an untested software stack.

Candidates

It's September 2011 and I don't really have any candidates in mind for this next phone. But going over that list of desired features I realised that the HTC Sensation that Mum got last month does satisfy many of them. It doesn't have a keyboard and is quite expensive since it's so new. I don't think I would have settled on it, but it's something to keep in mind.

Final decision

After much searching and changing my mind, I kept coming back to the Motorola Atrix. Yes, there are issues for it, but it seemed to promise a lot more than the others and the price was good. So on March 25th I ordered a “parallel imported” Atrix, which arrived on June 2nd. I unlocked the bootloader within an hour or two and have run custom CyanogenMod-based ROMs on it ever since. In June I switched to a CM9-based (Android 4.0-derived) ROM, even though it'll be another few months until Motorola releases their official ICS ROM.

Fourth

Some early thoughts.