Intel WiFi: install the latest driver

Back to the home page

When you have an Intel WiFi chipset that's not too ancient, it'll run on the iwlwifi driver (old Intel chipsets might use the iwlegacy driver of the ipw2200 driver).

In certain circumstances you may need a newer iwlwifi driver for your Intel wireless card, than the one that's available by default in Linux Mint and Ubuntu. For getting that, you have the following options:

Contents of this page:

Check whether you're using the iwlwifi driver

1. First check whether your WiFi chipset actually runs on the iwlwifi driver:

a. Launch a terminal window.
(You can launch a terminal window like this: *Click*)

b. Use copy/paste to transfer this line into the terminal:

lsmod | grep iwlwifi

Press Enter.

Does the terminal output contain the word iwlwifi (in red letters)? If so, proceed with the next step.

First try toggling some options

2. In some cases your current iwlwifi driver already performs better when certain options are toggled, in which case it doesn't need to be replaced. Which is why you should try that first.

You can do that as follows:

a. Launch a terminal window.
(You can launch a terminal window like this: *Click*)

b. Copy/paste the following blue command line into the terminal (this is one long line, don't chop it up!):

echo "options iwlwifi bt_coex_active=0 swcrypto=1 11n_disable=8" | sudo tee /etc/modprobe.d/iwlwifi-3options.conf

Press Enter. Type your password when prompted. In Ubuntu this remains entirely invisible, not even dots will show when you type it, that's normal. Press Enter again.

Hereby you achieve three things:

- With bt_coex_active=0 you disable the Bluetooth feature of the WiFi chipset, which sometimes interferes;

- With swcrypto=1 you shift the signal encryption from the hardware (WiFi chipset) to the software, thus taking some load off the WiFi chipset;

- With 11n_disable=8 you enable antenna aggregation (Tx AMPDU). Don't be confused because of the option name 11n_disable: when its value is set to 8 it does not disable anything, but enables transmission antenna aggregation (Tx AMPDU).

c. Reboot your computer.

d. No improvement? Then undo this hack, by removing the file that contains the toggled options, with this terminal command:

sudo rm -v /etc/modprobe.d/iwlwifi-3options.conf

Reboot your computer and proceed with item 3 below.

Preparation for installing a newer driver

3. Now you need to prepare your system for installing a newer driver. Proceed like this:

a. Establish temporary internet connection by other means.

b. Launch a terminal window.
(You can launch a terminal window like this: *Click*)

c. Copy/paste the following command line into the terminal:

sudo apt-get install mokutil && mokutil --sb-state

Press Enter. Type your password when prompted. In Ubuntu this remains entirely invisible, not even dots will show when you type it, that's normal. In Mint this has changed: you'll see asterisks when you type. Press Enter again.

If it reports that Secure Boot is enabled: reboot and disable Secure Boot in the BIOS. In order to do this, you might need to set an administrator password in the BIOS first.

Disabling Secure Boot is no loss: it adds no meaningful security anyway. It's primarily a means for Microsoft to enforce its vendor lock-in on your computer...

Proceed with the next step.

The officially backported iwlwifi driver

4. The first replacement driver version to try is the officially backported iwlwifi driver. Install it like this:

a. Establish temporary internet access by other means.

b. Launch a terminal window.
(You can launch a terminal window like this: *Click*)

c. Copy/paste the following command line into the terminal, in order to install it:

sudo apt-get install backport-iwlwifi-dkms

Press Enter. Type your password when prompted. In Ubuntu this remains entirely invisible, not even dots will show when you type it, that's normal. In Mint this has changed: you'll see asterisks when you type. Press Enter again.

d. Reboot your computer.

The iwlwifi driver in the backport-iwlwifi PPA

5. No avail? The second driver version to try is the iwlwifi driver in the backport-iwlwifi PPA, which is often even newer than the iwlwifi in the official backports. Install it like this:

a. Establish temporary internet access by other means.

b. Launch a terminal window.
(You can launch a terminal window like this: *Click*)

c. Copy/paste the following command line into the terminal, in order to install it:

sudo add-apt-repository ppa:canonical-hwe-team/backport-iwlwifi

Press Enter. Type your password when prompted. In Ubuntu this remains entirely invisible, not even dots will show when you type it, that's normal. In Mint this has changed: you'll see asterisks when you type. Press Enter again.

d. Then inform your system about the new PPA, like this (copy/paste the command into the terminal):

sudo apt-get update

Press Enter.

e. Then install it as follows (copy/paste the command line into the terminal):

sudo apt-get install backport-iwlwifi-dkms

Press Enter.

f. Reboot your computer.

The iwlwifi driver straight from upstream

6. Still no avail? The third and final option is the iwlwifi driver straight from upstream at kernel.org. For installing that, you can proceed as follows:

a. Establish temporary internet access by other means.

b. Launch a terminal window.
(You can launch a terminal window like this: *Click*)

c. First copy/paste the following command line into the terminal, in order to install the application git:

sudo apt-get install git

Press Enter. Type your password when prompted. In Ubuntu this remains entirely invisible, not even dots will show when you type it, that's normal. In Mint this has changed: you'll see asterisks when you type. Press Enter again.

d. Then download the driver packages with the following command (use copy/paste):

git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git

Press Enter. Note: it's a big download of several hundred MB's, so this may take a while!

e. Now go to the folder with the driver, by executing this command:

cd linux-firmware

Press Enter.

f. Then from that folder, move the new driver to the right location, with this command (use copy/paste):

sudo cp -v -u iwlwifi* /lib/firmware

Press Enter.

g. Now acquaint your system with the new driver, by means of this terminal command (use copy/paste):

sudo update-initramfs -uk all

Press Enter.

h. Reboot your computer. Your wireless Intel card should now run on the new driver.

i. Then launch a terminal and clean up the considerable amount of debris with this command (use copy/paste):

rm -v -r -f ~/linux-firmware

Press Enter.

j. Finally, use the following command to lock the package linux-firmware to its current version, in order to prevent potential future problems by updates:

sudo apt-mark hold linux-firmware

Press Enter.


Want more tips?

Do you want more tips and tweaks? There's a lot more of them on this website!

For example:

Speed up your Linux Mint!

Clean your Linux Mint safely

Avoid 10 fatal mistakes


To the content of this website applies a Creative Commons license.

Back to the home page

Disclaimer