respeaker/mic_array

Setting up ReSpeaker Mic Array - Far-field w/ 7 PDM Microphones on Raspbian.

Closed this issue · 4 comments

Hi @xiongyihui

We're trying to get ReSpeaker Mic Array with 7 PDM Mics work on raspbian 9.

So, we installed fresh raspbian, plugged ReSpeaker.

pi@raspberrypi:~/mic_array $ arecord -l
**** List of CAPTURE Hardware Devices ****
pi@raspberrypi:~/mic_array $ lsusb
Bus 001 Device 005: ID 046d:c06c Logitech, Inc. Optical Mouse
Bus 001 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

We can't see any recording hardware / usb devices. Running mic_array repository script gives us:

sudo python mic_array.py output
pi@raspberrypi:~/mic_array $ sudo python mic_array.py
No USB device found
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.front
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround21
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround40
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround41
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround50
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround51
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround71
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.iec958
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.iec958
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.iec958
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'defaults.bluealsa.device'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4996:(snd_config_expand) Args evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM bluealsa
ALSA lib confmisc.c:1281:(snd_func_refer) Unable to find definition 'defaults.bluealsa.device'
ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory
ALSA lib conf.c:4996:(snd_config_expand) Args evaluate error: No such file or directory
ALSA lib pcm.c:2495:(snd_pcm_open_noupdate) Unknown PCM bluealsa
connect(2) call to /tmp/jack-0/default/jack_0 failed (err=No such file or directory)
attempt to connect to server failed
(0, 'bcm2835 ALSA: - (hw:0,0)', 0L, 2L)
(1, 'bcm2835 ALSA: IEC958/HDMI (hw:0,1)', 0L, 2L)
(2, 'sysdefault', 0L, 128L)
(3, 'default', 0L, 128L)
(4, 'dmix', 0L, 2L)
Traceback (most recent call last):
  File "mic_array.py", line 190, in <module>
    test_8mic()
  File "mic_array.py", line 176, in test_8mic
    with MicArray(16000, 8, 16000 / 4)  as mic:
  File "mic_array.py", line 42, in __init__
    raise Exception('can not find input device with {} channel(s)'.format(self.channels))
Exception: can not find input device with 8 channel(s)

As you told to someone we tried to change firmware

dfu command output ``` pi@raspberrypi:~/mic_array_dfu $ sudo ./dfu --download respeaker_mic_array_8ch_raw.bin VID = 0x46d, PID = 0xc06c, BCDDevice: 0x6300 VID = 0x46d, PID = 0xc52b, BCDDevice: 0x2400 VID = 0x424, PID = 0xec00, BCDDevice: 0x200 VID = 0x424, PID = 0x9514, BCDDevice: 0x200 VID = 0x1d6b, PID = 0x2, BCDDevice: 0x409 Could not find/open device ```

So we have Could not find/open device, the same as here: respeaker/mic_array_dfu#3
However, we already run this command with sudo and still have the problem.

In short:
We can't see the ReSpeaker in lsusb, arecord -l, python mic_array.py. Tried to update firmware, but didn't succeed. Also tried to execute different commands from github issues that's indirectly related to our problem - still nothing.

Please, can you tell us what to try? Simply need to capture audio with pyaudio through ReSpeaker.

Thank you very much.

Did the mic arrary power on?
Maybe try another usb cable
and can you post the log of dmesg

Hi @xiongyihui!

Thank you very much for your answer. All problems were in the USB cable. We replaced it and everything is working great.

Thanks!

@fahrenq Do you need to update firmware for 8 channel data???

Hello,
I'm also having issues connect my mic-array. It powers on, but my pi won't recognize it. I've tried a few different cables.

Thanks in advance!