Understanding USB Linux Wireless Drivers - Wireless USB Driver Troubleshooting in Linux
In this Internet-driven age, there are few people who can really survive without the Internet—doubtless, you’re reading this article from the Internet, surrounded by other tabs in your Internet browser window. An increasingly popular way of bringing the Internet to your computer and into your life is with wireless—and oftentimes, that involves using a USB wireless dongle.
Linux is somewhat notorious for being difficult in getting the wireless drivers to work, with good reason. Some users suffer only a few moments of torment, while others may be sent skittering through countless lines of terminal lines while on a wired connection, desperately trying to just get the wireless driver to work.
Want to be one of those users who suffers considerably less? Take the time to learn a little about wireless drivers, and which ones fit your needs, and you may find that your next wireless device may be installed with a bit more ease.
What Is A Wireless Driver?
If you aren’t already certain, the function of a wireless driver is basically to work as an intermediary between the hardware—the wireless device—and higher level software, typically some sort of network manager program that can connect you to those wireless networks.
Obviously, having the wireless driver correctly installed is pretty important, or else the whole system caves in. Still, it doesn’t seem so hard: Windows and Macs have an easy enough time with it, after all.
This whole affair is made a lot more difficult for Linux users by the fact that most wireless driver softwares are not open source. Developers cannot create Linux versions of software that they cannot see. Usually, Linux users find ways of utilizing the original driver in creative ways, so that with a little modification and more than a little pain, they can have a driver that does the trick.
Before You Buy
The best way to prevent such unnecessary slogging is to just do a little research before buying a new computer, if it’s not already too late. Look to see what drivers are associated with which wireless product, and then determine which of those wireless drivers are compatible with your particular distro of Linux. There are a number of recommended USB wireless devices that are known to have relatively easy installations: Linux Emporium has a great list of Linux compatible USB wireless devices.
However, Be careful when shopping around for Linux-compatible drivers that are labeled as such: manufacturers often lie, changing the chipset while keeping the model number. Do your research: that’s the only real way to prevent such a heap of trouble, this simply cannot be emphasized enough.
How To Install
Unfortunately, due to the sheer variety of devices, drivers and distros, there is no one standard way to approach this process. Your best first step is to Google your device/driver and distro, and see what comes up within the Linux community. Have people installed it successfully in the past? How difficult was it to do so? Is it worth all the trouble?
There are some tools out there designed to streamline the process somewhat. Great examples of this are Wireless Tools and Wireless Extension, two packages of default Linux commands that you’ll almost certainly end up using in your quest to correctly install your wireless device. From this and other commands, many programs have been derived to make this whole process more user friendly—just snoop around within your distro. With a wired connection, some distros will even automatically do the work of finding the driver for you (assuming it’s compatible.) Ubuntu, arguably the most user-friendly of the Linux distros, has a great app that does just that if the default doesn’t work: downloading any (Windows) wireless driver and installing it for you.
All that being said, there are also non-free options available, such as Linuxant, which can also get your driver for you. It hasn’t been too popular in the Linux community, but a lot of that is more due to us being free-fiends than any actual issues with it.