在开始本指南之前,请先阅读ConnectCore 8M Nano上手指南,并刷入DEY 4.0的系统安装包,测试QT和Webkit的一些基本功能,以便掌握ConnectCore 片上系统的一些基本的特性和操作方式。

注意,语音识别演示镜像是基于DEY 3.2的固件,本操作会把之前刷好的DEY4.0固件清除,并更新固件为DEY 3.2语音识别相关的演示环境。如果您还没有测试过DEY 4.0的特性,建议您先完整操作一遍DEY 4.0的功能演示。

本文档以精简的方式展示语音识别和控制的能力,您也可以参考官方文档:https://www.digi.com/resources/documentation/digidocs/embedded/dey/3.2/cc8mnano/yocto_r_connectcore-voice

ConnectCore 8M Nano开发板的语音识别演示固件可以从Digi的官方FTP下载,当前最新的支持版本是DEY 3.2。您可以根据开发板的类型来下载不同固件,以便后面进行固件更新操作。因为Digi服务器在境外,建议您采用断点续传的下载工具下载,下载完成后,请核对SHA256的hash值,以确保文件的完整性。

请访问官方的FTP去下载https://ftp1.digi.com/support/digiembeddedyocto/3.2/r3/images/voicekit/dey-image-voice-recognition-ccimx8mn-dvk.zipCC8m nano 语音识别固件包。

找一张uSD卡并格式化为FAT32分区,将下载的压缩包的内容解压到uSD卡中。然后将uSD卡插入到CC8MN开发板的卡槽。

按下图所示连接好硬件,使用uSD卡更新固件时,网口也可以不接。只需接好Console口和电源即可,我们需要一个串口终端程序来显示它。可使用超级终端或是putty等终端程序(linux下则常用minicom作为终端程序),串口终端的波特率设置为115200/8/n/1。注意开发板线缆连上后有两个COM口供选择,只有一个是Cosole口(通常是靠前的那个串口号),上电后CC8MN开发板的console口会输出相关的启动信息。

上电后按任意建停在Uboot中,在Console口中执行脚本

setenv image-name dey-image-voice-recognition
run install_linux_fw_sd

脚本会自动执行一系列UBoot命令,并将固件更新到NAND闪存中。在更新过程中会自动重置环境变量,其中出厂的mac地址等是写保护的,所以会有出错提示,这是正常的,没有关系。

早期版本不支持直接使用上面命令时

早期版本不支持直接使用上面命令时

可以用: ⇒ fatload mmc 1 $loadaddr install_linux_fw_sd.scr
⇒ source $loadaddr

上面自动升级固件如遇到问题,有可能是不同DEY版本的问题,可以用下面手工命令的方式来升级,确保SD卡中有卡刷包,然后执行: ⇒ update uboot mmc 1:1 (如果uboot不刷也可以不执行)
⇒ update linux mmc 1:1
⇒ update rootfs mmc 1:1
⇒ update recovery mmc 1:1

开发板上的音频相关接口布局如下:

注意这不是音频和麦克风合在一起的耳机接孔,您需要的是麦克风和扬声器的单独接口,用耳麦一体的音频接口无法正常测试。经测试,许多国内麦克风接口无法使用,建议用USB耳麦来实现。如果发现麦克风不好用时,有时半插入麦克风就可以起作用,即最后一茬不插进。

测试麦克风的方法: 上电,用root登陆linux,先关闭demo程序:

vicctl stop demo-washer  先停掉demo程序
arecord -f cd sound.wav --duration 10   然后对着麦克风说话,录个10秒音频
aplay sound.wav  播放刚才录制的声音,如果无任何声音,说明麦克风有问题。

测试扬声器: 可先下载一段测试音频,配置好网络,然后用scp上传到板子:

aplay testaudio.wav

按reset键重启重新进入例程,或是手动启动例程。

用英文说: “Hey, Washer“ 麦克风正常起作用时,程序会“登”一声回应,同时程序上方的”Hey,washer…“提示启会变蓝色。在接下来的十秒内要说出任意一个可识别的指令,可以是单个指令,或是自然语言的多个指令结合。比如:

"Hey washer, wash thirty minutes"
"Hey washer, wash 1 hour and 10 minutes"
"Hey washer, Normal spin"
"Hey washer, Extra Rinse"
"Hey washer, Wash wool quickly"
"Hey washer, wash delicates quickly in hot water"
"Hey washer, Max spin"
"Hey washer, warm water"
"Hey washer, Do prewash"
"Hey washer, wash jeans in cold water"

注意,每次使用指令前,要先用唤醒词:Hey, washer, 也就是“Hi,洗衣机”的意思。

如果想测试语音合成和响应时间,可以问: “Hey washer, how long does the program last?

它会以合成的语音回答。

购买了开发套件的用户,可以用申请一个免费的License来开发语音识别程序。 需提供以下英文信息: 1、套件的MAC地址 2、套件的系列号 3、公司英文名称 4、联系人 5、邮箱 6、应用场景(什么产品,用在什么地方)

获取到License后,就可以开发并在开发板上测试自己的语音识别与合成的程序。