FastEthernet CompactFlash Card

Zaurus on the net
-- Click to enlarge --

More pictures

When I bought my Zaurus, of course I wanted to connect it to the internet somehow, either directly or using one of my FreeBSD machines as a router. There are quite a lot of possibilities:

TCP/IP via USB connector

It emulates some kind of protocol used by PC-to-PC USB adapters. This is not supported by FreeBSD. Under Linux, the usbdnet driver can be used for this. Such a driver would have to be written from scratch for FreeBSD. I don't have the time to do that.

TCP/IP over PPP via serial connector

Works fine with FreeBSD, but requires you to buy a 50 Euro cable. Not exactly cheap for a serial cable, given the fact that you can get a FastEthernet CF card for the same price or even less (see below). On the other hand, such a serial cable might also be very useful to make the Zaurus work as an emergency serial console for your servers.

TCP/IP over PPP over serial emulation via USB connector

Well, FreeBSD supports serial-over-USB, using the ucom driver, but requires a backend driver for the actual low-level USB protocol. There are several of them (uplcom, uvscom, uftdi), but none of them supports the Zaurus variant of the protocol. Under Linux, there isn't a special driver for this, but the usbserial driver supports it in "generic" mode. I guess that one of the FreeBSD drivers could be modified without too much trouble to do that, too. However, I'm not willing to spend much of my free time on this.

TCP/IP over PPP over IrDA

Works with FreeBSD, using the "birda" port, /usr/ports/comms/birda. However, this is not very fast. And of course, you need another machine with an infrared port that can act as a router. Alternatively you could use a cellphone that supports IrDA, but that would require a dial-up connection which costs money. This is not suitable to connect to your private LAN when you're at home anyway.

TCP/IP over PPP via a modem CF card

This would work, but requires a dial-up connection. This is not suitable to connect to your private LAN when you're at home anyway. And of course it's slow.

TCP/IP via a WaveLAN CF card

Works fine. WaveLAN CF cards are available in the range 100 - 150 Euro. I seriously considered this, but I only have WaveLAN connectivity at the office, not at home, and buying a WaveLAN AP (accesspoint) for home use would mean to spend another 130 Euro. Maybe I do that later, though.

TCP/IP via an Ethernet CF card

This is what I did. I've located an online shop (in Germany) that sells FastEthernet CF cards for 40 Euro plus 10 Euro P&P, which seemed pretty reasonable to me. It also includes a CF-to-PCMCIA adaptor, so you can use the card with your notebook, too.

TCP/IP over DSL via an Ethernet CF card

Yes, there's even a DSL driver for the Zaurus. However, I already have a DSL router at home, so I only need to connect the Zaurus to the already existing LAN.

Additionally, there are PCMCIA-socket-to-CF-card adapters (about 50 Euro), so you can use any PCMCIA modem, WaveLAN or Ethernet card with the Zaurus, too. This might be a worthwhile solution if you already have such a PCMCIA card, but otherwise, it's more convenient to buy a real CF card. (Note: CF card means cards that can be plugged into the CompactFlash socket.)

Well, as I wrote above, I bought a FastEthernet CF card. The online shop actually advertised it as a "FiberLine" model, but what I got was an "Apollo" card. I assume that it is an OEM model / clone of the FiberLine card, because the case with LEDs etc. looked exactly identical.

Anyway, I just plugged it in and it worked, right out of the box. I used the "Internet Wizard" to configure IP, netmask, gateway and nameservers, and I could ping my router immediately. Then I fired up Opera and visited some websites, just for testing purposes. I also tried an IRC client, and even started a VNC server to access the Zaurus from my desktop computer. All of that worked very well.

Of course, the Zaurus isn't capable of saturating a 100 Mbps LAN, but I could achive 20 Mbps throughput by FTPing a big file from my fileserver. I think that's pretty good for a small PDA. It's definitely more than enough to mount the fileserver via NFS and play MPEGs from it. :-)

The energy consumption is moderate. I used the network for about two hours (with the display light at 25%) before the battery was signalled to be low. Also, the card does not produce any significant heat. It has six LEDs to indicate the status: link established, 10/100 Mbps, full / half duplex, receive activity, transmit activity, collision detected. The card does not block the headphone / microphone connector, nor the stylus slot.

Another thing that I like: a CF-to-PCMCIA adapter was included with the CF card. Using this adapter, I could plug the card into my notebook. It works fine with FreeBSD, I only had to add an entry to the pccard.conf file. The card is recognized by the standard "ed" driver.