This page describes how to use iwl-wifi ([http://www.intellinuxwireless.org/ Intel Wireless WiFi Link driver]) with an iwl3945 or iwl4965.

Introduction

The iwl-wifi drivers are open-source drivers supported by Intel, replacing the older Intel drivers ["ipw3945"] which needed some userspace daemon (see ?FootNote(ipw3945-vs-iwl3945: The Intel code in ipw3945 implements a number of non-free algorithms which are not realized in iwl3945, including automatic calibration of the radio power based on temperature variations, and dynamic tuning of the radio sensitivity based on received signal strength. These may extend the operating range of the adapter, improve throughput in various environmental conditions, and reduce power consumption, but they are kept secret by Intel.)).

Supported hardware :

Installation

Loading the iwl3945 / iwl4965 modules

?Anchor(using)

Using iwlWifi

Gnome Network Manager

Alternatively,

Note the magic pre-up line, which I needed to make the card associate with the access point. As a bonus, with this stanza the interface works after an S3 resume (i.e. suspend/resume to RAM)!

?Anchor(wpa)

Interfaces

Once the module is loaded, ip a should show two interfaces (wlan0 is the "main" one).

?Anchor(ipw3945d-to-iwl)

Switching from ipw3945 to iwl3945

Common problems and errors

?Anchor(wlan0_rename)

Another symptom is that Network-manager don't handle the wireless card.

/var/log/syslog may show :

Resolution

in /etc/udev/rules.d/z25_persistent-net.rules remove the line like

then remove the module and re-insert it.

in /etc/udev/rules.d/z25_persistent-net.rules you should now have a line like :

Card does not associate to the access point

If the card accepts the essid, for example, by doing :

but does not associate to the access point even when no encryption is needed: The driver seems to need the interface to be in the up state when it gets the essid. So first do

then set the essid as before.

If the card still does not associate to the access point even with essid and encryption keys set, try

If you configured you card in /etc/network/interfaces and you cannot associate to you access point, you might want to try different values for wpa-scan-ssid and wpa-ap-scan. The former accepts either 0 or 1, the latter 0, 1 or 2. Setting wpa-scan-ssid to 0 and wpa-ap-scan to 1 is a good first bet, but make sure to try other configurations if it doesn't work.

You may also find that setting a high retry value helps with WEP enabled access points that appear to work or that work with other cards but send repeated disassociates. Try something like this and insert an arbitrary retry value. It may take a few tries with dhclient to get an IP:

You are able to associate, but you cannot send nor receive anything on the interface

If this happens, your firewall might be blocking your traffic. This will mostly happen if you switch from ipw3945/ipw4945 to iwlwifi because the name of the interface changes from eth2 to wlan0. Check your firewall configuration, e.g. if you are using shorewall check the files in /etc/shorewall/ and change the name of the interface to wlan0.

Identify iwl wireless cards

Running  lspci -nn  should list one of :

or PCIids (not seen yet;)

See also