Please note: This project is no longer active. The website is kept online for historic purposes only.
If you´re looking for a Linux driver for your Atheros WLAN device, you should continue here .

IBM Dual-Band 802.11a/b Wireless LAN Mini PCI adapter

... is the official name according to IBM webpages. The IBM FRU part number is 91P7263.

In Windows, hardwaremanager calls it Dual-band Wi-Fi Wireless Mini PCI Adapter and lists PHILIPS COMPONENTS as manufacturer. Of course, Philips is only an OEM and the card is indeed an Atheros made, as can be seen with lspci (PCI-ID: 168c:0012).

Running Knoppix 3.6 with kernel 2.4.27 it is automatically detected as can be seen from the kernel message ring puffer:

$ dmesg | egrep "^ath|^wlan"
ath_hal: 0.9.6.11
wlan: 0.7.3.1 BETA
ath_pci: 0.8.5.2 BETA
ath0: mac 4.2 phy 3.0 5ghz radio 1.7 2ghz radio 2.3
ath0: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
ath0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
ath0: 802.11 address: de:le:te:de:le:te
ath0: Atheros 5211: mem=0xc0200000, irq=11

The appropriate kernel modules have been loaded:

$ lsmod | grep ath
ath_pci                  30228    0 (unused)
wlan                     46792    1 [ath_pci]
ath_hal                 111792    1 [ath_pci]

This look a tad different with madwifi_ng drivers, e.g. Ubuntu 7.10 running kernel 2.6.22

# dmesg | egrep "ath|wlan|wifi"
[   29.184000] ath_hal: module license 'Proprietary' taints kernel.
[   29.188000] ath_hal: 0.9.18.0 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413)
[   29.552000] wlan: 0.8.4.2 (0.9.3.2)
[   29.660000] ath_pci: 0.9.4.5 (0.9.3.2)
[   29.916000] ath_rate_sample: 1.2 (0.9.3.2)
[   29.916000] wifi0: 11a rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps
[   29.916000] wifi0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps
[   29.916000] wifi0: H/W encryption support: WEP AES
[   29.916000] wifi0: mac 4.2 phy 3.0 5 GHz radio 1.7 2 GHz radio 2.3
[   29.916000] wifi0: Use hw queue 0 for WME_AC_BE traffic
[   29.916000] wifi0: Use hw queue 0 for WME_AC_BK traffic
[   29.916000] wifi0: Use hw queue 0 for WME_AC_VI traffic
[   29.916000] wifi0: Use hw queue 0 for WME_AC_VO traffic
[   29.916000] wifi0: Use hw queue 8 for CAB traffic
[   29.916000] wifi0: Use hw queue 9 for beacons
[   29.948000] wifi0: Atheros 5211: mem=0xc0200000, irq=11
[   62.964000] ath0: no IPv6 routers present

# lsmod | egrep "ath|wlan"
wlan_scan_sta          15104  1
ath_rate_sample        14208  1
ath_pci                98336  0
wlan                  206660  4 wlan_scan_sta,ath_rate_sample,ath_pci
ath_hal               192720  3 ath_rate_sample,ath_pci

New generation MadWifi drivers create a base device called wifi0, wifi1, ... for the underlying wifi hardware. The station interface (e.g. ath0) has to be created on top of it, either manually or by scripts during system initialization.

Application Examples

For configuring wireless devices there are several tools available: wlanconfig, iwconfig,iwpriv,iwlist, ...

Scan for Access Points:

  1. Bring the interface up: ifconfig ath0 up
  2. Start scan: iwlist ath0 scan

Connect to Access Point:

  1. Set Access Point MAC address: iwconfig ath0 ap 00:20:A6:52:0A:98 (replace with your appropriate MAC address)
  2. set frequency/channel: iwconfig ath0 freq 12
  3. bring interface up: ifconfig ath0 up
  4. start DHCP daemon: pump -v -i ath0

Check connection:

  1. Use wavemon to monitor the status of your wirless connection, signal quality,...

Sniff WLAN traffic on a certain channel:

  1. enable monitor mode: iwconfig ath0 mode monitor
  2. set frequency/channel: iwconfig ath0 freq 1
  3. start wireshark (aka. ethereal) and use interface ath0 in promiscuous mode for capturing.

If that does not work for you and wireshark does not display anything, then also run Kismet. It will enable monitor mode for you. See next paragraph.

Kismet:

To sniff 802.11b using kismet, edit /etc/kismet/kismet.conf

source=madwifi_b,wifi0,madwifi-ng

Hints on using kismet: Press 's' and 'Q' to disable auto-fit. Now you can select nodes using cursor keys up/down.

Further Reading

For general information about Madwifi driver support, see

Author

Written by Daniel Kabs ( madwifi (at) kabsi (dot) de )