阿里灵芯(Lingxin)工程
1. 简介
本工程基于
beken_genie,将云端对话通道从声网 RTC 切换为**阿里灵芯(LingXin)语音对话引擎**。配网、按键、灯效、双屏 AVI、唤醒词、提示音等交互与
beken_genie一致,硬件仍是 AIDK AI 玩具开发板(双 SPI LCD GC9D01)。详细硬件、按键、灯效、配网与 App 操作请参考:博通集成精灵AI(Beken_Genie)工程
工程目录:
<source code>/projects/lingxin
2. 与 beken_genie 的差异
传输与对话栈使用
LingXin_AI_IoT_VoiceChatEngine,由CONFIG_LINGXIN_AI_EN=y打开。配网成功后走
bk_smart_config的灵芯 adapter:向 Beken 服务器activate_agent领取appId/appKey/sn/agentCode,再调用voice_chat_init()启动对话。显示仍为双屏 AVI(
CONFIG_DUAL_SCREEN_AVI_PLAY=y),不是单屏字幕。音频默认 PCM 16 kHz,支持 G722、AEC、KWS。
3. 主要配置
Kconfig
CPU
Format
Value
CONFIG_LINGXIN_AI_EN
CPU0
bool
y
CONFIG_BK_SMART_CONFIG
CPU0
bool
y
CONFIG_DUAL_SCREEN_AVI_PLAY
CPU0 & CPU1
bool
y
CONFIG_WEBSOCKET
CPU0
bool
y
关键代码:
灵芯配网 / 鉴权:
projects/common_components/bk_smart_config/src/adapter/lingxin/对话启动:
projects/common_components/network_transfer/lingxin_wss/lingxin_wss_main.c引擎组件:
bk_avdk/components/bk_thirdparty/LingXin_AI_IoT_VoiceChatEngine
4. 鉴权说明
默认(未打开
CONFIG_ENABLE_LINGXIN_COSTOM_AUTH):
设备用芯片 UID 作为 channel,通过 BLE 配网把 channel 交给 App / 服务器。
联网后 HTTP POST
activate_agent,解析返回的app_id、app_key、sn、agent_code。把上述四个回调注册进
VoiceChatInitProps,再voice_chat_init()。若使用自有灵芯租户,打开
CONFIG_ENABLE_LINGXIN_COSTOM_AUTH,在 adapter 里自行提供 appId / appKey / SN / agentCode,不再走 Bekenactivate_agent。
5. 编译与烧录
在源码根目录编译:
make bk7258 PROJECT=lingxin固件:
<source code>/build/lingxin/bk7258/all-app.bin烧录与 SD-NAND 资源(眼睛 AVI 等)与
beken_genie相同,见精灵工程 3.5 节。
6. 问题&回答
Q:和声网精灵工程比,客户侧要改什么?
A:配网 App 流程可复用。差异在云端:本工程连灵芯对话引擎,需要有效的灵芯 appId / appKey / ``agentCode``(默认由 Beken 服务器下发)。
Q:没有屏幕能不能编过?
A:可以,但默认打开了双屏 AVI。无屏产品需在 menuconfig 里关闭 CONFIG_DUAL_SCREEN_AVI_PLAY 并核对 CPU1 内存。