Unstable wifi with intel 8260 [8086:24f3] (rev 3a) on Ubuntu 16.04 running on Lenovo P50

On my brand new Lenovo P50 the wifi is unstable. sometimes it connects, sometimes it does not, or just stops working. Sometimes wifi networks are shown in the network manager, sometimes not. Sometimes even the wifi symbol disappears and changes to the symbol with the two arrows, even when no ethernet cable is connected.

sudo service network-manager restart

solves the problem for a while, but it comes back.

Hardware is Lenovo P50,

wifi adapter intel 8260 rev 3a

Ubuntu 16.04 with all updates installed as of today

Kernel 4.4.0-28-generic

driver is iwlwifi driverversion=4.4.0-28-generic firmware=16.242414.0

sudo lshw -C network

gives

*-network               
   Beschreibung: Kabellose Verbindung
   Produkt: Wireless 8260
   Hersteller: Intel Corporation
   Physische ID: 0
   Bus-Informationen: pci@0000:04:00.0
   Logischer Name: wlp4s0
   Version: 3a
   Seriennummer: 44:85:00:df:1f:b5
   Breite: 64 bits
   Takt: 33MHz
   Fähigkeiten: pm msi pciexpress bus_master cap_list ethernet physical wireless
   Konfiguration: broadcast=yes driver=iwlwifi driverversion=4.4.0-28-generic firmware=16.242414.0 ip=192.168.1.39 latency=0 link=yes multicast=yes wireless=IEEE 802.11abgn
   Ressourcen: irq:133 memory:c4c00000-c4c01fff
*-network
   Beschreibung: Ethernet interface
   Produkt: Ethernet Connection (2) I219-V
   Hersteller: Intel Corporation
   Physische ID: 1f.6
   Bus-Informationen: pci@0000:00:1f.6
   Logischer Name: enp0s31f6
   Version: 31
   Seriennummer: 50:7b:9d:fe:e7:83
   Kapazität: 1Gbit/s
   Breite: 32 bits
   Takt: 33MHz
   Fähigkeiten: pm msi bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
   Konfiguration: autonegotiation=on broadcast=yes driver=e1000e driverversion=3.2.6-k firmware=0.8-3 latency=0 link=no multicast=yes port=twisted pair
   Ressourcen: irq:130 memory:c5700000-c571ffff

Solution 1:

First, I suggest that you update the firmware. With a working internet connection, open a terminal and do:

wget http://mirrors.kernel.org/ubuntu/pool/main/l/linux-firmware/linux-firmware_1.158_all.deb
sudo dpkg -i linux-firmware*.deb

Next, check the settings in the router. WPA2-AES is preferred; not any WPA and WPA2 mixed mode and certainly not TKIP. Second, if your router is capable of N speeds, you may have better connectivity with a channel width of 20 MHz in the 2.4 GHz band instead of automatic 20/40 MHz, although it is likely to affect N speeds. I also have better luck with a fixed channel, either 1, 6 or 11, rather than automatic channel selection. Also, be certain the router is not set to use N speeds only; auto B, G and N is preferred. After making these changes, reboot the router.

Next, I recommend that your regulatory domain be set 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.

Next, I'd set IPv6 to Ignore in Network Manager: http://docs.fedoraproject.org/en-US/Fedora/18/html/Installation_Guide/images/netconfig/network-connections-ipv6-ignore.png This example is for ethernet, but you want wireless.

If these changes do not help, please try:

sudo modprobe -r iwlwifi
sudo modprobe iwlwifi 11n_disable=8

If it helps, make it permanent:

sudo -i
echo "options iwlwifi 11n_disable=8"  >>  /etc/modprobe.d/iwlwifi.conf
exit

Reboot and let us know if the performance is improved.