0

I have a wireless problem with my HP-Pavilion-x360-Convertible, with a clean install of 16.04. When I click on the wireless on/off button in network settings, it always flips back to 'off'.

  1. The first guidance I found was at No wireless connection on HP Pavilion x360 Convertible That instructed me to do:

    sudo tee /etc/modprobe.d/iwlwifi-opt.conf <<< "11n_disable=1"
    

    That didn't work so I undid it (I hope) with:

    sudo tee /etc/modprobe.d/iwlwifi-opt.conf <<< "11n_disable=0"
    
  2. I then found this page: HP Pavilion x360 wireless problem

    Following the instructions, I downloaded https://wireless.wiki.kernel.org/_media/en/users/drivers/iwlwifi-7265-ucode-25.17.12.0.tgz and ran the terminal commands:

    *cd ~/Desktop/iwlwifi-7265-ucode-25.17.12.0
    sudo cp iwlwifi-7265D-12.ucode /lib/firmware/iwlwifi-3165-9.ucode
    sudo cp iwlwifi-7265-12.ucode  /lib/firmware/iwlwifi-3165-12.ucode*
    

    That all seemed to go OK, but still no response from the wireless.

  3. Then I ran

    dmesg | grep iwl 
    

    with this result:

    $ dmesg | grep iwl
    [   11.190321] iwlwifi 0000:03:00.0: Direct firmware load for iwlwifi-7265D-19.ucode failed with error -2
    [   11.190365] iwlwifi 0000:03:00.0: Direct firmware load for iwlwifi-7265D-18.ucode failed with error -2
    [   11.190393] iwlwifi 0000:03:00.0: Direct firmware load for iwlwifi-7265D-17.ucode failed with error -2
    [   11.349117] iwlwifi 0000:03:00.0: loaded firmware version 16.242414.0 op_mode iwlmvm
    [   11.631088] iwlwifi 0000:03:00.0: Detected Intel(R) Dual Band Wireless AC 3165, REV=0x210
    [   11.631940] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [   11.632810] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [   11.857648] ieee80211 phy0: Selected rate control algorithm 'iwl-mvm-rs'
    [   13.386444] iwlwifi 0000:03:00.0 wlp3s0: renamed from wlan0
    [   35.012388] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [   35.012608] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [   35.079948] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [   35.080168] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [   73.393053] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [   73.393282] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [   73.457487] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [   73.457713] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  282.586203] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  282.586437] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  282.647347] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  282.647583] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  303.112696] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  303.112928] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  303.176370] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  303.176598] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  307.822367] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  307.822602] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  307.884503] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    [  307.884746] iwlwifi 0000:03:00.0: L1 Enabled - LTR Enabled
    

1 Answers1

0

basically what dmesg | grep iwl is telling you is that the driver for your wireless card is not being loaded into the kernal, which is why it's not working. So what you need to do is install the driver for your wireless correctly, here's how to do that with the driver you downloaded.

  1. go to the Downloads folder cd ~/Downloads.
  2. unpack the .tgz file. tar -xzvf iwlwifi-7265-ucode-25.17.12.0.tgz
  3. cd into the directory cd iwlwifi-7265-ucode-25.17.12.0
  4. copy the driver files to the correct location.

    sudo cp iwlwifi-7265-12.ucode /lib/firmware
    sudo cp iwlwifi-7265D-12.ucode /lib/firmware
    
  5. The command you entered in your first step sudo tee /etc/modprobe.d/iwlwifi-opt.conf <<< "11n_disable=1" actually deletes the whole config file and replaces it with 11n_disable=1. so you will need to open up that file in a text editor as a super user and put the original code back in it. gksudo gedit /etc/modprobe.d/iwlwifi.conf

  6. copy and paste this code into the file and save (this was taken from the config file on my computer).

    # /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
    
  • Thanks very much for your help, Jordan! I got through steps 1-5 without too much trouble (after remembering to add sudo to the copy command) But when I opened the config file and pasted in your code I was not able to save the file. A red box at the top of the text editor told me

    <Could not find the file “/etc/modprode.d/iwlwifi.conf”. Please check that you typed the location correctly and try again.>

    The file name at the top of the text editor is "iwlwifi.conf", and the path given there is "/etc/modprode.d"

    Do you have a suggestion?

    – user548643 May 27 '16 at 09:49
  • sorry my mistake i typed modprode instead of modprobe ( you need b instead of d). so the whole path is /etc/modprobe.d/iwlwifi.conf. I will edit my answer to reflect the changes – Jordan Camp May 27 '16 at 17:13
  • Thanks again Jordan. I have edited the config file with your amended code, and it accepted it with no problem. Unfortunately the wireless card is still not working. I ran "dmesg | grep iwl" again, and to my eye the result looks identical. So I guess that your original comment stands: the driver for my wireless card is not being loaded into the kernal. I have repeated your steps 1 - 4, but there's no change. I'm afraid I don't even know how to look into /lib/firmware to see if the file has in fact been copied there. Any suggestions for what I can do to find out what is going on? – user548643 May 28 '16 at 22:11
  • As Pilot6 has edited his answer (thanks), also gave that a try: sudo tee /etc/modprobe.d/iwlwifi-opt.conf <<< "options iwlwifi 11n_disable=1" with a reboot. Still no joy. So I undid it as Pilot6 explains sudo rm /etc/modprobe.d/iwlwifi-opt.conf – user548643 May 28 '16 at 22:33
  • I suspect the download link you posted might contain a driver that's incompatible with your kernal version. Look at the output of uname -r from the terminal and go to the the site you posted your original link. Search the page for "Intel Wireless 3165" and match your kernal version number from the output of uname -r with the available drivers then repeat the process I outlined in my answer and see what happens. – Jordan Camp May 29 '16 at 02:14
  • Thanks once again for your help! uname -r returns 4.4.0-22-generic.
    I found my way to wireless.wiki.kernel.org/en/users/drivers/iwlwifi. The most recent driver I can find is for kernal 4.3. The file is iwlwifi-7265-ucode-16.242414.0.tgz I downloaded that file, and went through your steps again. But it is still not working. Do you have any more suggestions? Am I looking at a reinstall with an earlier version of the kernal (much as I would like to avoid going through all my configuration again...)?
    – user548643 May 30 '16 at 22:13
  • Finally I got this sorted with the help of a friend. (thanks!). He found http://askubuntu.com/questions/98702/how-to-unblock-something-listed-in-rfkill, which gave this instruction: sudo nano /etc/modprobe.d/blacklist.conf. Then add blacklist acer_wmi as a new line at the bottom of this file. then reboot. Thanks to Jordan and everyone else who's helped me in getting this fixed! – user548643 Jun 10 '16 at 20:29