OpenMoko Neo Freerunner - Part 1

Sun Jul 27 21:26:00 -0700 2008
manage

Openmoko, born as a Free Software project under  GPL and LGPL license, is dedicated to delivering an open software stack on mobile platforms. Openmoko shipped its first product, the Neo 1973, on July 9 2007; and then turned into a start-up company with one aim: create great mobile products using the Openmoko stack: Open. Mobile. Free.

The first Openmoko product, the Neo 1973, sold exclusively through Openmoko Online Shop. It sold out in early February 2008.

Openmoko started selling the Neo FreeRunner (GTA02), the second generation of Neo, on July 3, 2008. It is available through the Openmoko Online Shop or national distributers.

I received my FreeRunner as part of the first batch of orders shipped on July 7th.  I've now been playing with it for 10 days and these are my impressions.

First, a caveat.  The first model phone was sold only as a development model.  People were told flat out that it was in heavy development and not for every day usage.  The second model, the FreeRunner, was going to be the model for general release.  As things dragged on and the hardware was finalized, they realized that while the hardware was done, the software was still beta.  Because it had already been delayed over a year, the decision was made to release it anyway with the warning that the software was close, but not finalized.  Glitches are to be expected, but development is progressing rapidly and for basic functions the phone is good enough.  I knew that going in.

For those of you unfamiliar with the Neo phones, the idea was to make a truely open phone "from iron to eyeballs".  All the software is GPL or LGPL; the CAD files are available under the Creative Commons ShareAlike license; specs for the chips are available online.  Hell, for an extra $99 you can get a debug board with JTAG, serial and phone access via USB.  Full hardware specs are online.

The only "non-free" issues are the GPU and GSM chipset.

The GPU is an Smedia Glamo 3362.  Originally when this chipset was chosen there was a tacit agreement with Smedia and OpenMoko to get full specs available.  Well, something fell thru and Smedia backed out.  No real specs and no real hope of getting them.  However, never tell a dedicated geek they can't figure something out.  Work is being done by people to reverse engineer the API, and discussions are ongoing about whether or not to replace the chip in future revisions of the phone with something properly documented.

The GSM chipset is the Calypso by Texas Instruments.  Full documentation is only available thru a tight NDA.  However, back in March persons unknown leaked the full specs over to Cryptome.  Links to the specs are on the OpenMoko site with a warning about the possible legality of development if you read them.  It is also possible that GSM hardware can never be legally open.

Now, on to the review!

The OpenMoko wiki has pictures galore, so I'm not going to be posting any here.  Their photography is better than I can do and it is 100% accurate.

First off the phones are sold without SIM cards.  They use GSM networks, so that means AT&T or T-Mobile in the U.S., or one of their regional partners like Centennial.  I've been using an AT&T Wireless pre-paid SIM and it worked without a hitch.  There have been some sporadic reports of SIMs that don't work.  I'm not familiar with the details because the five I've tried -- all AT&T, some prepaid and some contract -- worked fine.

There are three main distributions for the Neo phones: the 2007.x series from OpenMoko; the ASU series from OpenMoko; and QTopia Phone Edition from Troll Tech.

The 2007.x series (2007.2 shipped on the phone) was the first development platform.  It is really Gnome Mobile and based on X/GTK+.  While it shows promise, it is fairly far behind the race in development.  IMHO it looks like Gnome 2.22 squeezed down to mobile size and it doesn't quite fit.

The benefits are that pretty much any Gnome/X/GTK+ program can simply be cross compiled and it works on the Neo.  One excellent example is TangoGPS.

The drawbacks are it is really not that stable and is slow as molasses.  To be fair it is development code and a fair amount of debugging code is still in there.  It also hasn't had any real optimization, yet.

However, it is reinventing the wheel, and the devs know it.  The Gnome Mobile version is being depreciated for ASU.  More on that in a minute.

The third version in Trolltech's (now a division of Nokia) QTopia Phone Edition.  This is a phone-targetted version of QT that writes directly to the framebuffer and doesn't use X-Windows.  It is also a fully mature product, used in dozens of devices.  All the heavy lifting is already done: GSM, GPS, Dialer, Messages, E-Mail, Contacts, Media Player, Calendar, etc.

If you want a phone equivalent to what you would get from one of the big boys, then install the QTopia image.  It does almost everything by itself, and does it well.  It is also fast and designed from the ground up for phones and small-screen devices and it shows.  Power management and memory requirements are good.

By "almost" I mean it doesn't come with a built-in web browser or GPS/mapping application.  The only bugs I've bumped into is that it doesn't seem to like my home WiFi network (WPA2-PSK/AES) and occasionaly media player will play a song at 3x speed.  The first time I encountered this it made Black Sabbath's Iron Man sound like it was being performed by Alvin and the Chipmunks.  It was...disturbing.

Other than that, it is rock solid and easy to use.  The main drawback is no X-Windows.  Programs have to be modified to use QT/Framebuffer to run.  KDE developers will feel almost right at home.

QTopia isn't officially part of OpenMoko.  It is developed and maintained exclusively by Trolltech.  Yes, it is GPL so feel free to do your own thing, but development of the core is pretty firmly controlled by Trolltech (Nokia).

Their model is different.  QPE (QTopia Phone Edition) isn't designed to be shipped as it.  It is sold to customers who use it as a base, customize the hell out of it THEN ship it on their phone.  Sort of like Debian vs Ubuntu.

That is why there is no included GPS/Mapping program or web browser.  Usually the phone handset makers have licensed something like Opera Mobile.

Now, back to ASU.  That stands for "April Software Update" and is an admission that Gnome Moble isn't the best way to go.  Why reinvent the wheel when the GPL/LGPL licenses allow you to take from the best of both worlds?

The ASU takes QTopia on X11 and adds GTK+ and Elightenment and ties it all loosely together with DBus.  Unfortunately there is no integration between the elements.  If you want to integrate with the phone components, you're back to C++/Python and QT, not C on GTK+.

If that isn't enough, the FSO Stack, also known as the Openmoko Framework initiative. This one is called FSO, because it’s an implementation of the freesmartphone.org APIs.

FSO has been started to overcome the deficiencies both of the 2007.2 and the ASU stack, namely to come up with an extensible framework that gives developers the infrastructure they need to create solid and exciting software products based on the Openmoko platform. An infrastructure that supports competing UIs while we can collaborate on developing services, making the framework strong . Here, the focus is on stable highlevel services that you can access from whatever language or UI that supports dbus.

Of course there is always whispers of Google's Android coming to the FreeRunner.

If all that confuses you and makes you think "just shipped and already distribution wars have started", you're not alone.  IMHO, the version that ships on the phone, 2007.2, is already pretty much abandoned.  The main devs are working on ASU and FSO, neither of which is stable enough for reliable, every day use.

The good news is you can install two distros on the phone -- on in ROM and the other on a microSD card -- then multiboot.  I currently have QTopia and ASU. The bad news is booting the Freerunner takes just slightly over 2 minutes from off to useable.

There are two different hardware models.  One is for the U.S. and supporting 850/1800/1900 MHz and one for Europe supporting 900/1800/1900 MHz.  Yes, the chipset is the same, but due to some design decisions (flaws?) it can only be used as a tri-band even though hardware supports quad.  Maybe this will be changed in the future, maybe not.  I got the impression it is a sore subject on some of the lists.

You can purcahse the New FreeRunner from their online store or regional distributors in the U.S., Canada, Germany, India, Poland, the U.K., France or the Czech Republic.  Cost is U.S. $399 with discounts for multipacks.  I paid $375 including shipping as a member of a buying group for one of a 10-pack.

The reports are sales have far exceeded expectations, as a couple of Universities purchased large bundles for use as development and educational tools.  When the online store opened on July 3rd it sold out of everything in stock by July 4th. More batches have arrived and distributors have phones.

I passed the phone around my office, as new phones seem to be popular and everyone wants to see what everyone else has. Currently people have a mix of Treo's, Blackberries, Windows Mobile PDAs and one or two iPhones. The general consensus on the hardware and appearance was "very nice".  Several people complimented it on the shape, screen appearance (very sharp) and heft.

On 2007.2 the opinion was uniformly along the lines of "is this really usable?" and "are you insane?".  "Dog slow" was mentioned, as well as "what do these icons mean?".  Gnome Mobile's choice of icons aren't what I would always call intuitive.

It was the exact opposite with QTopia. "Nice", "snappy" and "lots of features" were said.  Many people -- except the iPhone guys -- like the look.  However, even the iPhone guys were impressed when I connected to the WiFi link in the office and used the VNC applet to remote to their desktop.

I haven't had a chance to fully test the e-mail, calendar, tasks and syncing.  I'm planning on doing that this coming week and posting an update in Part 2 next weekend.

All said and done I really like the phone.  And, like the main devs, am hesitant to call it a "phone".  It is really a handheld Linux computer that happens to have GPS and a GSM phone built-in.  After all, the first thing I did when getting the phone back home was plug it in via USB to my PC, SSH in and run "opkg update && opkg upgrade" to make sure it was up to date.  :-)

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 00:48:32 -0700 2008
manage

Yep, once they get the bugs worked out my current cell contract will be up and then I'll be basking in freeness.

I'm curious about android though, is the only way to get it on the phone through the third party reseller or can you DIY?

I think I'm getting old since bleeding edge just doesn't appeal to me that much anymore...

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 01:48:45 -0700 2008
manage

So essentially the OpenMoko is a portable sub laptop sized computing device with wireless comms as default...

I really can see this thing selling to universities, as the price point puts it smack in the ballpark with all the hardware development kits that you can buy.

I really can see this thing selling to the likes of Charles, who has the time, skill and aptitude to play with it.

But, there is a vast x86 linux share out there who neither want to use it for development nor do they want to play with it, rather they install Linux because it is cheap and fast and stable, this laptop for instance, sure, now and again I'll run Synaptic, but mainly it just gets used, mainly the OS and apps drop below the concious horizon and I just use it.

Same with the old "brick" nokia, most people just want a phone, just like most people "just" want a computer, but instead of being a cheap option this works out at iphone numbers for cost, eye watering.

Maybe they missed a trick here by producing a mobile computing device instead of a mobile phone.

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 07:15:11 -0700 2008
manage

They didn't miss a trick because the cost of the phone is the hardware.  Cost of the OS, even Windows Mobile, is usually a couple of dollars per phone.

There are already lots of "just a phone" phones that run Linux, most people just don't know it.  Those are just the QTopia ones.  There are others as well.

The trick is the "fast" part.  Perceptions change because of expectations.  What is considered "fast" on a PC is dog slow on a cell phone.  If it takes more than just a blink on the phone, it is slow.  But, a 5-7 second startup of an app on a PC is considered fast.

Getting something to go fast on a smartphone takes serious effort.  And by fast I mean app startup time, since almost every other action is user input constrained.

Hmmm...I wonder what the possibility is of just making a phone with 4 Gb of RAM then running everything all the time.  Just task switch between always executing apps.

Oh, and for the record, playing an MP3 or Vorbis file consumes about 35-40% of the CPU.  Yes, the phone multitasks and if you want to consume battery power like it is going out of style, power on the GPS, bluetooth and WiFi, then play music in the background while you fiddle with the other stuff.

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 02:04:26 -0700 2008
manage

A small tech nitpick: The only "non-free" issues are the GPU and GSM chipset -- and the GPS chip. I don't know about the Glamo, but the GSM and GPS chips are heavily regulated and don't (can't?) exist in truly open forms but, given that they come with full documentation, that's as good as it can possibly get (yes, there's the 'ahem' about the GSM docs).

My main question is, is it useable as one's primary everyday mobile phone? I am very much confused about this even though I follow a number of the OM lists, and it's the reason why I chose not to participate after all when the group purchase was being realised. Instead, I'll buy it when I'm sure I can ditch my lousy-but-at-least-working Nokia. I know the advanced stuff, the PDA gadgetry, is farther off, so I'll decide later on whether or not I can let go of my beloved Palm T3.

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 03:30:30 -0700 2008
manage

define "usable".

 

I've been using the 2007.2 image on my neo1973 since the neos came out.

 

At times, there have been interesting bugs. and its actually gotten slightly MORE broken as time goes by, and the software gets more abandoned.

for instance:

for the whole time i've had the unit, its taken somewhere between 3 and 9 reboots for it to associate to the phone network. this has gotten slightly better over time, as it really seemed to be a combination of two bugs, one having to do with antenna power, another with association.

when i first was using the unit, it would only use a tiny pair of speakers to play a ringtone, and for the first month or so, would not ring at all! it was rock solid stable, and i could have weeks of uptime without issues, as long as i ventured no-where without a usb cable, to charge it. 6 hours of standby if you're amazingly lucky. it also defaulted to having both bluetooth and GPS turned on, draining the battery.

i documented how to replace the ringtone, but the system insists on playing the ringtone once a second, irreguardless of how long your ringtone is. overlapping your ringtone as its playing, and generally sounding like a trainwreck. despite reporting this issue to developers multiple times, and even hunting down the line of code involved (but not writing a patch, a little more involved than i'm able to be), this issue still exists to this day.

with a recent build on the unit, much of that is different. uptime is measured in 2-3 days, after that, a memory leak takes the phone's ability to receive calls, and reboot out. the ringtone now plays through loud speakers. and i do mean LOUD. now my trainwreck can wake the neighbors.. association is better than it was when i started, due to the antenna power issue getting fixed.. and the gps and bluetooth default to turned off. the icons have gotten a touch nicer as well, including a 'low disk space' icon.

its a telling sign when the people who know me know the bugs on my phone, and why they can't get ahold of me. oh well. its a cheap price for freedom.

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 04:19:23 -0700 2008
manage

define "usable"

us·a·ble [yoo-zuh-buhl] –adjective
1. available or convenient for use
2. capable of being used

:-) Sorry, couldn't resist.

Perhaps I should have said dependable. I would not mind at all if the Freerunner would have no pim apps beyond a simple phone book, no gps, no pda features, perhaps not even an sms feature -- but would be stable with the remaining features, essentially make/receive plain phone calls. That is, be able to stay on for at least 48 hours in standby mode, have uptimes measured weeks instead of days, and be consistently useable for the entire duration.

So is it usable? By that standard it seems it is not.

Curiously, that's a point that is neglected in every single review I've read. I'm a geek -- I already have a mobile phone and a pda -- but to replace either (and eventually both) I would expect the Freerunner to behave like or better than either device. And not necessarily now, but eventually. If not then it's just a toy, not a tool that is able to replace my current tools.

I would love to see Openmoko offer 'stable' and 'current' releases, so that they could offer a platform that is low on features but rock solid, and high on features but more a toy than a dependable tool.


OpenMoko Neo Freerunner - Part 1
Mon Jul 28 05:20:13 -0700 2008
manage

The QTopia image is perfectly usable and stable as an every day phone.

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 06:45:05 -0700 2008
manage

I didn't mention the GPS because it isn't a transmitter and is fully documented.  Considering the gov't owns the satellites, I'm not sure how much more "open" you can get without your own launch facilities.  :-)

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 04:11:24 -0700 2008
manage

This is a very one-sided review of the unit, but from what they show it isn't ready for prime-time as your one and only phone/communication device/pda.

http://www.vimeo.com/1366042

http://www.vimeo.com/1366923

I hold a lot of hope that this, and Android, can really do big things and isn't lost in the battle between Apple, Microsoft and RIM.

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 04:37:51 -0700 2008
manage

Sorry, but the 2nd video seems to be no longer available.
Sad really, as that's the one that's supposed to show the "better" UI.

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 06:38:46 -0700 2008
manage

His second video review is inaccurate.  The QTopia image will play MP3s out of the box as well as OGG, but not FLAC.

The client is really a GPL-licensed Helix DNA player and, according to the site:

The platform already includes extensive codec support, optimized for embedded devices, featuring MP3, AAC/aacPlus, H.264, RealAudio and RealVideo, AMR-WB, AMR-WB+ and Windows Media. All formats can also be streamed over HTTP or RTSP.

Yes, the keyboard requires a stylus and fairly good eyesight.  If you're big into thumb typing, you'll be disappointed.  The phone dialer is a different story.

OpenMoko Dialer and Hand Position

The dialer is fine and both my wife and grandmother have used it without issue at all.  The numbers are big, visible and easy to tap.

Tapping the * key shows the little menu you see.

My hand position show that Fayram's complaint about the location of the menu button.  It falls naturally under my third finger.  This is how I normally hold the (any) phone -- by the edge.

Switching between apps has a variable delay depending on the app.  The dialer is instant, as is the clock/alarm/stopwatch applet.  The calendar took < 2 seconds, tasks < 1 and the calculator (which DOES have number keys) took < 4 the first time I opened it.  Apps cache, so everything bigger loads in < 2 seconds the next time accessed.

QTopia clock on FreeRunnerQTopia stopwatch on FreeRunner

I should probably install the QTopia screenshot app instead of fiddling with my camera and GIMP.

And I wonder if this app or a similar one is available for the iPhone:

HP-48x emulator for FreeRunner


OpenMoko Neo Freerunner - Part 1
Mon Jul 28 14:55:14 -0700 2008
manage

I hope you keep posting your updates here with your experiences. I bought the Freerunner but haven't had much time to play, other than obligatory SSH sessions.

You mention that QTopia isn't as "free" since there are some platonic philosophers in a corporate office somewhere deciding its future (all the while putting the code out in GPL form)... but is that so much different from ASU/FSO? In both cases I have the code. The only difference is that any change I make has nearly no chance of getting into QTopia, but does it have much more of a chance with ASU/FSO... barring the requisite political open source bullying/initiation/skepticism to get that first patch in.

Finally, I'd add that the fact that Qtopia development is driven primarily by economic forces will naturally lead to better quality in the short term. In the long term, ASU/FSO will get there, but I hope it's going to be generally straightforward to developer for QTopia and then later move to FSO without much hassle. Thoughts?

OpenMoko Neo Freerunner - Part 1
Mon Jul 28 16:34:07 -0700 2008
manage

I have no argument with Trolltech and Qtopia.  I like their model and their toolkit.  In fact, one of the developers contacted me about the issues with my WiFi network and WPA2.  I've been assisting in debugging for a few hours and I'm fairly certain whatever we find will get rolled in quickly.

I should note that the FreeRunner distro is based on QT 4.3.2, and they've switched over to 4.4.  Most of the dev work is now being done in 4.4 and I expect to see a FreeRunner image based on 4.4 in the near future.

The main difference with Qtopia is the lack of X and the programming straight to the framebuffer.  All of my coding experience has been back end processing, not GUIs.  I don't know what level of work is entailed in porting code from one to the other.  I'm assuming QT/X code (like KDE) would be the easiest to move.  On the other hand, one of the big changes with QT 4 was native widgets on Windows, Linux and OS X and much improved cross-platformism.  We'll see.

OpenMoko Neo Freerunner - Part 1
Sat Aug 02 23:41:36 -0700 2008
manage

I just flashed the 07172049 build of qtopia to my FR. Love it. Read my SIM card and caught all my contacts. Pinged wirelessly in both open wifi and ethernet at home and at work. As a phone I would say basic functionality is only marred by the its greedy consumption of the battery. I can live with it though cause this phone is bad. I absolutely agree that it is a handheld computer that you can make calls on. And the extras perform pretty good too.

Thanks to OpenMoko for releasing this to the public. There is a demand and this device will only get better.

OpenMoko Neo Freerunner - Part 1
Sun Aug 03 06:15:21 -0700 2008
manage

Do not, under any circumstances, let the battery go totally flat.  With the USB charger, the phone needs to power up to start charging.  It takes 2 minutes to power up to that point.  If you can't get it to start charging, your options are now more...constrained.  :-)

TrollTech has been very responsive to my bug reports.  We've worked thru a couple issues already.  I've very pleased.