All of lore.kernel.org
 help / color / mirror / Atom feed
* mic not working on JBL Quantum series USB headsets
@ 2021-07-20 18:00 Jakub Fišer
  2021-07-21 20:16 ` Alexander Tsoy
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Jakub Fišer @ 2021-07-20 18:00 UTC (permalink / raw)
  To: alsa-devel

Hello Alsa people,

hope this is the right place to post.

My Quantum 800's microphone doesn't work and I found other reports suggesting
this issue affects the whole Quantum product line.

It's a wireless headset with USB dongle.

I *think* the issue is with Alsa because the Capture device is "detected" but not
populated under /sys:

arecord list of devices:
```
% arecord -l
**** List of CAPTURE Hardware Devices ****
(...)
card 1: Q800 [Quantum 800], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
```

amixer knobs:
```
% amixer -c1
Simple mixer control 'PCM',0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'PCM',1
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Headset',0
Capabilities: cvolume cvolume-joined cswitch cswitch-joined
Capture channels: Mono
Limits: Capture 0 - 64
Mono: Capture 64 [100%] [0.00dB] [on]
```

arecord trying to use the capture device:
```
% arecord -Dhw:1,0 /tmp/out.wav
arecord: main:831: audio open error: No such file or directory
```

/sys pcm "endpoints" (missing capture endpoint):
```
% ls -1d /sys/class/sound/pcm*
/sys/class/sound/pcmC1D0p
/sys/class/sound/pcmC1D1p
```

nothing suspicious in dmesg:
```
usb 3-1.3: new full-speed USB device number 12 using xhci_hcd
usb 3-1.3: New USB device found, idVendor=0ecb, idProduct=203e, bcdDevice= 1.00
usb 3-1.3: New USB device strings: Mfr=4, Product=5, SerialNumber=0
usb 3-1.3: Product: Quantum 800
usb 3-1.3: Manufacturer: JBL
usb 3-1.3: Found post-registration device assignment: 0ecb203e:02
input: JBL Quantum 800 Consumer Control as
/devices/pci0000:00/0000:00:1d.4/0000:05:00.0/0000:06:01.0/0000:08:00.0/0000:09:02.0/0000:0a:00.0/us
3/3-1/3-1.3/3-1.3:1.5/0003:0ECB:203E.0024/input/input51
input: JBL Quantum 800 as
/devices/pci0000:00/0000:00:1d.4/0000:05:00.0/0000:06:01.0/0000:08:00.0/0000:09:02.0/0000:0a:00.0/us
3/3-1/3-1.3/3-1.3:1.5/0003:0ECB:203E.0024/input/input52
hid-generic 0003:0ECB:203E.0024: input,hiddev96,hidraw0: USB HID v1.11 Device [JBL Quantum 800] on
usb-0000:0a:00.0-1.3/input5
```

Nothing at all in either Pulse or Pipewire logs.

alsa-info: http://alsa-project.org/db/?f=d9e7a91d97b2f64a0b2d00a05dfc9f9dace3a6f6

Linux 5.12.14-lqx2

Other reports:

https://bbs.archlinux.org/viewtopic.php?pid=1983686
https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/issues/998

The headset also works for me on Windows 10 out of the box (and according to the Internet, it
works on Mac, too).

Note that I updated the headset and dongle to the latest firmware (v3.1.5.0) with no effect.

The 800 model also has Bluetooth with both A2DP and HSP profile. Not sure if this is relevant
but for clarity:

- with Pulse A2DP profile works only as output device (SBC and AAC), other profiles, such as
HSP, are listed but "unavailable"
- with Pipewire only HSP profiles are listed and available (mSBC, CVSD and "plain"),
microphone *works*

I'd like to help with debugging, just tell me how (or if) I can.

thanks,

-jakub.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: mic not working on JBL Quantum series USB headsets
  2021-07-20 18:00 mic not working on JBL Quantum series USB headsets Jakub Fišer
@ 2021-07-21 20:16 ` Alexander Tsoy
       [not found] ` <927fdcf7d478c50c2d5fa67b69d9fdfd@ufiseru.cz>
  2021-07-21 22:53 ` Jakub Fišer
  2 siblings, 0 replies; 6+ messages in thread
From: Alexander Tsoy @ 2021-07-21 20:16 UTC (permalink / raw)
  To: Jakub Fišer, alsa-devel

В Вт, 20/07/2021 в 18:00 +0000, Jakub Fišer пишет:
> Hello Alsa people,
> 
> hope this is the right place to post.
> 
> My Quantum 800's microphone doesn't work and I found other reports
> suggesting
> this issue affects the whole Quantum product line.

This device consists of two interfaces. The first interface contains a
single playback endpoint and the second interface contains playback and
capture endpoints. So JBL Quantum probably needs a registration quirk
similar to Kingston HyperX devices. Please try the patch below:

diff --git a/sound/usb/quirks.c b/sound/usb/quirks.c
index 8b8bee3c3dd6..f54331892d7a 100644
--- a/sound/usb/quirks.c
+++ b/sound/usb/quirks.c
@@ -1897,6 +1897,7 @@ static const struct registration_quirk registration_quirks[] = {
 	REG_QUIRK_ENTRY(0x0951, 0x16d8, 2),	/* Kingston HyperX AMP */
 	REG_QUIRK_ENTRY(0x0951, 0x16ed, 2),	/* Kingston HyperX Cloud Alpha S */
 	REG_QUIRK_ENTRY(0x0951, 0x16ea, 2),	/* Kingston HyperX Cloud Flight S */
+	REG_QUIRK_ENTRY(0x0ecb, 0x203e, 2),	/* JBL Quantum 800 */
 	{ 0 }					/* terminator */
 };
 



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: mic not working on JBL Quantum series USB headsets
       [not found] ` <927fdcf7d478c50c2d5fa67b69d9fdfd@ufiseru.cz>
@ 2021-07-21 22:53   ` Alexander Tsoy
  2021-07-21 23:02   ` Jakub Fišer
  1 sibling, 0 replies; 6+ messages in thread
From: Alexander Tsoy @ 2021-07-21 22:53 UTC (permalink / raw)
  To: alsa-devel; +Cc: Jakub Fišer

В Ср, 21/07/2021 в 22:34 +0000, Jakub Fišer пишет:
> July 21, 2021 10:17 PM, "Alexander Tsoy" <alexander@tsoy.me> wrote:
> 
> > В Вт, 20/07/2021 в 18:00 +0000, Jakub Fišer пишет:
> > 
> > > My Quantum 800's microphone doesn't work and I found other reports
> > > suggesting
> > > this issue affects the whole Quantum product line.
> > 
> > This device consists of two interfaces. The first interface contains
> > a
> > single playback endpoint and the second interface contains playback
> > and
> > capture endpoints. So JBL Quantum probably needs a registration quirk
> > similar to Kingston HyperX devices. Please try the patch below:
> 
> The patch works! Thanks. Two new profiles appeared in Pulseaudio (via
> Pipewire) with "Mono input" and the profile "Pro Audio" gained the
> mono input as well. Both analog and digital profiles work for playback
> but only the "Pro Audio" profile exposes the second output as well.
> This
> profile is only available when using Pipewire (not in "plain" Pulse)
> but
> I guess this is not an Alsa-related issue.
> 
> The microphone works in all three profiles as expected, everything
> is there out-of-the-box with the patched kernel. What's the process to
> get this patch to mainline? Should I be involved in it somehow?

Thanks for testing. I'll submit this patch.

> 
> 
> Just FYI, the headset also claims to have support for DTS Surround and
> a 7.1 ultimate-something, the latter being explicitly a proprietary
> thing.
> 
> I guess DTS support is proprietary, too, but I couldn't find anything
> about
> it except that "it is there". In Windows both modes are only available
> via
> the proprietary application.

According to lsusb output [1] this device works in UAC 1.0 mode and
doesn't expose any of these capabilities. Presumably Windows driver is
switching the device into some proprietary vendor specific mode or it
is processing surround sound entirely in software.

[1]
https://github.com/linuxhw/LsUSB/blob/master/Desktop/Gigabyte%20Technology/B550/B550%20AORUS%20ELITE%20V2/C77F0DF57EA1/CLEAR-LINUX-OS-34320/5.10.18-1027.NATIVE/X86_64/6093659817


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: mic not working on JBL Quantum series USB headsets
  2021-07-20 18:00 mic not working on JBL Quantum series USB headsets Jakub Fišer
  2021-07-21 20:16 ` Alexander Tsoy
       [not found] ` <927fdcf7d478c50c2d5fa67b69d9fdfd@ufiseru.cz>
@ 2021-07-21 22:53 ` Jakub Fišer
  2021-07-21 23:41   ` Alexander Tsoy
  2 siblings, 1 reply; 6+ messages in thread
From: Jakub Fišer @ 2021-07-21 22:53 UTC (permalink / raw)
  To: alsa-devel

July 21, 2021 10:17 PM, "Alexander Tsoy" <alexander@tsoy.me> wrote:

> В Вт, 20/07/2021 в 18:00 +0000, Jakub Fišer пишет:
> 
>> My Quantum 800's microphone doesn't work and I found other reports
>> suggesting
>> this issue affects the whole Quantum product line.
> 
> This device consists of two interfaces. The first interface contains a
> single playback endpoint and the second interface contains playback and
> capture endpoints. So JBL Quantum probably needs a registration quirk
> similar to Kingston HyperX devices. Please try the patch below:

The patch works! Thanks. Two new profiles appeared in Pulseaudio (via
Pipewire) with "Mono input" and the profile "Pro Audio" gained the
mono input as well. Both analog and digital profiles work for playback
but only the "Pro Audio" profile exposes the second output as well. This
profile is only available when using Pipewire (not in "plain" Pulse) but
I guess this is not an Alsa-related issue.

The microphone works in all three profiles as expected, everything
is there out-of-the-box with the patched kernel. What's the process to
get this patch to mainline? Should I be involved in it somehow?


> + REG_QUIRK_ENTRY(0x0ecb, 0x203e, 2), /* JBL Quantum 800 */

I think this is needed for the whole JBL Quantum headset product
line with USB connection according to what people have been
reporting so far.

I'm not familiar with the brand but from what I can tell, this 
only includes models 300, 400, 600, 800 and "One" where 600 and
800 are wireless via USB dongle and the others are wired USB.

As far as I can tell all of the above except 300 have two outputs.
Might be relevant according to what you said:

> This device consists of two interfaces. The first interface contains a
> single playback endpoint and the second interface contains playback and
> capture endpoints.


Just FYI, the headset also claims to have support for DTS Surround and
a 7.1 ultimate-something, the latter being explicitly a proprietary thing.

I guess DTS support is proprietary, too, but I couldn't find anything about
it except that "it is there". In Windows both modes are only available via
the proprietary application.

-j.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: mic not working on JBL Quantum series USB headsets
       [not found] ` <927fdcf7d478c50c2d5fa67b69d9fdfd@ufiseru.cz>
  2021-07-21 22:53   ` Alexander Tsoy
@ 2021-07-21 23:02   ` Jakub Fišer
  1 sibling, 0 replies; 6+ messages in thread
From: Jakub Fišer @ 2021-07-21 23:02 UTC (permalink / raw)
  To: alsa-devel

July 22, 2021 12:55 AM, "Alexander Tsoy" <alexander@tsoy.me> wrote:

> В Ср, 21/07/2021 в 22:34 +0000, Jakub Fišer пишет:
> 
>> 
>> I guess DTS support is proprietary, too, but I couldn't find anything
>> about
>> it except that "it is there". In Windows both modes are only available
>> via
>> the proprietary application.
> 
> According to lsusb output [1] this device works in UAC 1.0 mode and
> doesn't expose any of these capabilities. Presumably Windows driver is
> switching the device into some proprietary vendor specific mode or it
> is processing surround sound entirely in software.
> 

I think users will be happy with their mics working, don't think any
Linux user bought these expecting DTS to work. Anyway, I'll study up 
a little bit on this later and try to figure out if it is HW or SW. I'll
post my findings here.

  -j.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: mic not working on JBL Quantum series USB headsets
  2021-07-21 22:53 ` Jakub Fišer
@ 2021-07-21 23:41   ` Alexander Tsoy
  0 siblings, 0 replies; 6+ messages in thread
From: Alexander Tsoy @ 2021-07-21 23:41 UTC (permalink / raw)
  To: alsa-devel; +Cc: Jakub Fišer

В Ср, 21/07/2021 в 22:53 +0000, Jakub Fišer пишет:
> ....
> 
> > + REG_QUIRK_ENTRY(0x0ecb, 0x203e, 2), /* JBL Quantum 800 */
> 
> I think this is needed for the whole JBL Quantum headset product
> line with USB connection according to what people have been
> reporting so far.
> 
> I'm not familiar with the brand but from what I can tell, this 
> only includes models 300, 400, 600, 800 and "One" where 600 and
> 800 are wireless via USB dongle and the others are wired USB.
> 
> As far as I can tell all of the above except 300 have two outputs.
> Might be relevant according to what you said:

I can confirm that Quantum 400 (0ecb:2039) and Quantum 600 (0ecb:1f46)
also need this quirk. Quantum 300 should work just fine without any
quirks (all according to publicly available lsusb outputs).


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-07-21 23:42 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-20 18:00 mic not working on JBL Quantum series USB headsets Jakub Fišer
2021-07-21 20:16 ` Alexander Tsoy
     [not found] ` <927fdcf7d478c50c2d5fa67b69d9fdfd@ufiseru.cz>
2021-07-21 22:53   ` Alexander Tsoy
2021-07-21 23:02   ` Jakub Fišer
2021-07-21 22:53 ` Jakub Fišer
2021-07-21 23:41   ` Alexander Tsoy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.