In this short guide, you’ll see how to fix problems related to no or slow WiFi in Linux Mint. The WiFi problems in Linux Mint can be caused by different reasons like:

  • bad driver
  • incorrect settings
  • power management
  • and more

Next steps will cover the most popular solutions to WiFi problems in Linux Mint.

Step 1: Investigate the problem

The first step in solving WiFi problems and any other is to find what is the cause for the problem.

Let's gather technical information to about the internet connections and the internet:

General information for the PC

inxi -Fzx

result:

System:
  Host: my-machine Kernel: 5.4.0-81-generic x86_64 bits: 64 compiler: gcc
  v: 7.5.0 Desktop: Cinnamon 4.4.8 Distro: Linux Mint 19.3 Tricia
  base: Ubuntu 18.04 bionic
  
  ...
  
Info:
  Processes: 488 Uptime: 2h 22m Memory: 31.38 GiB used: 9.00 GiB (28.7%)
  Init: systemd runlevel: 5 Compilers: gcc: 7.5.0 Shell: bash v: 4.4.20
  inxi: 3.0.32

You can find a network section above:

Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
  vendor: Micro-Star MSI driver: r8169 v: kernel port: f000 bus ID: 1e:00.0
  IF: enp30s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
  Device-2: Intel Wireless 8260 driver: iwlwifi v: kernel port: efa0 bus ID: 02:00.0
  IF: wlp2s0 state: down mac: <filter>
  IF-ID-1: usb0 state: unknown speed: N/A duplex: N/A mac: <filter>

We can see two devices and their drivers:

  • Device-1 - cable
  • Device-2 - WiFi

Get network and WiFi info from terminal

To get network information you can use the next commands:

iwconfig

Which will return the WiFi information or nothing if there aren't:

lo        no wireless extensions.

enp30s0   no wireless extensions.

or:

wlan0     IEEE 802.11bg  ESSID:"TP-LINK_A1386C"  
          Mode:Managed  Frequency:2.427 GHz  Access Point: D4:E8:84:B4:27:7D   
          Bit Rate=2 Mb/s   Tx-Power=22 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality=46/70  Signal level=-60 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:1   Missed beacon:0
lsmod | grep iwlwifi

Getting Network Info from UI

The information about the network and especially for the WiFi is available from:

  • Main menu
  • Preferences
  • Network (Cinnamon-settings)

Where you can find information for all connected devices:

Step 2: Disable power management for the wireless card

The first solution is to disable the power management option which might cause unstable WiFi connection.

Depending on the hardware and the versions this might speed up the WiFi significantly.

To disable power management and speed up WiFi follow next steps:

  • Open terminal
  • type iwconfig
  • Check the value for Power Management. In case of
    • Power Management:off or not mentioned - nothing to do
    • Power Management:on - continue with next steps
  • type next command in terminal
    • sudo sed -i 's/3/2/' /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
  • Reboot and check again with iwconfig

Compare the results before the change and after the reboot - check the last step.

In case of worse WiFi you can revert the change by:

sudo sed -i 's/2/3/' /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf

Check the speed after the change.

Change the Power management option manually

To disable the power management manually you can use the next command:

sudo nano /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf

The file has content:

connection]
wifi.powersave = 3

Change the value to 2 and save the file. Reboot is needed at the end.

Step 3: Update driver iwlwifi options for Bluetooth, Encryption and Antenna Aggregation

In some cases the drivers need updated settings in order to have stable WiFi connection.

Let's find how we can change the settings in order to speed up and make the WiFi connection more stable.

  • Open terminal
  • type lsmod | grep iwlwifi
  • is iwlwifi in the output(in red letters) - if so continue
  • type in terminal
    • echo "options iwlwifi bt_coex_active=0 swcrypto=1 11n_disable=8" | sudo tee /etc/modprobe.d/iwlwifi-3options.conf
  • press Enter and reboot

Measure the changes before and after.

What are doing the changes

  • swcrypto=1 - change from hardware to software encryption
  • bt_coex_active=0 - disable the Bluetooth of the WiFi chipset
  • 11n_disable=8 - enable antenna aggregation

Step 4: Disable IPv6 for WiFi

In some cases IPv6 might be the reason for the slow speed or the unstable connection.

To test WiFi without IPv6 you can follow next steps:

  • Main menu
  • Preferences
  • Network Connections or Network (Cinnamon-settings)
  • Edit the WiFi connection
  • Tab IPv6 Settings
  • Change Method to ignore
  • Save and reboot

Step 5: Test WiFi speed

I'll recommend to measure the WiFi speed before any changes and take a record.

Then apply the changes and restart - again record the values.

A good tool for measuring the WiFi and internet speed in general is: Ookla speedtest.

Another useful comparison is WiFi vs cable. This might show more problems.

The tests should be done only on WiFi or only on cable in order to avoid interference or other issues.

Resources

To find more ways on how to fix the WiFi connection you can check

Or post question with your relevant information in the Linux Mint forum: