bluerobotics / bluerobotics/BlueOS

bug: WiFi password not using latest one entered, connections fail

Open
#3,900 2 comments 0 reactions 0 assignees View on GitHub
bug ui
Dominant language
Vue
Stars
453
Forks
151
Avg merge
1d 3h
Merged PRs (30d)
174

Description

### Bug description

BlueOS Wi‑Fi Manager: wrong‑then‑right password creates a stale duplicate that blocks reconnection

Summary

When a user enters an incorrect password for a Wi‑Fi network in the BlueOS
Network Manager and then later saves the correct password for the same SSID,
BlueOS creates a second NetworkManager profile for that SSID instead of
updating the existing one. Both profiles are left with autoconnect=yes.

From then on, NetworkManager auto‑activates the first matching profile it
finds — which is the stale one with the wrong password — authentication fails,
and it does not fall back to the second (correct) profile. The network
appears "remembered" in the BlueOS UI but never connects.

Symptoms

The SSID shows up in "Saved Networks" in BlueOS.

Tapping "Connect" (or auto‑connect on boot) silently fails; Wi‑Fi stays in
SCANNING or falls back to a different saved network.

nmcli connection show shows two entries for the same SSID, e.g.:

Kaumaui_Starlink 3da94b77-… 802-11-wireless (psk: fishpond, timestamp: 0)
Kaumaui_Starlink 6e777aee-… 802-11-wireless (psk: BlueRobotics, timestamp: 1776828388)

BlueOS's /wifi-manager/v1.0/saved endpoint returns two entries with the
same SSID and different nm_uuid values.

### Steps to reproduce

In BlueOS → Network Manager, connect to an SSID

and deliberately enter the wrong password. The connection fails.

Reboot, or leave the Pi idle until BlueOS retries auto‑connect, so the bad

profile gets a chance to be the one NetworkManager picks.

Return to the same SSID in BlueOS Network Manager and enter the correct

password. BlueOS shows it as "saved".

Disconnect from the current network (or reboot). Observe that BlueOS

auto‑connects to nothing, or to a different remembered network, even though
the SSID is in range and the correct password is saved.

SSH in and run sudo nmcli -t connection show — you will see two

entries with the same SSID, one of which still holds the wrong PSK.

Root cause

wifi-manager does not check whether a NetworkManager profile for the given
SSID already exists before saving credentials. Saving a new password creates a
new profile via D‑Bus rather than updating the existing one, leaving the stale
(wrong‑password) profile in place with autoconnect=yes.

Workaround

Delete the stale duplicate and activate the good one:

Inspect both profiles' PSKs to decide which one to keep:
sudo nmcli -s connection show | grep -E 'ssid|psk|timestamp'
sudo nmcli -s connection show | grep -E 'ssid|psk|timestamp'

Delete the bad one (PSK wrong, timestamp 0, no seen-bssids):
sudo nmcli connection delete

Bring up the correct one:
sudo nmcli connection up

### Primary pain point(s)

Forgetting the network doesn't seem to work?

### Additional context

Latest BlueOs 1.5 beta 35

### Prerequisites

- [x] I have checked to make sure that a similar request has not already been filed or fixed.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.