Ubuntu – WiFi does not work: Ubuntu 16.04 on Lenovo Z51 Laptop


I followed the instructions in the top answer here:

My wifi Qualcomm Atheros Device [168c:0041] (rev 20) doesn't show up and work in Ubuntu 14.04.3 on Lenovo flex 3 14

But got:

(Reading database ... 323177 files and directories currently installed.)
Preparing to unpack backath10k-dkms_2.0_all.deb ...

Deleting module version: 2.0
completely from the DKMS tree.
Unpacking backath10k-dkms (2.0) over (2.0) ...
Setting up backath10k-dkms (2.0) ...
Loading new backath10k-2.0 DKMS files...
First Installation: checking all kernels...
Building only for 4.4.8-040408-generic
Building for architecture x86_64
Building initial module for 4.4.8-040408-generic
ERROR (dkms apport): kernel package linux-headers-4.4.8-040408-generic is not supported
Error! Bad return status for module build on kernel: 4.4.8-040408-generic (x86_64)
Consult /var/lib/dkms/backath10k/2.0/build/make.log for more information.

I have linked the contents of the make.log in the following pastebin: http://pastebin.com/dnuAvDfE

What should I do?

EDIT: I have run 'sudo dkms remove backath10k/2.0 –all' and I got this esult: http://pastebin.com/UVyiZTLp I am still unable to connect.

EDIT: Solved! See Jeremy's comment below

Best Answer

Ubuntu 16.04 users should not use backports or any dkms package as the 16.04 kernel supports more devices than previous versions. You need to set the skip_otp parameter and install firmware in most cases. The firmware that works is from https://github.com/atondwal/ath10k-firmware.git

Only use this firmware if you have

02:00.0 Network controller [0280]: Qualcomm Atheros Device [168c:0041] (rev 20)
    Subsystem: Lenovo Device [17aa:3545]

echo "options ath10k_core skip_otp=Y" | sudo tee /etc/modprobe.d/ath10k_core.conf
git clone https://github.com/atondwal/ath10k-firmware.git
sudo cp -r ath10k-firmware/ath10k/ /lib/firmware/
cd /lib/firmware/ath10k/QCA6164
sudo cp -r hw2.1/ /lib/firmware/ath10k/QCA6174/

Related Question