How to identify your Ubuntu WiFi module: diagnostics and drivers

The Linux operating system, and Ubuntu in particular, is renowned for its transparency and flexibility, but for beginners, the hardware identification process can seem confusing. When you've just installed the system or are experiencing a broken wireless connection, the first logical step is to determine the exact model of your network adapter. Without this information, it's impossible to find the correct drivers, especially for specific chips that require manual installation of proprietary software. Many users get confused, seeing only the generic interface name, and don't know how to access the hardware.

Unlike Windows, where the Device Manager displays all the information at once, Linux uses powerful console utilities for this. Accurate chipset identification — is the key to resolving connection, speed, and signal stability issues. In this article, we'll cover all available methods in detail, from simple graphical interfaces to in-depth diagnostics via the terminal, so you can easily find the information you need about your network equipment.

It's worth noting that the methods may differ depending on whether your adapter is connected directly to the motherboard or an external USB dongle is used. It's also important to understand the difference between a visible interface and a physical device. Sometimes the system sees an interface but doesn't know the actual chip behind it unless the corresponding kernel module is loaded. The command `lspci -nnk | grep -iA3 net` is often the most informative for integrated cards, showing not only the device ID but also the kernel driver used.

Using the terminal for quick diagnostics

The fastest and most reliable way to obtain information about network hardware is using the command line. The Ubuntu terminal provides access to low-level data often hidden in graphical settings. You don't need root privileges to get started, although more detailed driver information may require entering a password via sudo.

One of the most popular teams is lspci, which displays a list of all devices connected via the PCI bus. This is an ideal tool for internal WiFi cards built into laptops or connected via PCIe in desktop PCs. If you enter the command lspci | grep -i network, the system will filter the output and leave only lines containing the word "network", which will greatly simplify the search.

A similar utility is used for external USB adapters. lsusbIt will display all connected USB devices, and you'll need to look for lines labeled "Wireless" or names of well-known chip manufacturers, such as Realtek or Ralink. It's important to pay attention to the VID and PID (Vendor ID and Product ID), as these are often the easiest way to find the right driver online rather than the adapter's marketing name.

  • 🔍 Team lspci -v Provides a detailed description of the device, including the IRQs and memory addresses used, which is useful in case of hardware conflicts.
  • 📡 Utility nmcli dev Shows the status of devices from NetworkManager's perspective, allowing you to quickly see if WiFi is on and connected to the network.
  • 💻 Tool inxi -N (requires inxi package installed) provides a concise and easy-to-understand summary of all network interfaces on the system.

⚠️ Attention: If the team lspci or lsusb returns a device marked as "Unknown device" or without a name, this is a sure sign that there is no driver installed for it or the kernel module is not loaded.

Analysis of loaded kernel modules and drivers

Knowing the adapter model is only half the battle. For hardware to function correctly in Linux, the appropriate kernel module must be loaded. It's common for a device to be detected but not to work because it's using an open-source driver with limited functionality instead of a proprietary one, or vice versa. Checking the loaded modules helps you understand which code is currently controlling your WiFi.

To view the list of active modules, use the command lsmodThe output of this command can be very long, so it makes sense to filter it by looking for keywords related to wireless technologies, such as wlan, ath (for Atheros), iwl (for Intel) or rtw (for Realtek). Team lsmod | grep -e ath -e iwl -e rtw will help you quickly select the required lines.

An even more powerful tool is the utility lshw (list hardware). It collects information from various sources and presents it in a structured form. Running the command sudo lshw -class network will produce a detailed report on all network interfaces. In this report, you'll find not only the product and manufacturer name, but also, crucially, the line driver And firmware, which will indicate the software being used.

In some cases, especially with Broadcom adapters, manual driver switching may be necessary. Ubuntu provides a convenient "Additional Drivers" interface for this, but you can check this in the terminal by analyzing the kernel boot logs using the command dmesg | grep firmwareThis will show whether the firmware for your device has been downloaded successfully.

☑️ Check WiFi drivers

Completed: 0 / 4

Graphical methods for identifying equipment

Not all users are comfortable with the command line, and fortunately, Ubuntu offers several graphical ways to obtain the same information. While they may be less detailed than terminal utilities, they are often sufficient for basic model identification. These methods are especially useful when you need to quickly copy information or take a screenshot for a report.

The first and most obvious option is the system settings menu. Go to Settings → About → More (or simply About the system (In newer versions of GNOME). The wireless card model is often listed in the hardware section. However, this method isn't always accurate and may show a generic series name instead of a specific chipset.

A more professional tool is the utility Hardinfo (System Profiler and Benchmark). If it's not installed, you can add it from the repositories. After launching, select the "Network" section in the left menu, and you'll get a detailed list of all network adapters, including the vendor, device, and even the MAC address. This is a great way to visualize the data obtained through lspci.

Also worth mentioning is the tool Nmap with a graphical shell Zenmap, which, although designed for scanning networks, can show details of the interface being scanned. But for the simple task of "finding the model," it's overkill. It's better to use the built-in "Disks" tool (although it's for drives) or specialized monitoring utilities like Stacer or Conky, which can display system information on the desktop.

Method Interface type Level of detail Requires root rights
Ubuntu settings Graphic Low (model only) No
Hardinfo Graphic Medium (vendor, device) No
lspci / lsusb Terminal High (ID, classes) No (for basic info)
lshw Terminal Maximum (drivers, resources) Yes (sudo)

Using graphical tools is convenient for initial familiarization with the system, but when troubleshooting, it's best to return to the terminal. A graphical interface can hide initialization errors that are immediately obvious from the text output of system logs.

Identifying USB WiFi adapters

External WiFi adapters are a common solution for desktop PCs or laptops with a faulty integrated module. In Linux, they often require special attention, as they may use chipsets not supported by the kernel out of the box. The detection process is similar to that for internal cards, but there are some nuances related to the USB interface.

The main command for diagnostics is lsusbWhen you do this, you'll see a list of all connected USB devices. WiFi adapters usually have the words "Wireless," "802.11," or brand names in their names. The key here is identifying the chipset, as the same brand (e.g., TP-Link) can use completely different chips in different revisions (Realtek, MediaTek, Atheros).

If you see a device with an ID, for example, 0bda:b812, which is the manufacturer (Realtek) and product code. A search for "0bda:b812 linux driver" will return the exact driver you need. Often, these adapters require compiling drivers from source code if they aren't included in the package. linux-firmware.

  • 🔌 Disconnect and reconnect the adapter by running the command dmesg | tailto see the latest kernel messages about the new device.