Translation(s): English, Français

(!) Discussion


Atheros AR5xxx devices (MadWifi)

This page describes how to enable support for WiFi devices based on Atheros AR5xxx chipsets, using the MadWifi driver on Debian systems.

ath_pci is one of the MadWifi (Multiband Atheros Driver for Wireless Fidelity) modules, developed by the MadWifi project. Due to its use of a proprietary hardware abstraction layer, MadWifi is not included in the mainline Linux kernel.

Driver source is packaged for Debian Lenny and Etch as madwifi-source. Supported devices are listed at the end of this page.

<!> Atheros-based USB devices are not supported by this driver (for Atheros AR5007UG, see zd1211rw).

Note: After the release of Lenny, the MadWifi driver and associated tools were removed from Debian (see Debian bug 519446). Use the ath5k or ath9k (802.11n) drivers instead.

Installation

Lenny, Etch

The driver is required to be compiled and installed, which can be automated via module-assistant.

{i} If you have a Cardbus device, physically connect it to your system before continuing.

  1. Add "contrib" and "non-free" components to /etc/apt/sources.list for your Debian version. For example:

    # Debian Lenny/5.0
    deb http://ftp.us.debian.org/debian lenny main contrib non-free

    or

    # Debian Etch/4.0
    deb http://ftp.us.debian.org/debian etch main contrib non-free
  2. Update the list of available packages and install the module-assistant and wireless-tools packages:

    aptitude update
    aptitude install module-assistant wireless-tools
  3. Build and install a madwifi-modules-* package within your system:

    m-a prepare
    m-a a-i madwifi
  4. Etch (with EtchAndAHalf kernel) and Lenny users: Unload the ath5k module:

    modprobe -r ath5k

    This module is automatically blacklisted during installation of madwifi-modules-* (via madwifi-tools).

  5. Load the ath_pci module:

    modprobe ath_pci
    This module will be automatically loaded when your system is restarted and the device is connected.
  6. Verify your device has an available interface:

    iwconfig
  7. Raise the interface to activate the radio, for example:

    ifconfig ath0 up
  8. Configure your wireless interface as appropriate.

Squeeze

The MadWifi driver and associated tools were removed from Debian (see Debian bug 519446). Use the ath5k or ath9k (802.11n) drivers instead.

Troubleshooting

When using iwconfig, I receieve the following error message: "Warning: Driver for device ath0 has been compiled with version 22 of Wireless Extension, while this program supports up to version 20. Some things may be broken..."

For Debian Etch/4.0, this was an inaccurate incompatibility warning (see the package changelog), corrected in etch/wireless-tools 28-1+etchnhalf.1 (available since the Etch 4.0r4 point release).

I am unable to configure my device to operate in Ad-Hoc mode. I receive the following error: "Error for wireless request "Set Mode" (8B06) : SET failed on device ath0 ; Invalid argument."

The MadWifi driver creates a VAP (Virtual Access Point) in station mode by default1, which cannot be changed using iwconfig. Either:

  • Destroy the existing VAP and recreate it in adhoc mode:

    wlanconfig ath0 destroy
    wlanconfig ath0 create wlandev wifi0 wlanmode adhoc
  • Include madwifi-base and madwifi-mode options in /etc/network/interfaces (which will execute wlanconfig as described above). For example:

    iface ath0 inet static
        address 192.168.1.1
        netmask 255.255.255.0
        wireless-essid MYNETWORK
        madwifi-base wifi0
        madwifi-mode ad-hoc  
  • Provide autocreate=adhoc as a module option to ath_pci, which will always create a VAP in adhoc mode:

    ifconfig ath0 down
    modprobe -r ath_pci ath_rate_sample ath_hal wlan_ccmp wlan_scan_sta
    echo options ath_pci autocreate=adhoc >> /etc/modprobe.d/local.conf
    modprobe ath_pci

    Note: Additional connected devices supported by MadWifi will also have adhoc VAPs created.

  • See also http://madwifi-project.org/wiki/Support.

    Supported Devices

    The page HowToIdentifyADevice/PCI explains how to identify a PCI device.

    The following list is based on the alias fields of  modinfo ath_pci on Lenny.

    Unsupported

    Use of NDISwrapper may be possible for support of your device.

    Footnotes

    See Also


    CategoryHardware

    WiFi/ath_pci (last edited 2009-09-30 23:40:11 by NilsBarth)