Coldsync

Description

ColdSync is a tool for synchronizing PalmOS devices (PalmPilot, Palm V, Qualcomm PDQ, etc.) with Unix workstations.

"Synchronizing" (or "syncing", for short) refers to the process of copying data back and forth between the Palm and the workstation so that in the end they both hold the same contents.

Features

Synchronization

By default, ColdSync simply synchronizes the Palm with a backup directory on the workstation. That is, it copies all of the information on the Palm to the backup directory on the desktop and vice-versa. When possible, ColdSync performs a so-called "Fast Sync," i.e., it only copies those records that have changed, either on the Palm or on the desktop. This makes it possible to synchronize quickly, and not waste your time.

Archiving

If you have deleted a record on the Palm and checked the "Save Copy on PC" button, ColdSync deletes the record from the Palm, and also saves a copy on the workstation, in an archive file.

ColdSync does not currently include any utilities for manipulating these archive files, but the archive file format is straightforward, and it should be easy to write such a utility.

Installing Applications

To install a new application (a .prc file) on your Palm, simply copy the .prc file to ~/.palm/install/, and run ColdSync.

Back Up and Restore

ColdSync can also make a complete backup of a Palm, or restore from a backup. You do not normally need to do this, but it is a good way of transferring all information from one Palm to another (e.g., if you have just upgraded to a newer model).

Portability

ColdSync endeavors to be portable: it has been built on a number of versions of Unix, and works with any Palm device from the PalmPilot upward.

Paranoia

ColdSync takes pains never to delete anything that might be valuable. It will abort rather than corrupt an existing database.

This is not meant as a guarantee, but rather as a bit of reassurance.

Conduits

ColdSync can be extended and customized through the use of conduits. There are only a handful of conduits so far, but you're welcome to them.

There is also documentation on writing conduits.

USB/Visor Support

ColdSync supports USB connections for the Handspring Visor as of version 1.1.

Note that USB is only supported under FreeBSD 4.0 for now.

Infrared Syncing

The Palm III and Palm V and others can sync via the infra-red port. They use IrCOMM, which is designed to make an IR port look like a plain old RS-232 serial port.

Several people have reported success in getting this to work under Linux.

Security

Unfortunately, due to the design of the protocols involved, ColdSync is terribly insecure. In particular:

On the plus side, however, ColdSync is not setuid, nor does it need any special privileges other than permission to read from and write to the serial port that the cradle is attached to.