Ubuntu – Network disabled – device not ready 16.04

16.04acernetwork-managernetworkingwireless

Laptop: Acer V 13
no preinstalled OS. Freshly installed ubuntu 16.04.

At the top right corner, when I click the network manager, no wifi networks are found, and there's a grayed out device not ready text instead.

Ethernet cable is working (this is how I'm posting this …)

I'm in a co working space with many networks and users so I know the problem is on my end.

Below you will find everything I've tried followed by every piece of information I thought might b relevant.

I also logged the result of this script which has some additional info, and tailed syslog for a while.

Thanks in advance, you rock! 🙂


Things I've tried:

  1. $ sudo service network-manager start
    (No output)
  2. $ sudo service network-manager stop && sudo service network-manager start
    No output, network icon dissapears and reappears from tray
  3. $ sudo ifup lo
    ifup: interface lo already configured
  4. $ sudo ifup enp2s0
    Unknown interface enp2s0
  5. using wicd network manager
    I didn't detect any wireless network as well.
    (I'm actually glad it didn't work, seems like a bad idea anyway)
  6. $ sudo service networking restart
  7. $ sudo service NetworkManager restart
  8. $ sudo echo "blacklist ath10k_pci" >> /etc/modprobe.d/blacklist.conf
    after rebooting, any reference to wifi was gone from the network manager menu in the tray
  9. $ sudo apt-get install bcmwl-kernel-source
    “`
    Reading package lists… Done
    Building dependency tree
    Reading state information… Done
    The following packages were automatically installed and are no longer required:
    gksu libgksu2-0 libglade2-0 python-cairo python-dbus python-gi python-glade2 python-gobject python-gobject-2 python-gtk2 python-notify python-wicd wicd-daemon
    Use 'sudo apt autoremove' to remove them.
    The following additional packages will be installed:
    dkms
    The following NEW packages will be installed:
    bcmwl-kernel-source dkms
    0 upgraded, 2 newly installed, 0 to remove and 315 not upgraded.
    Need to get 1581 kB of archives.
    After this operation, 8278 kB of additional disk space will be used.
    Do you want to continue? [Y/n]
    Get:1 http://pl.archive.ubuntu.com/ubuntu xenial-updates/main amd64 dkms all 2.2.0.3-2ubuntu11.1 [66,2 kB]
    Get:2 http://pl.archive.ubuntu.com/ubuntu xenial/restricted amd64 bcmwl-kernel-source amd64 6.30.223.248+bdcom-0ubuntu8 [1515 kB]
    Fetched 1581 kB in 0s (4809 kB/s)
    Selecting previously unselected package dkms.
    (Reading database … 206160 files and directories currently installed.)
    Preparing to unpack …/dkms_2.2.0.3-2ubuntu11.1_all.deb …
    Unpacking dkms (2.2.0.3-2ubuntu11.1) …
    Selecting previously unselected package bcmwl-kernel-source.
    Preparing to unpack …/bcmwl-kernel-source_6.30.223.248+bdcom-0ubuntu8_amd64.deb …
    Unpacking bcmwl-kernel-source (6.30.223.248+bdcom-0ubuntu8) …
    Processing triggers for man-db (2.7.5-1) …
    Setting up dkms (2.2.0.3-2ubuntu11.1) …
    Setting up bcmwl-kernel-source (6.30.223.248+bdcom-0ubuntu8) …
    Loading new bcmwl-6.30.223.248+bdcom DKMS files…
    First Installation: checking all kernels…
    Building only for 4.4.0-34-generic
    Building for architecture x86_64
    Building initial module for 4.4.0-34-generic
    Done.
    wl:
    Running module version sanity check.

    • Original module
      • No original module exists within this kernel
    • Installation
      • Installing to /lib/modules/4.4.0-34-generic/updates/dkms/
        depmod….
        DKMS: install completed.
        modprobe: ERROR: could not insert 'wl': Required key not available
        update-initramfs: deferring update (trigger activated)
        Processing triggers for shim-signed (1.18~16.04.1+0.8-0ubuntu2) …
        Processing triggers for initramfs-tools (0.122ubuntu8) …
        update-initramfs: Generating /boot/initrd.img-4.4.0-34-generic
        W: Possible missing firmware /lib/firmware/i915/skl_guc_ver6.bin for module i915_bpo
        “`
  10. signed and loaded module wl:


$ openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=awesome key/"
$ sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n wl)
$ sudo mokutil --import MOK.der
$ reboot
$ sudo modprobe wl # no error output this time :)

  1. reinstalling some packages:

    $ sudo apt-get purge bcmwl-kernel-source
    $ sudo apt-get install build-essential dkms linux-headers-generic
    $ sudo apt-get update
    $ sudo apt-get install bcmwl-kernel-source
    $ modprobe -r b43 bcma
    $ modprobe -r brcmsmac bcma
    $ modprobe -r wl
    $ modprobe wl
    $ reboot

Relevant Info:

$ rfkill list
0: acer-wireless: Wireless LAN
    Soft blocked: no
    Hard blocked: no
1: hci0: Bluetooth
    Soft blocked: yes
    Hard blocked: no
2: phy0: Wireless LAN
    Soft blocked: no
    Hard blocked: no

$ cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback

$ iwconfig
wlp3s0    IEEE 802.11abgn  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=0 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on

enp2s0    no wireless extensions.

lo        no wireless extensions.

$ sudo lshw -c network
  *-network               
       description: Ethernet interface
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:02:00.0
       logical name: enp2s0
       version: 15
       serial: 30:65:ec:9a:29:e2
       size: 100Mbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=full firmware=rtl8168h-2_0.0.2 02/26/15 ip=192.168.0.103 latency=0 link=yes multicast=yes port=MII speed=100Mbit/s
       resources: irq:124 ioport:3000(size=256) memory:a1204000-a1204fff memory:a1200000-a1203fff
  *-network DISABLED
       description: Wireless interface
       product: QCA6174 802.11ac Wireless Network Adapter
       vendor: Qualcomm Atheros
       physical id: 0
       bus info: pci@0000:03:00.0
       logical name: wlp3s0
       version: 32
       serial: c8:ff:28:00:90:51
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=ath10k_pci driverversion=4.4.0-34-generic firmware=WLAN.RM.2.0-00180-QCARMSWPZ-1 latency=0 link=no multicast=yes wireless=IEEE 802.11abgn
       resources: irq:127 memory:a1000000-a11fffff

lspci -knn | grep Net -A2
03:00.0 Network controller [0280]: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter [168c:003e] (rev 32)
    Subsystem: Lite-On Communications Inc QCA6174 802.11ac Wireless Network Adapter [11ad:0807]
    Kernel driver in use: ath10k_pci
    Kernel modules: ath10k_pci, wl

in the next file, I've tried to set managed=true and reboot, tho somewhere it got reverted back to managed=false

$ cat  /etc/NetworkManager/NetworkManager.conf
[main]
plugins=ifupdown,keyfile,ofono
dns=dnsmasq

[ifupdown]
managed=false

    $ dmesg | grep "\(disabled\|switch\)"
[    0.000000] x86/fpu: Using 'eager' FPU context switches.
[    0.000000]   6 disabled
[    0.000000]   7 disabled
[    0.000000]   8 disabled
[    0.000000]   9 disabled
[    0.000000] ACPI: Early table checksum verification disabled
[    0.069778] DMAR-IR: x2apic is disabled because BIOS sets x2apic opt out bit.
[    0.237651] pci 0000:00:14.0: System wakeup disabled by ACPI
[    0.244497] pci 0000:00:1c.0: System wakeup disabled by ACPI
[    0.245318] pci 0000:00:1c.4: System wakeup disabled by ACPI
[    0.246125] pci 0000:00:1c.5: System wakeup disabled by ACPI
[    0.248614] pci 0000:00:1f.3: System wakeup disabled by ACPI
[    0.249896] pci 0000:02:00.0: System wakeup disabled by ACPI
[    0.256218] pci 0000:03:00.0: System wakeup disabled by ACPI
[    0.937596] audit: initializing netlink subsys (disabled)
[    0.942695] Console: switching to colour frame buffer device 240x67
[    0.970222] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
[    1.103625] fb: switching to inteldrmfb from EFI VGA
[    1.103641] Console: switching to colour dummy device 80x25
[    1.254041] Console: switching to colour frame buffer device 240x67
[ 1117.284285] xhci_hcd 0000:00:14.0: System wakeup disabled by ACPI
[ 1117.292227] rtc_cmos 00:03: System wakeup disabled by ACPI
[ 1117.292230] r8169 0000:02:00.0: System wakeup disabled by ACPI

$ ifconfig
enp2s0    Link encap:Ethernet  HWaddr 30:65:ec:9a:29:e2  
          inet addr:192.168.0.103  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:26514 errors:0 dropped:0 overruns:0 frame:0
          TX packets:18223 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:32858129 (32.8 MB)  TX bytes:2703210 (2.7 MB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:2379 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2379 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:217304 (217.3 KB)  TX bytes:217304 (217.3 KB)

Best Answer

I don't know why it worked, here's what I did:

Backed up /lib/firmware/ath10k/QCA6174
Replaced it with https://github.com/kvalo/ath10k-firmware/tree/master/QCA6174
Rebooted

At this point wifi was completely gone from the network manager menu.
so I restored the original QCA6174 folder, rebooted, and it works now!

Marking as solved.
If anyone knows why this worked I'm very curious ...

Related Question