USB WIFI dongle that works out of the box in Linux

Hi,

I have a desktop that I need to connect to my home network through wifi; Iǘe tried a couple of those cheap wifi dongles but they don´t work: they are recognized by linux (kernel 6.3) but then they fail to connect.
One of the dongles have idVendor=0bda and idProduct=c811 (RTL_8821CU), the other has idVendor=0bda and idProduct=c820

Can you point me to a wifi dongle that works out of the box in Linux and is not too expensive?

thansk
Andrea

Until someone knows an actual device you can buy, for good money, there is a way to get the drivers.

You are right, that it is not plug-and-play though, sorry, and does need to be updated arobd kernel versions

But like I said, I’m hoping for someone to have a good unit.

I don’t know if the driver itself is proprietary, or what the reason it’s not included

The best option is look at product reviews on NewEgg, once you find a Linux friendly model and revision number just search local stores for that item. Rolling Linux distros have supported the more recent MediaTek USB chipset out of the box.
A common issue with generic USB wifi dongles is many OEMs have shifted towards Windows only chipsets or chipsets that are considered “non-free” on Linux. On Amazon for example the top four models are either MediaTek/RALink or Broadcom which won’t work on Linux or MacOS out of the box due to the non-opensouce drivers.

Might there be an apple dongle that might work in Linux, do you reckon?

I guess most linux consumer devices (android) already have WiFi.

But then, mac ones too, I guess

In the era of fewer Apple Authorized Dealers, your mileage is going to vary–most Mac owners haven’t needed an external wifi adapter after Apple redesigned their laptop antenna placement.

Going by the driver files on ASUS support site, their nano wifi 5 and wifi 6 adapters still use RealTek.

AWUS036NHA one of the most plug n play, works out of the box. limited to 2.4GHz.

otherwise the alfa adapters are generally pretty good.

edit: meant to reply to thread, not to you sorry Trooper

1 Like

For the record, I’ve found an TX-AR9271 dongle that works almost out of the box, you just need to install the atheros nonfree firmware.

Anyway, can someone give some hint to find the issue with the RTL dongles? this is an extract from the syslog, to me it doesn’t seem to give any hint on what’s wrong, but maybe someone more knowledgeable than me can give me the solution:

2023-11-12T20:01:07.253426+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2533] manager: NetworkManager state is now CONNECTING
2023-11-12T20:01:07.260647+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2543] device (wlx200bd04d3313): state change: prepare -> config (reason 'none', sys-iface-state: 'managed')
2023-11-12T20:01:07.261227+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2611] device (wlx200bd04d3313): Activation: (wifi) access point 'Connessione aither automatica' has security, but secrets are required.
2023-11-12T20:01:07.261360+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2611] device (wlx200bd04d3313): state change: config -> need-auth (reason 'none', sys-iface-state: 'managed')
2023-11-12T20:01:07.261461+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2613] sup-iface[373ffe50b7d9e324,1,wlx200bd04d3313]: wps: type pbc start...
2023-11-12T20:01:07.262829+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2626] device (wlx200bd04d3313): state change: need-auth -> prepare (reason 'none', sys-iface-state: 'managed')
2023-11-12T20:01:07.263238+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2631] device (wlx200bd04d3313): state change: prepare -> config (reason 'none', sys-iface-state: 'managed')
2023-11-12T20:01:07.263609+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2635] device (wlx200bd04d3313): Activation: (wifi) connection 'Connessione aither automatica' has security, and secrets exist.  No new secrets needed.
2023-11-12T20:01:07.263810+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2636] Config: added 'ssid' value 'aither'
2023-11-12T20:01:07.263980+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2636] Config: added 'scan_ssid' value '1'
2023-11-12T20:01:07.264158+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2636] Config: added 'bgscan' value 'simple:30:-65:300'
2023-11-12T20:01:07.264356+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2636] Config: added 'key_mgmt' value 'WPA-PSK WPA-PSK-SHA256 FT-PSK SAE FT-SAE'
2023-11-12T20:01:07.264528+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.2637] Config: added 'psk' value '<hidden>'
2023-11-12T20:01:07.274606+01:00 andrea-System-Product-Name wpa_supplicant[705]: wlx200bd04d3313: WPS-CANCEL 
2023-11-12T20:01:07.297529+01:00 andrea-System-Product-Name wpa_supplicant[705]: wlx200bd04d3313: SME: Trying to authenticate with ce:cc:21:33:9a:b4 (SSID='aither' freq=5260 MHz)
2023-11-12T20:01:07.301508+01:00 andrea-System-Product-Name kernel: [ 1106.347833] wlx200bd04d3313: authenticate with ce:cc:21:33:9a:b4
2023-11-12T20:01:07.342020+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815667.3418] device (wlx200bd04d3313): supplicant interface state: disconnected -> authenticating
2023-11-12T20:01:07.344604+01:00 andrea-System-Product-Name kernel: [ 1106.391101] wlx200bd04d3313: send auth to ce:cc:21:33:9a:b4 (try 1/3)
2023-11-12T20:01:07.996607+01:00 andrea-System-Product-Name kernel: [ 1107.046102] wlx200bd04d3313: send auth to ce:cc:21:33:9a:b4 (try 2/3)
2023-11-12T20:01:08.988611+01:00 andrea-System-Product-Name kernel: [ 1108.038103] wlx200bd04d3313: send auth to ce:cc:21:33:9a:b4 (try 3/3)
2023-11-12T20:01:09.980616+01:00 andrea-System-Product-Name kernel: [ 1109.026567] wlx200bd04d3313: authentication with ce:cc:21:33:9a:b4 timed out
2023-11-12T20:01:10.006670+01:00 andrea-System-Product-Name wpa_supplicant[705]: BSSID ce:cc:21:33:9a:b4 ignore list count incremented to 2, ignoring for 10 seconds
2023-11-12T20:01:10.012929+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815670.0122] device (wlx200bd04d3313): supplicant interface state: authenticating -> disconnected
2023-11-12T20:01:10.115355+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815670.1151] device (wlx200bd04d3313): supplicant interface state: disconnected -> scanning
2023-11-12T20:01:10.213728+01:00 andrea-System-Product-Name wpa_supplicant[705]: wlx200bd04d3313: SME: Trying to authenticate with d2:cc:21:33:9a:b5 (SSID='aither' freq=2437 MHz)
2023-11-12T20:01:10.216627+01:00 andrea-System-Product-Name kernel: [ 1109.264192] wlx200bd04d3313: authenticate with d2:cc:21:33:9a:b5
2023-11-12T20:01:10.382383+01:00 andrea-System-Product-Name NetworkManager[701]: <info>  [1699815670.3821] device (wlx200bd04d3313): supplicant interface state: scanning -> authenticating
2023-11-12T20:01:10.384618+01:00 andrea-System-Product-Name kernel: [ 1109.431104] wlx200bd04d3313: send auth to d2:cc:21:33:9a:b5 (try 1/3)
2023-11-12T20:01:10.828404+01:00 andrea-System-Product-Name systemd[1]: [email protected]: Deactivated successfully.
2023-11-12T20:01:10.828733+01:00 andrea-System-Product-Name systemd[1]: Finished [email protected] - USB_ModeSwitch_5-1.
2023-11-12T20:01:10.972605+01:00 andrea-System-Product-Name kernel: [ 1110.022101] wlx200bd04d3313: send auth to d2:cc:21:33:9a:b5 (try 2/3)
2023-11-12T20:01:11.996630+01:00 andrea-System-Product-Name kernel: [ 1111.046107] wlx200bd04d3313: send auth to d2:cc:21:33:9a:b5 (try 3/3)
2023-11-12T20:01:12.988596+01:00 andrea-System-Product-Name kernel: [ 1112.034563] wlx200bd04d3313: authentication with d2:cc:21:33:9a:b5 timed out

Bye
Andrea

try Amazon.com the tl-wn722n(which is in my hand) has worked “out of the box” on debian 11/12, linuxmint, windows 10/11 just great… YMMV, but it has worked for me

I’ve been using the Wireless N adapter from ThinkPenguin since 2020 with no issues. No driver installation required on any of the distros I use. Works as advertised.

https://www.thinkpenguin.com/gnu-linux/penguin-wireless-n-usb-adapter-gnu-linux-tpe-n150usb

PS: I think it has the same chipset as the one @apalazzi found (Atheros AR9271).

1 Like

I would check that morrownr GitHub page from above, really highlights what works, what doesn’t and the issues with all the wifi adapters for Linux - for example certain Realtek chips stop working on 6.1+ kernel due to the drivers relying in old hooks vs Linux’s direction.

Really informative!

1 Like

When purchasing a Wi-Fi dongle for Linux, it’s a good idea to check for compatibility with the kernel version you are using. Also, consider checking online forums or reviews for user experiences with specific dongles on Linux.

Keep in mind that Linux kernel updates can sometimes impact the compatibility of certain Wi-Fi dongles, so it’s essential to stay informed about the compatibility of the device with the kernel version you are using.

The authentication problem is due to a bug in rtw88. It’s fixed now and the fix is in the stable kernels from 6.6 up. Maybe you can just update your distro and try again.

I think any wifi 4 Realtek chip you can find for sale these days is going to Just Work with a sufficiently recent kernel (6.5). Except 8723du, maybe avoid that one for a while.

Their wifi 5 chips are a bit trickier. The current generation (8822cu, 8822bu, 8821cu) is supposed to be supported by rtw88 out of the box, but as you see, there are bugs.

The older generation (8812au, 8821au, 8814au) are still sold but they’re becoming more rare. These are not supported out of the box yet, you have to get a driver from GitHub.

The Realtek wifi 6+ chips are not supported out of the box.

The other option for cheap and easy to find devices is Mediatek. For more information about those, visit https //github com/morrownr/USB-WiFi