Skip to content
Open
220 changes: 191 additions & 29 deletions content/wireless.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
---
title: Wireless Troubleshooting
title: Wireless and Basic Troubleshooting
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This new name doesn't make sense to me. "Basic Wireless Troubleshooting" would make more grammatical sense than "Wireless and Basic Troubleshooting." But does adding the word "basic" add any value or make this article easier for people to find?

description: >
If you’re having problems with your wireless Internet connection, take a look at the suggestions in this article.
If your computer can’t connect to wireless networks or the connection is unstable, use this guide to diagnose and resolve the issue.
keywords:
- wireless
- wifi
- Wi-Fi
- support
- System76

Expand All @@ -16,43 +16,197 @@ section: network-troubleshooting
tableOfContents: true
---

WiFi issues are influenced by many different factors, including:
If your computer can’t connect to wireless networks or the connection is unstable, use this guide to diagnose and resolve the issue.
Start with the quick checks, then follow the targeted diagnostic and recovery steps.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Having this as a line break without being a new paragraph looks weird when rendered.

Image

I'd suggest either making it one paragraph (with no line breaks) or separate paragraphs (with a blank line in between).

Saying "start with the quick checks, then follow the targeted diagnostic and recovery steps" doesn't seem very useful when there aren't headers in the article called "quick checks" and "targeted diagnostic and recovery steps" to jump to. It's also fairly redundant with the previous sentence.

These two lines can probably be simplified to sound more natural. Something like this would be fine:

If your computer can't connect to wireless networks or the connection is unstable, the quick checks in this guide can help diagnose and fix the issue.


- Hardware (WiFi card, access point)
- Settings at both ends of the connection
- The local environment
---

## Initial Troubleshooting

1.Reboot the router/modem and the computer.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please put a space after the #. in ordered lists. This is currently being rendered as a series of regular paragraphs instead of a list since it's not valid Markdown for a list.


2.Toggle Airplane Mode by pressing **Fn + F11 →.**
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the →. for here? Airplane mode is Fn+F11 on many of our devices (but not all devices in general).


3.If your Wi-Fi issues started after an update, try removing the backported Wi-Fi driver using the command line. Open the Terminal by pressing Super+t and type the following and press Enter:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This suggestion needs to be more targeted. backport-iwlwifi-dkms is not installed by default, so it would only be present if someone installed it manually. Additionally, this package would only affect Intel wireless cards.

This is also a run-on sentence with multiple and connectors and no commas. If there are at least three steps, you need to start including commas instead (or otherwise rephrase).


```bash
sudo apt remove backport-iwlwifi-dkms
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do not include spaces at the beginning of a command. The only thing that would do is prevent the command from showing up in the user's ~/.bash_history file.

```
Then restart your computer.

4.Temporarily use a phone hotspot to confirm whether the network or your computer is the issue.

5.[Boot from a Live USB](https://support.system76.com/articles/live-disk) of your distribution to determine whether the issue exists outside your installed system.

## Router and Access Point Recommendations

Make sure your access point is configured for stability and compatibility.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks like an unordered list. If this is how you want to organize the section, then you should format it as a Markdown unordered list by starting each list item with - or * .


Use 2.4 GHz channels 1, 6, or 11 to minimize overlap.

Set the channel width to 20 MHz for crowded networks.

For 5 GHz, use an explicit channel instead of “Auto” when troubleshooting.

Use mixed mode (b/g/n/ax) if devices vary by generation.

If a single device struggles, temporarily set your router to a common mode and test.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This step is vague. I can't tell what exactly it's suggesting, and I'm not sure readers would be able to tell, either.

What does "a common mode" mean?


Avoid complex access point features such as
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can't just end a sentence in the middle with no punctuation. Use a colon if you're about to list things.


Band steering
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you convert the rest of the section to an unordered list, then you can indent these items with four spaces to make them sub-items.


Aggressive airtime fairness

Deep MAC filtering

Ensure your device’s MAC address isn’t being filtered
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sentence is also missing punctuation.


Check with

```bash
ip link show | grep ether
```

Then confirm that address is allowed in your router’s admin panel.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"that address" is a little informal and unclear. I'd suggest changing the "Check with" line to "Check your MAC address with:" to make it more clear what address you're talking about.


You can also confirm what channel and frequency your connection is using:

```bash
iw dev
iwlist wlan0 scan | grep -E 'SSID|Channel|Frequency'
```

## Device-Level Checks and Commands

These commands help verify whether your wireless card and drivers are functioning correctly.

```bash
ip a
```

List all network interfaces and IP addresses confirms your Wi-Fi interface (usually wlp2s0 or wlan0) is recognized.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This sentence isn't grammatically valid. You could make the first word "listing" instead of "list," but I'd instead make the suggestion more active by changing "confirms" to "to confirm".

Put the interface names inside of single backticks to mark them as verbatim code.


```bash
iw dev
```

Show wireless devices and their states.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you're going to list out what commands do, put the descriptions before the commands and use colons instead of periods.


```bash
sudo rfkill list
```

Check for hardware or software Wi-Fi blocks.

```bash
nmcli device status
```

Check NetworkManager device states.

```bash
sudo systemctl restart NetworkManager
```

Restart the network stack (safe to run anytime).
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The grammar here's a little murky, but to be safe and look less informal, I'd recommend changing anytime to any time in this instance (or at any time to be even safer).


## Basic Troubleshooting
```bash
journalctl -b | grep -i network
```

View network-related boot logs.

```bash
dmesg | grep -i -E 'wifi|wlan|firmware|ieee80211|rtl|brcm|ath'
```

View driver and firmware kernel logs.

To collect diagnostic info automatically:

```bash
sudo dmesg | grep -i wlan > ~/wireless-dmesg.txt
```

## Driver and Firmware Checks

If the device is detected but unstable, verify the driver and firmware setup.

Confirm the kernel has loaded the correct driver and firmware.
Comment on lines +134 to +136
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do you need to tell people to verify the driver and firmware, then to confirm the driver and firmware in the next sentence?


Check for missing firmware messages:

```bash
dmesg | grep -i firmware
```

Reinstall firmware packages:

```bash
sudo apt update
sudo apt install --reinstall linux-firmware
```

Test with a different router or mobile hotspot.

Try a Live USB session to determine if the issue is system-specific.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you want to link to the Live USB article like you did earlier? (But also, why are you suggesting it again here when it was listed as a basic step earlier?)


## NetworkManager and Configuration Tips

NetworkManager controls Wi-Fi connections on most Linux systems.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might be safer to make this a more qualified statement like "NetworkManager controls Wi-Fi connections on many Linux systems, including on Pop!_OS and Ubuntu systems by default."


If you’re having problems, try these steps first:
Restart NetworkManager:

- Try unplugging the wireless router or modem to reboot it.
- Try airplane mode by pressing <kbd>Fn</kbd>+<kbd>F11</kbd>, waiting 10s, then disabling.
- Try rebooting the computer.
```bash
sudo systemctl restart NetworkManager
```

Delete and recreate saved connections:

```bash
nmcli connection delete <SSID>
nmcli device wifi connect <SSID>
```

For unstable networks, set IPv6 to “Ignore” in the network settings
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You need a colon at the end of this sentence since it's describing what the following steps will do.


1. Open Settings → Network.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Get rid of the empty lines between these three list items (the Markdown renderer will put less empty space between them that way).

2. Select your Wi-Fi connection.

3. Go to IPv6 tab → change method to Ignore.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd say "the IPv6 tab" instead of just "IPv6 tab", and "the method" instead of just "method" unless you want to also capitalize that setting name.


## Bluetooth and Airplane Mode Interactions

If Wi-Fi disappears when Bluetooth is active:

Some router settings can cause problems. Try adjusting your access point to these settings:
```bash
sudo rfkill list
sudo systemctl restart bluetooth
```

- WPA2-AES is preferred over WPA/WPA2 mixed mode or TKIP.
- A channel width of 20 MHz in the 2.4 GHz band is more stable than automatic 20/40 MHz or fixed 40 MHz.
- Set 2.4Ghz and 5Ghz SSID names differently.
- Pick a fixed channel. Use either 1, 6, or 11 in the 2.4 Ghz band, rather than automatic selection.
- Check if the router is set to N speeds only. Auto B/G/N is preferred.
- Lower the max/burst speeds, turn off channel bonding, and reduce channel width. Setting the speed to 600 Mb/s or 450 Mb/s will use spread frequencies to achieve those speeds and may decrease stability. Try setting it to 289/300 Mb/s (N speed) or or 54 Mb/s (G speed).
- After making these changes, reboot the router.
You can also disable Bluetooth coexistence in the Intel Wi-Fi driver configuration file:

If the issues started after you applied updates, try running this command to make sure a bad WiFi driver has not been installed, then reboot your computer:
```bash
sudo gedit /etc/modprobe.d/iwlwifi.conf
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Gedit isn't present by default anymore in Pop!_OS 24.04. We might need to consider a different way to tell people to edit configuration files.

Since this instruction is just adding a line, it can probably be done with a single Bash command.

```

Add the following line:

```bash
sudo apt remove backport-iwlwifi-dkms
options iwlwifi bt_coex_active=0
```

Save, then reboot.

## Advanced Troubleshooting

If the above steps aren't working, or you would like to fine tune and improve you connection, see the following steps.

### Regulatory Domain

In many cases, it's recommended to explicitly set the WiFi regulatory domain. Check yours with this command:
In many cases, it's recommended to explicitly set the Wi-Fi regulatory domain. Check yours with this command:

```bash
sudo iw reg get
Expand Down Expand Up @@ -107,7 +261,7 @@ If you have trouble with a Bluetooth headset and keeping a steady downlink speed

### Power Management

Another way to help with Wifi issues is to turn off power management for the hardware. To do so, edit the configuration file with this command:
Another way to help with Wi-Fi issues is to turn off power management for the hardware. To do so, edit the configuration file with this command:

```bash
sudo gedit /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Diddo on the above regarding Gedit.

Expand All @@ -118,7 +272,7 @@ And change the file to read (effective upon reboot):
> \[connection\]
> wifi.powersave = 2

If `tlp` is installed, take a look at the settings file found here for additional Wifi power saving being enabled:
If `tlp` is installed, take a look at the settings file found here for additional Wi-Fi power saving being enabled:

```bash
sudo gedit /etc/default/tlp
Expand All @@ -144,7 +298,7 @@ sudo wavemon
iwevent
```

Run this command to watch what the Wifi hardware is doing. Pay attention to the disconnect reasons, and ignore the scans.
Run this command to watch what the Wi-Fi hardware is doing. Pay attention to the disconnect reasons, and ignore the scans.

```bash
sudo systemctl restart NetworkManager
Expand Down Expand Up @@ -186,15 +340,19 @@ This will reinstall network-manager, which can fix some network issues.

## Additional Info

Wifi Speeds and Frequencies:
Wi-Fi Speeds and Frequencies:

- 54 Mb/s uses the 802.11g & 802.11b standards.

- 145 Mb/s and 300 Mb/s modes use the 802.11n standard and 20MHz or 40MHz bandwidths.

- 300Mbps / 40Mhz will provide the maximum performance in most cases.

- 145Mbps / 20MHz will work better in areas with more access points.

- 450Mbps uses a 60Mhz channel width and 600Mbps uses a 80Mhz channel width, and is typically less stable.

The name of the Linux driver for Intel Wifi cards is called <u>iwlwifi</u> and is included in the kernel by default. All information about the driver can be found here:
The name of the Linux driver for Intel Wi-Fi cards is called <u>iwlwifi</u> and is included in the kernel by default. All information about the driver can be found here:

[wireless.wiki.kernel.org/en/users/drivers/iwlwifi](https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi)

Expand All @@ -206,4 +364,8 @@ Sometimes the newest version of the firmware will clear up occasional bugs. Ple

### Windows Dual Boot

If you are dual booting Windows, you may lose access to your wifi card entirely after running driver/OS updates in Windows. You may be able to gain access to your wifi card again by disabling "Fast Startup" in the Windows power options before booting back into Pop!_OS.
If you are dual booting Windows, you may lose access to your Wi-Fi card entirely after running driver/OS updates in Windows. You may be able to gain access to your Wi-Fi card again by disabling "Fast Startup" in the Windows power options before booting back into Pop!_OS.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd shorten "you are" to "you're" here.


## Contact System76 Support

If you purchased a System76 computer and you’ve tried all the steps above, but your wireless connection still isn’t working as expected, please collect the output from the diagnostic commands and contact [System76 Support](https://system76.com/contact/support)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The last sentence needs punctuation at the end.

I'd suggest making the link include the word contact. Support probably doesn't need to be capitalized.

Loading