`wpa_supplicant` won't reconnect without reboot

Respected Community,

While using my desktop, I will suddenly be disconnected from wifi and cannot reconnect without restarting the
whole computer. Restarting the wpa_supplicant service doesn’t seem help.

I recently have moved back into my dorm that has spotty wifi (works most the time, but it will pretty much fail for 30 seconds before going back to normal). My laptop is on the same internet and has an almost identical NixOS configuration, but it doesn’t suffer from the same issue. This issue didn’t even start until a few weeks after I moved in.

Didn’t seem to find any conflicting services but maybe I missed something (NOTE: INTERNET WAS WORKING AT THE TIME I RAN THIS COMMAND):

$ systemctl list-unit-files --state=enabled

UNIT FILE                              STATE   VENDOR PRESET
dev-hugepages.mount                    enabled enabled      
dev-mqueue.mount                       enabled enabled      
sys-fs-fuse-connections.mount          enabled enabled      
sys-kernel-config.mount                enabled enabled      
sys-kernel-debug.mount                 enabled enabled      
systemd-ask-password-console.path      enabled enabled      
systemd-ask-password-wall.path         enabled enabled      
acpid.service                          enabled enabled      
alsa-store.service                     enabled enabled      
audit.service                          enabled enabled      
avahi-daemon.service                   enabled enabled      
bluetooth.service                      enabled enabled      
UNIT FILE                              STATE   VENDOR PRESET
dev-hugepages.mount                    enabled enabled      
dev-mqueue.mount                       enabled enabled      
sys-fs-fuse-connections.mount          enabled enabled      
sys-kernel-config.mount                enabled enabled      
sys-kernel-debug.mount                 enabled enabled      
systemd-ask-password-console.path      enabled enabled      
systemd-ask-password-wall.path         enabled enabled      
acpid.service                          enabled enabled      
alsa-store.service                     enabled enabled      
audit.service                          enabled enabled      
avahi-daemon.service                   enabled enabled      
bluetooth.service                      enabled enabled      
ckb-next.service                       enabled enabled      
cups-browsed.service                   enabled enabled      
dhcpcd.service                         enabled enabled      
firewall.service                       enabled enabled      
kmod-static-nodes.service              enabled enabled      
network-addresses-enp4s0.service       enabled enabled      
network-addresses-wlp5s0.service       enabled enabled      
network-local-commands.service         enabled enabled      
network-setup.service                  enabled enabled      
nscd.service                           enabled enabled      
pre-sleep.service                      enabled enabled      
prepare-kexec.service                  enabled enabled      
resolvconf.service                     enabled enabled      
save-hwclock.service                   enabled enabled      
sshd.service                           enabled enabled      
systemd-journal-catalog-update.service enabled enabled      
systemd-journal-flush.service          enabled enabled      
systemd-journald.service               enabled enabled      
systemd-logind.service                 enabled enabled      
systemd-modules-load.service           enabled enabled      
systemd-random-seed.service            enabled enabled      
systemd-sysctl.service                 enabled enabled      
systemd-timesyncd.service              enabled enabled      
systemd-tmpfiles-setup-dev.service     enabled enabled      
systemd-tmpfiles-setup.service         enabled enabled      
systemd-udev-trigger.service           enabled enabled      
systemd-udevd.service                  enabled enabled      
systemd-update-done.service            enabled enabled      
systemd-update-utmp.service            enabled enabled      
systemd-user-sessions.service          enabled enabled      
wpa_supplicant.service                 enabled enabled      
avahi-daemon.socket                    enabled enabled      
cups.socket                            enabled enabled      
nix-daemon.socket                      enabled enabled      
systemd-coredump.socket                enabled enabled      
systemd-journald-audit.socket          enabled enabled      
systemd-journald-dev-log.socket        enabled enabled      
systemd-journald.socket                enabled enabled      
systemd-udevd-control.socket           enabled enabled      
systemd-udevd-kernel.socket            enabled enabled      
cryptsetup.target                      enabled enabled      
getty.target                           enabled enabled      
local-fs.target                        enabled enabled      

I’ll try to post more output when my computer is disconnected again, but I can’t seem to do that at will.

[Solved]Wifi Random disconnects and i'm not able to bring it up after. / Newbie Corner / Arch Linux Forums ← similar to my issue except I don’t use network manager.

some kernel and system debug logs might be really useful here, as is increasing the wpa_supplicant debug level.

Not all wifi hardware or wifi driver software is high quality, fault tolerant or works well when the wifi is extremely busy and congested with other users… No doubt your dorm provided wifi is extremely overloaded.

maybe you can work with your network administrator ,or take matters into your own hands, by connecting your own wifi router to the dorms ethernet, and choosing a unused wifi channel for yourself. however many moons ago, I said to my university i was using wpa_supplicant on linux, and i nearly got expelled for not using a window laptop … I think i had gentoo at the time… :slight_smile:

Good luck.