Wifi Disabled on HP Pavilion dm3 – Debian 9 (Stretch)

This happened before with Arch Linux, but when I installed Debian 9 (Stretch) on my HP Pavilion dm3-113us, its wifi device was disabled - there is a wifi button on the side and its LED indicator was orange instead of green.

The system seems to recognize the device:$ lspci ... 08:00.0 Network controller: Qualcomm Atheros AR9285 Wireless Network Adapter (PCI-Express) (rev 01) # dmesg | grep -i ath ... [ 0.092000] smpboot: CPU0: AMD Athlon(tm) Neo X2 Dual Core Processor L335 (family: 0xf, model: 0x6b, stepping: 0x2) [ 11.533147] powernow_k8: Found 1 AMD Athlon(tm) Neo X2 Dual Core Processor L335 (2 cpu cores) (version 2.20.00) [ 11.672233] ath: phy0: Enable LNA combining [ 11.674887] ath: phy0: ASPM enabled: 0x42 [ 11.674890] ath: EEPROM regdomain: 0x69 [ 11.674891] ath: EEPROM indicates we should expect a direct regpair map [ 11.674894] ath: Country alpha2 being used: 00 [ 11.674895] ath: Regpair used: 0x69 [ 11.727078] ieee80211 phy0: Atheros AR9285 Rev:2 mem=0xffffb12042140000, irq=17 [ 13.125760] ath9k 0000:08:00.0 wlo1: renamed from wlan0 ...

It looks like necessary kernel modules were loaded as well:# lsmod ... ath 32768 3 ath9k_hw,ath9k,ath9k_common ath9k 94208 0 ath9k_common 32768 1 ath9k ath9k_hw 446464 2 ath9k,ath9k_common ...

I tried resetting BIOS or following weird steps like taking a battery out and booting it up, etc... but none worked.

I was almost giving up getting the wifi device to work, then I found this website that eventually led me to solve the problem. This site shows how to identify a wifi device (internal or usb), search its firmware driver, and install it.

Hmm... firmware, huh? I have not tried this option so I gave it a shot.

The information in this site is the result of my researches in the Internet and of my experiences. This information below is solely used for my purpose and may not be suitable for others.

First, let's search any firmware for my atheros:# apt-cache search atheros collectd-core - statistics collection and monitoring daemon (core system) firmware-linux-free - Binary firmware for various drivers in the Linux kernel firmware-atheros - Binary firmware for Atheros wireless cards firmware-zd1211 - binary firmware for the zd1211rw wireless driver

Yes, there are some hits. Based on their description, I installed firmware-atheros first: # apt-get install firmware-atheros ... Unpacking firmware-atheros ... Setting up firmware-atheros ...

I rebooted the system just in case.

My default Desktop Environment is LXDE (though I'll change it to i3 later) and it comes with wicd application. From wicd, I clicked on the Switch On Wi-Fi option. Nope, it did not enable the wifi device. So, I went back to the firmware list and decided to install another one.

firmware-zd1211 doesn't seem to be for my wifi device. Let's try with firmware-linux-free:# apt-get install firmware-linux-free ... Setting up firmware-linux-free (3.4) ... Update-initramfs: deferring update (trigger activated) Processing triggers for initramfs-tools (0.130) ... Update-initramfs: Generating /boot/initrd.img-4.9.0-3-amd64

A moment of truth... I clicked on the Switch On Wi-Fi option again. Yes, a little LED light for Wifi on the side of my laptop changed from orange to blue, which indicates the wifi device is now enabled!

Now the wifi device is enabled after rebooting.

NOTE: The order and combinations to install these firmware seem to matter. I tried below scenarios:

1. Installed firmware-atheros
2. Installed firmware-linux-free
1. Installed firmware-linux-free
2. Installed firmware-atheros
1. Installed firmware-atheros ONLY
1. Installed firmware-linux-free ONLY

The wifi device was successfully enabled in the 1st scenario but it didn't work for everything else. So, just be careful!

At the very beginning of this post, I mentioned same wifi device didn't work with Arch Linux. Maybe, I needed a firmware for it to work just like this one. When I get a chance, I'll try that option. But for now, I'm very satisfied with the outcome.

That's all!

Post a comment

You may use the following HTML:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>