Concluding from your testing experience, would you use iwd on your primary machine?
- Yes, for daily use.
- Maybe, in some situations.
This is Lukas Märdian, a software engineer for the Ubuntu Foundations team. I have been evaluating the use of iwd  as a wireless daemon in Ubuntu. iwd (iNet Wireless Daemon) is a modern, up-and-coming wireless daemon for Linux. It is written by Intel and aims to replace wpa_supplicant for potential benefits in:
- simplification of network management
- faster network discovery
- fast and reliable roaming
- using less system resources
- using features offered by the Linux kernel
- support for enterprise security methods like EAP
- support for kernel asymmetric key rings and trusted platform modules (TPM)
- support for multiple clients
With its recent versions (v1.5+) iwd mostly reached feature parity with wpa_supplicant, but it is still lacking some real world testing in desktop systems and might have some rough edges. We would like to evaluate its stability and usability with the help of the broader Ubuntu community and would love to get your support in deciding if iwd is ready for prime time!
To prepare your Ubuntu 20.10 (Groovy) or 20.04 LTS (Focal) desktop system for using iwd, you just need to follow the 3 easy steps below:
- Install iwd
sudo apt install iwd
- Configure NetworkManager to use iwd
sudo gedit /etc/NetworkManager/conf.d/iwd.confadding those two lines:
- Disable wpa_supplicant and reboot:
sudo systemctl mask wpa_supplicant
There is a known timing issue where NetworkManager sometimes does not show any wireless networks after a reboot, you can restart iwd to make them re-appear:
sudo systemctl restart iwd
NetworkManager will ask to resupply your WiFi credentials on first connection, in order to transfer them into iwd’s secret storage at
/var/lib/iwd/, but after that you can just use NetworkManager as usual. Advanced settings can be configured via
/etc/iwd/main.conf , but it should not be needed for this evaluation.
If you do not want to use iwd anymore, simply delete
/etc/NetworkManager/conf.d/iwd.conf, remove iwd (
apt remove iwd), re-activate wpa_supplicant (
systemctl unmask wpa_supplicant) and reboot your system.
We are mostly interested in the latest version of iwd (v1.8), available in the current Ubuntu development release (20.10, Groovy Gorilla), but also how it generally works with the latest LTS (20.04, Focal Fossa), using iwd v1.5. Please examine a few of the listed test cases (you can also think about additional tests if you want!), post your test results in the comments below and don’t forget to mention the Ubuntu and iwd version you have been using.
- 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)