I am a newbie to Ubuntu and this is my first post on this forum, so please excuse any mistake.

Having said that the issue is after I recently installed Ubuntu 18.04 LTS, I noticed that my Wifi signal is very weak. I have 2 OS, Windows 10 and Ubuntu 18.04. While Windows 10 shows proper signal, in Ubuntu the signal is very weak. I have not even seen full signal anytime, even though when I am literally sitting next to the router.

My Driver details are below:




02:00.0 Network controller: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter (rev 31)


lspci -nnk | grep -A2 0280


02:00.0 Network controller [0280]: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter [168c:0042] (rev 31)
Subsystem: AzureWave QCA9377 802.11ac Wireless Network Adapter [1a3b:2231]
Kernel driver in use: ath10k_pci


sudo lshw -C network


   description: Wireless interface
   product: QCA9377 802.11ac Wireless Network Adapter
   vendor: Qualcomm Atheros
   physical id: 0
   bus info: pci@0000:02:00.0
   logical name: wlp2s0
   version: 31
   serial: 40:9f:38:d4:ac:c3
   width: 64 bits
   clock: 33MHz
   capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
   configuration: broadcast=yes driver=ath10k_pci driverversion=4.15.0-20-generic firmware=WLAN.TF.1.0-00002-QCATFSWPZ-5 ip= latency=0 link=yes multicast=yes wireless=IEEE 802.11
   resources: irq:130 memory:ef000000-ef1fffff

I have tried doing the below but to no affect:

sudo modprobe -rv ath10k_pci
sudo modprobe -v ath10k_pci ant_sel=1

My current kernel version is:


Any suggestions to improve this?

  • Have you setup the regulatory domain for the wifi ? This means inform the kernel of the country you leave in. Install and configure crda and change REGDOMAIN in /etc/default/crda – solsTiCe May 8 '18 at 17:43
  • @solsTiCe, crda was already installed, so I just updated the entry REGDOMAIN=IN as I live in India. Rebooted but still no change. I also ran the command iw reg set IN but no affect. – wambling May 9 '18 at 3:14
  • @wambling Have you figured it out? I am having the same issue with a Lenovo Ideapad 330S with the ath10k_pci driver. The ant_sel=1 or 2 did not help, and iw reg set US did not help either. – Andrew Nov 19 '18 at 1:33
  • @Andrew: The answer provided by mature and manas worked for me. – wambling Jul 21 '19 at 16:21

For all other Qualcomm cards...

check this command lspci | grep 'Network'

if output comes as

02:00.0 Network controller: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter (rev 31)

Then this solution may work for you

sudo apt-get update
sudo apt-get install linux-headers-generic build-essential
wget https://www.kernel.org/pub/linux/kernel/projects/backports/2015/11/20/backports-20151120.tar.gz
tar -zxvf backports-20151120.tar.gz
cd backports-20151120
make defconfig-ath10k
sudo make install

ignore if you get any errors or warnings for make

  • ignore and proceed with the installation in case of errors in make? Just a note, for me the internet speed seems to be ok. the weak only i wifi arc visible in the signal. Might be the UI skin issue in elementary OS – Mrinal Bhattacharjee Nov 12 '19 at 3:21

Suggest, after you do

sudo modprobe -rv ath10k_pci   

to try

sudo modprobe -v ath10k_pci ant_sel=2

as it might be an RF issue which Windows resolved by using antenna #2.

  • sudo modprobe -v ath10k_pci ant_sel=2 – Jang Dev May 14 '18 at 16:18
  • Thanks.. I did try that already, though it seems to have improved but sometimes again it goes back to very weak signal. I also noticed, the signal remains constant and strong if I boot my laptop, while sitting close to the router but if I boot while few meters away like 3-4 meters from router, the signal strength is less than 50. – wambling Aug 19 '18 at 5:03
  • ant_sel=2 isn't even an option for ath10k_pci, check modinfo -p ath10k_pci and see there is no ant_sel parameter option, there is no possible way for it to work, it does work for rtl8723be, see modinfo -p rtl8723be but that only works for rtl8723be chipsets – Jeremy31 Apr 24 '19 at 21:08
  • worked for me, ath9k driver – TimSparrow Feb 6 '20 at 13:55
  • This worked in 20.04 ! Thanks for the insight – SeanO Jun 4 '20 at 16:21

Run in terminal

sudo tee /etc/modprobe.d/rtl8723be.conf <<< "options rtl8723be ant_sel=2"

This will create a config file to make the setting permanent. Then restart.


This solution given by Manas worked for me with some minor tweak.

Before executing the wget command check for you linux kernel version.

$ uname -r

Then go to https://mirrors.edge.kernel.org/pub/linux/kernel/projects/backports/stable/ and check for the closest kernel version available there and then download the backports tar file using the following command.

$ wget https://kernel.org/pub/linux/kernel/projects/backports/stable/v5.1.16/backports-5.1.16-1.tar.gz

Here 5.1.16 is the linux kernel version.

Then run these. After successful installation of these three commands reboot.

$ make defconfig-ath10k
$ make
$ sudo make install


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.