This is a read-only archive. Find the latest Linux articles, documentation, and answers at the new!


Synchronizing PalmOS devices with Linux

By Daniel Rubio on March 17, 2005 (8:00:00 AM)

Share    Print    Comments   

Smart handheld devices or personal digital assistants (PDA) extend our access to the information on our desktops, from addresses to telephone numbers. Unfortunately, when it comes to vendor support for synchronizing this information with a *nix operating system, the options are limited. In this article, we'll review the various GPL-based suites available for synchronizing PalmOS-based devices with Linux.

Various open source projects offer handheld synchronization. GNOME Pilot aims at GNOME users, KPilot fits the KDE crowd, and ColdSync is for non-GUI enthusiasts. Among the earliest such software are J-Pilot and PilotManager.

Your first step in trying to use any of the aforementioned packages is to assure that your desktop system can detect the PDA hardware. You may need to load a few a kernel modules or even recompile your kernel to make it work, but chances are that won't be necessary; virtually all modern distros come with a preconfigured kernel capable of detecting most USB hardware and PalmOS devices.

To start, execute the following queries from the command line: dmesg | egrep usb and lspci -v. The output should tell you about the hardware your system recognizes. If you see any errors or warnings, then you need to follow the typical drill for hardware detection on Linux, which is to search for the appropriate drivers and modify your kernel either through recompilation or through module loading.

Once you know your system is aware of its USB hardware, the second step involves checking and loading the kernel modules necessary for the syncing process. These modules are standard in most recent kernels, so the process should be straightforward unless you have an old or non-standard kernel. Execute modprobe usbserial to load the USB Serial Driver, then check your system log using tail -f /var/log/messages. You should see a line like kernel: usbserial.c: USB Serial support registered for Generic.

Next you need to load the visor module, which is at the heart of the syncing process.Execute modprobe visor. You should see a message like the following in your logs: kernel: usb-serial.c: USB Serial support registered for Handspring Visor / Palm OS. As a final check, invoke the lsmod command to see the loaded kernel modules. You should see both the usbserial and visor modules in the output.

Once you know that your USB port and handheld hardware are being detected, your next step should be installing pilot-link. This package contains what it dubs conduits, which play a critical role in enabling any of the aforementioned packages for syncing handhelds. Conduits are small daemon-like applications that allow you to move information from your handheld to your workstation.

You can install pilot-link either through a binary package or through the classical source code build process (./configure;make;make all). After installation, verify that pilot-link's library path is included in the file, and execute ldconfig to link the package libraries, a process that will avoid a reboot. You must link pilot-link's libraries before installing any software syncing suite, given their dependencies on this package.

As an example of a syncing suite, let's look at J-Pilot. J-Pilot is available in RPM, Debian, or Slackware binaries or through source code. After installing it you can start it up with the command jpilot.

JPilot thumbnail
Click to enlarge

J-Pilot's interface has calendar, address, to-do, and memo sections, and offers editing, sorting, and syncing options. But before you can copy your Palm information onto your Linux workstation, you need to take one more step. J-Pilot by default is configured to search for your handheld at /dev/pilot, while your Linux distribution will surely assign your hardware to the typical USB address of /dev/usb/ttyUSB0 or /dev/usb/ttyUSB1. You can create a soft link between the two with the command ln -s /dev/usb/ttyUSB0 /dev/pilot, assuming your handheld was assigned to /dev/usb/ttyUSB0. Finally, by selecting the Sync option in J-Pilot, you will be prompted to press the sync button on your handheld cradle, at which time your information will be downloaded to your Linux workstation.

J-Pilot is a helpful application for sharing important data between Linux and PalmOS-based devices. It and the other software suites in the same realm can help you unlock the information residing on your handheld devices for Linux, and vice versa.

Daniel Rubio is the principal consultant at Osmosis Latina, a firm specializing in enterprise software development, training, and consulting, based in Mexico.

Share    Print    Comments   


on Synchronizing PalmOS devices with Linux

Note: Comments are owned by the poster. We are not responsible for their content.

Where's the rest of the article?

Posted by: Anonymous Coward on March 17, 2005 11:51 PM
In this article, we'll review the various GPL-based suites available for synchronizing PalmOS-based devices with Linux.

Perhaps that should read "In this article, we'll mention some of the basic bits and pieces, and then talk about the bare minimum required".

2 simple things that could've done with a mention:
1. Sync support in Evolution
2. GNOME applet for auto-detecting and syncing your Palm

Although I am sure there are many others.



Re:Where's the rest of the article?

Posted by: Anonymous Coward on March 19, 2005 04:41 AM
What about uploading pdf/doc/xls/ppt?


Not to mention Serial support

Posted by: Anonymous Coward on March 21, 2005 09:26 AM
for those of us whose Palm (IBM WorkPad in my case) is on serial rather than USB


This story has been archived. Comments can no longer be posted.

Tableless layout Validate XHTML 1.0 Strict Validate CSS Powered by Xaraya