//Solution:
I installed this driver (https://github.com/morrownr/8821au-20210708).
The driver however, did not work until I ran a script called remove-driver.sh
from the driver that I used to use (https://github.com/morrownr/8821cu-20210916). Then the wifi adapter started working again :)
Thanks a lot for the help - I am still not really sure what the problem actually was, but I’m very thankful for having my internet connection back :)
//Original post below:
Hey :)
I’ve been using a wifi adapter for my computer for about a year. A few days ago, it suddenly stopped working. It no longer shows up when I run ‘nmcli device’ in the terminal. When running ‘lsusb’ it still shows up as ‘Realtek Semiconductor Corp. 802.11ac NIC’.
To my knowledge I hadn’t updated anything before it stopped working. After it had stopped working, I used usb-tethering from my phone to do a system update, hoping it would fix the problem. I think one of the updates was a linux firmware update. Anyways, it didn’t fix anything.
The adapter didn’t work out of the box. It arrived with a driver called ‘RTL88x2BU’ and a document stating that it was compatible with the following chip drivers for linux: RTL8811AU RTL8811CU RTL8812BU RTL8814AU
I couldn’t get the driver it arrived with to work, so instead I downloaded this driver and have been using it until it stopped working. https://github.com/morrownr/8821cu-20210916
this driver only states that it supports some linux kernel version. I’m using ‘6.8.0-40-generic’, which it does not claim to suppport. I download this driver, which should support my kernel, but it didn̈́’t work either. https://github.com/morrownr/8821au-20210708
I’ve tried running lsmod on my system, and it seems to be, that no wifi driver even starts. The only thing I can remember doing just prior to my internet not working, was running ‘systemctl disable jellyfin.service’. I doubt that has anything to do with this, but I’m not sure what else it could be. My only other theory is, maybe the usb wifi adapter hardware just gave up.
Any help is appreciated ^^
A few things to start. We need to know more about how things are currently.
lspci -vv
That will give us what modules are being used by what devices along with a bunch of other information.
lsusb -v
That will give us some info about your USB layout, drivers, and so on.
We also need to know what distro you are using, kernel version, and for the distro what exact version, so if Ubuntu is it LTS, current, 23.04, etc.
That should be a good start, after that we can see where we are at and what next steps are.
I’m running Ubuntu 22.04.4 LTS, thanks for helping me :)
lspci -vv gives information about the following results, I don’t think the wifi adapter is among them
00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (rev 09) 00:02.0 VGA compatible controller: Intel Corporation IvyBridge GT2 [HD Graphics 4000] (rev 09) 00:16.0 Communication controller: Intel Corporation 6 Series/C200 Series Chipset Family MEI Controller #1 (rev 04) 00:1a.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #2 (rev 04) 00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 04) 00:1c.0 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 1 (rev b4) 00:1c.4 PCI bridge: Intel Corporation 6 Series/C200 Series Chipset Family PCI Express Root Port 5 (rev b4) 00:1d.0 USB controller: Intel Corporation 6 Series/C200 Series Chipset Family USB Enhanced Host Controller #1 (rev 04) 00:1f.0 ISA bridge: Intel Corporation H61 Express Chipset LPC Controller (rev 04) 00:1f.2 SATA controller: Intel Corporation 6 Series/C200 Series Chipset Family 6 port Desktop SATA AHCI Controller (rev 04) 00:1f.3 SMBus: Intel Corporation 6 Series/C200 Series Chipset Family SMBus Controller (rev 04) 02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
lsusb -v gives
Bus 002 Device 004: ID 0bda:c811 Realtek Semiconductor Corp. 802.11ac NIC Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 0 bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x0bda Realtek Semiconductor Corp. idProduct 0xc811 bcdDevice 2.00 iManufacturer 1 Realtek iProduct 2 802.11ac NIC iSerial 3 123456 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 0x0035 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xa0 (Bus Powered) Remote Wakeup MaxPower 500mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 5 bInterfaceClass 255 Vendor Specific Class bInterfaceSubClass 255 Vendor Specific Subclass bInterfaceProtocol 255 Vendor Specific Protocol iInterface 2 802.11ac NIC Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x05 EP 5 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x06 EP 6 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x87 EP 7 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 3 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x08 EP 8 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Device Qualifier (for other device speed): bLength 10 bDescriptorType 6 bcdUSB 2.00 bDeviceClass 0 bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 bNumConfigurations 1 Device Status: 0x0000 (Bus Powered)
Do you even
dmesg
bro?dmesg gives me 942 lines - is there anything specific I should be looking for or share here ?
If it’s an usb device, you can remove it and plug it in again and look at the ‘new’ lines at the end of the
dmesg
output.Thanks :))
I get, all in green text
[ 653.571686] usb 2-1.5: USB disconnect, device number 4 [ 655.312262] usb 2-1.5: new high-speed USB device number 5 using ehci-pci [ 655.391050] usb 2-1.5: New USB device found, idVendor=0bda, idProduct=1a2b, bcdDevice= 2.00 [ 655.391061] usb 2-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 655.391064] usb 2-1.5: Product: DISK [ 655.391067] usb 2-1.5: Manufacturer: Realtek [ 655.392897] usb-storage 2-1.5:1.0: USB Mass Storage device detected [ 655.393284] scsi host0: usb-storage 2-1.5:1.0 [ 656.219917] usb 2-1.5: USB disconnect, device number 5 [ 656.392263] usb 2-1.5: new high-speed USB device number 6 using ehci-pci [ 656.471130] usb 2-1.5: New USB device found, idVendor=0bda, idProduct=c811, bcdDevice= 2.00 [ 656.471139] usb 2-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 656.471143] usb 2-1.5: Product: 802.11ac NIC [ 656.471146] usb 2-1.5: Manufacturer: Realtek [ 656.471149] usb 2-1.5: SerialNumber: 123456 [ 778.302397] kauditd_printk_skb: 72 callbacks suppressed [ 778.302402] audit: type=1400 audit(1724013264.553:83): apparmor="DENIED" operation="capable" class="cap" profile="/usr/lib/snapd/snap-confine" pid=2429 comm="snap-confine" capability=12 capname="net_admin" [ 778.397393] audit: type=1400 audit(1724013264.648:84): apparmor="DENIED" operation="open" class="file" profile="snap-update-ns.firefox" name="/usr/local/share/" pid=2460 comm="5" requested_mask="r" denied_mask="r" fsuid=0 ouid=0 [ 780.466450] audit: type=1107 audit(1724013266.717:85): pid=768 uid=102 auid=4294967295 ses=4294967295 subj=unconfined msg='apparmor="DENIED" operation="dbus_method_call" bus="system" path="/org/freedesktop/timedate1" interface="org.freedesktop.DBus.Properties" member="GetAll" mask="send" name=":1.126" pid=2429 label="snap.firefox.firefox" peer_pid=2581 peer_label="unconfined" exe="/usr/bin/dbus-daemon" sauid=102 hostname=? addr=? terminal=?' [ 780.468502] audit: type=1107 audit(1724013266.719:86): pid=768 uid=102 auid=4294967295 ses=4294967295 subj=unconfined msg='apparmor="DENIED" operation="dbus_method_call" bus="system" path="/org/freedesktop/timedate1" interface="org.freedesktop.DBus.Properties" member="GetAll" mask="send" name=":1.126" pid=2429 label="snap.firefox.firefox" peer_pid=2581 peer_label="unconfined" exe="/usr/bin/dbus-daemon" sauid=102 hostname=? addr=? terminal=?' [ 809.734261] usb 2-1.6: new high-speed USB device number 7 using ehci-pci [ 809.818389] usb 2-1.6: New USB device found, idVendor=0fce, idProduct=020c, bcdDevice= 4.14 [ 809.818400] usb 2-1.6: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 809.818404] usb 2-1.6: Product: XQ-AU52 [ 809.818407] usb 2-1.6: Manufacturer: Sony [ 809.818409] usb 2-1.6: SerialNumber: QV7112J13A [ 815.706827] usb 2-1.6: USB disconnect, device number 7 [ 815.878262] usb 2-1.6: new high-speed USB device number 8 using ehci-pci [ 815.959096] usb 2-1.6: New USB device found, idVendor=0fce, idProduct=720c, bcdDevice= 4.14 [ 815.959106] usb 2-1.6: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 815.959110] usb 2-1.6: Product: XQ-AU52 [ 815.959113] usb 2-1.6: Manufacturer: Sony [ 815.959115] usb 2-1.6: SerialNumber: QV7112J13A [ 815.983152] usbcore: registered new interface driver cdc_ether [ 815.988878] rndis_host 2-1.6:1.0 usb0: register 'rndis_host' at usb-0000:00:1d.0-1.6, RNDIS device, 32:5a:e8:f2:1d:46 [ 815.988916] usbcore: registered new interface driver rndis_host [ 815.999781] rndis_host 2-1.6:1.0 enx325ae8f21d46: renamed from usb0 [ 845.914645] usb 2-1.5: USB disconnect, device number 6 [ 847.366261] usb 2-1.5: new high-speed USB device number 9 using ehci-pci [ 847.445009] usb 2-1.5: New USB device found, idVendor=0bda, idProduct=1a2b, bcdDevice= 2.00 [ 847.445019] usb 2-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 847.445023] usb 2-1.5: Product: DISK [ 847.445026] usb 2-1.5: Manufacturer: Realtek [ 847.446985] usb-storage 2-1.5:1.0: USB Mass Storage device detected [ 847.447905] scsi host0: usb-storage 2-1.5:1.0 [ 848.218628] usb 2-1.5: USB disconnect, device number 9 [ 848.392263] usb 2-1.5: new high-speed USB device number 10 using ehci-pci [ 848.471090] usb 2-1.5: New USB device found, idVendor=0bda, idProduct=c811, bcdDevice= 2.00 [ 848.471100] usb 2-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 848.471104] usb 2-1.5: Product: 802.11ac NIC [ 848.471107] usb 2-1.5: Manufacturer: Realtek [ 848.471110] usb 2-1.5: SerialNumber: 123456
So,
dmesg
doesn’t show any errors. Thus the device seems not to be physically damaged. But I also don’t see that any driver is loaded.
I know the issue has be fixed but this is something you (or others) might want to consider.
If you have a desktop computer you can get a “wireless access point” which you can connect to your desktop using an ethernet cable then connect the AP to your WiFi network.
This negates the need to find an adapter that supports Linux and having to install drivers to make an adapter work.
With an AP the computer only sees an ethernet connection and as the AP is separate to your computer you can position it where it gets the best reception (there are even access points from the likes of TP-Link and others that can use POE (power over ethernet) so you can run just one cable).
that’s a good idea - it certainly would have saved me from a lot of work :)
Wireless access points are really versatile and can be used is a number of ways.
I recently upgraded from an all in one WiFi router to a wired only router (I have fibre) which is then connected to my desktop using ethernet and I have a UFO style access point on the ceiling connected using ethernet and powered by POE.
If I need to upgrade the WiFi at a later date I don’t have to redo my entire network setup.
Are the networking service and network manager up and running?
systemctl status networking
systemctl status network-manager
What doesrfkill list wifi
show?‘systemctl status networking’ gives
Unit networking.service could not be found.
‘systemctl status network-manager’ gives
Unit network-manager.service could not be found.
‘rfkill list wifi’ gives nothing
//edit:
‘systemctl status NetworkManager’ gives
● NetworkManager.service - Network Manager Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled; v> Active: active (running) since Mon 2024-08-19 08:12:34 CEST; 1h 54min > Docs: man:NetworkManager(8) Main PID: 770 (NetworkManager) Tasks: 3 (limit: 9251) Memory: 11.1M CPU: 5.564s CGroup: /system.slice/NetworkManager.service └─770 /usr/sbin/NetworkManager --no-daemon
I can’t find any alternative names for ‘networking’.
ip link show
should list all available interfaces. If the wifi card isn’t there, then it’s not initialised after all.it does not show up from
ip link show
.what does it mean, that it is not initialised ?
//EDIT:
I ran a script called
remove-driver.sh
from the driver that I used to use (https://github.com/morrownr/8821cu-20210916) and now the wifi adapter is up and running again :)Thanks a lot for the help - I’m not really sure, what was wrong, but I’m very thankful for the help :)
Was the problem, that I had a bad driver installed ?
Great!
what does it mean, that it is not initialised ?
Initialisation procedure of a new device how I’ve understood it yet (I’m no expert, if someone knows better, you’re welcome to correct or enhance):
Once the device is attached, the system notices that there is device type xxxx:yyyy on usbx-y and loads the respective kernel module/driver which then creates a file (Unix philosophy: everything is a file) somewhere in/dev
e.g.wlan0
(usually you can see this in thedmesg
output. In your output there was ‘nothing’, i.e. this didn’t happen) which is used for I/O of data and tells the networking service that there is a new interface. Then, the networking service makes the interface usable for internet connection.Was the problem, that I had a bad driver installed?
Probably some important script was accidentally deleted. As far as I remember, you driver is managed by DKMS which takes care of compiling the module after each kernel update, so maybe some information got lost there.
thanks for the answer :)
I just tried to remove and insert the wifi adapter, and now the dmesg has a message about loading a driver :)
[ 503.972087] usb 1-1.1: new high-speed USB device number 6 using ehci-pci [ 504.050778] usb 1-1.1: New USB device found, idVendor=0bda, idProduct=1a2b, bcdDevice= 2.00 [ 504.050785] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 504.050786] usb 1-1.1: Product: DISK [ 504.050788] usb 1-1.1: Manufacturer: Realtek [ 504.051140] usb-storage 1-1.1:1.0: USB Mass Storage device detected [ 504.051798] scsi host0: usb-storage 1-1.1:1.0 [ 504.824569] usb 1-1.1: USB disconnect, device number 6 [ 504.996877] usb 1-1.1: new high-speed USB device number 7 using ehci-pci [ 505.075654] usb 1-1.1: New USB device found, idVendor=0bda, idProduct=c811, bcdDevice= 2.00 [ 505.075666] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [ 505.075670] usb 1-1.1: Product: 802.11ac NIC [ 505.075672] usb 1-1.1: Manufacturer: Realtek [ 505.075675] usb 1-1.1: SerialNumber: 123456 [ 505.078252] rtw_8821cu 1-1.1:1.0: Firmware version 24.8.0, H2C version 12 [ 505.474619] rtw_8821cu 1-1.1:1.0 wlxa0d7683022a3: renamed from wlan0
for some reason, it loads the old driver still. rtw_8821cu instead of rtw_8821au. I’m a tad confused, but I’m happy it’s working :)
thanks a lot for the help :)
I don’t know what kernel version you use, but from 6.2 the Linux kernel has this driver built-in. So maybe it doesn’t use the ‘newer’ 3rd party 8821au-driver, as the native driver has higher priority. https://linux-hardware.org/?id=usb:0bda-c811