Skip to content

Supervisor sets 802-11-wireless.powersave=1 (ignore) in wireless NM profiles, overriding OS-wide 2 (disable) #6751

@kachkaev

Description

@kachkaev

Describe the issue you are experiencing

This issue appears related to PR home-assistant/operating-system#4529 by @sairon which was addressing home-assistant/operating-system#3832, home-assistant/operating-system#4408, and similar reports.

On this HAOS 17.2 Raspberry Pi 5 system, Wi-Fi becomes unreliable after some hours unless 802-11-wireless.powersave is manually changed from 1 (ignore) to 2 (disable) on the active Supervisor wlan0 profile.

The surprising part is that this still happens even though:

  • HAOS 17.2 already contains the global wifi.powersave=2 default in NetworkManager.conf
  • a persistent keyfile imported through the supported CONFIG/network/ path can temporarily set powersave=2
  • but after reboot the active Supervisor wlan0 profile still goes back to 802-11-wireless.powersave: 1 (ignore)

What operating system image do you use?

rpi5-64 (Raspberry Pi 5 64-bit OS)

What version of Home Assistant Operating System is installed?

17.2

Did the problem occur after upgrading the Operating System?

No

Hardware details

Raspberry Pi 5 running Home Assistant OS 17.2 (rpi5-64).

Wi-Fi is used on the built-in wlan0 interface. Ethernet (end0) was also tested in parallel as a control path.

The Pi was physically moved to within approximately 10 cm of the router during troubleshooting, so weak signal is very unlikely to be the cause. BLE is also actively used on this system (multiple Govee BLE sensors), and BLE data continued to flow even when Wi-Fi later degraded.

Steps to reproduce the issue

  1. Install Home Assistant OS 17.2 on a Raspberry Pi 5 (rpi5-64) and configure Wi-Fi on wlan0.

  2. Confirm that HAOS contains the global NetworkManager setting introduced by PR Disable Wi-Fi powersave by default for all connections operating-system#4529:

    cat /etc/NetworkManager/NetworkManager.conf

    and verify that it includes:

    [connection]
    wifi.powersave=2
  3. Let the system run on Wi-Fi for some hours. In this setup, Wi-Fi eventually degrades:

    • wlan0 remains associated with the AP
    • signal remains strong
    • IPv6 link-local remains present
    • IPv4 disappears from wlan0
    • Home Assistant becomes unreachable over Wi-Fi
  4. Confirm the degraded state on the host, for example with:

    nmcli device show wlan0
    ip addr show wlan0
    dmesg | grep -Ei 'wlan|wifi|brcm|brcmfmac|cfg80211'
  5. Apply this runtime workaround on the host:

    nmcli connection modify "Supervisor wlan0" 802-11-wireless.powersave 2
    nmcli connection down "Supervisor wlan0"
    nmcli connection up "Supervisor wlan0"
  6. Verify that Wi-Fi recovers:

    nmcli device show wlan0
    nmcli -f 802-11-wireless.powersave connection show "Supervisor wlan0"

    In this setup, after applying the workaround:

    • IPv4 returns on wlan0
    • 802-11-wireless.powersave is shown as 2 (disable)
  7. Create and import a persistent NetworkManager keyfile for Supervisor wlan0 through the supported CONFIG/network/ import path, with powersave=2 explicitly set in the [wifi] section.

  8. Reboot the system.

  9. Check the active Wi-Fi connection again:

    nmcli connection show
    nmcli -f 802-11-wireless.powersave connection show "Supervisor wlan0"
    cat /etc/NetworkManager/system-connections/supervisor-wlan0.nmconnection
  10. Observe that after reboot the active profile again reports:

    802-11-wireless.powersave: 1 (ignore)
    

Anything in the Supervisor logs that might be useful for us?

No clear Supervisor-specific stack trace. The most useful signal is behavioral: after reboot/startup, the active Wi-Fi profile ends up with 802-11-wireless.powersave: 1 (ignore) again, even though HAOS 17.2
contains the global wifi.powersave=2 default and even after importing a persistent keyfile with powersave=2.

Anything in the Host logs that might be useful for us?

brcmfmac: brcmf_cfg80211_set_power_mgmt: power save enabled
ieee80211 phy0: brcmf_run_escan: error (-52)
ieee80211 phy0: brcmf_cfg80211_scan: scan error (-52)

These messages appear when Wi-Fi later degrades, and manually switching the active profile to 802-11-wireless.powersave=2 restores Wi-Fi immediately.

System information

System Information

version core-2026.4.3
installation_type Home Assistant OS
dev false
hassio true
docker true
container_arch aarch64
user root
virtualenv false
python_version 3.14.2
os_name Linux
os_version 6.12.75-haos-raspi
arch aarch64
timezone Europe/London
config_dir /config
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 17.2
update_channel stable
supervisor_version supervisor-2026.04.0
agent_version 1.8.1
docker_version 29.3.1
disk_total 28.3 GB
disk_used 7.2 GB
nameservers 192.168.15.1, fe80::7ac5:7dff:fe0b:3e60
healthy true
supported true
host_connectivity true
supervisor_connectivity true
ntp_synchronized true
virtualization
board rpi5-64
supervisor_api ok
version_api ok
installed_addons Terminal & SSH (10.1.0), File editor (6.0.0), Studio Code Server (6.0.1)
Dashboards
dashboards 3
resources 0
views 1
mode storage
Network Configuration

adapters | lo (disabled), end0 (enabled, default, auto), wlan0 (disabled), hassio (disabled), docker0 (disabled), veth780c0e2 (disabled), veth54cb1e0 (disabled), veth335662b (disabled), vethddeb0a7 (disabled),
veth1767308 (disabled), vethdbfe07d (disabled), veth65cd76a (disabled), veth43a6820 (disabled)
-- | --
ipv4_addresses | lo (127.0.0.1/8), end0 (192.168.15.80/24), wlan0 (192.168.15.81/24), hassio (172.30.32.1/23), docker0 (172.30.232.1/23), veth780c0e2 (), veth54cb1e0 (), veth335662b (), vethddeb0a7 (), veth1767308
(), vethdbfe07d (), veth65cd76a (), veth43a6820 ()
ipv6_addresses | lo (::1/128), end0 (fe80::ba00:6db:f5c8:a1ee/64), wlan0 (fe80::5f02:55b5:5bff:72d1/64), hassio (fd0c:ac1e:2100::1/48, fe80::145b:35ff:fe3d:e4ee/64), docker0 (fe80::f407:e6ff:fec1:e82f/64),
veth780c0e2 (fe80::5826:f0ff:fe64:8ff4/64), veth54cb1e0 (fe80::10cc:77ff:fe25:3b88/64), veth335662b (fe80::d081:e6ff:fe49:c067/64), vethddeb0a7 (fe80::683d:2cff:fe8f:b6e4/64), veth1767308
(fe80::4c30:aeff:fe56:700f/64), vethdbfe07d (fe80::4887:94ff:fe3a:e170/64), veth65cd76a (fe80::e405:72ff:fe96:59bc/64), veth43a6820 (fe80::f0b2:b8ff:fe8b:2b91/64)
announce_addresses | 192.168.15.80, fe80::ba00:6db:f5c8:a1ee

Recorder
oldest_recorder_run 14 April 2026 at 22:36
current_recorder_run 21 April 2026 at 14:30
estimated_db_size 104.95 MiB
database_engine sqlite
database_version 3.49.2

Additional information

During failure, Wi-Fi does not always disappear completely. Instead:

  • wlan0 can remain associated and reported as connected
  • IPv6 link-local remains present
  • IPv4 disappears from wlan0
  • Home Assistant becomes unreachable over Wi-Fi

Example degraded state:

nmcli device show wlan0
GENERAL.STATE: 100 (connected)
GENERAL.CONNECTION: Supervisor wlan0
IP4.GATEWAY: --

Applying the following runtime workaround restores Wi-Fi immediately:

nmcli connection modify "Supervisor wlan0" 802-11-wireless.powersave 2
nmcli connection down "Supervisor wlan0"
nmcli connection up "Supervisor wlan0"

After that, IPv4 returns and Wi-Fi works again.

The imported keyfile is successfully applied by ha os import and can temporarily become the active persistent file with powersave=2, but after reboot the active Supervisor wlan0 profile still ends up as 802-11-wireless.powersave: 1 (ignore).

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

Priority

None yet

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions