Can't connect to wifi since last update (Network Manager downgrade fixed)

Hi everybody,

I've done everything I could find in the other forum posts by I can't get my built-in BCM4350 adapter to work again.

Here is my system:

System:    Host: stylersmanja Kernel: 5.5.11-1-MANJARO x86_64 bits: 64 compiler: gcc v: 9.3.0 Desktop: KDE Plasma 5.18.3 
           Distro: Manjaro Linux 
Machine:   Type: Laptop System: Dell product: XPS 13 9350 v: N/A serial: <root required> 
           Mobo: Dell model: 0JXC1H v: X00 serial: <root required> UEFI [Legacy]: Dell v: 1.12.2 date: 12/15/2019 
Battery:   ID-1: BAT0 charge: 50.2 Wh condition: 60.1/56.2 Wh (107%) model: LGC-LGC7.790 DELL RNP72 status: Discharging 
CPU:       Topology: Dual Core model: Intel Core i7-6560U bits: 64 type: MT MCP arch: Skylake rev: 3 L2 cache: 4096 KiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 17605 
           Speed: 700 MHz min/max: 400/3200 MHz Core speeds (MHz): 1: 700 2: 700 3: 700 4: 700 
Graphics:  Device-1: Intel Iris Graphics 540 vendor: Dell driver: i915 v: kernel bus ID: 00:02.0 
           Display: x11 server: X.Org 1.20.7 driver: intel tty: N/A 
           OpenGL: renderer: Mesa DRI Intel Iris Graphics 540 (Skylake GT3e) v: 4.6 Mesa 19.3.5 direct render: Yes 
Audio:     Device-1: Intel Sunrise Point-LP HD Audio vendor: Dell driver: snd_hda_intel v: kernel bus ID: 00:1f.3 
           Sound Server: ALSA v: k5.5.11-1-MANJARO 
Network:   Device-1: Broadcom and subsidiaries BCM4350 802.11ac Wireless Network Adapter vendor: Dell driver: brcmfmac 
           v: kernel port: f040 bus ID: 3a:00.0 
           IF: wlp58s0 state: down mac: c8:ff:28:78:b3:b5 
           Device-2: NetGear A6210 type: USB driver: mt76x2u bus ID: 2-1:2 
           IF: wlp0s20f0u1 state: up mac: 78:d2:94:c2:0e:fb 
Drives:    Local Storage: total: 232.89 GiB used: 28.53 GiB (12.2%) 
           ID-1: /dev/nvme0n1 vendor: Samsung model: SSD 960 EVO 250GB size: 232.89 GiB 
Partition: ID-1: / size: 219.56 GiB used: 28.53 GiB (13.0%) fs: ext4 dev: /dev/dm-0 
           ID-2: swap-1 size: 8.80 GiB used: 0 KiB (0.0%) fs: swap dev: /dev/dm-1 
Sensors:   System Temperatures: cpu: 45.0 C mobo: N/A 
           Fan Speeds (RPM): N/A 
Info:      Processes: 194 Uptime: 5m Memory: 7.37 GiB used: 1.30 GiB (17.6%) Init: systemd Compilers: gcc: 9.3.0 Shell: bash 
           v: 5.0.16 inxi: 3.0.37

And here is my problem, since the last update, I have this strange error, I can't connect to my wifi anymore:

mar 29 09:04:04 stylersmanja NetworkManager[496]: <info>  [1585465444.3229] Config: added 'ssid' value 'SIMOND'
mar 29 09:04:04 stylersmanja NetworkManager[496]: <info>  [1585465444.3229] Config: added 'scan_ssid' value '1'
mar 29 09:04:04 stylersmanja NetworkManager[496]: <info>  [1585465444.3230] Config: added 'bssid' value '78:8A:20:8E:0D:4C'
mar 29 09:04:04 stylersmanja NetworkManager[496]: <info>  [1585465444.3230] Config: added 'key_mgmt' value 'WPA-PSK WPA-PSK-SHA256 FT-PSK'
mar 29 09:04:04 stylersmanja NetworkManager[496]: <info>  [1585465444.3230] Config: added 'psk' value '<hidden>'
mar 29 09:04:04 stylersmanja kded5[833]: plasma-nm: Unhandled active connection state change:  1
mar 29 09:04:04 stylersmanja NetworkManager[496]: <info>  [1585465444.3743] device (wlp58s0): supplicant interface state: ready -> scanning
mar 29 09:04:04 stylersmanja NetworkManager[496]: <info>  [1585465444.3744] device (p2p-dev-wlp58s0): supplicant management interface state: ready -> scanning
mar 29 09:04:06 stylersmanja plasmashell[892]: plasma-nm: Wireless scan on "wlp58s0" failed: "Scanning not allowed while unavailable or activating"
mar 29 09:04:07 stylersmanja wpa_supplicant[735]: wlp58s0: Trying to associate with SSID 'SIMOND'
mar 29 09:04:07 stylersmanja NetworkManager[496]: <info>  [1585465447.9812] device (wlp58s0): supplicant interface state: scanning -> associating
mar 29 09:04:07 stylersmanja NetworkManager[496]: <info>  [1585465447.9813] device (p2p-dev-wlp58s0): supplicant management interface state: scanning -> associating
mar 29 09:04:08 stylersmanja wpa_supplicant[735]: wlp58s0: CTRL-EVENT-ASSOC-REJECT bssid=00:00:00:00:00:00 status_code=16
mar 29 09:04:08 stylersmanja NetworkManager[496]: <info>  [1585465448.0330] device (wlp58s0): supplicant interface state: associating -> disconnected
mar 29 09:04:08 stylersmanja NetworkManager[496]: <info>  [1585465448.0332] device (p2p-dev-wlp58s0): supplicant management interface state: associating -> disconnected
mar 29 09:04:08 stylersmanja NetworkManager[496]: <info>  [1585465448.1338] device (wlp58s0): supplicant interface state: disconnected -> scanning
mar 29 09:04:08 stylersmanja NetworkManager[496]: <info>  [1585465448.1344] device (p2p-dev-wlp58s0): supplicant management interface state: disconnected -> scanning
mar 29 09:04:08 stylersmanja wpa_supplicant[735]: wlp58s0: Trying to associate with SSID 'SIMOND'
mar 29 09:04:08 stylersmanja NetworkManager[496]: <info>  [1585465448.2286] device (wlp58s0): supplicant interface state: scanning -> associating
mar 29 09:04:08 stylersmanja NetworkManager[496]: <info>  [1585465448.2295] device (p2p-dev-wlp58s0): supplicant management interface state: scanning -> associating
mar 29 09:04:08 stylersmanja wpa_supplicant[735]: wlp58s0: CTRL-EVENT-ASSOC-REJECT bssid=00:00:00:00:00:00 status_code=16

And he keeps asking for password and doing that again and again and again.

If I plug a netgear adapter, it works straight out of the box:

mar 29 09:05:22 stylersmanja NetworkManager[496]: <info>  [1585465522.1945] Config: added 'ssid' value 'SIMOND'
mar 29 09:05:22 stylersmanja NetworkManager[496]: <info>  [1585465522.1946] Config: added 'scan_ssid' value '1'
mar 29 09:05:22 stylersmanja NetworkManager[496]: <info>  [1585465522.1946] Config: added 'bgscan' value 'simple:30:-70:86400'
mar 29 09:05:22 stylersmanja NetworkManager[496]: <info>  [1585465522.1947] Config: added 'key_mgmt' value 'WPA-PSK WPA-PSK-SHA256 FT-PSK'
mar 29 09:05:22 stylersmanja NetworkManager[496]: <info>  [1585465522.1947] Config: added 'psk' value '<hidden>'
mar 29 09:05:22 stylersmanja wpa_supplicant[735]: wlp0s20f0u1: SME: Trying to authenticate with 78:8a:20:8e:0d:4c (SSID='SIMOND' freq=5180 MHz)
mar 29 09:05:22 stylersmanja kernel: wlp0s20f0u1: authenticate with 78:8a:20:8e:0d:4c
mar 29 09:05:22 stylersmanja kded5[833]: plasma-nm: Unhandled active connection state change:  1
mar 29 09:05:22 stylersmanja NetworkManager[496]: <info>  [1585465522.7954] device (wlp0s20f0u1): supplicant interface state: ready -> authenticating
mar 29 09:05:22 stylersmanja wpa_supplicant[735]: wlp0s20f0u1: Trying to associate with 78:8a:20:8e:0d:4c (SSID='SIMOND' freq=5180 MHz)
mar 29 09:05:22 stylersmanja NetworkManager[496]: <info>  [1585465522.7970] device (wlp0s20f0u1): supplicant interface state: authenticating -> associating
mar 29 09:05:22 stylersmanja kernel: wlp0s20f0u1: send auth to 78:8a:20:8e:0d:4c (try 1/3)
mar 29 09:05:22 stylersmanja kernel: wlp0s20f0u1: authenticated
mar 29 09:05:22 stylersmanja kernel: wlp0s20f0u1: associate with 78:8a:20:8e:0d:4c (try 1/3)
mar 29 09:05:22 stylersmanja kernel: wlp0s20f0u1: RX AssocResp from 78:8a:20:8e:0d:4c (capab=0x1411 status=0 aid=3)
mar 29 09:05:22 stylersmanja kernel: wlp0s20f0u1: associated
mar 29 09:05:22 stylersmanja wpa_supplicant[735]: wlp0s20f0u1: Associated with 78:8a:20:8e:0d:4c
mar 29 09:05:22 stylersmanja wpa_supplicant[735]: wlp0s20f0u1: CTRL-EVENT-SUBNET-STATUS-UPDATE status=0
mar 29 09:05:22 stylersmanja wpa_supplicant[735]: wlp0s20f0u1: WPA: Key negotiation completed with 78:8a:20:8e:0d:4c [PTK=CCMP GTK=TKIP]
mar 29 09:05:22 stylersmanja wpa_supplicant[735]: wlp0s20f0u1: CTRL-EVENT-CONNECTED - Connection to 78:8a:20:8e:0d:4c completed [id=0 id_str=]
mar 29 09:05:22 stylersmanja NetworkManager[496]: <info>  [1585465522.8774] device (wlp0s20f0u1): supplicant interface state: associating -> completed
mar 29 09:05:22 stylersmanja NetworkManager[496]: <info>  [1585465522.8775] device (wlp0s20f0u1): Activation: (wifi) Stage 2 of 5 (Device Configure) successful. Connected to wireless network "SIMOND"

The REGDOM is okay (FR), I've followed this also WiFi stopped working, suddenly but no change.

Someone has an idea? This is driving me crazy :grin:

The problem may be that even though you have the regulatory domain set correctly the firmware for this adapter has a bug relating to setting the regdom properly. Broadcom hasn't been in any rush to fix this.



I would try kernel 5.6 if you haven't already (also test other kernels including the real time kernels).



Try locking your Wifi connection to your AP's SSID in network manager.

You can do this in Network Manager's "Wi-Fi" tab in your WiFi connection's properties settings.

There is a "BSSID" drop down field where you can select and lock your home Wi-Fi to a single BSSID.

After modifying Network Manager's configuration, reboot.



Test your wifi on the 2.4 GHz band, and be sure you have separate BSSID's for the 2.4 and 5 GHz bands set in your router.



Test the broadcom-wl-dkms driver on various kernels.

You can follow my installation tutorial here:



Select a fixed WiFi channel in your router settings (if you control the router). Try to select a channel that no other neighbouring router is using (or is less used than other channels).



Test your connection with wifi encryption temporarily disabled. This is only a troubleshooting step. Never leave your wifi security disabled for an extended period of time.



Add the following kernel boot parameters to grub:

ipv6.disable=1 pcie_aspm=off net.ifnames=0

The following command will automatically add the above kernel boot parameter to /etc/default/grub:

sudo cp /etc/default/grub /etc/default/grub.bak && sudo sed '/^GRUB_CMDLINE_LINUX_DEFAULT=/s/"$/ ipv6.disable=1 pcie_aspm=off net.ifnames=0"/g' -i /etc/default/grub

After adding the boot parameters, run:

sudo update-grub 

Then reboot



If tlp is installed, then another good troubleshooting step is to temporarily disable the tlp power manager:

sudo systemctl mask tlp && sudo systemctl mask tlp-sleep

Reboot after masking those services.

If there is no improvement you can re-enable tlp by repeating those commands using "unmask" instead of "mask".



As a last resort you can test downgrading Network Manager and wpa_supplicant.



A safer alternative to downgrading Network Manager or wpa_supplicant is to replace either of them with Connman or iwd.

See:



Hope some of that helps.

2 Likes

Hi, thanks for your answer,

Kernel 5.6 doesn't solve the broblem.

I've tried to fix the BSSID, but it seems that the internal WLAN doesn't care of this settings in journalctl, that's maybe the problem?

I've test with separate SSID and BSSID, same problem. Also with no password and mac auth disabled. Same.

Tested with fixed channel 1,3,6,11 and 36,44, nothing change (and I don't have any neighbor ap on 5Ghz).

Tested with kernel parameters, tlp off no change.

Broadcom-wl-dkms doesn't work at all and I lose the internal wifi card.
Here is a safe way to downgrade network manager and wpa supplicant? I've cleared my cache just after the updates :sweat_smile:

On which kernels did you test the wl-dkms driver?

If you have cleaned your package cache you are better off to install and test either networkmanager-iwd or connman with iwd.

The LTS one, 4.14. 5.4, 5.5 and 5.6.
It fails at boot every time.

I will try networkmanager + iwd this morning and let you know.

Install this package from the AUR:

https://aur.archlinux.org/packages/networkmanager-iwd/

Test one of the real time kernels.

Networkmanager + iwd doesn't work and connman + iwd doesn't work. RT kernel doesn't change anything too.

So, I've decided to get back one on my 18.04 iso sitting on my network and reinstall from scratch.

With all updates installed except for networkmanager, wpa_supplicant and linux-firmware, everything works well.

I will try updating networkmanager and wpa_supplicant this afternoon to test but I really think it comes from the linux-firmware package.

1 Like

Anddddddd NO.
It comes from both networkmanager and wpa_supplicant (maybe networkmanager alone).

I've needed to downgrade to these versions for wifi to work:

  • networkmanager 1.14.5dev+17+gba83251bb-2
  • wpa_supplicant 2:2.6-1
[nicolas@nicolas-XPS ~]$ yay
[sudo] password for nicolas: 
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
:: Starting full system upgrade...
warning: networkmanager: ignoring package upgrade (1.14.5dev+17+gba83251bb-2 => 1.22.10-1)
warning: wpa_supplicant: ignoring package upgrade (2:2.6-1 => 2:2.9-7)
warning: yay: local (9.4.6-2) is newer than community (9.4.6-1)
 there is nothing to do

So I think I will wait for the next stable update in one or two months.
Maybe another test to do?

You're not the first to report both buugy. You can always test connman and iwd. It's not that hard to do and better than multiple downgrades.

I've tested to replace it with connman and iwd but it was not working, that's why I've thinked it was linux-firmware in the first place.
That's also why I've reinstalled from scratch to be clean.

Perhaps something was misconfigured. That really should have worked, very strange.

Regardless, glad it's working now.

It's me again, last test of the day, thanks to quarantine.

It come only from the networkmanager package. I've just updated wpa_supplicant and everything works well.

So if someone have this problem, just downgrade networkmanager with this:

DOWNGRADE_FROM_ALA=1 downgrade networkmanager

Thanks @tbg for your help and stay safe :slight_smile:

1 Like

Hi, thank you for sharing. My Wifi also doesnt work with the new networkmanager. What packages do I need? I have to copy them to my laptop via usb..

Thanks


You can try downgrading the linux-firmware package from your package cache (if you haven't deleted the files):

Example:

sudo pacman -U /var/cache/pacman/pkg/linux-firmware-20200224.r1582.efcfa03-1-any.pkg.tar.zst

Simply substitute any older linux-firmware version (in your cache) into the above command to install an alternate firmware version.

To find out which older linux-firmware packages you have saved, search your package cache with this command:

grep -r linux-firmware-*  /var/cache/pacman/pkg

Test all the older linux-firmware packages in your cache to see if an older version may correct your breakage.

Be sure to reboot after installing any alternate linux-firmware package version.



If you do not have any saved versions of the linux-firmware in your cache and do not have a working connection you can download the package on another computer then transfer it to your own. You can also use Android USB phone tethering for a temporary internet connection to download and install alternate linux-firmware.



Forum kindly sponsored by