I'm pleased to reveal that our rewritten driver is just about functional. If you are interested in testing it, please read this email in full.


This driver is experimental and isn't expected to work properly.

This driver is being developed by Ulrich Kunitz and myself. Our efforts have been majorly boosted by softmac, and the softmac developers (Michael Buesch and Johannes Berg) were all too helpful when we met them last week.

We are not affiliated with ZyDAS. Do not contact them if you are using this driver.

Please do *NOT* mail us directly about this driver. Instead, mail this list, stating clearly that you are using the rewritten driver in the subject line. We have too much work to do to handle lots of email, hopefully others will help out on the list.

Also, we aren't quite ready for world domination just yet. If you have problems with the process of compiling or loading this driver, we might not rush to help you. We will let you know when this driver is ready for use by end users.

We are on IRC: Freenode, #zd1211


Our driver cannot (yet) be viewed as a replacement for ZyDAS driver. It's not hard to make a long list of things which our driver does not (yet) support:

 - 802.11a
 - Monitor mode
 - Master mode
 - Ad-hoc connectivity
 - Rate management
 - ZD1211B
 - wpa_supplicant
 - ...

However, the driver can connect to unencrypted networks and that seems to work quite well.


The driver transmits data at 11mbps by default. This may or may not be suitable for your environment. If you need more speed, you can manually change the data transmit speed with (e.g.):

        iwconfig <interface> rate 36M

However, you need to be sensible. A faster rate means an increased likelihood of transmit error, in which case you'll be needlessly retransmitting packets. In other words, you really don't want to use the faster rates unless you are close to your access point, because you'll actually get _worse_ performance. The default of 11M may even be too fast if you are testing the driver on an open network located somewhere on the next street, like I am ;)

Oh, also, 54M was broken until a little earlier today. If you want 54M to work, then you'll need to wait until tomorrows snapshot.

At some point in the future, automatic rate management will be implemented in softmac, which will result in the driver automatically selecting the most appropriate rate on your behalf.


We are using a new extension to Linux's ieee80211 stack, called softmac. This allows our driver to be nice and simple. You need Linux 2.6.17-rc1 or newer to test this driver - softmac is not included in earlier kernels. You also need to compile the ieee80211, ieee80211softmac and firmware_class modules.


Before you do anything with your interface, you need to bring it up:

        # ifconfig <INTERFACE> up

To work around a softmac bug, you need to run the following command before trying to associate:

        # iwconfig <INTERFACE> mode managed

If you do not do this, you won't be able to associate to any network.


RX performance should be good. TX performance will be poor until we implement a more advanced transmit engine.


To enable debugging, enable the ZD1211_DEBUG variable:

        # make ZD1211_DEBUG=y

Also, you can keep an eye on softmac's activity by running "iwevent" in another console while you work.


We hope that releasing a working driver base will encourage others to get involved in the project. You can see there are many features left to implement.

Please send patches to this list, with [PATCH REWRITE] in the subject line.


We have *not* copied over the list of USB ID's from the ZyDAS driver. We wish to confirm that the RF is supported for each device, and that the device actually works with our driver, before we add the USB ID.

For an explanation of RF types, see http://zd1211.ath.cx/wiki/RfTypes
We currently support the AL2230 and RF2959 RF's only. We'll add support for more if we see them included in devices available on the market (i.e. if you tell us!).

Since we only list two ID's at the moment (my device and Ulrich's device), you'll probably have to add your own before testing this. Please send success and failure reports to this list.

If you are successful, please include:
 1. The brand and retail product name of your device
 2. The USB ID's (duh)
 3. The chip ID string, which can be read by:
     # dmesg | grep "zd1211 chip"
 4. The FCC ID of your product, if it is is visible.

You may also wish to include a patch (see CONTRIBUTIONS, above).

Here is an example of a chip ID string:

        zd1211 chip 07b8:6001 v4330 full 00-12-0e AL2230_RF pa0 g--

If your RF is not supported, you will not get an ID string. The driver will bail out earlier with this type of error message:

        zd1211 RF YOUR_RF 0x? is not supported.

Please tell us about this message, so that we can add support for your RF.


We aim to get included in the wireless-2.6 kernel tree within the next week or so. We aim to get our driver included in Linux 2.6.18 - not all features will be implemented, but it will be at least partially usable (as it is now).


The easiest way to get going is from Ulrich's daily snapshots, available from:

We actually work in git repositories, more info is available here:


Firmware is pulled from userspace. You must put the binary firmware blobs (named zd1211_u*) in /lib/firmware/zd1211. You can get these blobs from:


This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
Zd1211-devs mailing list - http://zd1211.ath.cx/
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/zd1211-devs

Reply via email to