Call for testing: improved WiFi via iwd

also for me nmcli gives a wrong reply

corrado@corrado-n14-mm-0521:~$ nmcli device wifi list
IN-USE BSSID SSID MODE CHAN RATE SIGNAL BARS SECURI>
* 20:47:DA:25:4A:E9 corado Infra 6 65 Mbit/s 60 ▂▄▆_ WPA2 >
corrado@corrado-n14-mm-0521:~$

By “wrong reply” do you mean the channel is wrong? Either way, I think best course of action is to report a bug to NetworkManager. I doubt wrong network stats is a bug in iwd, I would assume it most likely to be a bug in NM integration with iwd, i.e. it is something on the NetworkManager side.

The config file isn’t in /etc/NetworkManager/conf.d in the latest version (2.4 on Lunar). /etc is used to overwrite configurations most of the time. The configuration itself still exists, but the file is /usr/lib/NetworkManager/conf.d/iwd.conf. You could set on /etc the option as false to disable iwd if you want.

In my Mantic with iwd 2.6-1ubuntu1 the file /usr/lib/NetworkManager/conf.d/iwd.conf exist and has been created automatically by iwd installation.
Sorry I misunderstood your comment about nmcli and my nmcli output is ok.

1 Like

Has anyone tried to run iwd with multiple WiFi adapters?

Mine seem to connect and get an IP. However, one of the two will always show the following:
sudo iwctl station wlan0 show
Station: wlan0

Settable Property Value

        Scanning              no                                               
        State                 disconnected  

It’s not always wlan0 that erroneously shows that disconnected state in iwctl. It seems to alternate.

[I’m on Minotaur with IWD 2.6.1]

Digging a little deeper into journalctl for the boot, I see a bunch of initial references to wpa_supplicant trying to stand up that interface at first, before IWD takes over, even though I have wpa_supplicant masked to be inactive. Erm. Any ideas?

And while we’re at it, @seb128 think you can bump to 2.7 on Minotaur?

I’m particularly interested in the fast transition 802.11r fix.

There’s only one other fix in there for SHA256 PMKID derivation

I’ve uploaded 2.7 to mantic now

Sorry, I’m a bit confused right now.
If I install iwd package, I get iwd running but wpa_supplicant too. And wifi works.

So in Ubuntu Mantic, what is now the correct way to use an iwd setup? Do I have to modify any conf file?

Other important question: does iwd natively handle wifi power saving?

If I install iwd package, I get iwd running but wpa_supplicant too. And wifi works.

So in Ubuntu Mantic, what is now the correct way to use an iwd setup? Do I have to modify any conf file?

Even though you can’t use iwd and wpa_supplicant at the same time, but you can have them both on the system for the case one works but not the other. NetworkManager defaults to using wpa_supplicant. Per this Arch WIki documentation to force NM using iwd you need to create a file /etc/NetworkManager/conf.d/wifi_backend.conf with the following content:

[device]
wifi.backend=iwd

@moderators: can we please create a continuation of this topic as a separate thread? I just found after writing the reply above that you can only post 3 replies in one topic, so I had to create a separate account to just post that. I’m pretty sure half the people who participated in the discussion can’t post anymore, so any questions from new users will remain unanswered.

I tried creating a new thread that would be a continuation of this one specifically to be able to sidewalk the issue with posting, however I haven’t found any way to create a new thread.

I read (and it fits what I see on my system) that this conf file is now /usr/lib/NetworkManager/conf.d/iwd.conf and contains

[device]
wifi.backend=iwd

So?

Host: zebra3-S340-15IWL Kernel: 6.3.0-7-generic arch: x86_64 bits: 64
compiler: N/A Desktop: GNOME v: 45.beta.1 tk: GTK v: 3.24.38 wm: gnome-shell
dm: GDM3 Distro: Ubuntu 23.10 (Mantic Minotaur)

ii iwd 2.7-2ubuntu1 amd64 wireless daemon for Linux
Ubuntu manic 23.10
I install via synaptic and got the 2.7 version.
After install I masked my wpa-supplicant.
Restarted Network and Rebooted.
After reboot I had to delete my previous wifi links. (Forget) and then Reinstall with the Password. Everything working just fine. I intend to continue with IWD on all six of my Lenovo laptops.
Thanks for all of the info provided on these discussions. It works as instructed.

Is iwd supposed to work nowadays with PEAP ? I failed today to connect to eduroam. No pb with wpasupplicant.

1 Like

Edit: Now using IWD on three of my five ubuntu laptops (forgot that the sixth one was Win11).
I have been having Zoom drop out problems prior to IWD. I’m hoping this is fixed but won’t know for two weeks from now. This IWD has also smoothed out my printer connections for some reason. I thought most of those problems were just normal until now.

Is there any useful information about using ead alongside iwd.

In our organisation, we have 802.1x authentication for BOTH wired and WiFi networks (headache intensifies).
Currently wpa_supplicant provides the mechanism for authenticating both of these connection types.

Although I can get WiFi connections working with iwd, I cannot find a way to get our 802.1x wired connections working.

The logs keep complaining about wpa_supplicant being missing (since the service is masked).

Hi all,

Some news. I tried iwd 2.13 (now in Lunar) but dit not succeed to connect to my eduroam wifi.

Thanks for testing!

iwd 2.13 that would be on the “Ubuntu Noble” development release, right? Not Lunar.
Is there any specific error message on the failure case?

Yes Noble of course!

I’m at home now and have restarted my laptop.
I can connect to unprotected eduspot wifi but not secure eduroam.
But I see this odds in syslog:

(iwd service is started without error blablabla)

2024-01-17T10:34:30.932120+01:00 fthx-hp NetworkManager[1764]: [1705484070.9314] audit: op=“connection-add-activate” pid=4014 uid=1000 result=“fail” reason=“802.1x connections must have IWD provisioning files”

2024-01-17T10:39:37.025828+01:00 fthx-hp NetworkManager[1764]: [1705484377.0145] device (wlan0): Station.GetOrderedNetworks failed: GDBus.Error:org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 1 matched rules; type=“method_call”, sender=":1.13" (uid=0 pid=1764 comm="/usr/sbin/NetworkManager --no-daemon" label=“unconfined”) interface=“net.connman.iwd.Station” member=“GetOrderedNetworks” error name="(unset)" requested_reply=“0” destination=":1.19" (uid=0 pid=1876 comm="/usr/libexec/iwd" label=“unconfined”)

2024-01-17T11:20:38.298282+01:00 fthx-hp NetworkManager[1790]: [1705486838.2980] iwd-manager[0x6201205b3880]: IWD device named wlan0 is not a Wifi device

2024-01-17T11:23:00.420854+01:00 fthx-hp NetworkManager[1790]: [1705486980.4206] device (/net/connman/iwd/0): .Set failed: GDBus.Error:net.connman.iwd.Failed: Operation failed

2024-01-17T11:23:51.046563+01:00 fthx-hp NetworkManager[1790]: [1705487031.0460] audit: op=“connection-activate” uuid=“turlututu******” name=“eduroam” pid=4053 uid=1000 result=“fail” reason=“Connection ‘eduroam’ is not available on device wlan0 because profile is not compatible with device (mismatching interface name)”

2024-01-17T11:24:30.935344+01:00 fthx-hp NetworkManager[1790]: [1705487070.9347] audit: op=“connection-add-activate” pid=4053 uid=1000 result=“fail” reason=“802.1x connections must have IWD provisioning files”
2024-01-17T11:24:30.957237+01:00 fthx-hp gnome-control-c[4053]: Failed to add new connection: (7) 802.1x connections must have IWD provisioning files

Just upgraded to Ubuntu 24.04 on home PC.

I see iwctl is now giving iwd version 2.14 . . .

$ iwctl
NetworkConfigurationEnabled: enabled
StateDirectory: /var/lib/iwd
Version: 2.14

Is there a list of tests for this other than its evidently working adequately on the home network ?

The initial post contained a list of test scenarios for consideration, feel free to share your experience with any of those, thanks!

  • Your general experience using iwd
  • Using WPA PSK (i.e. normal home Wifi setup)
  • Using WPA Enterprise (e.g. eduroam)
  • Sharing your wired internet connection via a WiFi
  • Connecting to WiFi Direct/P2P devices (e.g. printers, TVs)
  • Connection to hidden networks
  • Picking a specific network (BSSID)
  • Roaming between 2.4GHz access points
  • Roaming between 5 GHz access points
  • Roaming between 2.4GHz and 5GHz access points
  • Connection stability
  • Speed of establishing a connection (e.g. after resume from suspend)
  • Connection strength and throughput (compared to wpa_supplicant)
  • Usage of system resources (CPU and memory)
1 Like

I am here because I was having issues on Xubuntu 24.10 with the default background scanning using wpa_supplicant - background scans were finding one of my other access points in a mesh then disconnecting and reconnecting to the same AP unnecessarily disrupting my network connection. I couldn’t find the correct way to set background scans to use a lower threshold for signal strength. I set it through wpa_cli and my connect no longer does that. Since wpa_supplicant is fully dbus controlled and I couldn’t find how to change bgscan in NetworkManager I am trying iwd instead. I will see how the default scanning for roaming works in iwd compared to wpa_supplicant. IDK if NetworkManager tries to set scanning parameters when using iwd.

My connections got duplicated in networkmanager and my wireless interface changed its name from wlp195s0 to wlan0 - I prefer that easier to remember!

edit: iwd seems to working well and I dont get frequent disconnections any more. I was journalctl -f | grep -e NetworkManager -e iwd -e iwl and iwd was not logging anything, but everything works fine.