Hello fellow LUGers,
This is a follow-up to the conversation I've had with David, Trevor and
Jeff at the last RCLUG meeting. At that meeting I had expressed an
interest in getting a totally open source phone that runs bare Linux,
not Android, and David said that he was interested in that too. Well,
I've done some research on this topic, and I've got some findings which
might be of interest to others.
First, some background info. The first noteworthy point is that I am
looking for a *cellphone*, not a PDA, not a mobile Web terminal and not
a WiFi VoIP thingie. I need a phone that does two things first and
foremost:
* Make and receive plain old-fashioned voice calls on a cell network;
* Send and receive SMS aka text messages on the phone's cell number.
In other words, a plain old-fashioned cellphone, what you call a dumb
phone. But I want it to be open source so that I can make it do its
"dumb phone" function in my own unique Michael-Sokolovian manner.
There are plenty of "smartphones" out there which claim to be open
source, but no open source dumb phones that I knew of (well, read on).
Hence my thought of taking an open source "smartphone", ripping out all
the useless battery-eating "smart" features and reducing it to an open
source dumb phone.
So I had been looking into the claims of open-source-ness on the part of
various generally available "smartphones", reading people's stories
about replacing their phone's official OS (be it Android or Weendoze
Mobile or whatever) with something more hacky and unofficial, more along
the lines of what I want, and evaluating whether or not that approach
would be likely to work for me.
The central issue for me is that the only part of the phone I really
care about is the cell radio interface, the one that makes and receives
plain old-fashioned voice calls, not VoIP, not WiFi, none of that other
cheesy stuff. And that is of course the most closed and proprietary
part of any phone...
Enter the Openmoko project: www.openmoko.com and www.openmoko.org. What
these guys have made is a real phone (a real physical product) which
they categorize as a "smartphone" (although its hardware capabilities
lag behind a bit compared to what most of you would probably call a
smartphone) and which I see as being considerably more open-source than
anything that's available in the realm of "mainstream" phones:
* Rather than impose one standard distro like Android and say "you are
on your own if you want something else", they actively encourage the
buyers of their phone hardware to experiment with different distros
or create their own.
* The bootloader on the phone (U-Boot) is specifically designed to allow
easy loading of arbitrary kernel and root file system builds in a
fully blessed manner: you are NOT a "bad boy" if you do this. They've
even added extra hardware to the phone just to facilitate easy
"unbricking" if you've "bricked" your phone by replacing its U-Boot
image with something that doesn't work.
* They have published almost complete hardware schematics for the phone.
Unfortunately these schematics are redacted in that the GSM (cell
radio interface) block is shown as a black box, but even with this
redaction that is still a heck of a lot more than what's available for
any of the mainstream phones. Samsung, Nokia etc can claim all they
want that they make "open source" Android or other "Linux-based"
phones, but I've never seen even partial hardware schematics for any
of those phones. (I would love to be proven wrong on this though!)
Now on to the thorny part: the cell radio interface, the most secret and
proprietary part of any phone - how have the Openmoko folks handled this
issue? It looks like the makers of the GSM chipset they've used (TI
Calypso) have allowed the Openmoko folks to use their chipset and
provided the necessary documentation only on the strict condition that
it does NOT become part of the open source work, i.e., stays under NDA.
Unfortunately those folks seem to be unlike me in that they aren't
willing to f**k and break the NDA immediately upon receiving possession
of the ware, so they (the Openmoko.com company) have implemented a
compromise solution instead.
The compromise solution consists of sequestering the non-free part (the
GSM cell interface block) behind a well-defined interface. Specifically,
the interface between the Calypso GSM chipset and the rest of the phone
(the open source part) is a serial port that carries data traffic (SMS
and GPRS) and control commands/status in a standardized format defined
by GSM docs 07.05 and 07.07 (which are public documents), plus a voice
codec interface.
That brings us to the actual cell capabilities of this phone. First of
all, it's GSM, not CDMA: that means that users in the USA-occupied
territories will need a SIM card from T-Mobile or maybe AT&T, but not
Verizon or Sprint. That's no problem for me personally because I like
T-Mobile. However, those who like fancy data services will be
disappointed to learn that the Calypso chipset is *just* plain GSM, no
UMTS/3G, and not even EDGE. In other words, just classic cellular voice
calls (9600 bps codec), SMS (text messages) and GPRS.
I'm hoping that T-Mobile allows basic IP access over GPRS. Sure, it
would be slow as molasses (slower than land line dial-up), but remember,
I'm looking for a *phone*, not a Web surfing device. The only reason I
want any IP-over-cellular capabilities in my phone at all is so that my
phone can pull the contact list from my own UNIX server, as well as send
archival copies of all sent and received SMS messages back to the same
server. This is such a miniscule amount of data (well below one KiB)
that it should be OK even over something as slow as GPRS.
The Openmoko phone hardware (Neo FreeRunner) exists in two different
versions: one with 850/1800/1900 MHz GSM bands ("USA" version) and the
other with 900/1800/1900 MHz bands ("European" version). Unfortunately
the 850/1800/1900 MHz version appears to be unobtainium: all distributors
who actually carry orderable Neo phone hardware are located in Europe,
and they only have the 900/1800/1900 MHz version.
At first that was rather disappointing, but then I remembered my old
Motorola V66 phone. My significant other and I have just switched from
Verizon to T-Mobile a few days ago; she had been with Verizon for ages
but I used to have a T-Mobile phone before switching to Verizon to be on
the same plan with my S.O. My old T-Mobile phone was a Motorola V66, a
classic "dumb" phone. Despite being dumb and having no EDGE or 3G
capabilities, it had a basic "mobile web" browser feature, which is what
gives me hope that I should be able to get onto an IP network over GPRS
with T-Mobile.
And guess what, according to the available documentation V66's GSM bands
are 900/1800/1900 MHz, just like the "European" version of the Openmoko
phone. Unfortunately I don't have a way to test the V66 right now even
though I'm back on T-Mobile and have a SIM card: I still have the V66,
but it's dead (won't turn on and won't take charge). I've ordered
another hopefully-good V66 from Ebay, when it arrives I'll give it a
spin. But I had been using that V66 up until some time around May 2009,
i.e., only 2 y ago, I frequented the same geographic areas which I
frequent now, and I never had any problems with coverage: it must have
been working fine on the 1900 MHz band. Let's just hope that T-Mobile
hasn't dismantled that 1900 MHz GSM coverage in the course of last 2 y.
Assuming that 1900 MHz GSM coverage is still available in the areas I
care about, it seems that this Neo FreeRunner from Openmoko would be my
ideal phone. It's basically like that good old Motorola V66 with an
added Linux front-end. That Calypso GSM chipset they are using for the
cell bank-end is actually capable of fully controlling a simple "dumb"
phone all on its own, and it was the Openmoko folks who have configured
it to serve as a back-end to something else (Linux in their case) rather
than stand-alone. I don't know what chipset is inside the V66, but even
if it isn't the same Calypso, it must be something very similar in terms
of capabilities, which is why I can view Openmoko's solution of Calypso
back-end + Linux front-end as being effectively equivalent to putting a
Linux front-end on the V66 which I'm very familiar and comfortable with.
I'll be writing my own software stack for the Linux part of it.
Oh, and for those of you who like this new-fangled 3G/4G stuff, they are
working on a new similarly open phone with an OMAP processor and a UMTS
back-end - but that's still under development.
MS
_______________________________________________
LinuxUsers mailing list
[email protected]
http://socallinux.org/cgi-bin/mailman/listinfo/linuxusers