I’ve got an AR5008 wireless network adapter from Atheros in my Thinkpad. Unfortunately, while the card has some nice capabilities per se, Linux driver support is not that good. I’ve experienced a number of different issues with it ever since. Numerous times in the past I’ve thought about getting rid of it and putting some random Intel card into my notebook, but I never came around to actually doing it so far. Also, things could be a lot worse. Apple shipped this card in one of their Mac books, so pressure on the Linux kernel developers was quite high. And support for the card really got better over time. Right now (with a current ath9k driver) almost everything works for me. The only thing that doesn’t work is WPA2 Enterprise. Unfortunately, WPA2 Enterprise is the only thing that I really need. The only wlan network that I’d like to connect to on a regular basis uses WPA2 Enterprise. But that’s another story.
Lately, I’ve experienced a strange issue for a number of times. I’ve not debugged it deep enough to file a bug or to know the cause of the problem, but I’ve been lucky enough to find a workaround. To illustrate the problem, let’s take a realistic, though almost totally hypothetical example: You just moved 900 km (600 miles) north of where you lived before. Unfortunately, your new internet provider needs decades to set up your new internet connection. You’re offline. You could use the university network, but that uses WPA2 Enterprise. You’re living on the 18th floor. Luckily, there is a nice cafe in the basement, that kindly distributes the radio waves of its WPA2 Personal wireless network all the way up to your apartment. Why not go in there for a coffee and ask for the key of the wifi network? M. calls this the fine art of social engineering. And it works. Unfortunately, the owners of the cafe are not dumb. They change the key from time to time. No problem for you. You have another coffee. You get the new key. You try to connect with the new key. NetworkManager tries to connect forever. In the log you see thousands of messages like this:
ath9k_config: Unable to set channel
NetworkManager would ask you for the key of the network from time to time, but it will never connect successfully. You’re offline again. And this is reproducible. You connect for the first time: Success. The key’s changed. You try to log on with the new key: Miserable failure. Doh!
The workaround for this is easy: Just remove the ath9k driver module from the kernel and load it back into the kernel a second later:
sudo modprobe -r ath9ksudo modprobe ath9k
Although it does feel more like Windows than like Linux, it works. Your connection will now succeed. This also helps for a number of other random problems with the ath9k driver, that you might experience. So just try it. As far as our example goes, you’d still need to drink a coffee from time to time to stay online, though.
