Support for NUX MG-300 USB interface

Mike Oliphant oliphant at nostatic.org
Mon Jan 18 18:54:57 CET 2021


Here is the dmesg output with dyndbg enabled. It looks like it is failing
to find the clock source, and hence cannot obtain the valid sample rates.

It looks like it is finding the clock selector (id: 40), but
"uac_clock_selector_get_val()" is returning zero, and it never gets the
clock source (id: 41).

[  229.641481] usb 2-1.3: new high-speed USB device number 9 using ehci-pci
[  229.750316] usb 2-1.3: config 1 interface 3 altsetting 0 bulk endpoint
0x4 has invalid maxpacket 256
[  229.750335] usb 2-1.3: config 1 interface 3 altsetting 0 bulk endpoint
0x83 has invalid maxpacket 256
[  229.751432] usb 2-1.3: New USB device found, idVendor=1fc9,
idProduct=8260, bcdDevice= 1.00
[  229.751452] usb 2-1.3: New USB device strings: Mfr=1, Product=2,
SerialNumber=3
[  229.751459] usb 2-1.3: Product: NUX MG-300 AUDIO
[  229.751464] usb 2-1.3: Manufacturer: NUX
[  229.751468] usb 2-1.3: SerialNumber: 2008101346
[  230.170840] usb 2-1.3: __uac_clock_find_source(): selector reported
illegal value, id 40, ret 0
[  230.170860] usb 2-1.3: parse_audio_format_rates_v2v3(): unable to find
clock source (clock -22)
[  230.170871] usb 2-1.3: 1:1: found sync_ep=0x81, iface=1, alt=1,
implicit_fb=0
[  230.170879] usb 2-1.3: 1:1: add audio endpoint 0x1
[  230.170907] usb 2-1.3: Creating new data endpoint #1
[  230.170915] usb 2-1.3: Creating new sync endpoint #81
[  230.171181] usb 2-1.3: 1:1 Set sample rate 0, clock 40
[  230.171408] usb 2-1.3: __uac_clock_find_source(): selector reported
illegal value, id 40, ret 0
[  230.171657] usb 2-1.3: __uac_clock_find_source(): selector reported
illegal value, id 40, ret 0
[  230.172463] usb 2-1.3: __uac_clock_find_source(): selector reported
illegal value, id 40, ret 0
[  230.172480] usb 2-1.3: parse_audio_format_rates_v2v3(): unable to find
clock source (clock -22)
[  230.172490] usb 2-1.3: 2:1: add audio endpoint 0x82
[  230.172512] usb 2-1.3: Creating new data endpoint #82
[  230.172707] usb 2-1.3: 2:1 Set sample rate 0, clock 40
[  230.172832] usb 2-1.3: __uac_clock_find_source(): selector reported
illegal value, id 40, ret 0
[  230.173079] usb 2-1.3: __uac_clock_find_source(): selector reported
illegal value, id 40, ret 0
[  230.173442] usb 2-1.3: [10] FU [PCM Playback Switch] ch = 2, val = 0/1/1
[  230.173450] usb 2-1.3: [10] FU [PCM Playback Switch] ch = 1, val = 0/1/1
[  230.173949] usb 2-1.3: RANGE setting not yet supported
[  230.174700] usb 2-1.3: [10] FU [PCM Playback Volume] ch = 2, val =
-16384/0/256
[  230.175074] usb 2-1.3: RANGE setting not yet supported
[  230.175823] usb 2-1.3: [10] FU [PCM Playback Volume] ch = 1, val =
-16384/0/256
[  230.176631] usbcore: registered new interface driver snd-usb-audio

On Mon, Jan 18, 2021 at 8:33 AM Mike Oliphant <oliphant at nostatic.org> wrote:

> Thanks for the response. I'm running a very recent build of the master
> kernel tree (~ 5.11-rc2).
>
> I'll give dyndbg a try.
>
> Mike
>
> On Sun, Jan 17, 2021 at 11:43 PM Takashi Iwai <tiwai at suse.de> wrote:
>
>> On Sun, 17 Jan 2021 19:56:01 +0100,
>> Mike Oliphant wrote:
>> >
>> > I recently got a NUX MG-300 USB guitar fx interface with high hopes
>> that it
>> > would work in Linux. It is supposed to be class-compliant, and works in
>> iOS
>> > and macOS without a driver.
>> >
>> > Unfortunately, while it is recognized as a USB audio device by Linux,
>> it is
>> > not working.
>> >
>> > The core issue seems to be that "stream0" reports no playback rates.
>> dmesg
>> > also shows errors, including "__uac_clock_find_source(): selector
>> reported
>> > illegal value".
>> >
>> > Any help identifying the issue would be much appreciated. I have some
>> > experience troubleshooting the USB audio kernel code and am happy to try
>> > doing so if I can get a nudge in the right direction.
>> >
>> > Output from "stream0", dmesg, and lsusb follows.
>>
>> Did you try the latest 5.11-rc kernel?  There have been lots of
>> changes in USB-audio and this might work better there.
>>
>> If it still doesn't work with 5.11-rc, please try to enable the debug
>> option, e.g. boot with snd_usb_audio.dyndbg=+p boot option, plug the
>> device, and get the kernel logs (at plugging and during the audio
>> operations).
>>
>>
>> thanks,
>>
>> Takashi
>>
>


More information about the Alsa-devel mailing list