Please note: Development of this driver is continued
by DSITRI. Please look there for
current developments and new versions:
This is a USB driver for connecting Linux PDAs to a computer running
Mac OS X. It allows you to transfer data via USB so you don't need
a network card for the PDA. The following models are reported to work (with the
problems mentioned later on):
On the Mac you need at least OS X 10.2.1.
- Sharp Zaurus SL-5500G, SL-5600, SL-6000, SL-A300, SL-B500, SL-C700, SL-C760,
and SL-C860 (running with original Sharp ROM or OpenZaurus)
- Compaq iPaq H3635, H3760, H3870, and H3950 running Familiar Linux
- YOPY YP3000 and YP3700
Important: This is not a complete sync solution! The only thing the
driver does is to provide a network connection.
This driver is based on the USBCDCEthernet example provided by Apple
(thanks to Russ Winsper for providing the latest version). Portions
have been ported from usbdnet.c (Linux driver) written by Stuart Lynne and Tom Rushworth with
some algorithms adopted from usbnet.c written by David Brownell. eMail
addresses of these people can be found in the source code available
at the bottom of this page.
New driver version 0.2.8:
- Support for the Zaurus SL-6000.
- Fixes for possible problems caused by
uninitialized variables (thanks to
Dr H. Nikolaus Schaller for the patch).
New driver version 0.2.7:
- Bugfix for Mac OS X 10.3.5. The previous version would clash with new
Apple supplied drivers. Attention: This version has only been
tested with OS X 10.3.5 and a Zaurus SL-5500. If there are problems,
please report them.
- Before installing this version, you should delete the old "AJZaurusUSB.kext"
in the "/System/Library/Extensions" folder.
New driver version 0.2.5:
- Bugfix for Mac OS X 10.3 (Panther). If the Zaurus
is turned on and off in rapid succession, older driver
versions could freeze the USB subsystem on the Mac.
This issue might also appear on OS X 10.2 (Jaguar),
so updating to version 0.2.5 of the driver is recommended
for all users.
Disclaimer: This driver may potentially damage your
operating system or prevent it from booting (although both is highly unlikely).
Use this software at your own risk! (However,
this site says
the driver is "certified by Sharp" - at least for the SL-5600 -, so it's probably
OK to use it ;-))
Installation of the driver is really simple:
The Zaurus SL-5500 runs an FTP server on port 4242 that you can use to transfer files (user
is "root", password is empty). The command line syntax for connecting is:
- Download the compressed installer package (see bottom of this page).
Double click on the downloaded file to extract the package.
- Double click on the extracted package ("AJZaurusUSB.pkg") and follow the instructions on screen. The
installer will place a directory "AJZaurusUSB.kext" in the folder
- At the end of the installation process, reboot the computer (the
installer will ask you to).
- After rebooting (or before, it doesn't matter) connect the cradle
to a free USB port, put the Zaurus into the cradle and turn it on.
- Start the System Preferences application and select "Network".
You will be notified that a new network interface is available.
- Configure the new interface with a manual IP address of 192.168.129.1
and click "Apply Now".
- Open the terminal application and try to ping the Zaurus. Usually its
address is 192.168.129.201, but you can change that on the Zaurus (note
that I never tested with another address). If the ping works everything
is OK - if not please read the FAQ below. If this
still doesn't help you can eMail
me and I can try to find the cause of the problem.
ftp -P 4242 192.168.129.201
Newer Zaurus models (and also the SL-5500 with ROM version 3.x) run an SMB server,
so you can use the Finder's "Connect to server" command to mount your home directory.
You can use "smb://192.168.129.201" as the URL - alternatively, use
"smb://sla300" for the SL-A300 and "smb://zaurus" for the SL-5600
(I don't know the URLs for the other models). Enter "guest" as the user name
and leave the password blank - although in my tests every other combination
of user and password also worked.
To remove the driver, simply delete the folder "AJZaurusUSB.kext" in
The following problems and bugs are known:
- There is a bug in OS X 10.2.2 through 10.2.6 (and possibly 10.2.8,
but not 10.3) that leads to network
problems when the driver is used. For example, Apple Mail may not be
able to receive eMail anymore. However, there are reliable workarounds:
After that, you will be able to use Mail until you change the status of the
Zaurus (e. g. turn it on after it was turned off).
- If you're using a dial-up connection, terminate it and re-reconnect
- If your internet connection works through an ethernet interface,
bring this interface down and then up again (thanks to Geoff Beier
for finding that out). To do so, open the
Terminal application and type the following (pressing <enter>
after each line):
sudo ifconfig en0 down
sudo ifconfig en0 up
You will be asked for a password.
This is your administration
password (the same that was asked when installing the driver).
If your internet connection doesn't work through the primary ethernet
interface, you have to replace
en0 in the above commands
accordingly. For example, the AirPort interface is usually
- If your internet access works through AirPort, you can also
turn AirPort off and on again (thanks to Matthew Hixson for
- When you type on the virtual keyboard while transferring files, the
driver will hang. Solution: Disconnect (or turn off) the Zaurus and
connect it again.
- The USB components on the Zaurus are fairly unstable. This is probably caused
by problems in the built-in USB controller, and I don't know of any workarounds.
Transferring small amounts of data seems to work fine, but I've seen all sorts
of problems when trying to repeatedly copy a 16 MB file to the Zaurus (including the Zaurus
freezing, rebooting, or corrupting the file). Note that this is not Mac specific;
I noticed exactly the same when doing some tests on Windows. Also, I can only speak
about the SL-5500G - other models may be more stable.
It doesn't work. What now?
First make sure that the following prerequisites are fulfilled:
If you have verified all of the above and it still doesn't work, read on below.
- Your Zaurus is an SL-5x00, SL-A300, SL-B500, SL-C700, SL-C760, or SL-C860. If not,
make sure that Info.plist of /System/Library/Extensions/AJZaurusUSB.kext
contains an IOKit personality with product and vendor id matching those
of your Zaurus.
- Your OS X version is 10.2 or higher.
- You have installed the driver correctly (easily verified by checking if AJZaurusUSB.kext
is present under /System/Library/Extensions).
- You have rebooted after installing the driver.
No new network interface appears in System Preferences.
The new interface is only recognized if System Preferences is started after connecting
and turning on the Zaurus. You should be successful using the following steps:
You should now get a notification that a new network interface appeared. Even if you don't get
this message, look if the interface is present anyway (usually the name is "Ethernet (en1)" or
"Ethernet (en2)"). If you cannot find it, read on below.
- If System Preferences is already running, quit it.
- If the Zaurus is already plugged in and turned on, then turn it off.
- Now connect the Zaurus to your Mac and turn it on.
- Wait a few seconds.
- Start System Preferences.
- Click on "Network".
My Mac crashed (prompting me to turn off the computer).
I've tried to eliminate all problems that could result in a crash, but there is
of course no guarantee I've found them all. In case of a crash, please send me
the file /Library/Logs/panic.log. It contains a crash log that should
allow me to determine if the driver was responsible for the crash and what
exactly caused it.
I've checked the FAQs above and it still doesn't work. What information can I provide
to help finding the problem?
Please connect and turn on the Zaurus, then wait a few seconds. After that, execute
the following commands in the Terminal application and send me their output:
grep -E "AppleUSBCDC|org_lucidcake_driver_AJZaurusUSB" /var/log/system.log
|Installer package for the driver (packed with tar and gzip, version 0.2.8 (09/27/2004), 168 KB - tested with OS X 10.3.5, should also work with all other versions starting with 10.2.1).||AJZaurusUSB_0_2_8.tgz
|Source code (packed with tar and gzip, version 0.2.8 (09/27/2004), 212 KB). This includes the installer package.||AJZaurusUSB_src_0_2_8.tgz
|Installer package for the driver (packed with tar and gzip, version 0.2.5 (10/31/2003), 104 KB - tested with OS X 10.2.1 through 10.3.4).||AJZaurusUSB_0_2_5.tgz
|Source code (packed with tar and gzip, version 0.2.5 (10/31/2003), 144 KB). This includes the installer package.||AJZaurusUSB_src_0_2_5.tgz
Last update: 05/10/2006