Wi-Fi dongle not working in Ubuntu Studio 26.04

Ubuntu Version: Ubuntu Studio 26.04

Desktop Environment (if applicable): KDE Plasma

Problem Description:
After installing Ubuntu Studio 26.04, my Wi-Fi dongle is not working.
It worked fine under Ubuntu Studio 22.04 and 24.04.

Relevant System Information:
Wi-Fi dongle brand is TP-LINK TL-WN422G.

Screenshots or Error Messages:
When I insert this Wi-Fi dongle to USB port, this notification appears: “USB Device Detected. ATHEROS USB2.0 WLAN has been connected.”

But I cannot see it in System Settings - Wi-Fi & Internet - Wi-Fi & Networking.

What I’ve Tried:
Result of wireless-info script:

########## wireless info START ##########
/home/wahyu/wireless-info: line 148: last: command not foundReport from: 02 May 2026 22:44 WIB +0700
Booted last: 02 May 2026 00:00 WIB +0700
Script from: 27 Aug 2024 10:55 UTC +0000
release
Distributor ID:	UbuntuDescription:	Ubuntu 26.04 LTSRelease:	26.04Codename:	resolute
kernel
Linux 7.0.0-15-generic #15-Ubuntu SMP PREEMPT_DYNAMIC Wed Apr 22 16:06:43 UTC 2026 x86_64 unknown unknown GNU/Linux
Parameters: ro, quiet, splash, preempt=full, threadirqs, rcu_nocbs=all
desktop
plasma
lspci
03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 06)Subsystem: Gigabyte Technology Co., Ltd Onboard Ethernet [1458:e000]Kernel driver in use: r8169Kernel modules: r8169
lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching HubBus 001 Device 006: ID 0cf3:1006 Qualcomm Atheros Communications TP-Link TL-WN322G v3 / TL-WN422G v2 802.11g [Atheros AR9271]Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hubBus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching HubBus 002 Device 004: ID 046d:c542 Logitech, Inc. M185 compact wireless mouseBus 002 Device 005: ID 058f:6366 Alcor Micro Corp. Multi Flash ReaderBus 002 Device 006: ID 046d:c534 Logitech, Inc. Nano ReceiverBus 002 Device 007: ID 046d:c534 Logitech, Inc. Nano ReceiverBus 002 Device 016: ID 2717:ff80 Xiaomi Inc. Mi/Redmi series (RNDIS)
PCMCIA card info
rfkill
secure boot
This system doesn’t support Secure Boot
lsmod
ath9k_htc             122880  0ath9k_common           53248  1 ath9k_htcmac80211             1933312  1 ath9k_htcath9k_hw              671744  2 ath9k_htc,ath9k_commonath                    40960  3 ath9k_htc,ath9k_common,ath9k_hwcfg80211             1536000  4 ath9k_htc,ath9k_common,ath,mac80211libarc4                12288  1 mac80211mxm_wmi                12288  1 nouveauwmi                    36864  3 video,mxm_wmi,nouveau
dkms
/home/wahyu/wireless-info: line 206: dkms: command not found
interfaces
ifconfig
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback  brd inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host noprefixroutevalid_lft forever preferred_lft forever2: enp3s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000link/ether <MAC ‘enp3s0’ [IF1]> brd altname enx94de80bdcf396: enx<IF from MAC [IF2]>: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000link/ether <MAC ‘enx<IF from MAC [IF2]>’ [IF2]> brd inet 172.19.14.30/24 brd 172.19.14.255 scope global dynamic noprefixroute enx<IF from MAC [IF2]>valid_lft 3143sec preferred_lft 3143secinet6 fe80::ce9f:9e0e:21ee:f3f3/64 scope link noprefixroutevalid_lft forever preferred_lft forever
iwconfig
/home/wahyu/wireless-info: line 233: iwconfig: command not found
route
default via 172.19.14.245 dev enx<IF from MAC [IF2]> proto dhcp src 172.19.14.30 metric 100172.19.14.0/24 dev enx<IF from MAC [IF2]> proto kernel scope link src 172.19.14.30 metric 100
resolv.conf
[777 root ‘/etc/resolv.conf’ → ‘../run/systemd/resolve/stub-resolv.conf’]
nameserver 127.0.0.53options edns0 trust-adsearch .
network managers
Installed:
NetworkManager
Running:
root        1630       1  0 21:14 ?        00:00:00 /usr/sbin/NetworkManager --no-daemon
NetworkManager info
GENERAL.DEVICE:                         enx<IF from MAC [IF2]>GENERAL.TYPE:                           ethernetGENERAL.NM-TYPE:                        NMDeviceEthernetGENERAL.DBUS-PATH:                      /org/freedesktop/NetworkManager/Devices/6GENERAL.VENDOR:                         Xiaomi Inc.GENERAL.PRODUCT:                        Mi/Redmi series (RNDIS)GENERAL.DRIVER:                         rndis_hostGENERAL.DRIVER-VERSION:                 7.0.0-15-genericGENERAL.FIRMWARE-VERSION:               RNDIS deviceGENERAL.HWADDR:                         <MAC ‘enx<IF from MAC [IF2]>’ [IF2]>GENERAL.MTU:                            1500GENERAL.STATE:                          100 (connected)GENERAL.REASON:                         0 (No reason given)GENERAL.IP4-CONNECTIVITY:               4 (full)GENERAL.IP6-CONNECTIVITY:               4 (full)GENERAL.UDI:                            /sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1:1.0/net/enx<IF from MAC [IF2]>GENERAL.PATH:                           pci-0000:00:1d.0-usb-0:1.1:1.0GENERAL.IP-IFACE:                       enx<IF from MAC [IF2]>GENERAL.IS-SOFTWARE:                    noGENERAL.NM-MANAGED:                     yesGENERAL.AUTOCONNECT:                    yesGENERAL.FIRMWARE-MISSING:               noGENERAL.NM-PLUGIN-MISSING:              noGENERAL.PHYS-PORT-ID:                   –GENERAL.CONNECTION:                     Redmi 10C USB tetheringGENERAL.CON-UUID:                       47b51bf0-b116-3d36-a5bb-f1e2faa07354GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/5GENERAL.METERED:                        yes (guessed)CAPABILITIES.CARRIER-DETECT:            yesCAPABILITIES.SPEED:                     unknownCAPABILITIES.IS-SOFTWARE:               noCAPABILITIES.SRIOV:                     noINTERFACE-FLAGS.UP:                     yesINTERFACE-FLAGS.LOWER-UP:               yesINTERFACE-FLAGS.CARRIER:                yesINTERFACE-FLAGS.PROMISC:                noWIRED-PROPERTIES.CARRIER:               onIP4.ADDRESS[1]:                         172.19.14.30/24IP4.GATEWAY:                            172.19.14.245IP4.ROUTE[1]:                           dst = 172.19.14.0/24, nh = 0.0.0.0, mt = 100IP4.ROUTE[2]:                           dst = 0.0.0.0/0, nh = 172.19.14.245, mt = 100IP4.DNS[1]:                             172.19.14.245DHCP4.OPTION[1]:                        broadcast_address = 172.19.14.255DHCP4.OPTION[2]:                        dhcp_client_identifier = 01:<MAC ‘enx<IF from MAC [IF2]>’ [IF2]>DHCP4.OPTION[3]:                        dhcp_lease_time = 3599DHCP4.OPTION[4]:                        dhcp_server_identifier = 172.19.14.245DHCP4.OPTION[5]:                        domain_name_servers = 172.19.14.245DHCP4.OPTION[6]:                        expiry = 1777739785DHCP4.OPTION[7]:                        host_name = GA-H61M-DS2-R3DHCP4.OPTION[8]:                        ip_address = 172.19.14.30DHCP4.OPTION[9]:                        next_server = 172.19.14.245DHCP4.OPTION[10]:                       requested_broadcast_address = 1DHCP4.OPTION[11]:                       requested_domain_name = 1DHCP4.OPTION[12]:                       requested_domain_name_servers = 1DHCP4.OPTION[13]:                       requested_domain_search = 1DHCP4.OPTION[14]:                       requested_host_name = 1DHCP4.OPTION[15]:                       requested_interface_mtu = 1DHCP4.OPTION[16]:                       requested_ms_classless_static_routes = 1DHCP4.OPTION[17]:                       requested_nis_domain = 1DHCP4.OPTION[18]:                       requested_nis_servers = 1DHCP4.OPTION[19]:                       requested_ntp_servers = 1DHCP4.OPTION[20]:                       requested_rfc3442_classless_static_routes = 1DHCP4.OPTION[21]:                       requested_root_path = 1DHCP4.OPTION[22]:                       requested_routers = 1DHCP4.OPTION[23]:                       requested_static_routes = 1DHCP4.OPTION[24]:                       requested_subnet_mask = 1DHCP4.OPTION[25]:                       requested_time_offset = 1DHCP4.OPTION[26]:                       requested_wpad = 1DHCP4.OPTION[27]:                       routers = 172.19.14.245DHCP4.OPTION[28]:                       subnet_mask = 255.255.255.0IP6.ADDRESS[1]:                         fe80::ce9f:9e0e:21ee:f3f3/64IP6.GATEWAY:                            –IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 1024CONNECTIONS.AVAILABLE-CONNECTION-PATHS: /org/freedesktop/NetworkManager/Settings/6CONNECTIONS.AVAILABLE-CONNECTIONS[1]:   47b51bf0-b116-3d36-a5bb-f1e2faa07354 | Redmi 10C USB tethering
GENERAL.DEVICE:                         enp3s0GENERAL.TYPE:                           ethernetGENERAL.NM-TYPE:                        NMDeviceEthernetGENERAL.DBUS-PATH:                      /org/freedesktop/NetworkManager/Devices/2GENERAL.VENDOR:                         Realtek Semiconductor Co., Ltd.GENERAL.PRODUCT:                        RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet Controller (Onboard Ethernet)GENERAL.DRIVER:                         r8169GENERAL.DRIVER-VERSION:                 7.0.0-15-genericGENERAL.FIRMWARE-VERSION:               –GENERAL.HWADDR:                         <MAC ‘enp3s0’ [IF1]>GENERAL.MTU:                            1500GENERAL.STATE:                          20 (unavailable)GENERAL.REASON:                         2 (Device is now managed)GENERAL.IP4-CONNECTIVITY:               1 (none)GENERAL.IP6-CONNECTIVITY:               1 (none)GENERAL.UDI:                            /sys/devices/pci0000:00/0000:00:1c.4/0000:03:00.0/net/enp3s0GENERAL.PATH:                           pci-0000:03:00.0GENERAL.IP-IFACE:                       –GENERAL.IS-SOFTWARE:                    noGENERAL.NM-MANAGED:                     yesGENERAL.AUTOCONNECT:                    yesGENERAL.FIRMWARE-MISSING:               noGENERAL.NM-PLUGIN-MISSING:              noGENERAL.PHYS-PORT-ID:                   –GENERAL.CONNECTION:                     –GENERAL.CON-UUID:                       –GENERAL.CON-PATH:                       –GENERAL.METERED:                        unknownCAPABILITIES.CARRIER-DETECT:            yesCAPABILITIES.SPEED:                     unknownCAPABILITIES.IS-SOFTWARE:               noCAPABILITIES.SRIOV:                     noINTERFACE-FLAGS.UP:                     yesINTERFACE-FLAGS.LOWER-UP:               noINTERFACE-FLAGS.CARRIER:                noINTERFACE-FLAGS.PROMISC:                noWIRED-PROPERTIES.CARRIER:               offIP4.GATEWAY:                            –IP6.GATEWAY:                            –CONNECTIONS.AVAILABLE-CONNECTION-PATHS: –
NetworkManager.state
[main]NetworkingEnabled=trueWirelessEnabled=trueWWANEnabled=true
NetworkManager config
[[/etc/NetworkManager/conf.d/default-wifi-powersave-on.conf]][connection]wifi.powersave = 3
[[/etc/NetworkManager/NetworkManager.conf]][main]plugins=ifupdown,keyfile[ifupdown]managed=false[device]wifi.scan-rand-mac-address=no
[[/usr/lib/NetworkManager/conf.d/10-default-firewall-use-iptables.conf]][main]firewall-backend = iptables
[[/usr/lib/NetworkManager/conf.d/10-globally-managed-devices.conf]][keyfile]unmanaged-devices=*,except:type:wifi,except:type:gsm,except:type:cdma
[[/usr/lib/NetworkManager/conf.d/no-mac-addr-change.conf]][device-31-mac-addr-change]match-device=driver:eagle_sdio,driver:wlwifi.scan-rand-mac-address=no
NetworkManager profiles
Netplan config
grep: /etc/netplan/01-network-manager-all.yaml: Permission deniedgrep: /etc/netplan/90-NM-47b51bf0-b116-3d36-a5bb-f1e2faa07354.yaml: Permission denied
iw reg get
Region: Asia/Jakarta (based on set time zone)
globalcountry 00: DFS-UNSET(755 - 928 @ 2), (N/A, 20), (N/A), PASSIVE-SCAN(2402 - 2472 @ 40), (N/A, 20), (N/A)(2457 - 2482 @ 20), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN(2474 - 2494 @ 20), (N/A, 20), (N/A), NO-OFDM, PASSIVE-SCAN(5170 - 5250 @ 80), (N/A, 20), (N/A), AUTO-BW, PASSIVE-SCAN(5250 - 5330 @ 80), (N/A, 20), (0 ms), DFS, AUTO-BW, PASSIVE-SCAN(5490 - 5730 @ 160), (N/A, 20), (0 ms), DFS, PASSIVE-SCAN(5735 - 5835 @ 80), (N/A, 20), (N/A), PASSIVE-SCAN(57240 - 63720 @ 2160), (N/A, 0), (N/A)
iwlist channels
‘iwlist’ is not installed (package “wireless-tools”).
iwlist scan
‘iwlist’ is not installed (package “wireless-tools”).
module infos
[ath9k_htc]filename:       /lib/modules/7.0.0-15-generic/kernel/drivers/net/wireless/ath/ath9k/ath9k_htc.ko.zstdescription:    Atheros driver 802.11n HTC based wireless deviceslicense:        Dual BSD/GPLdepends:        ath9k_hw,ath9k_common,mac80211,ath,cfg80211intree:         Yname:           ath9k_htcretpoline:      Yvermagic:       7.0.0-15-generic SMP preempt mod_unload modversionsparm:           debug:Debugging mask (uint)parm:           nohwcrypt:Disable hardware encryption (int)parm:           btcoex_enable:Enable wifi-BT coexistence (int)parm:           ps_enable:Enable WLAN PowerSave (int)parm:           use_dev_fw:Use development FW version (int)parm:           blink:Enable LED blink on activity (int)
[ath9k_common]filename:       /lib/modules/7.0.0-15-generic/kernel/drivers/net/wireless/ath/ath9k/ath9k_common.ko.zstlicense:        Dual BSD/GPLdescription:    Shared library for Atheros wireless 802.11n LAN cards.depends:        ath9k_hw,ath,cfg80211intree:         Yname:           ath9k_commonretpoline:      Yvermagic:       7.0.0-15-generic SMP preempt mod_unload modversions
[mac80211]filename:       /lib/modules/7.0.0-15-generic/kernel/net/mac80211/mac80211.ko.zstlicense:        GPLdescription:    IEEE 802.11 subsystemdepends:        cfg80211,libarc4intree:         Yname:           mac80211retpoline:      Yvermagic:       7.0.0-15-generic SMP preempt mod_unload modversionsparm:           minstrel_vht_only:Use only VHT rates when VHT is supported by sta. (bool)parm:           max_nullfunc_tries:Maximum nullfunc tx tries before disconnecting (reason 4). (int)parm:           max_probe_tries:Maximum probe tries before disconnecting (reason 4). (int)parm:           beacon_loss_count:Number of beacon intervals before we decide beacon was lost. (int)parm:           probe_wait_ms:Maximum time(ms) to wait for probe response before disconnecting (reason 4). (int)parm:           ieee80211_default_rc_algo:Default rate control algorithm for mac80211 to use (charp)
[ath9k_hw]filename:       /lib/modules/7.0.0-15-generic/kernel/drivers/net/wireless/ath/ath9k/ath9k_hw.ko.zstlicense:        Dual BSD/GPLdescription:    Support for Atheros 802.11n wireless LAN cards.depends:        athintree:         Yname:           ath9k_hwretpoline:      Yvermagic:       7.0.0-15-generic SMP preempt mod_unload modversions
[ath]filename:       /lib/modules/7.0.0-15-generic/kernel/drivers/net/wireless/ath/ath.ko.zstlicense:        Dual BSD/GPLdescription:    Shared library for Atheros wireless LAN cards.depends:        cfg80211intree:         Yname:           athretpoline:      Yvermagic:       7.0.0-15-generic SMP preempt mod_unload modversions
[cfg80211]filename:       /lib/modules/7.0.0-15-generic/kernel/net/wireless/cfg80211.ko.zstdescription:    wireless configuration supportlicense:        GPLdepends:intree:         Yname:           cfg80211retpoline:      Yvermagic:       7.0.0-15-generic SMP preempt mod_unload modversionsparm:           bss_entries_limit:limit to number of scan BSS entries (per wiphy, default 1000) (int)parm:           ieee80211_regdom:IEEE 802.11 regulatory domain code (charp)parm:           cfg80211_disable_40mhz_24ghz:Disable 40MHz support in the 2.4GHz band (bool)
module parameters
[ath9k_htc]blink: 1btcoex_enable: 0nohwcrypt: 0ps_enable: 0use_dev_fw: 0
[mac80211]beacon_loss_count: 7ieee80211_default_rc_algo: minstrel_htmax_nullfunc_tries: 2max_probe_tries: 5minstrel_vht_only: Yprobe_wait_ms: 500
[cfg80211]bss_entries_limit: 1000cfg80211_disable_40mhz_24ghz: Nieee80211_regdom: 00
/etc/modules
modprobe options
[/etc/modprobe.d/amd64-microcode-blacklist.conf]blacklist microcode
[/etc/modprobe.d/blacklist-ath_pci.conf]blacklist ath_pci
[/etc/modprobe.d/blacklist.conf]blacklist evbugblacklist usbmouseblacklist usbkbdblacklist eepro100blacklist de4x5blacklist eth1394blacklist snd_intel8x0mblacklist snd_aw2blacklist prism54blacklist bcm43xxblacklist garmin_gpsblacklist asus_acpiblacklist snd_pcspblacklist pcspkrblacklist amd76x_edac
[/etc/modprobe.d/blacklist-rare-network.conf]alias net-pf-3 offalias net-pf-6 offalias net-pf-9 offalias net-pf-11 offalias net-pf-12 offalias net-pf-19 offalias net-pf-21 offalias net-pf-36 off
[/etc/modprobe.d/intel-microcode-blacklist.conf]blacklist microcode
[/etc/modprobe.d/iwlwifi.conf]remove iwlwifi (/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) && /sbin/modprobe -r mac80211
[/etc/modprobe.d/osspd.conf]blacklist snd-pcm-ossblacklist snd-mixer-ossblacklist snd-seq-oss
rc.local
grep: /etc/rc.local: No such file or directory
pm-utils
udev rules
dmesg
[ 3074.155954] r8169 0000:03:00.0 enp3s0: Link is Down[ 3144.893426] rndis_host 2-1.1:1.0 enx<IF from MAC [IF2]>: renamed from usb0[ 3892.265598] usbcore: deregistering interface driver ath9k_htc[ 3892.265674] ath9k_htc: Driver unloaded[ 3900.617694] usb 1-1.2: ath9k_htc: Firmware ath9k_htc/htc_9271-1.4.0.fw requested[ 3900.617743] usb 1-1.2: Direct firmware load for ath9k_htc/htc_9271-1.4.0.fw failed with error -2[ 3900.617751] usb 1-1.2: ath9k_htc: Firmware htc_9271.fw requested[ 3900.617779] usb 1-1.2: Direct firmware load for htc_9271.fw failed with error -2[ 3900.617784] usb 1-1.2: no suitable firmware found![ 3900.617789] usb 1-1.2: ath9k_htc: Failed to get firmware htc_9271.fw[ 3900.618562] usb 1-1.2: ath9k_htc: USB layer deinitialized[ 3900.618710] usbcore: registered new interface driver ath9k_htc
########## wireless info END ############

Sorry I’m just a Linux newbie. I hope someone can help to resolve this issue.

Seems you’re missing wireless tools, sudo apt install iw

you can also enable the universe repo.

  • Open the Activities overview and search for “Software & Updates”.
  • Under the “Ubuntu Software” tab, check the box for:
  • Community-maintained free and open-source software (universe).
  • Click Close and select Reload when prompted to update the package cache.

iw is installed by default in all Ubuntu desktop systems as it’s part of the standard seed, so it looks more to me like an installation gone awry.

The rest of your instructions only work with GNOME.

Ubuntu Studio, since it uses KDE Plasma, has Universe enabled by default. Otherwise the installation wouldn’t even work.

Looks like the firmware is missing, in terminal apt search atheros might need to see if sudo apt install firmware-ath9k-htc gets it working

https://bugs.launchpad.net/bugs/2150830

1 Like

I have iw installed by default.

image

Universe repo is already enabled.

Thanks @Jeremy31 . sudo apt install firmware-ath9k-htc solved it perfectly. My dongle is working now.

I’m reporting this bug to https://bugs.launchpad.net/bugs/2150830 also. Hopefully it will be resolved in the next point release.

This topic was automatically closed 18 hours after the last reply. New replies are no longer allowed.