AB9IL.net: Compat-Wireless for Linux 2.6.25+

Written and curated by Philip Collier / AB9IL
HOME Software Defined Radio WiFi Antennas Air and Space Radio Linux or Windows Digital Audio Liberation Tech Video Gallery Photo Gallery

Live Internet SDR List Radio Caroline BBC Radio 4 LW


Advertisement
Airband Radio on the RTL-SDR
How to maximize RTL-SDR performance for aeronautical comms.

We earn a commission if you make a purchase, at no additional cost to you.

Which Kernels is this for?

Updated December 7, 2022

Please note: there are two project branches which matter on this subject of wireless driver collections. One branch we now call compat-wireless-old, which is for older Linux Kernels but works with somewhat newer hardware.

Here are the Linux Kernels covered:

The other branch is now called backports. It provides fresh and current wireless drivers for older Linux Kernels all the way back to 2.6.26. If you are using a computer or device which needs Linux kernel 2.6.26 or a newer kernel up through the last release, backports works.

If you use a wireless adapter with support already in the Linux Kernel, and have a recent Linux kernel running, you are ready to plug and play without installing extra drivers. However, an older kernel or a wifi device without built-in kernel support will require you to install backports. I have experienced frustration with incompatible wifi adapters and am so happy that we now have this system for backporting code which makes wifi work on older machines. With that said, let us get on with the info.

Here is my original post about Compat Wireless, which is still applicable...

One of the challenging aspects of installing the Linux operating system on both new and old computers is ensuring stable and fast networking capability. Modern Kernels, especially since the release of Linux 2.6.28, have included drivers for network interfaces commonly installed on most computers. Some wireless drivers did not have a smooth start, as evidenced by the need for refinements and patches to the Ralink RT-73, RT-2860, and Realtek RTL-8187 drivers. As of Linux 2.6.33, these drivers work very nicely with their wireless chipsets, and in many cases run the hardware more effectively than the drivers in Microsoft Windows operating system.

One reason for the recent jump in quality wireless driver software within the kernel is due to the inclusion of the Compat-Wireless driver package. Compat-Wireless has evolved over the past few years, from a rough batch of drivers written and patched by a few people seeking better performance to a comprehensive set of Wi-Fi and bluetooth drivers that provide a stable and nicely optimized networking framework. As new Wi-Fi or bluetooth devices are released, the Compat-Wireless team are at the forefront of writing the raw code that runs the devices in Linux. The newest "bleeding edge" drivers can be installed on any computer running Linux as old as kernel 2.6.25, so older computers can indeed use modern wireless interfaces in Linux.


INSTALLING COMPAT-WIRELESS DRIVERS

Installing the Compat-Wireless drivers requires about fifteen minutes and is not difficult for a person with average computing skills. The procedure requires downloading the source code, navigating to it in a file manager, and executing some commands in the directory holding the source code. The result is a system using the most recent wireless and bluetooth drivers - perhaps weeks or months ahead of the time these drivers would appear in the mainline kernel. It is perhaps the best way to enable Linux wireless on a system with bleeding edge networking hardware installed.

  1. To make and install source code, you must have your kernel headers installed!
  2. Visit the Linux Backports - Stable releases for nicely working wireless drivers.
  3. Visit the Linux Backports - Next releases for bleeding edge wireless drivers.
  4. Download the source package. Also, check authenticity using the signature and sha256sums.
  5. Navigate to the location of the source package, and extract it by opening a console window and using the "tar" command:

Use one of the following to extract the contents, as appropriate. I show an example with compat-wireless-2.6, but you could have backports-3.10.17-1 or similar:

ironhand@onosideboard:~$ tar -xjvf compat-wireless-2.6.tar.bz2
or
ironhand@onosideboard:~$ tar -xf compat-wireless-2.6.tar.xz
or
ironhand@onosideboard:~$ tar -xvf compat-wireless-2.6.tar.gz
  1. Build and install the package by executing (as root) the make and install commands:
ironhand@onosideboard:~$ sudo make && make install
[sudo] password for ironhand:

For the next few minutes, the console window will display very many lines of text as the compat-wireless drivers are compiled and installed. When this stage of the process is complete, a list of the wireless and bluetooth driver modules on the system will be displayed, along with the following instruction:

Now run:

sudo make unload to unload both wireless and bluetooth modules
sudo make wlunload to unload wireless modules
sudo make btunload to unload bluetooth modules

And then load the wireless or bluetooth module you need. If unsure reboot.
Alternatively use sudo make load/wlload/btload to load modules

The compat-wireless drivers are now ready to load. Reboot the computer or simply issue the following command to unload the current drivers and replace them immediately with the compat-wireless drivers:

ironhand@onosideboard:~$  sudo make unload && sudo make load
[sudo] password for ironhand:

The Compat-Wireless drivers are known to work well, with minimal problems. If, however, your computer is having compatibility issues or perhaps is unstable with these bleeding edge Linux wireless drivers, visit the Compat-Wireless Support Page.




© 2005 - 2024 AB9IL.net, All Rights Reserved.
About Philip Collier / AB9IL, Commentaries and Op-Eds, Contact, Privacy Policy and Affiliate Disclosure, XML Sitemap.

This website is reader-supported. As an Amazon affiliate, I earn from qualifying purchases.