ReSpeaker 2-Mics Pi HAT是专为AI和语音应用设计的Raspberry Pi双麦克风扩展板。 这意味着您可以构建一个集成Amazona语音服务等的功能更强大,更灵活的语音产品。
该板是基于WM8960开发的低功耗立体声编解码器。 电路板两侧有两个麦克风采集声音,还提供3个APA102 RGB LED,1个用户按钮和2个板载Grove接口,用于扩展应用程序。 此外,3.5mm音频插孔或JST 2.0扬声器输出均可用于音频输出。
Note
在参考中文wiki的过程中,如果遇到一些疑问,您可以点击页面右上角切换到英文wiki参考,两者有补充。
Raspberry Pi兼容(支持Raspberry Pi Zero和Zero W,Raspberry Pi B +,Raspberry Pi 2 B和Raspberry Pi 3 B,Raspberry Pi 4 B,Raspberry Pi 3 B +)
2个麦克风
2个Grove接口
1个自定义按钮
3.5mm音频接口
JST2.0音频输出接口
声音交互应用
AI助手
按钮:连接到GPIO17的用户自定义按钮
MIC_L&MIC_R:左边右边各有一个麦克风
RGB LED:3个APA102 RGB LED,连接到树莓派的SPI接口
WM8960:低功耗立体声编解码器
Raspberry Pi 40针头:支持Raspberry Pi Zero,Raspberry Pi 1 B +,Raspberry Pi 2 B和Raspberry Pi 3 B
POWER:用于为ReSpeaker 2-Mics Pi HAT供电的Micro USB端口,请在使用扬声器时为电路板供电,以提供足够的电流。
I2C:Grove I2C端口,连接到I2C-1
GPIO12:Grove数字端口,连接到GPIO12和GPIO13
JST 2.0 SPEAKER OUT:用于连接扬声器,JST 2.0连接器
3.5mm音频插孔:用于连接带3.5mm音频插头的耳机或扬声器
step 1. 把ReSpeaker 2-Mics Pi HAT插入到Raspberry Pi
把 ReSpeaker 2-Mics Pi HAT 插入到 Raspberry Pi, 确保插入Raspberry Pi的时候针脚对齐。
Note
不要在上电的时候,热插拔ReSpeaker 2-Mics Pi HAT.
step 2. 烧录系统,登陆,换源
因为当前的Pi内核目前不支持wm8960编解码器,所以我们需要手动构建。
确保您正在您的Pi上运行最新的Raspbian操作系统(debian 9),您可以用etcher进行系统烧录
您可以用 VNC或者PUTTY连接树莓派,但之前请配置好wifi
在安装驱动之前,请根据以下流程切换源到清华。
sudo nano /etc/apt/sources.list
如果是用#注释掉原文件内容,用以下内容取代:
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib
Note
如果是2019-06-20之前版本 需要将buster
修改为Stretch
可以通过cat /etc/rpi-issue
查看是什么时候发布的版本
step 3. 驱动下载并安装 运行下面命令
sudo apt-get update sudo apt-get upgrade git clone https://github.com/respeaker/seeed-voicecard.git cd seeed-voicecard #下载声卡驱动 sudo ./install.sh --compat-kernel #安装声卡驱动 reboot #重启
Note
若驱动安装失败您可以跳转到FAQ的Q1以解决驱动安装失败问题。
step 4. 检查声卡名称是否与源代码seeed-voicecard相匹配.
pi@raspberrypi:~/seeed-voicecard $ 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 card 1: seeed2micvoicec [seeed-2mic-voicecard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 pi@raspberrypi:~/seeed-voicecard $ arecord -l **** List of CAPTURE Hardware Devices **** card 1: seeed2micvoicec [seeed-2mic-voicecard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 [] Subdevices: 1/1 Subdevice #0: subdevice #0 pi@raspberrypi:~/seeed-voicecard $
step 1. 录播测试 可以用arecord
录制,然后用aplay
播放:(不要忘记插耳机或者喇叭):
arecord -f cd -Dhw:1 | aplay -Dhw:1
也可以通过audacity软件测试。打开Audacity后,选择 AC108和2通道 作为输入,bcm2835 alsa: - (hw:0,0) 作为输出来测试:
$ sudo apt update $ sudo apt install audacity $ audacity // 运行 audacity
step 2. 调节音量(可跳过)
alsamixer 是用于配置声音设置和调整音量,高级Linux声音体系结构(ALSA)的图形混音器程序。
alsamixer
Note
首先请用F6选择seeed-2mic的声卡设备。
左和右箭头键用于选择通道或设备,“向上和向下箭头”控制当前所选设备的音量。 退出程序使用ALT + Q或按Esc键。 More information
每个板载APA102 LED都有一个额外的驱动芯片,驱动芯片设置LED的颜色,然后保持该颜色,直到接收到新的命令。
请在执行之前打开SPI,具体步骤如下:
1 2 3 4 5 6 |
配置完后,可以执行下列命令行来运行led示例
cd ~/ git clone https://github.com/respeaker/mic_hat.git sudo pip install spidev #安装spi的驱动 cd mic_hat python pixels.py
板子上面有个用户自定义按钮,连接到GPIO17. 我们可以调用python和RPi.GPIO来读取状态。
sudo pip install rpi.gpio // install RPi.GPIO library nano button.py // copy the following code in button.py
import RPi.GPIO as GPIOimport timeBUTTON = 17GPIO.setmode(GPIO.BCM)GPIO.setup(BUTTON, GPIO.IN)while True: state = GPIO.input(BUTTON) if state: print("off") else: print("on") time.sleep(1)
Save the code as button.py, then run it. It should display "on" when you press the button:
python button.py off off on on off