By Greg Nowak. Last updated 2026-11-04.
A missing USB headset can interrupt a client call, a recording session, or a team's working day. The useful first question is where the device disappears: at the USB connection, in Linux audio hardware, or only in Kubuntu's sound settings. That answer determines the next step.
This guide is for Kubuntu 20.04. The original note also mentioned an old patch and hdajackretask. Both relate to particular analogue jack problems, so use the checks below before changing audio packages or installing an override.
Kubuntu sound not working? The short answer
Work down the audio stack and stop at the first layer where the device is missing:
lsusb # does USB see the device?
aplay -l; arecord -l # does ALSA have a sound card for it?
pactl info # is the sound server running?
pactl list short sinks # outputs
pactl list short sources # inputs (microphones)If the device shows up everywhere and is still silent, select it in Kubuntu's audio settings or the panel's volume applet, unmute it and check the application's own device choice. If pactl info fails, restart the sound server for your user, as shown below. A class-compliant USB headset or DAC needs no extra driver: the kernel's snd-usb-audio module handles it.
Start with the connection
Unplug the device, connect it directly to another USB port, and test it without a dock or hub if possible. If it needs external power, check that too. Then run:
lsusbCompare the list before and after plugging it in. An entry that appears only when connected tells you the USB bus can see the hardware. If nothing changes, try the device on another computer. A cable, port, power, or device fault is more likely than a Kubuntu sound setting.
If USB detects it, ask ALSA whether it has a playback or recording device:
aplay -l
arecord -l
cat /proc/asound/cardsA headset may appear in both lists; a USB microphone may appear only under arecord -l. Note the device name rather than assuming it will always have the same card number. USB audio card numbers can change after reconnection or reboot.
| What you see | Likely next step |
|---|---|
Absent from lsusb |
Check the port, cable, hub, power, and device on another machine. |
In lsusb, absent from ALSA |
Check recent kernel messages and the USB audio driver. |
| In ALSA, absent from sound settings | Check the PulseAudio session and available devices. |
| Listed everywhere, but silent | Select the output or input, check mute and volume, then test the application. |
If ALSA cannot see the USB audio device
Reconnect it and inspect the most recent kernel messages with dmesg. Look for the device name, USB connection errors, or snd-usb-audio. You can also check whether the USB audio module is loaded:
lsmod | grep snd_usb_audioIf the module is absent, sudo modprobe snd-usb-audio is a reasonable temporary test. Run aplay -l or arecord -l again. If the device still does not appear, record the USB vendor and product ID from lsusb and the relevant kernel messages. Those details are more useful for diagnosing a hardware compatibility issue than repeatedly restarting the desktop audio service.
If ALSA sees it but Kubuntu does not use it
Open Kubuntu's audio settings and select the USB device for output or input. Check the relevant volume and mute controls, then check the calling or recording application's own device selection. Applications can keep a previously chosen device even after the system default changes.
For a closer look at the desktop audio server, run these as your normal signed-in user:
pactl info
pactl list short sinks
pactl list short sourcesSinks are outputs; sources are inputs. If the USB device is listed, the problem is usually selection, routing, or mute rather than detection. If pactl info cannot connect and pavucontrol stays at “Establishing connection to PulseAudio,” check the user session:
pulseaudio --check
pulseaudio --start
pactl infoThe original note used pulseaudio --check ; pulseaudio -D. The check is still useful, but its exit status needs interpretation; --start is the clearer command for starting a missing PulseAudio daemon. Run it without sudo. If it fails again, capture the error and investigate the session instead of treating a restart as a permanent fix.
What about the old patch and jack override?
The earlier article linked to a PPA for Launchpad bug #1869819. That bug concerned detection of a headset plugged into a Conexant analogue audio jack on certain HP machines. Ubuntu records the fix as released for 20.04. It is not a general USB audio fix, so do not add that old PPA simply because a USB headset is missing.
The earlier sudo apt install alsa-tools-gui and hdajackretask steps belong to a different branch of troubleshooting: an internal HDA headphone or microphone jack whose routing is wrong. If that is your actual problem, the tool lets you test a codec change with “Apply now” before choosing “Install boot override.” Its “Parser hints > jack_detect = no” setting should only be considered for a diagnosed jack detection issue, not applied to every audio fault. The tool also provides “Remove boot override” if a saved change causes trouble.
Make the fix last beyond today
Kubuntu 20.04 is based on Ubuntu 20.04, which ended standard support in May 2025. Ubuntu Pro can extend security maintenance, but an older installation may still be a poor place to troubleshoot newer USB hardware indefinitely. For a work machine, document the device ID, the failing layer, and the tested fix. Then plan and test an upgrade path through 22.04 before moving to 24.04, including a call or recording test with the actual USB device.
If audio trouble is holding up a team's work and you need someone to sort the immediate fault and the upgrade plan, get in touch with Greg.
Ubuntu 20.10: USB headphones found again after a PulseAudio restart
When the USB headset is visible to the kernel but not to the sound settings, restart PulseAudio for your user: pkill -U $USER pulseaudio (Launchpad bug #1865499).
Quick answers
Newer Kubuntu: the PulseAudio commands do nothing
Later releases run PipeWire, which still answers pactl through its PulseAudio replacement. If pactl info shows a server name such as PulseAudio (on PipeWire 1.0.5), skip pulseaudio --start and restart the user services instead:
systemctl --user restart pipewire pipewire-pulse wireplumberWhat does pactl list short sources show?
One line per input: an index, the source name, the driver, the sample format and the state (RUNNING, IDLE or SUSPENDED). A USB microphone usually appears as alsa_input.usb-…. Names ending in .monitor record an output, so they are not microphones.
A USB DAC such as the Topping D10s is not found
Check lsusb first. These DACs are USB Audio Class devices and use the standard driver, so a missing entry points at the cable or the port rather than at a driver. A charge-only USB cable gives power and no data.
Sound works, but only until the next reboot
USB card numbers can change between boots, so a configuration that names hw:1 breaks. Pick the device by name in the audio settings, or use the short name in square brackets from cat /proc/asound/cards as hw:CARD=name.
Related on GrN.dk
- An AI Voice Agent Needs More Than a Phone Number and a Realtime Model
- Apache 2.4.68 Isn’t the Only Number That Proves You’re Patched
- Before You Buy a GPU: Test Your Team’s Local AI Workload
Need help with this kind of work?
Talk to Greg about the fix Get in touch with Greg.