124

I discovered several issues with wifi connection after installing 16.04 LTS.

First, wifi doesn't reconnect normally after sleep or hibernation. Sometimes the network icon turns into a "up and down arrows"(I don't know what it is for) after waking up but is still connected. Sometimes network is simply lost and it doesn't display any network in the list so there's simply no way to use wifi at all.

I first tried restarting network manager by running sudo service network-manager restart. It worked but was not a permanent resolution.

Then according to another thread, I added SUSPEND_MODULES="iwlwifi" to /etc/pm/config.d/config.

After doing this, the reconnect issue seems to be fixed (can automatically reconnect and icon doesn't change any more). However, I find the wifi connection gets lost randomly (about every 30 minutes) even when the computer is running and the network icon remains the connected state when connection is lost.

Another issue after adding the code is, when I put my computer to sleep, the screen will turn off for a second but then turns back on for around 5 seconds(during which the system will cut off wifi connection). And then the computer will go to sleep after this unusual "two-phase" process.

Wireless cards info below

*-network               
       description: Wireless interface
       product: RTL8723BE PCIe Wireless Network Adapter
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: wlp2s0
       version: 00
       serial: b0:c0:90:5c:1c:d5
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=rtl8723be driverversion=4.4.0-21-generic firmware=N/A ip=192.168.0.8 latency=0 link=yes multicast=yes wireless=IEEE 802.11bgn
       resources: irq:16 ioport:d000(size=256) memory:df200000-df203fff

00:00.0 Host bridge: Intel Corporation Sky Lake Host Bridge/DRAM Registers (rev 07)
00:01.0 PCI bridge: Intel Corporation Sky Lake PCIe Controller (x16) (rev 07)
00:02.0 VGA compatible controller: Intel Corporation Sky Lake Integrated Graphics (rev 06)
00:14.0 USB controller: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller (rev 31)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-H Thermal subsystem (rev 31)
00:16.0 Communication controller: Intel Corporation Sunrise Point-H CSME HECI #1 (rev 31)
00:17.0 SATA controller: Intel Corporation Sunrise Point-H SATA controller [AHCI mode] (rev 31)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #1 (rev f1)
00:1d.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #9 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H LPC Controller (rev 31)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-H PMC (rev 31)
00:1f.3 Audio device: Intel Corporation Sunrise Point-H HD Audio (rev 31)
00:1f.4 SMBus: Intel Corporation Sunrise Point-H SMBus (rev 31)
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (2) I219-V (rev 31)
01:00.0 VGA compatible controller: NVIDIA Corporation GK208 [GeForce GT 730] (rev a1)
01:00.1 Audio device: NVIDIA Corporation GK208 HDMI/DP Audio Controller (rev a1)
02:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8723BE PCIe Wireless Network Adapter
03:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller (rev 01)

05/01/2016 Update
I don't know what happened but the issue gets worse now. Wifi connection gets lost about every 5 minutes and I have to reconnect or restart network-manager.

Zanna
  • 72,312
aaa
  • 2,624
  • 5
  • 17
  • 22

9 Answers9

46

Finally I was able to fix the issues after trying out numbers of different methods.

  1. Get details of your PCI wireless card by running sudo lshw -class network
  2. Get your card model info according to the product line.
    For instance, as you can see in the question description it says
    product: RTL8723BE PCIe Wireless Network Adapter so the model of my card is RTL8723BE

    Or product: RTL8101/2/6E PCI Express Fast/Gigabit Ethernet controller so the model of my card is RTL8101/2/6E

  3. Give the permission sudo chmod 755 /etc/pm/config.d/

  4. Open or create config and add SUSPEND_MODULES="rtl8723be"(replace rtl8723be with your own model number)
    Then run
    echo "options rtl8723be fwlps=N" | sudo tee /etc/modprobe.d/rtl8723be.conf
    (note that when replacing rtl8723be with my card which is RTL8101/2/6E i should only type .../modprobe.d/RTL8101.conf; and /2/6E shouldn't be written)

Finaly restart your system.

Now your system should be able to reconnect automatically after sleep, and wifi connection never got lost once for me after doing this.

"The up/down arrows is likely a network manager bug that results in network manager thinking the wifi device is actually ethernet.", according to Jeremy31.see bug info here You should be able to fix it by installing NetworkManager-1.2.0.

Thanks to Jeremy31 for providing the solutions.

Shayan
  • 451
aaa
  • 2,624
  • 5
  • 17
  • 22
41

I have the exact same problem. After waking from sleep, wifi still works but networks not showing. I solve the problem by restarting the network manager.

sudo service network-manager restart

Still very annoying. I hope they fix this issue soon.

eldosoa
  • 745
30

This is a bug for sure. Bug has been filed at https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/1574347

Shinjan
  • 326
11

Additional info: I have the same exact problem as OP describes, but only the problem where the nm-applet icon changes to arrows and does not display wifi info. The wifi still works when this happens.

$ killall nm-applet && nm-applet & 

Does the trick for getting the icon to display again, so it's just a workaround for now in case someone wants to put it into a script.

Can confirm this problem on two separate computers running xubuntu-desktop package.

Also, both computers I have run recent intel wifi cards. (something along the lines of AC-7260)

muru
  • 207,228
6

I was having the same problem. I fixed the suspend wake issue by creating this script at /etc/systemd/system/wifi-resume.service (the one the OP posted only worked for the active session; on reboot it had to be called again):

#/etc/systemd/system/wifi-resume.service
#sudo systemctl enable wifi-resume.service
[Unit]
Description=Restart networkmanager at resume
After=suspend.target
After=hibernate.target
After=hybrid-sleep.target

[Service]
Type=oneshot
ExecStart=/bin/systemctl restart network-manager.service

[Install]
WantedBy=suspend.target
WantedBy=hibernate.target
WantedBy=hybrid-sleep.target

Then just issue this command in terminal to activate it: sudo systemctl enable wifi-resume.service. This solution is from another askubuntu question answer, and works both after suspend and after reboot.

However, even after that was fixed, I get the same behavior that used to happen on wake from suspend when I try to switch wifi networks: the wifi is essentially dead, with the two arrows, and the applet says "device not ready." I can restart the wifi by issuing sudo service network-manager restart, but I can't switch networks.

Is anyone else experiencing this and/or have a solution???

Rsync
  • 1,284
  • 6
  • 19
  • 32
2

I'm using LinxuMint 18 Mate (ubuntu16.04) and got into the same issue.

All the rest above didn't work for me on my thinkpad T440S.

The only workaround that seems to work until now is upgrading kernel to 4.6.3

  • Go to this website.

  • Get the following files:

    linux-headers-4.6.3-040603-generic_4.6.3-040603.201606241434_amd64.deb
    linux-headers-4.6.3-040603_4.6.3-040603.201606241434_all.deb
    linux-image-4.6.3-040603-generic_4.6.3-040603.201606241434_amd64.deb
    
  • From a terminal, go to the folder containing the above files and run:

    sudo dpkg -i *.deb
    sudo reboot
    

If you are using Virtualbox, run this sudo /sbin/vboxconfig

In case you want to remove them, run:

sudo dpkg --purge linux-headers-4.6.3-040603 linux-headers-4.6.3-040603-generic 

After some more tests, situation is almost the same, I got wifi, but my nm-applet is unable to see all WIFI around me. So not sure if this a good workaround :-)

SteF
  • 21
2

There is no solution at all right now but I found a script that helped me to keep wlan up:

#!/bin/bash

# Ping you most used DNS Server and reconnect on fail


while true; do
  if ! ping -c 1 -w 1 8.8.8.8 > /dev/null; then

    # with "sudo iwconfig" you can examine your name of 'wlan0'
    nmcli d connect wlan0

  fi
  sleep 2;
done

to Autostart this script simply open gnome-session-properties and add it to the list.

The full script (without reconnect) can be found on this web page.

Zanna
  • 72,312
1

Set the WIFI country code for the Kernels current regulatory domain if it isn't set

iw reg get

To set it

sudo nano /etc/default/crda
REGDOMAIN=<ISOCODE>

Reboot.

Janghou
  • 6,035
1

just to add on for the accepted answer (with four steps)

for some reason only one step was enough for me, even if I don't know what it means:

echo "options rtl8723be fwlps=N" | sudo tee /etc/modprobe.d/rtl8723be.conf
nyxee
  • 367
  • 3
  • 10