Linux and the PalmPilot

This article contains all the information you need to run Linux on the PalmPilot personal digital assistant.

My brother and I share many things, not the least of which is an interest in electronic gadgets. I tend to go big—new computers, new monitors, new expenses. My brother thinks small—Personal Digital Assistants, also known as PDAs. He's collected a few different models over the past couple of years. Right now I think he's working on a PSION or possibly one of those Redmond atrocities known as Win/CE PDAs. My brother says of these that “wince” is about right.

I had mentioned sometime back that I wanted to get a PDA and thought a U.S. Robotics PalmPilot (now 3Com) would be the one to get. I had read somewhere that there was Linux software for use with the Pilot and that meant I could download and upload data directly to my Linux system. Fortunately, my little brother was listening that particular day. For Christmas this year he gave me his old PalmPilot. Okay, it's used—but it's still a cool gift.

The PalmPilot actually comes in four different configurations. The earlier versions are the Pilot 1000 (the version I now have) and the Pilot 5000. The newer versions are the Pilot Personal and the Pilot Professional. The older versions don't have a backlit display and come with significantly less memory. They can, however, be upgraded. My brother had upgraded the 1000 to 1MB of memory prior to giving it to me. Besides more memory, the new models have version 2.0 of the operating system, and the Professional has a TCP/IP stack and e-mail tools.

Getting Started—The Linux Side Software

If you're going to use a PalmPilot with Linux, you need to start with its HOWTO document. The PalmPilot HOWTO is available from the Linux Documentation Project (LDP) as well as from its official site. The HOWTO, written by David H. Silber, is quite easy to follow and offers all the information you need to get started. I should note that I managed to get the software working using only the HOWTO—I didn't need to subscribe to any mailing lists or scan weeks of newsgroup archives. This is a credit to both the HOWTO author and the simplicity of the PalmPilot.

The HOWTO points the reader to the primary software archives from which you can download a variety of packages. The packages of interest to the new user are:

  • pilot-link: The main package of interest, it includes the pilot-xfer program for transferring programs and data to and from the Pilot and Linux along with a host of other tools. The current revision of this software is 0.8.9. Note that the HOWTO links directly to the 0.8.2 version. The software archives list this package as pilot-link.x.y.z.tar.gz, where x.y.z is the version number.

  • PilotManager: Graphical interface to the Pilot for UNIX/X systems. Handles most of the tasks that the pilot-xfer software does from the command line, but uses an X-based interface. This is a Perl/Tk application.

  • MakeDoc: Turns text files into a document format better suited for the Pilot.

  • prc-tools: The package you need in order to develop software for the Pilot.

The first package to retrieve is the pilot-link software, which contains a collection of about 30 programs. Most of them have very specific tasks such as uploading or retrieving “Memos” or “ToDo” lists. Of these programs, the most useful is pilot-xfer. This program is used to back up and restore complete programs and databases, even the entire Pilot system. It can even do incremental backups automatically. All of the programs in the pilot-link package are command-line programs.

PilotManager is a Perl/Tk graphical interface to the Pilot. It apparently works with CDE's Calendar applications, but since I don't run CDE I didn't try this feature out. The list of features states the PilotManager has four primary features: uploading new applications and databases, synchronizing the Pilot with the CDE Calendar application, uploading text files as Pilot Memos, and backing up the Pilot to your UNIX system.

MakeDoc is a tool for converting ordinary text files into a compressed format. This format can be read by Rick Bram's PilotDOC reader, which is now a shareware product known as AportisDoc Trialware 2.0. Rick developed this reader because the Pilot's document handling was limited to relatively small documents.

Finally, prc-tools are a set of tools for building applications for the PalmPilot. This package is necessary only if you intend to do development work. If you go this route, you'll need to get the GNU gcc, gdb and binutils packages as well. All of this is explained in the HOWTO.