TL;DR Is there a usb wifi dongle for ubuntu that works reliably, including suspend/resume support?
I've used Ubuntu since around version 12. There wireless support has always been funky but I could usually work around it. My current laptop, a Toshiba Satellite, would reliably have a wireless problem under Ubuntu every six months, usually timing with an upgrade of the OS. I would try things in the online forums, usually messing with modprobe and iwlwifi.conf to fix it. After upgrading to 16.04 last week, it stopped working again (hardware block reported by rfkill).
Currently, I have the same issue as this user, and tried all of the recommended fixes, including removing the battery and holding the power key down for 30 seconds. (Just giving background - not looking for further advice). "Wi-Fi is disabled by hardware switch" on Toshiba Satellite P855-335
After diligently going through all of the fixes in that article (and the three linked to it), nothing worked. I decided to give up on the onboard wireless and bought the Edmax USB wifi dongle (Edimax EW-7811Un 150Mbps 11n Wi-Fi USB Adapter).
I plug it in. It doesn't work, but I suspect that the onboard wifi conflicts with it somehow. So, I modify /etc/modprobe.d/iwlwifi.conf to blacklist iwlwifi and iwldvm. I reboot, and great! The usb wifi dongle works.
(SSID and device id info anonymized below).
$ sudo nmcli d
DEVICE TYPE STATE CONNECTION
wlx88da384d3dab wifi connected MyWirelessSsid
lo loopback unmanaged --
I happily use the dongle until I suspend/resume. After suspend/resume the system thinks I have a usb ethernet card, instead of a wireless card.
$ sudo nmcli d
DEVICE TYPE STATE CONNECTION
wlx88da384d3dab ethernet unavailable --
lo loopback unmanaged --
I unplug the wireless usb dongle, then plug it back in. Now the system thinks it's a wifi dongle again! And things work as before. Now I just have to replug my usb wifi dongle after I suspend/resume my laptop.
Is there a USB wifi adapter that reliably works with Ubuntu? Including suspend/resume.
Thanks for reading my question.