Translations: English - Deutsch - Español - Français - Italiano - Português (Brasil) - Русский
Portal/IDB/icon-wiki-portal.png
Debian wiki Wireless Fidelity portal. This portal deals with the installation and configuration of WiFi devices. Device installation is essentially a two-part process: 1) installing the driver (also called a module) and 2) setting up your WiFi interface.
Contents
Introduction
A WiFi device operates on an electronic chip called a "chipset". We can find the same chipset in several different devices. Consequently, the driver/module for one chipset will work for all wireless devices using that chipset.
Free software based systems such as Debian depend on the cooperation between manufacturers and developers to produce and maintain quality drivers and firmware. Drivers and firmware are what determine if, and how well, your hardware works.
Debian's Social Contract mandates the freeing of the distribution. In practice this means manufacturers are required to cooperate by releasing specifications and free drivers that can be worked on by the community. Newer versions of Debian (6+) do not include non-free drivers or firmware.
Non-free drivers and firmware are produced by entities refusing or unable to cooperate with the free software community. With non-free drivers and firmware support is often unavailable or severely constrained. For instance features are often left out, bugs go unfixed, and what support does exist from the manufacture may be fleeting.
By encouraging good social practices the community is able to support end-users. Complex installation procedures are no longer required and support may continue long after a product has been discontinued.
Availability of compatible WiFi chipsets
Currently there are only a few modern wifi chipsets readily available that work with free software systems. For USB wifi devices this list includes the Realtek RTL8187B chipset (802.11G) and the Atheros AR9170 chipset (802.11N). For Mini PCIe all cards with an Atheros chipset are supported.
Wifi has always been a problem for free software users. USB Wifi cards are becoming less free. With the older 802.11G standard many USB wifi cards had free drivers and did not require non-free firmware. With 802.11N there are only a couple chipsets on the market, from Atheros, which are completely free.
One company which specializes in free software and sells 802.11N USB wifi cards, ThinkPenguin.com, has indicated the availability of free software supported 802.11N USB wifi cards is disappearing. Solving this problem will require more demand than currently exists. Next time you purchase a piece of hardware ask yourself if it is free software compatible.
Simple guide
The following devices have been tested and are confirmed to work with FOSS software only with the latest Debian:
Device
Confirmed = one user editing this has tested this himself; it is still working without problems and does not require any other steps than those under "Guide"
Drawbacks/Comments e.g. price or bugs (check issues)
Guide
TP-Link TL WN821N
(./)
- The original code of the driver is copyrighted and later contributors don't know by whom.
The driver download does not contain license information.
(Most C files are licensed under GNU General Public License (GPL), version 2.)
- Only works when disabling random MAC addresses. it used to be noisy
1. Update: sudo apt-get update && apt-get upgrade && && apt-get dist-upgrade and reboot if you updated the kernel
2. Connect the device. lsusb should show 2357:0107
3. Install required packages: sudo apt-get install git linux-headers-generic build-essential dkms
4. Get the latest driver from ?GitHub and install it:
git clone https://github.com/Mange/rtl8192eu-linux-driver
cd rtl8192eu-linux-driver
sudo dkms add .
sudo dkms install rtl8192eu/1.0
(5.) Blocklist rtl8xxxu: echo "blacklist rtl8xxxu" | sudo tee /etc/modprobe.d/rtl8xxxu.conf
6. Reboot and check that the kernel module is loaded by running: lsmod
7. Use your network-interface to connect to the WLAN. You could use the pre-installed NetworkManager for that.
(8.) Edit NetworkManager.conf as root: sudo kate /etc/NetworkManager/NetworkManager.conf
Append the following:
[device]
wifi.scan-rand-mac-address=no
Save and run: /etc/init.d/network-manager restart
Devices that might work
According to some users/reviewers these devices might possibly work with the latest Debian. They need to be confirmed and need specific guides. Furthermore, they might only work with proprietary firmware (FOSS-column).
In the Count reviewers (date/Debian version)-column the Debian version used by the reviewer, the name of the Debian-based distribution, and/or the year of the review is given in brackets. [PP] stands for a review that says it's working Plug&Play, [nPP] for one explicitly saying that it's not working Plug&Play or describing a guide that's not Plug&Play. [B] stands for a review that says it's buggy. The number curly brackets show how many users rated a review helpful / voted it up. Additional types could get added to the type-column. (with antenna) refers antennas attached by wire.
Device
Type
Count reviewers (date/Debian version)
Draft guide and notes
FOSS
Panda Wireless PAU06
USB adapter
1. Install the ralink firmware with "sudo apt install firmware-ralink"
2. Modify "/etc/NetworkManager/NetworkManager.conf" and append the following:
[Device]
wifi.scan-rand-mac-address=no
{X}
Edimax EW-7811Un
USB adapter
1 (9,[nPP],[B]), 1 (NOOBS,2015,[B]), 1 (2013,[B]), 1 (2016,[B]), 1 (2014), 1 (ARMv6,[B])
For a guide see multiple in the Amazon reviews. There seems to be a problem with this dongle's range.
Broadcom BCM94352HMB
1 (2016,[nPP(?)]
Blurex Long Range Wireless-N
USB adapter (with antenna)
"Ralink rt2870/rt3070". "OpenWRT has a driver in their latest version, so if you have installed OpenWRT on your router and it has a USB port, plug this in and restart your router and it will come up with an extra WiFi interface: now it's a WiFi repeater or an access point with an outdoor antenna"
CSL Wireless LAN USB 2.0 Dongle
USB adapter (with attached antenna)
around 20, confirmed for 2,5 years by wiki.debianforum.de user/s
"apt-get install firmware-realtek"
{X}
Prerequisites
A WiFi interface is a network interface which also requires WiFi-specific configuration parameters and authentication.
www.debian.org/doc/manuals/debian-reference/ch05 - Debian Reference Chapter 5 - Network setup
For basic command line usage (installed by default on Desktop & Laptop installations):
iw tool for manipulating Linux Wireless stack via cfg80211/nl80211 (netlink interface).
wireless-tools a deprecated1 set of tools for manipulating using Linux Wireless Extensions (ioctl)
- For GUI systems:
NetworkManager A wired and wireless manager, installed by default on Desktop & Laptop installations with GUI tools to display status and to configure network interfaces. Command line nmcli(1) and terminal nmtui(1) tools are available as well.
wicd was available up to buster, a wired and wireless manager, is recommended for other environments without GNOME dependencies such as XFCE, Fluxbox, Openbox, Enlightenment.
WiFi authentication tools:
wpasupplicant, client support for WPA, WPA2, and WPA3 authentication. It may use either nm80211 or Wireless Extensions interfaces. It is used by higher level configuration tools like ifupdown and NetworkManager.
iwd, aims to potentially replace wpasupplicant in the future by utilizing modern Linux features via nl80211
- Other related packages:
rfkill, simple command-line tool used to enable and disable wireless networking devices, typically WLAN, Bluetooth and mobile broadband. NetworkManager tools can turn WiFi interfaces on and off as well.
If these are missing, you can install these via:
aptitude install iw
... and similar
Use lsusb to see information about which USB WiFi adapter is connected
Use lspci to see information about which PCI cards is connected
Install Driver
Before you buy, verify your intended device is supported by an available Linux driver. A good indication of support is Tux being displayed on the product's packaging. Better, perhaps, is using a web search engine to find reports from others using it with Debian stable attesting to its performance and usability.
This section presents general lists of WiFi devices (grouped by host interface) and sorted by driver/module name. Each list has two main elements: the module name and the chipset(s) it supports. Known unsupported chipsets are at the end of each list.
If available, a help page link will provide you with further information. We recommend you read the associated help page, as some devices may require to be supplied with microcode (aka "firmware") before they can be used.
For an indication of support with a specific device, see the Wireless Adapter Chipset Directory.
PCI Devices
See HowToIdentifyADevice/PCI for more information
ath5k
Atheros Communications chipsets (AR5210, AR5211, AR5212, AR5213, AR5414, AR2413, AR242x)
{OK}
iwlagn
iwlwifi
Intel Wireless WiFi Link
Intel Wireless-N
Intel Advanced-N
Intel Ultimate-N
X-(
orinoco_nortel
orinoco_plx
orinoco_tmd
Lucent/Agere Hermes and Intersil Prism 2/2.5/3 chipsets
{OK} / X-( 3
rt2800pci
Ralink chipsets (RT2760, RT2790, RT2860, RT2890, RT3060, RT3062, RT3090, RT3091, RT3092, RT3390, RT3562, RT3592, RT5390)
X-(
wl
Broadcom chipsets (BCM4311, BCM4312, BCM4313, BCM4321, BCM4322, BCM43224, BCM43225, BCM43227, BCM43228)
X-(
Legend :
{OK} = OK ; {X} Unsupported(No Driver) ; /!\ = Error (Couldn't get it working); [?] Unknown, Not Test ; [-] Not-applicable
{i} = Configuration Required; X-( = Only works with a proprietary driver and/or firmware
An extended list of PCI-IDs to kernel-module mapping is available at DeviceDatabase/PCI.
USB Devices
See HowToIdentifyADevice/USB for more information
rt2800usb
Ralink chipsets (RT2070, RT2770, RT2870, RT3070, RT3071, RT3072, RT3370, RT3572, RT5370)
X-(
An extended list of USB-IDs to kernel-module mapping is available at DeviceDatabase/USB.
PC Card (PCMCIA) Devices
See ?HowToIdentifyADevice/PC_Card for more information
rt2800pci
Ralink chipsets (RT2760, RT2790, RT2860, RT2890, RT3060, RT3062, RT3090, RT3091, RT3092, RT3390, RT3562, RT3592, RT5390)
X-(
ZyDAS ZD1201 chipset (16-bit PC Cards)
n/a
{X}
Routers
Linksys WRT54GC
Wikipedia; it isn't similar to the WRT54G; The WRT54GC is based on the Sercomm IP806SM reference design the same chipset as the current Linksys WTY54G the Airlink101 AR315W, Alloy WRT2454AP, and Hawking HWR54G. You also can use NdisWrapper
X-(
{i} http://hostap.epitest.fi/, hostapd is a daemon to turn a computer into an access point.
Configure Interface
Your wireless network interface can be configured using a connection manager or Debian's network interface configuration file (/etc/network/interfaces).
Graphical Network Connection Tools:
Network Manager for GNOME (network-manager) or wicd
For more information, please see WiFi/HowToUse.
Troubleshooting
My Wifi card doesn't work/is not detected: many Wifi network interfaces require proprietary Firmware to function. For these cards to work, you will need to either install Debian from the unofficial CD image with included non-free firmwares, or edit your package sources to include the non-free section, and install the firmware-linux-nonfree package (and/or other firmware-* packages).
Resources
External Links
http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/#howto The Linux Wireless Compatibility and HowTo (2007)
http://linux-wless.passys.nl/ Wireless Adapter Chipset Directory
CategoryPortal | CategoryNetwork | ?CategoryWifi | CategoryHardware
https://wireless.docs.kernel.org/en/latest/en/users/documentation/iw.html (1)
Prism3 SSF devices require non-free firmware from userspace. (2 3)
For WPA support on Hermes-based devices, non-free firmware from userspace is required. Non-WPA usage and Prism chipsets (except Prism 3 SSF) use firmware stored in flash memory. (4 5)
Binary-only and GPL firmware available. (6)
Binary-only and BSD/MIT firmware available. (7)
For devices without flash memory (eg. Intel WPC2011BWW), non-free firmware from userspace is required. (8)