Instructions for installing the custom madwifi can be found in our [:DebianEeePC/HowTo/Install#head-1e6b527ab177808ee304c69da8da7e44511719c1:Install ?HowTo].

If you're impatient and want to configure for wifi without encryption to a single access point, you can simply set it up as follows:

(File: /etc/network/interfaces)
auto ath0
iface ath0 inet dhcp
pre-up ifconfig ath0 up
pre-up iwconfig ath0 essid "router ID"

A more elegant solution to connect to one or more access points either with or without encryption is to use wpasupplicant. This is our recommended way to configure wifi for the Eee.

First, you have to "aptitude install wpasupplicant".

To configure for wifi to single access point with WPA(2)-PSK encryption, open a text file and paste this and save it as /etc/wpa_supplicant/wpa_supplicant.conf:

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0

ap_scan=1
fast_reauth=1
eapol_version=1

network={
        ssid="ROUTER ID"
        psk="your password"
        priority=5
}

Then edit /etc/network/interfaces with this:

auto ath0
iface ath0 inet dhcp
wpa-driver wext
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

Reboot and you have wifi :)

For multiple access points, you'll want "roaming" mode. Starting with the previous example, in /etc/network/interfaces, change 'wpa-conf' to 'wpa-roam'. Also change 'iface ath0 inet dhcp' to 'iface ath0 inet manual' and add a default connection method 'iface default inet dhcp'. Now we are ready to define additional networks in /etc/wpa_supplicant/wpa_supplicant.conf. For example:

network={
        key_mgmt=NONE
}

This is a catch-all that will associate with any open access point within range using dhcp to connect.

You can add additional specific networks, each with their own ssid and specify either the type of encryption to use or specify key_mgmt=NONE for either no encryption or WEP.

For WEP, you specify the key as follows:

network={
     ssid="cafe"
     key_mgmt=NONE
     wep_key0=FFEEDD001122
}

Tip: If you have trouble connecting to a network because it does not broadcast its ssid, add 'scan_ssid=1' to its network stanza.