SLN-ALEXA-IOT套件如图1所示:SLN-ALEXA-IOT软件包概述如下。请检查是否有损坏或痕迹,如果发现,请与恩智浦代表联系。
图1:SLN-ALEXA-IOT软件包概述
打开包装盒时,SLN-ALEXA-IOT套件随附印刷版《快速入门指南》和USB-C电缆。
图2:Alexa MCU语音套件内容
使用您的用户名和密码登录。如果您在www.nxp.com上没有帐户,请在以下网址注册:https://www.nxp.com/webapp-signup/register。
登录后,您将被转到激活页面。在指定的字段中输入套件附带的激活码。
按照界面上的说明,下载下图所示的软件包。
在发布包内,有以下文件夹结构,其中包含运行演示和开始构建产品所需的所有附带内容。
MCUXpresso SDK是一个全面的软件支持包,旨在采用基于Arm Cortex-M内核的恩智浦LPC和Kinetis微控制器以及i.MX RT跨界处理器来简化和加速应用开发。
单击下面按钮,为基于MCU的Alexa语音服务解决方案下载预配置的SDK版本。
下表描述了LED的颜色行为,可帮助用户了解MCU Alexa语音工具包的状态。为了更好地了解连接到Alexa时的LED行为,请参考AVS UI Attention系统(https://developer.amazon.com/docs/alexa-voice-service/uxdesign-attention.html)。
功能 | LED状态(D2) | 颜色 | 说明 |
---|---|---|---|
空闲 | 关 | 设备正在等待用户交互 | |
侦听激活 | 青灯常亮 | 设备正在侦听并通过AWS IoT将麦克风数据发送到AVS。 | |
正在思考 | 青/蓝灯交替闪烁200ms | AVS通过AWS物联网决定如何处理请求 | |
正在通话 | 青/蓝灯交替闪烁500ms | 设备通过AWS物联网输出AVS的响应 | |
麦克风关闭 | 红灯常亮 | 设备不再监听,也不会唤醒 | |
定时器/警报到期 | 青/蓝灯交替闪烁300ms | 通知用户定时器或警报。 | |
提醒 | 青/蓝灯交替闪烁250ms | 提醒已触发 | |
重新连接 | 绿灯闪烁500ms | 设备处于服务重新连接状态 | |
AWS物联网已连接 | 绿灯闪烁250ms | 该设备已连接到AWS物联网核心 | |
开机 | 青/蓝灯交替闪烁1秒 | 设备已开机并正在初始化。 | |
等待有效的Wi-Fi凭证 | 黄灯闪烁500ms | 连接WiFi网络。 | |
指配Wi-Fi凭证 | 橙色常亮 | ||
找到接入点 | 黄灯闪烁250ms | 成功加入WiFi网络(密码确定);获取IP地址。 | |
找不到接入点 | 黄/红灯交替闪烁500ms | 设备无法根据闪烁中的凭证找到接入点 | |
发现模式 | 蓝灯常亮 | 等待注册 | |
LWA关联 | 黄灯常亮 | 基于移动应用信息向LWA的HTTPS请求 | |
设备变更 | 白灯闪烁3次 | 音量变化或Wi-Fi重新连接 | |
断开连接 | 红灯闪烁3次 | 当检测到唤醒字但设备断开连接时。 |
表1:LED行为
功能 | 开关 | 时间 | 说明 |
Alexa操作按钮 | SW2 | 0-3秒 |
|
静音麦克风 | SW1 | 0-3秒 | 打开隐私模式,当通过任何Alexa交互检测到唤醒词时不会打开麦克风,而导致LED红灯闪烁,其他LED灯亮 |
重置Wi-Fi凭证 | SW1 | 5-10秒 | 删除存储的Wi-Fi凭证。这将重新启动并使设备进入指配模式(Wi-Fi或BLE)。 |
恢复出厂设置 | SW1 | 超过10秒 | 删除所有配置和已注册的数据。这将使设备返回到已接收的状态。必须重新进行注册 |
增大音量 | 按住SW2 + 按下SW1 | N/A | 增大扬声器的音量会增大音量 |
减小音量 | 按住SW1 + 按下SW2 | N/A | 减小扬声器音量会降低音量 |
表2:开关行为
对于iOS,该手机应用程序目前只能通过TestFlight获得,请联系您当地的恩智浦代表以获取访问权限。
手机应用程序位于Software/MobileApplication文件夹中,该文件夹作为源代码和称为VoiceCompanionApp.apk的APK提供。
要将应用程序传输到android手机,请通过USB将手机插入PC,如下所示。
图3. 手机枚举
使用VoiceCompanionApp.apk并将其传输到您手机的下载文件夹。请按照说明(https://www.verizonwireless.com/support/knowledge-base-222186/)允许第三方应用安装Android应用。
下载文件浏览器应用(例如File Commander),然后导航到“下载”文件夹,并选择VoiceCompanioApp.apk进行安装。
图4:Companion应用下载位置
本节介绍了为板供电和连接以及将板连接到Wi-Fi接入点的过程。有多种方法可以将SLN-ALEXA-IOT套件配置到Wi-Fi网络。这些不同的机制在文档的各个部分中列出。
这些方法可用来提供Wi-Fi凭证:
盒内的USB数据线分为电源和数据两部分。USB端口的电源部分为单线连接,数据线为两线连接。
将随附的USB分配器线缆的USB-A连接到您的计算机USB,另一端连接到您的Alexa MCU语音套件的USB-C接头。
图5:Alexa MCU语音套件开机
当板接通电源时,应显示一个LED绿灯(D1),它为电源指示灯。最靠近扬声器(D2)的LED用来指示状态。这个LED在启动时应该闪烁多种颜色,以指示其已通电。当设备运行应用程序代码时,它会闪烁黄色表示初始化。
图6:Alexa MCU语音套件LED指示灯
初始化设备后,D2 LED橙灯亮,表示它正在等待将Wi-Fi凭证编程到设备中。
图7:等待Wi-Fi凭证的Alexa MCU语音套件
虽然这不是必需的,但它将导致Alexa MCU语音套件枚举为VCOM设备。您可以选择使用115200、8、0、1、0串行配置打开自己喜欢的终端,然后按照本节中的其余步骤操作。
图8:Alexa MCU语音套件开机
为了确保设置正确,您可以在控制台中输入“帮助”。输出应与图9所示的类似。
图9:MCU Alexa语音套件的帮助终端
虽然这不是必需的,但建议您键入“enable_usb_log”,以便最好地了解应用程序的工作方式,并可能有助于调试。
为了确保板处于正确的状态,输入“logs”,它将给出保存的日志的最后几行。此时,它应该显示指示设备正在等待Wi-Fi凭证的日志。
图10: AP模式日志中未连接的设备
当设备从出厂状态启动时,它将启动Wi-Fi接入点,该接入点将显示在Wi-Fi客户端可用的任何设备上。SSID将为“MCU_Voice_”,并附加设备序列号。该接入点的密码是设备的序列号。
使用电话Wi-Fi网络通过以下设置连接到设备:
打开VoiceCompanionApp,并选择“WIFI PROVISION”按钮,开始在设备上调试Wi-Fi凭证的过程。
手机应用程序将发送多个广播,等待一分钟后,可接收来自任意数量的SLN-ALEXA-IOT设备的响应。一旦发现过程完成,它将按照发送Wi-Fi凭证的方式列出设备。
请注意,如果响应数据无效,则应用程序将显示以下消息:“获取无效数据。”
图11: AP模式中未连接的设备
如果发现该设备,则将列出可用的Wi-Fi网络。“刷新”按钮会重新扫描Wi-Fi网络并刷新Wi-Fi列表。
图12:Wi-Fi列表界面
从列表中选择一个可用的Wi-Fi网络,提供与Wi-Fi SSID关联的密码。正确输入密码后,按“发送”按钮将Wi-Fi凭证传输到SLN-ALEXA-IOT套件,或选择“取消”按钮进行另一选择。
图13:输入Wi-Fi凭证
凭证发送后,此应用程序将通知用户,其手机可加入SLN-ALEXA-IOT设备使用的相同WiFi网络。注册过程中必须使两个设备都使用相同的wifi网络。
图14:Wi-Fi连接
在提示中,选择“转到设置”按钮,这将打开Wi-Fi设置页面。连接到发送给SLN-ALEXA-IOT套件的Wi-Fi网络。
返回该应用程序时,它将验证在移动设备上加入的Wi-Fi网络是否与发送到SLN-ALEXA-IOT套件的Wi-Fi网络相同。
如果Wi-Fi网络与所提供的网络不同,则此应用程序将要求加入正确的网络。如果Wi-Fi网络与提供的网络相同,则该应用程序将重定向到“发现”列表界面。
仅当设备已连接到Wi-Fi网络时,VoiceCompanionApp还可用于更新Wi-Fi凭证。
选择“发现”菜单上的“更新”按钮,可导航到Wi-Fi列表界面。要更新凭证,请继续执行上一节(2.1.3.1 Wi-Fi指配– 0)中所述的工作流程。
在这种模式下,将通过串行终端提供凭证。日志应显示设备正在等待通过串行指配的Wi-Fi凭证:
图15:等待Wi-Fi凭证的日志
要连接到Wi-Fi接入点,请键入“设置
图16:连接到Wi-Fi
设备将开始连接到Wi-Fi接入点,并且LED (D2)变为蓝灯。将设备连接到Wi-Fi接入点后,LED (D2)将变为蓝色,表明它正在等待发现开始。
图17:Wifi连接的成功日志
图18:等待发现
本节介绍将SLN-ALEXA-IOT套件注册到Alexa帐户以访问和使用Alexa生态合作体系中功能的过程。
为了能够执行此部分,必须遵循“启动并连接到Wi-Fi”部分。
设备应处于显示LED蓝灯(D2)的发现模式。导航到Android手机上的VoiceCompanionApp,并选择图标来打开该应用程序。选中后,图18中的初始界面将显示:
图19:打开Voice Companion App
图20:Voice Companion App信息界面
VoiceCompanionApp启动后,首次打开时,将显示描述VoiceCompanionApp用途的界面,阅读后按下一步按钮。
单击下一步后,将显示启动注册过程的界面。在启动此过程之前,请确保将移动应用程序连接到与SLN-ALEXA-IOT套件相同的Wi-Fi接入点,以允许两个设备之间进行通信。按下“发现”按钮,它将发送广播消息以查找网络上所有可用的SLN-ALEXA-IOT套件
图21:Voice Companion App发现界面
发现完成后,将显示所有可用的SLN-ALEXA-IOT套件的列表以及与之关联的序列号
图22:Voice Companion App发现设备
如果在同一网络中没有找到SLN-ALEXA-IOT套件,VoiceCompanionApp中将出现“未找到设备”消息。
图23:没有Voice Companion App设备
如果显示至少一个SLN-ALEXA-IOT套件,要验证您希望注册的设备,请在控制台中键入“serial_number”命令来检索唯一的序列号并使用VoiceCompanionApp中列出的设备进行验证,或验证在盒子上显示的序列号。
图24:检索设备的序列号
要开始将SLN-ALEXA-IOT套件注册到您的Amazon Alexa帐户,请选择您希望注册的设备,该设备将启动Amazon (LWA)登录过程。
注意:如果您已经拥有Amazon Shopping应用程序,它将闪烁LWA页面并自动登录到与Amazon Shopping应用程序关联的帐户。
图25:通过Amazon (LWA)登录Voice Companion App
输入凭证并成功登录或注册后,VoiceCompanionApp将继续与SLN-ALEXA-IOT套件通信,并显示完成百分比。
图26:Voice Companion App进度
在SLN-ALEXA-IOT套件上,LED (D2)将变为紫灯,这表明设备开始注册,它已经收到来自VoiceCompanionApp的信息。
图27:SLN-ALEXA-IOT套件注册开始
注意:仅当SLN-ALEXA-IOT套件在LWA期间遇到一些问题时,LED紫灯才会亮起,否则,您将看不到LED紫灯。
收到LWA的接入令牌后,MCU Alexa语音套件将开始连接到云并在MCU服务上注册AVS,这将使LED (D2)变为橙灯。
图28:MCU Alexa语音套件注册
如果设备注册失败,则Voice Companion App将在“注册失败”列表中的序列号下方显示错误。
设备完成LWA处理后,Voice Companion应用程序将更新百分比。设备将每500毫秒闪烁一次绿灯,直到设备成功连接到AWS物联网核心。
图29:连接到AWS物联网核心的MCU Alexa语音套件
设备成功连接到AWS物联网核心后,将通过AWS物联网开始注册并连接到AVS,这会导致设备每250ms闪烁一次绿灯。
图30:MCU Alexa语音套件服务注册/连接
设备完成安装后,Voice Companion App中的序列号将变为黄色,并且文本显示为“完成”,而SLN-ALEXA-IOT套件将关闭LED (D2)并发出提示音。
图31: MCU Alexa语音套件随时可用
SLN-ALEXA-IOT套件现在已连接到您的Amazon Alexa帐户。如果您进入Amazon Alexa应用,则该套件应在您的设备中列出,并称为“ NXP-Voice-Solution”。
用户与SLN-ALEXA-IOT的一个常见交互就是向设备询问一个问题。一个简单的请求,例如“Alexa,现在几点了?”有几种不同的处理和响应状态。该设备符合AVS UX关注系统,本指南将遵循一些例子来展示这一功能。
设备正在收听的第一个指示就是说出Alexa唤醒词的时间。当SLN-ALEXA-IOT套件检测到唤醒词时,将显示青灯,如图32所示,并将开始收听并通过AWS IoT将麦克风数据发送到AVS。
图32:MCU Alexa语音套件连接收听模式
当设备通过AWS物联网将麦克风捕获发送到AVS后,设备将停止收听,进入思考状态。此状态表示AVS正在处理请求并试图给出最佳响应。在这种状态下,设备的LED (D2)每200毫秒闪烁一次青灯和蓝灯。
图33:MCU Alexa语音套件通话模式
设备完成思考后,它将开始响应。在扬声器输出音频之前,LED (D2)将进入通话状态,每500ms闪烁一次青灯和蓝灯。
当LED (D2)如图33所示闪烁时,来自Alexa的响应将从扬声器中开始播放。该响应应根据您的Alexa客户帐户的位置指示天气状况。完成此操作后,LED (D2)将停止闪烁并熄灭,以指示它现在处于空闲状态,等待Alexa唤醒词,如图31所示。
如前面步骤所示,默认情况下,音量设置为最低级别1。这是为了确保扬声器在办公环境中不会打扰周围的工程师。要更改此音量级别,可以通过询问Alexa来完成。
这是通过说出“Alexa”来完成的,它将唤醒设备,显示设备处于如图32所示的状态,并开始通过AWS IoT将麦克风数据流传输到AVS。
当设备停止收听,Alexa接收到所有请求后,设备将进入思考状态,如图33所示。这意味着设备正在等待Alexa处理请求并确定最佳的操作方案。
处理完请求后,Alexa将音量设置为10,然后设备以“OK”响应,并在图33中显示LED (D2)。然后,设备将闪烁LED (D2)白灯来更改音量,这被视为设备的更改,如下图34所示。
图34:MCU Alexa语音套件设备更改
在与Alexa的下一次互动后,响应将是上述请求中设置的音量级别。
Alexa支持多轮互动,此功能允许与Alexa进行持续互动,而不必每次都说出唤醒词。
要执行此功能,它与前面显示的简单问题非常相似。设备正在收听的第一个指示就是说出Alexa唤醒词的时间。当MCU Alexa套件检测到唤醒词时,将显示青灯,如图32所示,并将开始收听并通过AWS IoT将麦克风数据发送到AVS。
在“Alexa”语音提示之后,加上“加拿大的天气怎么样”请求,该请求完成后将使设备进入思考状态,如图33所示。
Alexa识别出正确的响应后,设备将进入如图33所示的通话状态,并开始从扬声器输出“加拿大的哪个城市”或类似内容。
设备完成音频输出后,它将返回到收听状态,因为Alexa期望后续响应。这将导致设备LED (D2)显示青灯,如图32所示。向设备说出“Toronto”。
当Alexa检测到说话结束时,设备将返回思考状态,如图33所示。
一旦Alexa检测到说出多伦多音,它将使设备进入如图33所示的通话状态,并在多伦多天气更新时开始向扬声器输出音频。
Alexa支持Amazon音乐,该功能使您可以播放Alexa帐户(包括播放列表)中的音乐。
要使用此功能,它与前面显示的简单问题非常相似。当MCU Alexa套件检测到唤醒词时,将显示青灯,如图32所示,并将开始收听并通过AWS IoT将麦克风数据发送到AVS。
在“Alexa”语音提示之后,加上“播放音乐”请求,该请求完成后将使设备进入思考状态,如图33所示。
当Alexa识别出正确的响应后,设备将进入如图33所示的通话状态,并开始输出一些Alexa响应,指示它将在扬声器上播放一些音乐。
指示Alexa即将播放音乐后,设备将返回到空闲状态,如图31所示,并开始从扬声器播放音乐。
在播放音乐时,可遵循第3.1.1节的要求,使用插话功能与Alexa互动。