OpenMoko's OM2008.9 for the Neo FreeRunner
The OpenMoko project recently released a much-needed update to the official software stack of the Neo FreeRunner. I've had a FreeRunner for a few months and during that time I have used it to run everything from Debian to Qtopia (now known as QT Extended), so when OpenMoko announced the OM2008.9 update I eagerly upgraded to see what it had to offer.
(This is a short review of the recently released OM2008.9 software stack. For a full evaluation of the Neo FreeRunner please read my review in the upcoming December issue of Linux Journal.)
The first thing I noticed when booting the FreeRunner into OM2008.9 was the shiny new boot splash screen. Previously one had to watch two to three minutes of kernel messages scrolling down the screen before arriving at any sort of GUI. For us geeks this not only was cool, but sometimes even useful. However, whenever I showed the FreeRunner booting to my plebian friends it always evoked the same sort of "WTF?" bewilderment. Adding a simple splash screen for the boot process is one of those little things that actually adds a lot of polish (even if it simply displays a pair of boots, as it oddly does).
Once the GUI was started and the FreeRunner is ready I noticed the nice icons on the home screen. The icons are bright and colorful, although not necessarily indicative of the functionality they represent. By default there are only 6 icons: Contacts, Dialer, Locations, Messages, Settings, and Sudoku. These are icons for applications that run on OM2008.9. More applications can be added with the built-in Installer that is shown at the bottom of the screen.
The Standard Applications
The Contacts application is simple enough and offers barebones contact management features. It is sometimes a little buggy, although the biggest drawback is having to use the default keyboard to enter information (more on this later). If your contacts are already stored on your SIM then OM2008.9 can access them directly from the card, even without importing.
The Dialer application hasn't evolved much, and is still a little tricky to use. There is a little red "X" square in the keypad that one would think deletes the previous digit that was entered. Instead, pressing this key quits the Dialer, which can be rather frustrating. The key for deleting digits is displayed in the menu at the bottom of the screen, where you normally quit an application. Otherwise, the Dialer is mostly what you would expect.
The Locations application takes advantage of the FreeRunner's GPS capabilities to display your current location on a worldwide map. This is neat, although at this point it appears to be nearly useless. I'm sure the developers have plans for this application, as we have seen that mapping applications can be quite powerful.
The Settings application is used to configure your preferences, as one would expect. Although the interface for this has improved quite a bit, it still is rather limited. I was excited to see a new, simpler way to join WiFi networks. However, after trying (unsuccessfully) to join several networks I became suspicious. As it turns out WiFi support is just one of the many known issues in OM2008.9.
Areas for Improvement
One major area that OpenMoko still has plenty of space to improve is in call quality. Calls made with OM2008.9 are muffled and hazy, both to you and the person on the other end of the line. For a device that is marketed as a phone it should be very important to make sure that calling works very well. Also, the FreeRunner lacks a hardware volume button, which can be quite frustrating when the noise in the environment around you changes.
Most of the time I used the FreeRunner's stylus when reviewing OM2008.9, but often it would be more convenient to just use my finger with the screen. I found that several parts of the OM2008.9 software respond differently to touch than to the stylus. For example, in Settings you have to scroll down the page to see the items at the bottom of the list. This works fine with the stylus, but when using a finger the Settings application tends to select an item from the list rather than scroll. I do not know how hard this problem is from a technical standpoint, but it certainly would be nice if the software could respond to input from a stylus and a finger consistently.
Another area that could use improvement is the battery life. Even when the FreeRunner is idle, and both WiFi and GPS are disabled, I was only able to get about 6-7 hours of battery life. I know this is probably not a focus for the OpenMoko team, but improvement here would definitely encourage people to use the device as a fulltime phone. It is unlikely that anyone will be willing to carry a phone that only lasts for 6 hours. On a related note, the phone sometimes stops charging, even when plugged into the charger, leaving you with an unpleasant surprise when you need your phone.
There are tremendous improvements in the UI from previous versions. Although at times it lags a little, for the most part the interface is quite snappy and responsive. Having said that, there are two particular interface elements that could benefit from more work. First, there should be more progress meters. For example, when attempting to join a WiFi network the UI gives no indication of its progress, seems to finishes immediately, and provides no way to tell if you have successfully joined the network. In this case a simple progress meter could set expectations for the user and can ease some frustration.
The second UI element that needs work is the error message dialog. These messages pop up to convey some message about the status or output of an action. Although the text of the message is there, the background of the dialog is transparent. The text is often overlayed on the background screen, making it difficult to read and especially hard to dismiss the message.
But, of all these issues, none compared with the pain of using the default keyboard.
The Dreaded Keyboard
My biggest complaint with the OM2008.9 stack is the default keyboard. At first it appears to support only the standard 26 characters in lower case. I had to research the keyboard to learn that other characters are revealed by flicking the onscreen keyboard upwards. The keyboard is extremely unintuitive and rather difficult to use. For example, to enter an email address you must type the first characters, then flick the keyboard up two screens to enter the @ sign, then flick the keyboard back two screens to enter the domain, then back two screens to enter the period (.), then back two screens to enter "com." This process is anything but quick. The keyboard home screen has plenty of space to include a few common characters such as the @ sign, dash, period, question mark, and a shift key (the uppercase characters are also listed on a separate screen that you must switch to).
The keyboard is such a critical piece of any mobile device and it really needs to be easy to use and understand. The space limitations that mobile devices place on keyboards is well known, and mobile software vendors continue to create interesting solutions to the problem. The OpenMoko team needs to make sure to get the keyboard right.
Do you remember the state of Linux in late 2000 and early 2001? The 2.4 kernel was about to become officially supported, KDE 2 was almost ready to go, and companies around the world were making headlines by adopting Linux. At the time it seemed like Linux was "almost there." At any day your Grandma would be using Linux. Well, that's how I now feel about OM2008.9 on the Neo FreeRunner. It's getting closer, and people are working very hard to make this this thing ready for prime time. As a phone there is still some work (ok, a lot of work) to be done before your Grandma will be making calls with it.
However, as a Linux device the FreeRunner is really quite amazing. That is what I cover in my upcoming article about the FreeRunner in the December 2008 issue of Linux Journal. You'll see everything I learned about the Neo FreeRunner in the months that I used it, and even how to run Debian on your phone.
|Dynamic DNS—an Object Lesson in Problem Solving||May 21, 2013|
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
|Non-Linux FOSS: Seashore||May 10, 2013|
- Dynamic DNS—an Object Lesson in Problem Solving
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Using Salt Stack and Vagrant for Drupal Development
- New Products
- Drupal Is a Framework: Why Everyone Needs to Understand This
- Validate an E-Mail Address with PHP, the Right Way
- A Topic for Discussion - Open Source Feature-Richness?
- New Products
- Download the Free Red Hat White Paper "Using an Open Source Framework to Catch the Bad Guy"
- The Secret Password Is...
3 hours 38 min ago
- Keeping track of IP address
5 hours 28 min ago
- Roll your own dynamic dns
10 hours 42 min ago
- Please correct the URL for Salt Stack's web site
13 hours 53 min ago
- Android is Linux -- why no better inter-operation
16 hours 9 min ago
- Connecting Android device to desktop Linux via USB
16 hours 37 min ago
- Find new cell phone and tablet pc
17 hours 35 min ago
19 hours 4 min ago
- Automatically updating Guest Additions
20 hours 13 min ago
- I like your topic on android
20 hours 59 min ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?