First you need to get the latest kernel (2.4.0-test4 or later). This has the latest USB API.
Next you need to get the relevant documentation to help you install and configure USB
The USB User's Guide is mandatory and can be found at:
http://www.linux-usb.org/USB-guide/book1.html
The USB programmer's guide is optional and can be found at:
cd /usr/src/linux
(If you have a .config file present then save it.)
xhost+
su root
make mrproper
xhost +
make xconfig
select USB Support
support
for USB=y
USB
verbose debug messages=y
Preliminary
USB device filesystem=y
UHCI=m
UHCI(Aly)=m
OHCI=m
(note select the above as modules unless you are absolutely sure what standard your USB conforms to)
USB
Human Interface Device (HID)=y
make dep
make clean
make bzImage
(Note xhost + must be executed on a non root account)
After you build and install your new kernel you are ready to test if the installation was successful.
Type ls /proc/bus you should see the usb directory. At this stage it is empty. Now you must install the drivers.
Next mount the USB device filesystem (section 2.2)
mount -t usbdevfs none /proc/bus/usb
The USB core drivers are found in /usr/src/linux/drivers/usb and are called usb-core.o usb-ohci.o and usb-uhci.o.
If you built these drivers as modules (as recommended ) then now they can be loaded. To load the driver type insmod usb-ohci.o or insmod usb-uhci.o ( depending on which standard your PC USB conforms to). You will need to load the ohci or uhci driver followed by the iPAQ device driver (usbh_h3600.o )
After they are loaded you can confirm by cat /proc/modules and reading sections 2.2, 2.10.2 and 3.1 of the USB user's guide.