2

The microphone of the HyperX amp USB sound card does not show up in the sound settings of Ubuntu. The sound output works fine.

$ lsusb
Bus 001 Device 013: ID 0951:16d8 Kingston Technology

$ arecord -l
**** List of CAPTURE Hardware Devices ****
...
card 3: Amp [HyperX Amp], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

$ alsamixer -c 3
cannot load mixer controls: Invalid argument

Is there any way to use the microphone with the sound card?

Thanks

1 Answer 1

1

I wrote this for my issue with a later headset and it should still apply to you. The short answer is your kernel is too old as that is the first HyperX quirk they fixed. The longer answer is:

The kernel update in 5.7rc3 introduced a patch for this issue (for this headset specifically). Once patched your dmesg output should have a line that looks like:

[    6.804026] kernel: usb 1-1: Found post-registration device assignment: 095116ea:02

The alsa configuration documentation states:

Module snd-usb-audio
--------------------
...
delayed_register
    The option is needed for devices that have multiple streams
    defined in multiple USB interfaces.  The driver may invoke
    registrations multiple times (once per interface) and this may
    lead to the insufficient device enumeration.
    This option receives an array of strings, and you can pass
    ID:INTERFACE like ``0123abcd:4`` for performing the delayed
    registration to the given device.  In this example, when a USB
    device 0123:abcd is probed, the driver waits the registration
    until the USB interface 4 gets probed.
    The driver prints a message like "Found post-registration device
    assignment: 1234abcd:04" for such a device, so that user can
    notice the need.

So taking the above information you get from dmesg, and the field you need from the config docs, add this to the end of alsa-base.conf

# Add delayed register for HyperX Cloud Flight S Headset
options snd-usb-audio delayed_register=095116ea:02

Then reboot and you should be able to see the headset and profiles as expected.

As a side note, there is another option in the snd-usb-audio module

quirk_alias
    Quirk alias list, pass strings like ``0123abcd:5678beef``, which
    applies the existing quirk for the device 5678:beef to a new
    device 0123:abcd.

This would lead me to believe that you could copy the quirk that already was written by kernel 5.4 for "Kingston HyperX AMP" and apply it to this headset, as well as adding the delayed register and it would work pre 5.7. As i already bit the bullet and did the kernel upgrade i am not going to go back and check. If someone gets that working please let me know and ill update the post here. It should be as straight forward as:

options snd-usb-audio quirk_alias=095116ea:095116d8 delayed_register=095116ea:02

Let me know!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.