[[PageOutline(2-5)]] = !MadWifi = !MadWifi is short for ''Multiband Atheros Driver for Wireless Fidelity''. In other words: it is a Linux kernel device driver for Atheros-based Wireless LAN devices. The driver works such that your WLAN card will appear as a normal network interface in the system. Additionally there is support for the [http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html#wext Wireless Extensions] API. This allows you to configure most aspects of the device using common wireless tools (ifconfig, iwconfig and friends). == License == This driver is provided under a [source:trunk/COPYRIGHT dual license], three-clause BSD and GPL v2. The binary HAL, however, is distributed under a [source:trunk/hal/COPYRIGHT proprietary license] and as closed-source only and thus will taint the kernel. == Features == !MadWifi is one of the most advanced drivers for WLAN devices on for Linux today, with a wide set of features. === Hardware === !MadWifi supports PCI, MiniPCI and Cardbus devices, USB devices are not yet supported. Almost all of the currently available [wiki:Chipsets Atheros WLAN chipsets] are supported, including the "System on Chip" designs. The [wiki:Compatibility compatibility list] provides information about devices that users reported (mis)success for. === Operational Modes === The following operational modes are supported: sta:: Station, a.k.a. infrastructure or managed. This device acting as typical WLAN client station. This is the default mode if not otherwise specified. ap:: Access Point, a.k.a. master. This device acts as the Access Point for other WLAN client stations. adhoc:: Ad-hoc. a.k.a. IBSS mode. This device is in a peer-to-peer(s) WLAN without the need for an Access Point. ahdemo:: Ad-hoc Demo. This is an older, non-802.11 compliant, proprietary ad-hoc mode. monitor:: Monitor. This device can be used to "sniff" raw 802.11 frames. wds:: Wireless Distribution System. This device can be used to create large wireless networks by linking several Access Points together. === Encryption === WEP:: Wired Equivalent Privacy, with 40/64 bit and 104/128 bit keys; supported in modes: sta, ap, adhoc WPA:: !WiFi Protected Access; supported in modes: sta (through [http://hostap.epitest.fi/wpa_supplicant/ wpa_supplicant]), ap (through [http://hostap.epitest.fi/hostapd/ hostapd]) WPA2/IEEE 802.11i:: !WiFi Protected Access 2; supported in modes: sta (through [http://hostap.epitest.fi/wpa_supplicant/ wpa_supplicant]), ap (through [http://hostap.epitest.fi/hostapd/ hostapd]) IEEE 802.1X:: Port-based Network Access Control; supported in modes: ap === Multi-BSSID === !MadWifi allows to run several virtual Access Points on a single card, by introducing the so called [wiki:VAP Virtual Access Points] (VAP). VAPs sit on top of a base device (usually called ''wifi0''), representing virtual WLAN devices that (despite their name) can be used in different other modes. That way a single WLAN card can connect to an Access Point while at the same time acting as Access Point for other stations. Other combinations of operational modes are possible as well. To manipulate VAPs, !MadWifi comes with a tool called ''wlanconfig'' which is used to create and destroy VAPS with various different modes. === Super A/G === Atheros has introduced a set of (proprietary) features that have been designed to increase throughput and achievable distance, including frame aggregation, jumbo frames, on-the-fly data compression and channel bonding. Please refer to [wiki:ChipsetFeatures/SuperAG this page] for details. !MadWifi supports almost all these extensions to the standard. === ... and more === Some other interesting features are: 4-address header support:: Support for transparent bridging of ethernet segments; [wiki:ChipsetFeatures/4AddressHeaders read more] Seamless Roaming:: Switch seamlessly to another Access Point if the current link gets weak; [wiki:ChipsetFeatures/Roaming read more] Wi-Fi Multimedia:: Quality of Service extensions for WLAN (IEEE 802.11e); [wiki:ChipsetFeatures/WMM read more] Transmit Power Control (TPC):: Automatic adjustment of transmit power (IEEE 802.11h); [wiki:ChipsetFeatures/TPC read more] Dynamic Frequency Selection (DFS):: Automatically avoids channels that are used by radar and similar applications (IEEE 802.11h); [wiki:ChipsetFeatures/DFS read more] Background Scanning:: Scanning other channels without loosing data; [wiki:ChipsetFeatures/BackgroundScanning read more] == Status == !MadWifi has been declared legacy, in response to our commitment to [wiki:About/ath5k ath5k]. In the long run ath5k will replace !MadWifi. For the time being !MadWifi will still be supported, bugs will get fixed and HAL updates will be applied where possible. But it becomes unlikely that we'll see new features or go through major changes on that codebase. The driver is mature and stable, though, and works well for most users. For now you should choose !MadWifi if you depend on solid WLAN support. But we also encourage all interested users to give ath5k a try.