Everything Linux - Linux and the PalmPilot
Pilot Icon LINUX

Last updated on July 25th 2001

Let's face it. Most Linux folks are into some hardcore geeky fun, the least of which certainly isn't the PalmPilot or Handspring Visor (IBM also OEMs these as WorkPads). One issue that might come up to users of these awesome little devices is, "how do I use it with Linux to backup or upload programs?"

Pilot Icon

Contents

Necessities
GNOME Integration
Palm Related Books
The PalmPilot and Perl
Jpilot
The Pilot-link Package
The Xcopilot Package
The KPilot Program
Conclusion

Necessities

Cradle Icon

You need a few things from Linux to offer useful support for your PalmPilot. Luckily, the tools to accomplish this out on the Internet. In this article, I'll show you a few that I came across and use myself.

The things you'll need to ensure that you and your PalmPilot will remain on good speaking terms include:

The beauty of the PalmPilot platform and using it with Linux, is you get a full suite of utilities, libraries and source code to do high caliber development on PalmPilot applications. You can use the source and libraries of (INSERT HERE) and then test them using xcopilot, a fully usable PalmPilot emulator for the X window system.

GNOME Integration

Your Palm will integrate with the GNOME desktop very smoothly and much like you'd be accustomed to on the Windows platform. Read the article on GNOME Conduits! If you're running a GNOME desktop, then you definitely want to check this out. Complete integration into your GNOME applications like the calendar and address book, Email and full synchronization features. You even get a hotsync icon for your panel!

Palm-Related Books

If it's books you're looking for, there certainly are a good number of them out there. While most are not Linux specific, they are still applicable. For example, the programming books teach you how to write code that will work on the PalmOS, regardless of development platform. Other books are filled with tips and tricks or feature software that can be used with it. To make it easier for you to find relevant information, I've created a collection below for your perusal. Check 'em out and see if there isn't one that suits your fancy!

The PalmPilot and Perl

There are various Perl modules out there, such as on CPAN (a Perl module archive) that let you write your own applications for, or for use with - the PalmPilot. This opens the door for all manners of hacking, allowing you to write your own applications. You could write something to parse your PalmPilot information and format it for display on the Web, for example - or perhaps write a filter that takes PalmPilot data and converts it to currently non-PalmPilot friendly applications. Here are some modules currently available:

Palm::PunchClock Perl extension for parsing PunchClock pdb files
WML::Card::Palm Perl extension for builiding WML Cards according to the browser being used
Palm::Address Handler for Palm AddressBook databases
Palm::Datebook Handler for Palm DateBook databases
Palm::Mail Handler for Palm Mail databases
Palm::Memo Handler for Palm Memo databases
Palm::PDB Parse Palm database files
Palm::Raw Handler for "raw" Palm databases
Palm::StdAppInfo Handles standard AppInfo
Palm::ToDo Handler for Palm ToDo databases

Search CPAN for the latest PalmPilot-related modules!

JPilot

Article coming soon...

JPilot is sweet! It's a standalone application that runs under X, using the GTK+ toolkit. It's a desktop organizer that has similar functionality to the Windows "Desktop" plus a few features of it's own. See some screenshots of it here.

The source code was last updated in April of 2000, but it seems to be fairly complete and stable so far. In order to compile it under Solaris, I had to specify "--disable-nls" on the "./configure" script for some reason. I haven't had this problem with other GTK+-based apps like the GIMP. Once compiled, it worked nicely! Here are some screenshots:

The pilot-link Package

One package that is essential in your toolbox is this one. It has more than a dozen useful programs to interact with your PalmPilot, including all the essentials (backup/restore/install/sync) it also features a debugger for use in developing applications. Full source code is included. You can perform the functions listed after the binary name below:

addresses Dump Pilot address book into generic format
debugsh Command-line interface to Pilot debug monitor
dlpsh Command-line interface to Pilot HotSync protocol
getrom Fetches ROM using getrom.prc or getrom2.prc
ietf2datebook Convert IETF calendar to format used by install-datebook
install-datebook Import datebook records from a text format into Pilot
install-memo Import memo records from a text format into Pilot
install-todos Import todo records from a text format into Pilot
install-user Modify user name settings (and report lots of into) about Pilot
memos Export memos from Pilot in mailbox format
pi-csd Must be running to accept Network HotSync(tm) connects
pi-getram Retrieves RAM from Pilot
pi-getrom Retrieves ROM from Pilot (without getrom.prc)
pi-nredir Program that accepts connections and redirects them via the Network HotSync(tm) protocol
pilot-debug Graphical and command-line program to interface with Pilot debug monitor
pilot-dedupe Strips duplicate records from Pilot databases
pilot-file Disect .prc and .pdb files
pilot-mail Import mail from POP3 mailbox into Pilot Pro's Mail application, and send mail via sendmail
pilot-schlep Store a single file on the Pilot
pilot-undelete Turn archived records into normal records
pilot-xfer Back up, restore, install & delete Pilot databases (This is a very useful program)
read-expenses Export Pilot Pro expense database into text format
read-ical Export Pilot datebook and todo databases into an Ical calendar (ical is required)
read-todos Export Pilot todo database into generic text format
reminders Export Pilot datebook into a 'remind' data file
sync-plan Completely synchronize the Pilot datebook with the Plan calendar via netplan

By far the most useful program is pilot-xfer which you use to install pilot programs and databases as well as backup and restore the PalmPilot.

One thing you should do immediately, is edit your .bashrc or similar file to export the environment variable PILOTRATE to a nice, high number like 115,200. This sets the baud rate at which Linux talks to the PalmPilot cradle for doing HotSyncing. This info is buried in the documentation, so I print it here.

The xcopilot Package

Pilot Button

If you run the X window system on your Linux machine, then you're in luck, especially if you're a developer. Using the xcopilot package, you have access to a full-on PalmPilot emulator. All you need to do is download the ROM from your PalmPilot using the included program. It also has a debugging feature.

If you're developing for the PalmPilot and enjoy the UNIX/Linux platform, this is the ultimate tool in your arsenal. Crash this emulator rather than the real thing and debug your code. You can also use it as an online PalmPilot. Sync it regularly with your real one, and you can have the best of both worlds. Pretty psycho, I say.

The KPilot Program

The KPilot package is intended to be run under the KDE desktop environment, but should work well if you install the proper KDE libraries as well, under a different window manager (like AfterStep). The beauty of this program is that it offers you a nice GUI to interact with your PalmPilot. The authors intend to reproduce, if not exceed, the current capabilities of the Palm supplied software. Currently, the software has a lot of features, and it's definitely worth checking out.

KPilot has plugins that can exchange information between your Palm and other applications like KOrganizer or POP3/SMTP servers. In KPilot you can display and edit your contacts, write notes or install new programs on your Palm.

Conclusion

So there you have it. A whole bunch of good stuff to keep you busy for quite some time. All you need is Internet access and you can fill your PalmPilot with cool software and make sure you can back it all up.

I'll be adding to this page now and again to update and add new things as I have time to go over them. If there's a particularly snappy app you like, and would like to see it here, drop me an Email by clicking on the footer below.


All images are (C) 1994-2005 by Michael Holve