Clicking the network manager applet in the panel I see the wireless listed as "Device not ready". This is tedious.
The solution to this issue is to remove the mainline ATK5K wireless driver from your Kernel and replace it with non-mainline MadWifi driver (source). MadWifi has superior support for the AR5212 card. This shouldn't take you more than about 20 minutes to sort out.
- Open a terminal: Aplications -> Accessories -> Terminal
- To check on your wireless card and make sure you have the AR5212:
trastle$ sudo lshw -c network
The result will look similar to this:
*-network description: Wireless interface product: AR5212 802.11abg NIC vendor: Atheros Communications Inc. physical id: 0 bus info: pci@0000:03:00.0 logical name: wifi0Now you know your sporting an Atheros AR5212. - Install some software you'll need to build MadWifi:
trastle$ sudo apt-get install subversion linux-kernel-headers build-essential \ libssl-dev
- Now go to your desktop
trastle$ cd ~/Desktop
- Make a directory to put the MadWifi source in:
trastle$ mkdir madwifi-src
- Get the latest MadWifi source:
trastle$ svn checkout http://madwifi-project.org/svn/madwifi/trunk madwifi-src
- Change into your new source directory:
trastle$ cd madwifi-src
- Change to the root user:
trastle$ sudo -i
- Blacklist the non working ATH5K drivers:
root$ echo "# Block ATH5K" >> /etc/modprobe.d/blacklist root$ echo "blacklist ath9k" >> /etc/modprobe.d/blacklist root$ echo "blacklist ath5k" >> /etc/modprobe.d/blacklist
- Change to the MadWifi source directory
root$ cd /home/[your user]/Desktop/madwifi-src
- Build and install the MadWifi driver:
root$ make && make install -d
- Add the MadWifi driver to your Kernel
root$ echo ath_pci >> /etc/modules
Now save anything else you have been working on and reboot your laptop. After the reboot your wireless will be working nicely.
2010-06-20: Edit added step 10. Thanks Xi.

18 comments:
Wow...
Many thanks for your solution!
I will try that for sure.
I've been looking everywhere for a simple and well explained solution.
Hope it will work for me!
Well... it did not work.
No go for me, either. Can't authenticate WPA.
This worked for me, including authenticating WPA. It's a shame to have to install a wireless driver from source though, bug and security fixes won't come in automatically. Is there no better way?
...before continue with nr. 10 change to madwifi dir of course, so it worked for me too. thx a lot
@Claude did you get your wireless working in the end?
@xi Thanks for the correction I have rolled updated the post.
Worked like a charm!
AR5001 and Ubuntu 10.04
Sam
worked for me too! Thank you a million...
Actually at first it didn't work. The reason was that I use localized Ubuntu and "Desktop" was translated to my language (non-latin). So 'make' was giving me an error. I changed to home directory (which is my name in latin) created madwifi-src directory and tried again. Then the magic happened. Make worked and after restart I enabled the driver from the admin panel.
Million thanks again!
Chris
This worked great for me also. Thanks a lot.
Good job ; thanks a lot
it's ready for my Atheros AR5001X+ Wireless Network Adapter
I'm getting this on step 2
crberry@crberry-z60t:~$ sudo apt-get install subversion linux-kernel-headers build-essential libssl
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting linux-libc-dev instead of linux-kernel-headers
Package libssl is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package libssl has no installation candidate
crberry@crberry-z60t:~$
@ Charles the end part of the command was cut off.
Give libssl-dev a go:
sudo apt-get install libssl-dev
got thru it, rebooted. I cannot connect to the router, it asks for the wep key a few times and then disconnects for good. Here is dmesg | grep ath .. any signs here?
[ 0.502942] device-mapper: multipath: version 1.1.0 loaded
[ 0.502946] device-mapper: multipath round-robin: version 1.0.0 loaded
[ 12.690491] ath_pci 0000:13:00.0: PCI INT A -> GSI 19 (level, low) -> IRQ 19
[ 12.690507] ath_pci 0000:13:00.0: setting latency timer to 64
[ 13.544520] MadWifi: ath_attach: Switching rfkill capability off.
[ 13.604848] ath_pci: wifi0: Atheros 5212: mem=0xa7f00000, irq=19
[ 23.812024] ath0: no IPv6 routers present
[ 60.827703] ath0: unknown SIOCSIWAUTH flag 12
[ 76.575998] ath0: unknown SIOCSIWAUTH flag 12
[ 92.652134] ath0: unknown SIOCSIWAUTH flag 12
[ 108.625915] ath0: unknown SIOCSIWAUTH flag 12
[ 130.756046] ath0: unknown SIOCSIWAUTH flag 12
[ 146.820909] ath0: unknown SIOCSIWAUTH flag 12
@Charles. Your dmesg output shows the driver is being correctly loaded then no DHCP offers are being made.
The last message "unknown SIOCSIWAUTH flag 12" looks like a bad return code being passed to MadWifi from the router (ieee80211_wireless.c).
Try temporarily configuring your router with a different SSID and no WEP to see if your able to connect.
worked thanks a lot :)
Worked on my x40 with Atheros AR5001X+
super! solved it for my ubuntu 10.04 and atheros 5001X card, thx a bunch
You are a f***ing genious! I've been pulling all my hair out since upgrading to 10.04 trying to get my wireless with my AR5212 working again with no success. I was beginning to despair having to reinstall everything yet again. You are a f***ing icon in the world of Linux. Thank you for sharing your knowledge.
-Troy
Post a Comment