
To create the link, log on as root and enter the following command:
ln -s /dev/ttyS0 /dev/pilot |
Replace /dev/ttyS0 with the serial port to which you have connected the your PDA. The device name /dev/ttyS0 corresponds to COM1 in DOS/Windows terminology, /dev/ttyS1 is COM2, and so on.
You also need to ensure that you have permission to write to the serial port. On a standalone workstation you can change the permissions to allow global access to the port. As root, enter the following command:
chmod a+rw /dev/ttyS0 |
Greater security can be achieved using the group permissions. Set the permissions to read/write for the group and add the required users to the user list for the group (see man group). (TODO: More detail).
If you use symbolic links with devfs, you may find that the links do not persist correctly after you reboot. The /etc/devfsd.conf file controls the creation of symbolic links to dynamically created devices.
As always, the operation seems to be set up differently under different distributions.
Manrake 8.1 creates a link from /dev/usb/tts/1 to /dev/pilot when the hotsync button is pressed on the cradle.
RedHat 7.2 requires the link to be created manually. The link is then persistent across boots (thanks to Jim Mueller for this information).
To use any USB device under Linux, you need to have USB support in your kernel. You will also need the relevant modules available. Most (TODO: Check which distros work out of the box) recent Linux distributions have USB support enabled by default. To check your system, try the following command as root:
modprobe visor |
If you get no output from this command, then the module is available and you do not need to recompile your kernel. If this does not work, try the alternative usbserial module:
modprobe usbserial |
This is used by some distributions, such as Redhat 7.0.
If you need to set up USB support in your kernel, the Handspring Visor with Linux mini-HOWTO provides instructions. (TODO: Incorporate into this HOWTO?)
Once USB support is set up, you should use device /dev/ttyUSB1 to communicate with your PDA. Note that this device name only exists after you have pressed the hotsync button on the cradle. You must press the button before running the connection software.
If you have problems synchronising via USB, try an updated kernel. There may be some timing issues with the USB driver. For example, I found that stock Mandrake 8.1 did not work on one PC, but worked first time on a faster PC. Upgrading to a stock 2.4.17 kernel solved the problem and worked fine on both PCs.
David A. Desrosiers has written a comprehensive HOWTO on the subject. (TODO: Include this inline?)
Once again David A. Desrosiers has written a (less comprehensive) HOWTO on the subject. (TODO: Include this inline? Not convinced of the value of this method - anyone care to comment?)