Wifi problems after recent updates

Happy user of EOS for long time. No problems at all. Recently (as in, last weekish), after an update, my wifi started acting erratically. And soon more or less stopped working. I tried many things, including downgrading kernel, networkmanager, wpa_supplicant, and iwd, but to no avail. I could see that there was some kind of a run condition on network manager. Basically, all 3 --networkmanager, iwd, wpa_supplicant --were running and I think last 2 were both trying to configure the wifi.

Anyway, so I fixed it by making iwd the backend for networkmanager. It is super easy: https://wiki.debian.org/NetworkManager/iwd (literally 2 lines of config to be added).

Now, a big added benefit is that since iwd is usually faster than wpa_supplicant on many cards, my wifi re-connects after coming out of sleep MUCH faster than it used to earlier. I would recommend that ppl try it for that reason alone.

I used nmtui for connection at first. I find that when things are dicey, it is better fix than nmcli or nm-applet.

(X201t, N6200 intel wifi card, iwlwifi driver, wlan0).

All the best.

2 Likes

Hmmm, worth a try as I suffer from this here, too

Thanks!

Update: works great on my 2nd Laptop. wpa_supplicant successfully replaced by iwd

  • add 2 config lines
  • stop wpa-supplicant service
  • reboot (in my case)
  • re-add credentials for WiFi
    → here we go :wink:
1 Like

Just a little remark:
If you only have stopped the service, it will restart after a reboot.

When I switched to iwd some time ago, I masked wpa_supplicant.service altogether.

yes, of course: stop and disable :wink:

1 Like

I’ve just enabled iwd following the others on this thread. I had also found that recently my wifi network connection had become slightly unstable on my desktop computer. The change was quite simple and after rebooting the connection now appears very stable.

As a small bonus the connection is very slightly faster and the system is using slightly less RAM. The difference appears to be small though, and the increased stability is the main benefit.

1 Like

Also, even if you don’t stop/mask wpa_supplicant, it is fine. Meaning to say, it is not necessary, that service did not interfere w/ iwd once the config was changed. The 2 lines of config to use iwd as backend was adequate to solve my problems. Glad it helped some others in the same situation. Best-Vinay
PS: One more tip: if you have option of 5G wifi (for example, on newer routers), it will typically be much faster than 2.4G, although range will be lesser.

1 Like

Hello, can You tell me what to do step by step to change wpa_supplicant to iwd?
I see I have already iwd installed. Do I have to install also: iwdgui, networkmanager-iwd or networkmanager-iwd-owerlay?
Edit. I try this iwd but my work wifi is not supported (WEP)
Is there other alternative?
Regards.

Regarding installation - this is decribed in the above debian link: (I substituted apt with yay)

Enabling IWD backend

To enable the IWD backend, you need to:

  • Install: yay iwd
  • configure NetworkManager to enable/use the IWD backend (instead of the wpasupplicant backend), see code snippet below.

Append the following snippet in /etc/NetworkManager/NetworkManager.conf

[device] wifi.backend=iwd

  • Stop NetworkManager.service and
  • disable wpa_supplicant.service
  • restart NetworkManager.service

with following commands:

  • sudo systemctl stop NetworkManager
  • sudo systemctl disable --now wpa_supplicant
  • sudo systemctl restart NetworkManager

Better to use /etc/NetworkManager/conf.d/wifi_backend.conf for the config file.

With the following contents:

[device]
wifi.backend=iwd

2 separarate lines ^^^ (not all on one)

3 Likes

Thanks for the point. I copy&pasted the content of the debian link and formatting got lost.

But usage of conf.d is the better choice. You’re right. :+1:

1 Like