[Solved] Matrix Voice and the Alexa demo

I’ve got my Matrix Voice working for the most part. I can run all of the matrix-creator-hal demos including micarray_recorder. I can successfully record and play back a .wav file using arecord --device=mic_channel0 -r 16000 -c 1 -f S16_LE test.wav and aplay test.wav.

This is a fresh install of Raspbian Stretch, verified that I’m using Matrix’s version of the alexa sample app. Everything appears to build correctly but I cannot talk to Alexa either by pressing the java button or using the wakewordagent. Below is the output from running wakewordagent. When I press the Tap to Speak to Alexa button, it does make the typical Alexa beeps

Any help would be greatly appreciated. Not sure what else to try.

Alec

pi@raspberrypi:~/Desktop/alexa-avs-sample-app/samples/wakeWordAgent/src $ ./wakeWordAgent -e sensory
INFO:main: Starting Wake Word Agent
INFO:WakeWordAgent: State set to IDLE(2)
INFO:Initializing Sensory library | library name: TrulyHandsfree | library version: 5.0.0-beta.10.2 | model file: …/ext/resources/spot-alexa-rpi.snsr
WARNING:Library expires on: License expires on 28 Jul 2018 00:00:00 GMT
INFO:SensoryWakeWordEngine: mainLoop thread started
INFO:WakeWordIPCSocket::mainLoop thread startedERROR:
An error happened in the mainLoop of SensoryWakeWord snsrRun(): task: Input channel audio-pcm: ALSA error: No such file or directory
INFO:SensoryWakeWordEngine: mainLoop thread ended
INFO:WakeWordIPCSocket: init socket on port:5123
INFO:WakeWordAgent: thread started
INFO:===> Connected to AVS client <===

Hi @vanderwoude,

  • Are you also running the companion and the javaclient app?
  • Can you share the content of the asoundrc file
    cat ./.asoundrc

-Yoel

Yes, running both companion and javaclient app. Here is my .asoundrc file:

pcm.sc {
type hw
card 1
}

pcm.mic_channel0 {
type file
file “/tmp/matrix_micarray_channel_0”
infile “/tmp/matrix_micarray_channel_0”
format “raw”
slave {
pcm sc
}
}

pcm.mic_channel1 {
type file
file “/tmp/matrix_micarray_channel_1”
infile “/tmp/matrix_micarray_channel_1”
format “raw”
slave {
pcm sc
}
}

pcm.mic_channel2 {
type file
file “/tmp/matrix_micarray_channel_2”
infile “/tmp/matrix_micarray_channel_2”
format “raw”
slave {
pcm sc
}
}

pcm.mic_channel3 {
type file
file “/tmp/matrix_micarray_channel_3”
infile “/tmp/matrix_micarray_channel_3”
format “raw”
slave {
pcm sc
}
}

pcm.mic_channel4 {
type file
file “/tmp/matrix_micarray_channel_4”
infile “/tmp/matrix_micarray_channel_4”
format “raw”
slave {
pcm sc
}
}

pcm.mic_channel5 {
type file
file “/tmp/matrix_micarray_channel_5”
infile “/tmp/matrix_micarray_channel_5”
format “raw”
slave {
pcm sc
}
}

pcm.mic_channel6 {
type file
file “/tmp/matrix_micarray_channel_6”
infile “/tmp/matrix_micarray_channel_6”
format “raw”
slave {
pcm sc
}
}

pcm.mic_channel7 {
type file
file “/tmp/matrix_micarray_channel_7”
infile “/tmp/matrix_micarray_channel_7”
format “raw”
slave {
pcm sc
}
}

use this one. It solved the same problem I was having.

put in ~.asoundrc and /etc/asound.conf

pcm.sc {
type hw
card 1
}

pcm.mic_channel0 {
type file
file “/tmp/matrix_micarray_channel_0”
infile “/tmp/matrix_micarray_channel_0”
format “raw”
slave {
pcm sc
}
}

pcm.mic_channel1 {
type file
file “/tmp/matrix_micarray_channel_1”
infile “/tmp/matrix_micarray_channel_1”
format “raw”
slave {
pcm sc
}
}

pcm.mic_channel8 {
type file
file “/tmp/matrix_micarray_channel_8”
infile “/tmp/matrix_micarray_channel_8”
format “raw”
slave {
pcm sc
}
}

pcm.!default {
type asym
playback.pcm {
type hw
card 0
device 0
}

capture.pcm {
type file
file “/tmp/matrix_micarray_channel_0”
infile “/tmp/matrix_micarray_channel_0”
format “raw”
slave {
pcm sc
}
}
}

Now off to install the SDK version. Will be following your new thread on that one.

Kenny