PPP over USB on Sharp Zaurus HOWTO

Web www.ruault.com
Version 1.2 12/06/2001 by Charles-Edouard Ruault
Credits to : juergen for correcting me on the sequence of actions...

1) Introduction

This document is a quick guide on how to setup a ppp connection from the Sharp Zaurus SL-5000D to a Linux box

This document assumes you're using a kernel 2.4.x.

2) Setup on the PC side

a) for a basic setup ( zaurus connects only to the PC, not the LAN to which the PC is connected ), you need the following

  • pppd
  • kernel support for ppp
    If it's not already included, you need to recompile your kernel and add the following options:
    In the Network device support, select the following to be compiled in as modules :
    • PPP (point-to-point protocol) support
    • PPP support for async serial ports
    • PPP Deflate compression
    • PPP BSD-Compress compression
  • kernel support for USB and Generic USB serial driver
    In the USB Serial Converter support section, select the following as modules:
    • USB Serial Converter support
    • USB Generic Serial Driver

b) For a complete setup ( if you want the zaurus to be able to reach other machines on your lan and on the internet ), you need to add the following to your kernel configuration on top of the basic setup:

In Networking options select the following:

  • Network packet filtering (replaces ipchains)
c) Once the kernel has been recompiled and the modules installed, you need to do the following:
  • Insert the usbserial module : as root, run insmod usbserial vendor=0x4dd product=0x8002

3) Setup on the Zaurus side

not much to do here ... just this :

  • run /etc/usbcontrol serial
    You will get an error saying that usbcore is already loaded, ignore it. If your getting other errors ( like symbol not found etc ), run /etc/usbcontrol serial again ( i happened to me a few times ).
    In the end you should have the following modules loaded on the Zaurus :
    • sa1100_bi 44032 0 (unused)
    • serial_fd 22864 1 [sa1100_bi]
    • usbdcore 19792 0 [sa1100_bi serial_fd]
    • sharp_mmcsd_m 26992 1

4) Bring the connection up

Put the Zaurus on the cradle and make sure the cradle is connected to the PC through the USB cable.

  • On the PC, look in /var/log/message for something like this : usbserial.c: Generic converter now attached to ttyUSB0 (or usb/tts/0 for devfs), this will give you the device to use as a tty for ppp ( just replace the USB_TTY below with the value found here ).

  • Now you just need to start pppd on the PC ...
    - if you've selected the basic setup, run the following: pppd /dev/USB_TTY noauth PC_IP:ZAURUS_IP
    - if you've selected the complete setup, run the following: pppd /dev/USB_TTY noauth PC_IP:ZAURUS_IP proxyarp ktune ms-dns DNS_IP passive

    Where USB_TTY is the device name found in /var/log/messages ( see above ), probably ttyUSB0, PC_IP the IP assigned to the ppp interface on your PC ( for example ) and ZAURUS_IP is the IP assigned to the ppp interface on the Zaurus ( for example ), and DNS_IP is the address of your DNS server. For proxyarp to work, the IP you're assigning need to be on the same subnet as your LAN network interface.

  • On the Zaurus : run pppd /dev/ttyUSB0 defaultroute usepeerdns
  • Looking in /var/log/messages on the PC, you should see something like this:
    • pppd[4879]: Connect: ppp0 <--> /dev/ttyUSB0
    • pppd[4879]: found interface eth0 for proxy arp
    • pppd[4879]: local IP address PC_IP
    • pppd[4879]: remote IP address ZAURUS_IP
    • pppd[4879]: BSD-Compress (15) compression enabled

    This means that the connections has been successfully established !

That's it ... now, on your PC try : ping ZAURUS_IP and on the Zaurus try ping PC_IP. If it's successful you made it .... otherwise it's time to start troubleshooting. I would be happy to include all the information you find in this HOWTO, feel free to email me comments/additions and i will update this document.

5) Misc

This will bring down the interface used to synchronize to your the QT desktop on windows.
To reenable this, run /etc/usbcontrol net, it will bring down the ppp connection and should restaure the ability to synchronize.