# &FAQ;

## &kpilot; Startup Problems

What do I put after `--debug`?

Nothing. Most versions of &kpilot; don't even have a `--debug` option, and will complain if you use it. For those versions that do have it, use a value between 1 and 4, which will control the amount of debugging printed (a little). Using a value of 1 will print a fairly complete call trace without the really-boring functions, while 4 will include every trivial function in all of &kpilot;.

&kpilot; says Can't connect to pilot

This can have various causes. Check that:

- The pilot device (usually `/dev/pilot`) exists and points to the serial port the &PalmPilot; is actually connected to.

  To link the &PalmPilot; device to the correct serial port, you can either fill in `/dev/ttySn` in the Pilot Device field in the setup dialog or (preferably) link `/dev/pilot` to `/dev/ttySn` with the following command (as root): ``ln` `-s` `/dev/ttySn` `/dev/pilot`` Here `/dev/ttySn` is the name of the serial port; replace n with the correct number (usually 0 or 1).

- Check that you have permission to read and write to the serial port. The permissions for the serial port should be such that you can write to it. This is most easily done by running the following (as root): ``chmod` `666` `/dev/ttySn``

- Try starting the daemon by hand before starting &kpilot;.

- (For &Linux-Mandrake; 7 systems) Check the system security level: settings higher than 3 prevent some forms of inter-process communication which are necessary for &kpilot; to operate correctly.

  (&Linux-Mandrake; security information courtesy of Jay Summett) To set your MSEC (Mandrake SECurity) settings to not block the &kpilot; socket (for connections to localhost) you can login as root and type ``/etc/security/msec/init.sh` `3`` Which will set your MSEC level to 3 (regular security). For more information about the various security levels, &etc;, see: the Mandrake reference guide.

## Database Questions

This section answers questions commonly asked about particular databases and how they interact with &kpilot;.

Databases become corrupted after a sync, what should I do?

Certain databases (from third-party software manufacturers) appear not to follow the standard database layout. If you can find out what the creator id of the database is, you can add it to either the Backup Only: list or the Skip list in the settings dialog.

The following table shows which databases should be skipped or backed-up only:

### Databases needing Special Treatment

Database | Creator ID | Action
--- | --- | ---
Launcher (the &PalmPilot;'s main menu) | lnch | Backup Only:
Arranger | Arng | Backup Only:
(unknown) | PmDB | Backup Only:
AvantGo | avgo | Skip (Mostly because there's no point in backing up the news articles that AvantGo gives you)

Is there a conduit for &Netscape; Calendar?

No, there isn't. Neither are there plans to include support or write a conduit for &Netscape; Calendar.

## Special HotSync Questions

This section lists questions about HotSync methods that differ from the usual direct serial link method.

How do I do an infrared (IR) HotSync?

First of all your &PalmPilot; has to actually support IR HotSyncs. This can be achieved through various means: &PalmOS; 3.3 and higher include support for it; there is an IR enhancements package for older &PalmOS; versions; IrLink from IsComplete apparently has the same capabilities. Check out the PalmOne web pages for more information.

Assuming your &PalmPilot; now has PC HotSync support and it is setup to do IR HotSyncs (in the HotSync preferences on the &PalmPilot;), we can turn our attention to the PC you will be synchronization with. It needs an IR port. For laptops, this is trivial, desktop PCs may require some extra hardware.

Your &Linux; kernel will need to support IR and the IRCOMM protocol. For stock &RedHat; systems, the following command should setup IR support (as root):

    # modprobe ircomm

Other distributions should follow the `IR-HOWTO`. Once IR support in the kernel has been activated, you need to make devices for the IR ports. The `IR-HOWTO` suggests (as root):

    # mknod
    /dev/ircomm0 60 64
    # chmod
    666 /dev/ircomm0

Next we need to start some daemons for IR services:

    # irattach
    /dev/ttySn
    # irmanager
    -d 0

Here `/dev/ttySn` is the serial port the IR port is using. n could be 0, 1, or some other number depending on your hardware setup. Follow the instructions in the `IR-HOWTO` for assistance (for desktop machines, it's usually a setting in the BIOS).

Once you've gotten this far, just make `/dev/pilot` point to `/dev/ircomm0` and you're ready!

The IR-HOWTO and other useful information on using IR may be found at http://mobilix.org/howtos.html and http://mobilix.org/software/irda/.

Can I do a &HotSync; with my (USB) &Handspring; &Visor;?

Yes, you can. I don't have definitive information, but postings on the &kpilot; mailing-list have stated that you can point `/dev/pilot` to the USB device and everything will work fine.

Is there any support for remote HotSyncs?

No, not yet. Maybe later.

## &kpilot;'s &DCOP; interface

What does &kpilot; use &DCOP; for?

The daemon and &kpilot; communicate using &DCOP; for several purposes: logging messages, changing the &HotSync; type, and exchanging configuration information.

Which &DCOP; interfaces are there?

The daemon has two important interfaces: LogIface and KPilotDaemonIface . The LogIface interface is used to record messages in the sync log on the &handheld;, and is rarely used. The KPilotDaemonIface is the more important &DCOP; interface, and is used to control the kind of &HotSync; that &kpilot; will do.

How can I tell the daemon to perform a specific kind of &HotSync;?

There are three &DCOP; functions that control what kind of &HotSync; the daemon will do next: `` ``