Intermittent connection loss / lag spikes

Hello,

Recently I’ve been having random connection loss and lag spikes and after some investigation, it seems to either come from the OS or a driver problem perhaps.

The connection problems take form as Youtube failing to load its website or taking an extremely long time, Discord having very high ping spikes (up to its limit, which is considered a temporary disconnect), as well as other websites failing to load.

At first, I thought it could have been my router, but it turns out that this problem only occurs when I use Manjaro (my phone, my roommate’s iPhone, my roommate’s laptop and even when I boot on Windows from the same exact PC don’t report this problem at all).

When I check journalctl, I see a lot of messages like wpa_supplicant[965]: wlp15s0: CTRL-EVENT-SIGNAL-CHANGE above=1 signal=-53 noise=9999 txrate=400000 (txrate varies between 173300 and 400000, signal varies from -53 to -56)

Here’s the PCI entry for the network controller, as I assume it could also be due to driver issues (perhaps?)

0f:00.0 Network controller: MEDIATEK Corp. MT7922 802.11ax PCI Express Wireless Network Adapter
        Subsystem: MEDIATEK Corp. MT7922 802.11ax PCI Express Wireless Network Adapter
        Flags: bus master, fast devsel, latency 0, IRQ 132, IOMMU group 27
        Memory at fc30300000 (64-bit, prefetchable) [size=1M]
        Memory at f6300000 (64-bit, non-prefetchable) [size=32K]
        Capabilities: [80] Express Endpoint, IntMsgNum 0
        Capabilities: [e0] MSI: Enable+ Count=1/32 Maskable+ 64bit+
        Capabilities: [f8] Power Management version 3
        Capabilities: [100] Vendor Specific Information: ID=1556 Rev=1 Len=008 <?>
        Capabilities: [108] Latency Tolerance Reporting
        Capabilities: [110] L1 PM Substates
        Capabilities: [200] Advanced Error Reporting
        Kernel driver in use: mt7921e
        Kernel modules: mt7921e

Thank you in advance for your help!

Hi @Maeldroem, and welcome!

Please provide the output of:

systemctl list-unit-files --state enabled --no-pager

Thanks! and here’s the output

UNIT FILE                          STATE   PRESET  
cups.path                          enabled disabled
bluetooth.service                  enabled disabled
cronie.service                     enabled disabled
cups.service                       enabled disabled
docker.service                     enabled disabled
getty@.service                     enabled enabled 
lm_sensors.service                 enabled disabled
ModemManager.service               enabled disabled
NetworkManager-dispatcher.service  enabled disabled
NetworkManager-wait-online.service enabled disabled
NetworkManager.service             enabled disabled
sddm.service                       enabled disabled
systemd-timesyncd.service          enabled enabled 
waydroid-container.service         enabled disabled
cups.socket                        enabled disabled
systemd-userdbd.socket             enabled enabled 
remote-fs.target                   enabled enabled 
fstrim.timer                       enabled disabled
pamac-cleancache.timer             enabled disabled
pamac-mirrorlist.timer             enabled disabled

20 unit files listed.

:question:

Welp, I think something is interfering with your wifi signal and those CTRL-EVENT-SIGNAL-CHANGE messages is your driver’s way of trying to handle it.

I have come across this post: CTRL-EVENT-SIGNAL-CHANGE spam in journalctl log - Issues & Assistance - Garuda Linux Forum

Leading to here, which worked for that individual, apparently:

Thank you, just replaced wpa_replicant with iwd, will report on whether that solved it or not (will mark as solution)

1 Like

So, followed the guide to replace wpa_supplicant with iwd but it just broke my network manager. Before the restart I was able to connect to my network with what I assume was iwd, but it showed the same connectivity issues, so I rebooted.

After the reboot though, no wifi was working, all of them were complaining that “No secret(s) were provided” (translated from Norwegian) even though I did provide the password for the network and made sure that in the settings the password was registered.

So I had to switch back to wpa_supplicant

1 Like

Well, it was just an educated guess. But I’m glad you could recover and I’m glad I don’t use WiFi.

I don’t know if this’ll have any effect, but try turning your router off for a few minutes and then on again?

2 Likes

Unfortunately, I tried this multiple times :sweat_smile:

I do appreciate the help you provided though :smiley:

I’ll continue searching for what’s going on. Have you got any leads perhaps of where I could start my search or obtain useful resources for solving that kind of issue?

None, whatsoever. Sorry.

1 Like

It could just be a crowded channel which the router is set to. This often happens.

You could try linssid which I find very useful for setting this more appropriately:

sudo pacman -Syu linssid
1 Like

Did you try the solution in the link given to you earlier by @megavolt ?

Regards.

Sorry for the delay, but yes I did try it out and it hasn’t changed anything unfortunately :confused:

It could just be a crowded channel which the router is set to. This often happens.

I doubt it as it works perfectly fine when I boot on another OS or on other devices.

Moreover, my router’s admin panel is locked behind a password that the owners of the apartment didn’t give me yet :confused:

I could pay for a new router, but the ISP we’re using chose to give the only option of you paying for a new router and having to sort of rent the service of the new router, like, wtf :roll_eyes:

OK 2 things.

First … dont source garuda without scrutiny. As per usual they dont actually know what they are trying to regurgitate.

This is wrong.
For one thing the service should not be enabled or started when using NetworkManager.

The correct steps are here:

https://wiki.archlinux.org/title/NetworkManager#Using_iwd_as_the_Wi-Fi_backend

I also use iwd with NetworkManager and went about it using the second method there - installing

networkmanager-iwd

From the AUR.
That was about it. Can even remove wpa_supplicant. And reboot.


To the problem as a whole. Whether using iwd or not …

This device is known to have problems with latency and reliability.
The only remedy is to disable Active State Power Management.

echo 'options mt7921e disable_aspm=1' | sudo tee /etc/modprobe.d/mt-wifi-fix.conf

Reload the module or just reboot and test.

3 Likes

Thank you! It seems to work relatively better just as before but I’m still having some issues with Youtube and other websites :sweat_smile:

I don’t know if there’s more steps that we can follow. If not, I’ll mark your solution as the solution