Wifi on Atheros AR5BXB63 (and similar) wireless network cards

I have an acer aspire 4720z laptop with an Atheros AR5BXB63 wireless network card. Although Ubuntu 8.10 shows this hardware driver for Atheros based 802.11 wireless LAN cards it wasn’t able to help me get it working.
So i tried Madwifi as an option. Here although it got my card detecting and connecting to networks it used to give awfully slow speeds almost to the point of disconnection.
Then i finally tried to install ndiswrapper which wasn’t as difficult as i had thought.
I followed the following tutorial from ubuntuforums:

I will be recapping the whole tutorial in respect of the steps i took which were essentially the same:
First of all make sure you have another alternative to get your Internet working as in an Ethernet cable. Only then can this tutorial prove helpful.
Once that’s done you would need two packages:

1. ndiswrapper package
2. atheros package

First get onto the desktop with the following command:

cd Desktop
(Easier to keep track of where all the files are)

The following two commands will get you the tarballs of the two packages:

The above two commands will download and install headers and it won’t be a very small download for the linux headers.
After this we need to blacklist the ath_pci kernel module in the blacklist file present in /etc/modprobe.d folder under the filesystem:
echo “blacklist ath_pci” | sudo tee -a /etc/modprobe.d/blacklist

To see the appended line just open the file in any of the text editors like gedit:
gedit /etc/modprobe.d/blacklist

Now cd into the ndiswrapper folder that was created after extracting:
cd ndiswrapper-1.51

Now compile:
sudo make uninstall
make
sudo make install

cd.. (Back to Desktop)

cd ar5007eg-32-0.2

sudo ndiswrapper -i net5211.inf

The net5211.inf can also be used by an application called Windows wireless Drivers to make it installed.

Once this is done, we need to make sure that ndiswrapper is loaded in the startup of ubuntu:

sudo modprobe ndiswrapper

Now open the modules file:
sudo gedit /etc/modules

And append ndiswrapper at the end of the file. My file now look like this:

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with “#” are ignored.

fuse
lp
sbp2
ndiswrapper

It’s all done!
Now simple restart your system and hopefully it will work. The LED wasn’t working for me so remember whether your wifi is on or not.