Skip to content

Instantly share code, notes, and snippets.

@jcberthon
Last active April 27, 2025 13:31
Show Gist options
  • Save jcberthon/ea8cfe278998968ba7c5a95344bc8b55 to your computer and use it in GitHub Desktop.
Save jcberthon/ea8cfe278998968ba7c5a95344bc8b55 to your computer and use it in GitHub Desktop.
NetworkManager Wi-Fi powersaving configuration

NetworkManager WiFi Power Saving

NetworkManager supports WiFi powersaving but the function is rather undocumented.

From the source code: wifi.powersave can have the following value:

  • NM_SETTING_WIRELESS_POWERSAVE_DEFAULT (0): use the default value
  • NM_SETTING_WIRELESS_POWERSAVE_IGNORE (1): don't touch existing setting
  • NM_SETTING_WIRELESS_POWERSAVE_DISABLE (2): disable powersave
  • NM_SETTING_WIRELESS_POWERSAVE_ENABLE (3): enable powersave

Then I propose 2 files, only one of them needs to be put under /etc/NetworkManager/conf.d/.
One is forcing to disable powersaving, while the other one enable it.

Once you have put the file in the right folder, simply restart NetworkManager:

sudo systemctl restart NetworkManager
# File to be place under /etc/NetworkManager/conf.d
[connection]
# Values are 0 (use default), 1 (ignore/don't touch), 2 (disable) or 3 (enable).
wifi.powersave = 2
# File to be place under /etc/NetworkManager/conf.d
[connection]
# Values are 0 (use default), 1 (ignore/don't touch), 2 (disable) or 3 (enable).
wifi.powersave = 3
@theomkumar
Copy link

@josecastillolema try the following

❯ nmcli con show

NAME                UUID                                  TYPE   
   DEVICE 

Name 4G     wifi   
 .......

❯ nmcli con show "Name 4G" | grep save


802-11-wireless.powersave:              0 (default)

❯ nmcli connection modify "Name 4G" 802-11-wireless.powersave 2

❯ nmcli connection up "Name 4G"

Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/21)

❯ nmcli con show "Name 4G" | grep save


802-11-wireless.powersave:              2 (disable)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment