miniDSP microphone Array

I have a miniDSP microphone array which outputs 16 channel via USB (Array (URA), 16 x raw audio ASIO driver). I am hoping to be able to record and process all 16 audio channel using the TX2 board.
Link to mic array:
https://www.minidsp.com/products/usb-audio-interface/uma-16-microphone-array

I would like some assistance enabling this microphone array as input for recording and analysis.

Following prior post I ran a few test to determine if the mic is available, the mic is plugged into the TX2 USB and powered during these test.

  1. $ alsamixer
    returns: cannot open mixer: No such device
  2. nvidia@tegra-ubuntu:~ lsmod | grep snd_usb
    returns:
    snd_usb_audio 168080 1
    snd_usbmidi_lib 24102 1 snd_usb_audio
    snd_hwdep 7566 1 snd_usb_aud
  3. nvidia@tegra-ubuntu:~ cat /proc/asound/cards
    returns:
    0 [tegrahda ]: tegra-hda - tegra-hda
    tegra-hda at 0x3518000 irq 400
    1 [tegrasndt186ref]: tegra-snd-t186r - tegra-snd-t186ref-mobile-rt565x
    tegra-snd-t186ref-mobile-rt565x
    2 [UAC20 ]: USB-Audio - nanoSHARC micArray16 UAC2.0
    XMOS nanoSHARC micArray16 UAC2.0 at usb-3530000.xhci-2, high speed

Note that card 2 is the one I need.

  1. $ aplay -l
    **** List of PLAYBACK Hardware Devices ****

    only card 0 and 1 are listed here
  2. nvidia@tegra-ubuntu:~ zcat /proc/config.gz | grep SND_USB
    CONFIG_SND_USB=y
    CONFIG_SND_USB_AUDIO=m

CONFIG_SND_USB_UA101 is not set

CONFIG_SND_USB_CAIAQ is not set

CONFIG_SND_USB_6FIRE is not set

CONFIG_SND_USB_HIFACE is not set

CONFIG_SND_USB_POD is not set

CONFIG_SND_USB_PODHD is not set

CONFIG_SND_USB_TONEPORT is not set

CONFIG_SND_USB_VARIAX is not set

That is all I have for now. any assistance is appreciated.

Hi James,

Given this USB soundcard is a microphone array, if it does not have any playback capability then it would not be listed under ‘aplay -l’. Can you try …

arecord -l

Regards,
Jon

Interesting you were able to get the UMA-16 to work James. When I connect the UMA-16 to my Xavier it doesn’t show up with arecord and instead returns errors that it ‘cannot set urb’ and ‘cannot set freq 48000’

from dmesg

2280.546337] usb 1-4: new high-speed USB device number 122 using tegra-xusb
[ 2280.567459] usb 1-4: New USB device found, idVendor=2752, idProduct=001d
[ 2280.567516] usb 1-4: New USB device strings: Mfr=1, Product=3, SerialNumber=0
[ 2280.567523] usb 1-4: Product: nanoSHARC micArray16 UAC2.0
[ 2280.567528] usb 1-4: Manufacturer: XMOS
[ 2280.830085] usb 1-4: USB disconnect, device number 122
[ 2281.130305] usb 1-4: new high-speed USB device number 123 using tegra-xusb
[ 2281.151173] usb 1-4: New USB device found, idVendor=2752, idProduct=001d
[ 2281.151186] usb 1-4: New USB device strings: Mfr=1, Product=3, SerialNumber=0
[ 2281.151223] usb 1-4: Product: nanoSHARC micArray16 UAC2.0
[ 2281.151229] usb 1-4: Manufacturer: XMOS
[ 2281.975388] usb 1-4: USB disconnect, device number 123
[ 2281.975571] retire_capture_urb: 2 callbacks suppressed
[ 2281.975670] usb 1-4: cannot submit urb (err = -19)
[ 2282.254315] usb 1-4: new high-speed USB device number 124 using tegra-xusb
[ 2282.275186] usb 1-4: device descriptor read/8, error -71
[ 2282.403039] usb 1-4: device descriptor read/8, error -71
[ 2282.630254] usb 1-4: new high-speed USB device number 125 using tegra-xusb
[ 2282.650879] usb 1-4: New USB device found, idVendor=2752, idProduct=001d
[ 2282.650888] usb 1-4: New USB device strings: Mfr=1, Product=3, SerialNumber=0
[ 2282.650891] usb 1-4: Product: nanoSHARC micArray16 UAC2.0
[ 2282.650894] usb 1-4: Manufacturer: XMOS

[ 2268.478968] usb 1-4: new high-speed USB device number 104 using tegra-xusb
[ 2268.499981] usb 1-4: New USB device found, idVendor=2752, idProduct=001d
[ 2268.500001] usb 1-4: New USB device strings: Mfr=1, Product=3, SerialNumber=0
[ 2268.500009] usb 1-4: Product: nanoSHARC micArray16 UAC2.0
[ 2268.500014] usb 1-4: Manufacturer: XMOS
[ 2268.519277] usb 1-4: 1:1: cannot set freq 48000 (v2): err -71
[ 2268.520901] usb 1-4: cannot get ctl value: req = 0x83, wValue = 0x201, wIndex = 0xb00, type = 4
[ 2268.521146] usb 1-4: 11:0: cannot get min/max values for control 2 (id 11)
[ 2268.521424] usb 1-4: cannot get ctl value: req = 0x83, wValue = 0x200, wIndex = 0xb00, type = 4
[ 2268.521612] usb 1-4: 11:0: cannot get min/max values for control 2 (id 11)
[ 2268.525358] usb 1-4: USB disconnect, device number 104

Any idea @Jon?

For others that run into this issue, apt-get update gets the device to periodically show up via lsusb. But it still connects/disconnects intermittently