Read the statement by Michael Teeuw here.
How do I get the Google AIY Voice HAT installed so that MMM can use it?
-
@sdetweil Ok, I see, I just thought of the Voice HAT as a piece of hardware, that should work with everythng :-)
-
@fribse @Sean will know, he is the MMM-AssistantMk2 author
-
@fribse
Under this condition, you can use it as Mic/Speaker for MMM-AssistantMk2- you should be able to record your voice through HAT mic with
arecord -d [PROPER_DEVICE]
in terminal. Find or set[PROPER_DEVICE]
. - HAT should be default sound output device, so you should be able to play some mp3/wav file with
mpg321
in terminal.
2-1) If HAT is not the default device, you should find or set proper device name/id for HAT speaker out. It should be different with Mic.
- you should be able to record your voice through HAT mic with
-
@Sean Hi Sean, sorry I didn’t see your post, ok, so I’ll install the ALSA, I guess I can figure that part out, thankyou for chiming in!
-
@fribse
ALSA is default audio framework of Raspbian OS.(of some version of Debina/Ubuntu linux and others also…). You just need to find/set proper setup.You can check the information of your audio devices with these commands;
arecord -l
: for Mic devices;
aplay -l
: for Speaker devices;Those commands will show something similar this;
$ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA] Subdevices: 8/8 Subdevice #0: subdevice #0 Subdevice #1: subdevice #1 Subdevice #2: subdevice #2 Subdevice #3: subdevice #3 Subdevice #4: subdevice #4 Subdevice #5: subdevice #5 Subdevice #6: subdevice #6 Subdevice #7: subdevice #7 card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI] Subdevices: 1/1 Subdevice #0: subdevice #0
This result is just sample. It might be different with your environments.
The combination ofcard number
anddevice number
(and pcm channel also) are the identifier of your device. Unless you set additional setup in your own ALSA configuration, It will have something like"hw:0"
or"plughw:1,1"
or"default"
or justnull
(by your peripheral environments)When you use voiceHAT, there might be possibility which has same card/device id for both of Mic and Speaker. It could be an issue for MMM-AssistantMk2 or MMM-Hotword. In that case, you need to configure ALSA setup to give different ids to devices. Sorry, I’m not the kind of Experts so I cannot help you about this topic with details.
-
Hi @Sean
Thankyou for helping me.
Hmm:
pi@magicmirror:~ $ arecord -l
**** List of CAPTURE Hardware Devices ****
pi@magicmirror:~ $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
Subdevices: 7/7
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 IEC958/HDMI [bcm2835 IEC958/HDMI]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: ALSA [bcm2835 ALSA], device 2: bcm2835 IEC958/HDMI1 [bcm2835 IEC958/HDMI1]
Subdevices: 1/1
Subdevice #0: subdevice #0
pi@magicmirror:~ $So the hat doesn’t appear at all as it is.
I guess I could get the AIY image, and start with that instead?
Then it should have the right setup. -
@fribse
Sorry, I have no experience of that HAT, so I don’t know its normal or not. -
-
So @sdetweil and @Sean
I started over, installed the last stretch.
Followed the guide on the link from @sdetweil , and Weheee:pi@raspberrypi:~ $ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: sndrpigooglevoi [snd_rpi_googlevoicehat_soundcar], device 0: Google voiceHAT SoundCard HiFi voicehat-codec-0 [] Subdevices: 0/1 Subdevice #0: subdevice #0 pi@raspberrypi:~ $ arecord -l **** List of CAPTURE Hardware Devices **** card 0: sndrpigooglevoi [snd_rpi_googlevoicehat_soundcar], device 0: Google voiceHAT SoundCard HiFi voicehat-codec-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 pi@raspberrypi:~ $
Now I’ll go on, and start over with Magicmirror :-)
-
@fribse
There could be one problem. Your mic and speaker now have same idcard 0, device 0
When my module try to close the mic(plughw:0,0
) to output sound, the speaker(plughw:0,0
) will be closed together at same time, so error will occur.
I heard there is a way to assign different id or alias to devices, but don’t know how to do.