You are not logged in.

#1 2021-11-24 16:19:53

Eragon615
Member
Registered: 2021-09-21
Posts: 13

JBL Quantum One microphone not detected

First of all, let me say that I'm aware that the same issue is present in the JBL Quantum 400, 600, and 800 as well. I've read through the articles, but I don't quite understand how this all works.

At the tail end of this article: https://gitlab.freedesktop.org/pulseaud … issues/998
Alexander shows that /etc/modprobe.d/alsa-base.conf can be changed to tell the device to use a "quirk"? And those quirks are in the kernel? So am I correct in assuming that I need to add a quirk for this device like this:

REG_QUIRK_ENTRY(0x0ecb, 0x203a, 2),    /* JBL Quantum One */

I see that the hex codes are the vendor id and device id that I can see with lsusb. I've never edited and recompiled a kernel, but I'm sure there are guides. What I don't understand is the quirk alias. I see it has the vendor and device ids again, but then there's a colon and an additional 8 digits in hex. I've got no clue where those are coming from.

Can anyone help me understand this better? And how do I get this device added to the kernel so I don't have to rebuild my change every time a new kernel drops? Am I even on the right track here?

Thanks in advance.

Offline

#2 2021-11-24 17:31:33

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,619

Re: JBL Quantum One microphone not detected

The entire point of being able to add a quirk definition in your modprobe is to be able to adjust a "necessary" quirk on the fly without recompiling the kernel.

You'd add a modprobe line and as the quirk_alias= config option you'd use a vid/pid you know has a defined quirk already in the kernel, even if it doesn't match your normal vid/pid of the actual device you're using. The first number combination before the colon is the vid/pid of your actual device (i.e. what you currently see in lsusb) and the second pair after the colon is the vid/pid whose quirk you want to match (i.e. the known actual quirk of the device that's already in the kernel) https://patchwork.kernel.org/project/al … i@suse.de/

The "proper" fix for this would be to actually add it into the kernel indeed, but if you don't want to recompile you can use a quirk_alias in the interim

Last edited by V1del (2021-11-24 17:42:04)

Online

#3 2021-11-24 17:50:32

Eragon615
Member
Registered: 2021-09-21
Posts: 13

Re: JBL Quantum One microphone not detected

Oh! I get it now. Son-of-a-gun, that was easy. I just didn't get what to do. I'll sum it up based on my understanding for any onlookers:

Quirks go in the kernel, so someday the JBL Quantum One will just work. Until that time, a quirk alias will cause a device to use another device's quirk. So in /etc/modprobe.d/alsa-base.conf you put:
options snd-usb-audio index=-2 quirk_alias=0ecb203a:095116d8
The first 8 digits are the device you have, in my case 0ecb:203a, or the JBL Quantum One. The second 8 digits are the device who's quirk you want to use. I used the Kingston HyperX Amp, because it seems to be identical to the JBLs as far as the quirk is concerned. Then I rebooted because I was too lazy to look up how to restart alsa.

After it came up I went into my sound settings and now I can set the device as Stereo out and mono in. The mic appeared, I tested it in Discord, and bob's your uncle.

So is there a way a random guy like me can suggest the quirk go into future kernels? It'd be pretty cool to say I submitted that change, even for such a small thing.

Offline

#4 2021-11-24 17:54:18

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,619

Re: JBL Quantum One microphone not detected

I'd assume you can report a bug/post a patch on https://bugzilla.kernel.org/

Last edited by V1del (2021-11-24 17:55:19)

Online

Board footer

Powered by FluxBB