Wifi on 16.04 takes a long time to find known and unknown local networks
I have been having an issue that's been bugging me and causing a few disruptions in my workflow on 16.04 on my ASUS x550la.
When clicking the wifi icon in the toolbar, no networks are displayed for quite a while. Sometimes I may go up to 5 minutes and still no network connection. Also trying to add a hidden network does not help. It still will not connect immediately. I find that this most frequently and severely happens when logging on from standby, although I have still experienced the issue even when I have been using the computer for quite some time. I would also like to note that 16.04 is not the only version that has given me this issue. I had the same problem on a different Lenovo laptop running 14 or so.
sudo lshw -class network
returns the following when connected:
description: Wireless interface
product: Wireless 7260
vendor: Intel Corporation
physical id: 0
bus info: pci@0000:03:00.0
logical name: wlp3s0
version: 73
serial: xx:xx:xx:xx:xx:xx
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=iwlwifi driverversion=4.4.0-31-generic firmware=16.242414.0 ip=104.39.109.23 latency=0 link=yes multicast=yes wireless=IEEE 802.11abgn
resources: irq:46 memory:f7c00000-f7c01fff
Also, running
sudo iwlist scan
seemed to allow me to connect almost immediately after I ran the command, so It may be just an issue where my wireless card is not actively scanning for networks. But I have not been able to recreate the issue to try this method again as of yet.
In any case, I would like to know what I can do to give me some better control over how quickly I can connect to a known network. Even if iwlist scan is my best option.
Thank you for your time.
First, I suggest that you upgrade the firmware; from the terminal:
wget http://mirrors.kernel.org/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.161_all.deb
sudo dpkg -i linux*.deb
Then set your regulatory domain explicitly. Check yours:
sudo iw reg get
If you get 00, that is a one-size-maybe-fits-all setting. Find yours here: http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 Then set it temporarily:
sudo iw reg set IS
Of course, substitute your country code if not Iceland. Set it permanently:
gksudo gedit /etc/default/crda
Use nano or kate or leafpad if you don't have the text editor gedit.
Change the last line to read:
REGDOMAIN=IS
Proofread carefully, save and close the text editor.
Reboot and let us know if connectivity is improved.