Originally Published: Thursday, 17 May 2001 Author: Matt Michie
Published to: develop_articles/Development Articles Page: 1/1 - [Printable]

OSDN Handheld Months: An Interview with Alex Guy of Familiar

Linux.com interviews Alex Guy and takes a look at the Familiar project, an open source group dedicated to building a Linux powered PDA OS.

   Page 1 of 1  

Alex "a7r" Guy is Mojordomo and Supreme Dictator for Life of the Familiar project. For those of you not familiar with Familiar this open source group aims to build the best Linux distribution for a PDA OS. Currently at version 0.4 Familiar already boasts an impressive array of capabilities, with more coming all the time:

  • Entirely based on XFree86's/keithp's Tiny-X server, which includes the latest RENDER extension.
  • Anti-Aliased True-Type Font support in rxvt, blackbox, and fltk (this is extended to any X application using the Xft APIs).
  • OpenSSH's ssh and sshd included by default.
  • The latest releases include JFFS2 supported, which enables you to have read/write access to the iPAQ's Flash.
  • Integrated Python v2.0 w/ PyGtk and PyGDKImlib.
  • Binary and Library compatible w/ Debian's ARM distribution. In most cases, programs (as long as their dependencies are met) can be taken from Debian and executed on the iPAQ w/out issue.
  • Full package support based on ipkg.

Linux.com's own Matt Michie caught up with Alex and brought home this fascinating interview.

Linux.com: What is the Familiar Project? What are its goals?

Alex Guy: The Familiar Project is a group of people working on producing a useful handheld environment for the latest and next-generation of handhelds. Our main goal is to produce an operating environment that is useful to us, both as developers and as every day handheld users.

Linux.com: What are the specs. on the Compaq iPAQ h3600 series?

Alex Guy: Compaq's H3600 line is based on the Intel StrongARM SA-1110, running at 206 MHz (although the clock rate is software scalable). There are a couple different memory/flash configurations available, the 3630/3650/3635s have 32 MB of RAM and 16 MB of flash (although the first devices came with 32 MB of flash, due to a parts shortage), and the 3670 has 64 MB of RAM and 16 MB of flash.

The H3600-series sports a 320x240 reflective LCD, capable of displaying at 12 bits/pixel. They come with a Phillips UDA1341 for recording and playback of high-quality audio. The iPAQ comes with an RS-232 compliant serial port, as well as slave USB support, and the capability to attach expansion packs (for things like PCMCIA, and CF support). It really is a pretty extensible box.

Linux.com: Is there any intention to port Familiar to other PDA architectures?

Alex Guy: Definitely. It's all a matter of getting developers hardware, and maybe some baseline support.

Getting Familiar up and running on anything running Linux on ARM should be pretty straight forward. To get the base of things running, all that's really required is a booting kernel.

If anyone is interested in porting Familiar to something besides the iPAQ, let me know.

Linux.com: How has the JFFS2 file system helped you in using the iPAQ's Flash?

Alex Guy: Greatly. It provides a number of features, such as journalling, write leveling, and compression that make it quite useful, but its greatest feature is the fact that is a read-write file system.

Because of this we can now support running software upgrades, where as in the past you had to reboot into the boot-loader and flash using an xmodem upload over 115kb/s serial, or do a flash from userspace using dd.

Carl Worth has also put a lot of work into developing packaging support for Familiar (based on the amazing work that Debian has done). Already, we can install packages over the network (similar to the apt-get mechanism Debian provides), and quite a few other things.

Linux.com: Since JFFS2 supports file compression, how does this effect the performance?

Alex Guy: That's a good question. JFFS2's compression is based on the popular zlib library. I don't think anyone has done any real numbers of this yet, but my sources (dwmw2) say that there should actually be an improvement in read and write speed, considering how slow flash is.

Linux.com: Is X Scribble supported with Familiar yet?

Alex Guy: Yes. The full screen derivative called ``fscrib'' has been supported since IIRC v0.1. ``fstroke'' is also available as a package.

Linux.com: Are there any other plans to implement a graffiti like alphabet?

Alex Guy: There are a couple recognizers available, primarily derived from two implementations: xscribble, and xstroke.

Linux.com: How open has Compaq been with the specs?

Alex Guy: Quite open. They've given us quite a bit of information. Almost everything short of the schematics. They've provided large amounts of code and engineering resources (they've developed the boot-loader, as well as serious amounts of kernel and distribution work), not to mention hosting resources, and general support.

Linux.com: Have the developers run into any legal troubles?

Alex Guy: None that I'm aware of. There are quite a few patents related towards handheld devices though (it seems mainly related to user-interface components), so stay tuned.

Linux.com: What features or bug fixes do you think Familiar needs before 0.4 moves from pre-release status?

Alex Guy: I released Familiar v0.4 last night. At this point it should be considered stable, and relatively bug free. Thanks to the new packaging support, it's going to make getting people bug fixes much easier.

Linux.com: What are the technical difficulties you have encountered? Any problems with supporting the ARM architecture with Linux?

Alex Guy: The main issue for me is the actual building of binaries. Cross-compilers are quite useful (especially if you have a source-tree that builds well with them, like X), but there's nothing that beats having a native machine to build with.

I've been using Rebel.com Netwinders running Debian Sid as my main native build environment (they're great: a nice sized disk, 100 Mb/s Ethernet, and the DB-9 serial port on the back is great for console access to the iPAQ). My only issue with them is that for what you get, they're just too expensive. But man, are they nice to have around.

Linux.com: How can people wanting to help get involved in the project?

Alex Guy: Just jump right in! For developing on the iPAQ, the main things you need are: an iPAQ 3630/3650/3635/3670, and a serial cable or cradle. A PCMCIA sleeve is also tremendously useful for extending the iPAQ's capabilities (e.g. Ethernet and WaveLan).

The mailing lists are good places to ask questions and share information. Of course, check the archives before you post, but overall any question is a good one.

There's also a strong presence of iPAQ and handheld developers on the OpenProjects IRC network. I'd say most real discussion between developers happens on IRC at this point. The channels to check out are: #handhelds.org, #ipaq, and #familiar.

Linux.com: Any final thoughts?

Alex Guy: Thanks for interviewing me. We're at a point in time where the untapped capabilities of these new handheld devices are amazing. Now it's just a simple matter of programming.

Matt Michie lives in the deserts of New Mexico. When he isn't busy cleaning the dust out of his computer's cases, he writes articles for Linux.com.

   Page 1 of 1