Contents
- 1 Easy solution that worked for me after numerous attempts to make my wifi adapter work in Ubuntu.
- 2 What to do when you can’t make your wifi adapter work in Ubuntu?
- 3 How to check if the wireless adapter is enabled?
- 4 What to do when the WiFi adapter is recognized?
- 5 How to blacklist a conflicting WiFi driver?
- 6 What to do when the driver is installed, communicates with the kernel but the adapter is not working?
- 7 How to fix an adapter ‘not managed’?
- 8 How to fix the ‘suspend issue’?
- 9 The adapter that worked for me:TP-Link N150 Wireless Nano USB Adapter (TL-WN725N)
- 10 More Linux Adapters (unverified and unchecked).
Easy solution that worked for me after numerous attempts to make my wifi adapter work in Ubuntu.
You may follow the steps below and adopt my reliable solution if you prefer not to spend all your time looking for another solution. If your adapter is not recognized be prepared to spend enough time digging into manuals and online forums as I did.
The Best Ubuntu WiFi Adapter
What to do when you can’t make your wifi adapter work in Ubuntu?
I bought an adapter that has the highest probability to work in Linux and that’s the product below.
The best thing about this adapter? You don’t need any special drivers and it costs just $10!
I bought two of these adapters for my older mini-laptop that insisted on rejecting all my attempts to connect it to a simple and free WiFi network that I used to connect with my 3 mobile phones and a tablet.
So the WiFi network was known to me for over a year but all my WiFi adapters never worked with Ubuntu.
Don’t forget to turn on your WiFi switch if available – button or key combination. Here are the steps for checking and fixing the problem:
How to check if the wireless adapter is enabled?
The most time-consuming step.
You can give a lshw -C network and look for an output that mentions: Wireless interface.
Output of the lshw -C network command
If you are using a USB adapter as in my proposed solution you might want to get a list of all USB devices connected to the system by giving: lsusb or sudo lsusb -v.
Output of the lsusb command
If you are using a PCI adapter you can give lspci and check for mentions like Wireless Network Adapter.
What to do when the WiFi adapter is recognized?
You want to check if your system has the appropriate drivers for the device.
There are three options here.
- You can use the native Linux drivers already installed in your system.
- You can download the drivers provided by the manufacturer (rare case).
- You can give ndiswrapper without a driver. You will want to check if your adapter is supported by ndiswrapper. Find more details here. Ndiswrapper may be conflicting with a native driver, so you have to blacklist the native driver.
By giving lshw -C network the output is driver= followed by the driver name. In my case the driver name is driver=r8169
Output of the lshw -C network command and driver name
If you can’t find the driver name, you want to check if it’s loaded by running lsmod and looking for the name of the driver.
Output of lsmod command
In case there are two modules i.e. ndiswrapper and a native Linux driver you need to blacklist one of them.
How to blacklist a conflicting WiFi driver?
You give sudo nano /etc/modprobe.d/blacklist and add a line for the driver in question like blacklist.
Save the file and reboot the system.
Blacklist a conflicting WiFi driver via an editor
What to do when the driver is installed, communicates with the kernel but the adapter is not working?
With sudo iwlist scan you can scan for a router (I have intentionally left out the full name of my network).
If the command finds a router (you can find the name of the router after ESSID) then your adapter is working. It may be that not all cards support wireless scanning.
You then need to check why the WiFi is not working. Again you must verify that there is no kill switch (button) or a key combination if you use a laptop that enables/disables the WiFi.
Some systems to save power disable the WiFi. You can check with rfkill list or the lshw command that shows *-network:1 DISABLED or wireless=radio off.
How to fix an adapter ‘not managed’?
If you see an adapter not managed you can edit the network manager configuration with sudo nano /etc/NetworkManager/NetworkManager.conf, find and change the line from managed=false to managed=true
how to fix an adapter ‘not managed’
Restart the network-manager with the command sudo service network-manager restart.
Restart the network-manager
How to fix the ‘suspend issue’?
Start with lshw -C network and look for the driver name driver=
and the adapter logical name:
Then give sudo nano /etc/pm/config.d/config and insert the line SUSPEND_MODULES=”drivernamehere adapterlogicalnamehere”. Don’t forget to change the values drivernamehere and adapterlogicalnamehere to match the output of your command line.
fix the ‘suspend issue’
Restart the network-manager with the command sudo service network-manager restart.
Restart the network-manager
The adapter that worked for me:
TP-Link N150 Wireless Nano USB Adapter (TL-WN725N)
The Best Ubuntu WiFi Adapter: TP-Link N150 Wireless Nano USB Adapter (TL-WN725N)
More Linux Adapters (unverified and unchecked).
TP-Link TL-WN725N Nano USB WLAN Stick Adapter – Price $7.63
Realtek RTL8811CU USB WiFi Adapter – Price $15.47
WLAN USB Adapter 600 Mbps, Mini WiFi Stick – Price $11.26