What to do if your connection always times out?

Method 1: Lowering the transfer rate manually

Actually this worked for a while but it would still start revving out, so making the last
item "fixed" ensures it does not spin. Btw. If your wireless card has already gone into
meltdown issuing this command will get it working again.

iwconfig wlan0 rate 5.5M fixed

I have also tried setting this in the IWOPTS, but it does not seem to be taking, so now what I do until I get this sorted out is:

netcfg2 -c <your wireless profile>
iwconfig wlan0 rate 5.5M fixed

And then it never times out (at least for me)

Found the $POST_UP option, so appending this to your profile config
file, sets the rate correctly when using the netcfg tools.

POST_UP="iwconfig wlan0 rate 5.5M fixed"

Actually for my card setting the rate higher still works, so now this line looks like:

POST_UP="iwconfig wlan0 rate 12M fixed"

Now calling;

netfcg2 -c <wireless profile>

or

netcfg-menu

and choosing your profile works without extra commands.

Method 2: Aircrack-ng patched driver

Another method that works for some users are the Aircrack-ng patches for the rtl8187 driver. This driver can be installed by the rtl8187-ng package from AUR.

Method 3: Using Ndiswrapper

If everything else fails, then you are left with using Ndiswrapper. Ndiswrapper takes Windows RTL8187 drivers and uses them to enable your card.

Symptoms which suggest you may have better luck with Ndiswrapper:

"iwlist wlan0 scan" results are irregular and/or don't show some APs.

Everything seems to be working, except the DHCP request, which may just time out.