Intel Wireless – Fix No Connection with Intel 3160 on Lenovo Y50, Ubuntu 15.04

15.04intel-wirelesslenovonetworkingwireless

I recently bought a Lenovo Y50-70 laptop, and while Ubuntu has mostly been running well I've had issues with the wireless.

Wifi will connect perfectly fine, and it will usually be able to load webpages for about 30 seconds after boot, but then it becomes completely unable to receive anything at all. Occaisionally it will regain the connection for a few seconds, but this happens rarely and for only a few seconds.

Wireless card is Intel 3160 Wireless, and works perfectly fine on Windows (Windows 8.1).

  • rfkill – nothing blocked
  • lshw -c network – product: Wireless 3160, firmware=25.17.12.0
  • kernel version 4.0.3

I should note that I've already tried the solutions presented in the following posts, but none of them have worked so far:

Cannot Connect To WiFi – Intel Corporation Wireless 3160

Ubuntu Intel wireless 3160 AC not working/slow/disconnecting/unstable

Wifi stopped working after update to 15.04

https://bbs.archlinux.org/viewtopic.php?id=192363

So far, downloading a newer kernel, downloading a newer firmware, disabling bluetooth, renaming firmware, setting options as described here haven't worked.

Any help would be much appreciated.

Best Answer

The command in the post you linked is:

echo "options iwlwifi bt_coex_active=Y swcrypto=1 11n_disable=1" | sudo tee /etc/modprobe.d/iwlwifi.conf

It will over-write the existing text in the file /etc/modprobe.d/iwlwifi.conf. It should have read:

echo "options iwlwifi bt_coex_active=Y swcrypto=1 11n_disable=1" | sudo tee -a /etc/modprobe.d/iwlwifi.conf

The '-a' modifier appends the new text to the end of the existing file.

In Ubuntu 15.04, the default file reads:

# /etc/modprobe.d/iwlwifi.conf
# iwlwifi will dyamically load either iwldvm or iwlmvm depending on the
# microcode file installed on the system.  When removing iwlwifi, first
# remove the iwl?vm module and then iwlwifi.
remove iwlwifi \
(/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) \
&& /sbin/modprobe -r mac80211

That text is necessary to properly unload and reload the module iwlwifi if necessary. I suggest you do:

gksudo gedit /etc/modprobe.d/iwlwifi.conf

Use nano or kate or leafpad if you don't have the text editor gedit. Copy and paste the text I included above the line you added. When you are done, it should read like this:

# /etc/modprobe.d/iwlwifi.conf
# iwlwifi will dyamically load either iwldvm or iwlmvm depending on the
# microcode file installed on the system.  When removing iwlwifi, first
# remove the iwl?vm module and then iwlwifi.
remove iwlwifi \
(/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) \
&& /sbin/modprobe -r mac80211

options iwlwifi bt_coex_active=Y swcrypto=1 11n_disable=1

Proofread carefully, save and close the text editor. You should be all set.

Related Question