外观
软件部分引用Xiaoxia
、SiFli Tech
提供的源码,所以这里不对源码内容进行解释
感谢Xiaoxia
、SiFli Tech
及其他贡献者对开源生态的贡献
开发环境
开发环境
环境配置看个人喜好,对于原生SDK我个人偏向于在Linux环境完成开发,避免一些权限问题,且vscode对wsl支持已经比较完善了,所以这里使用WSL Ubuntu24.04完成
- 软件环境:VSCode+WSL Ubuntu24.04+SiFli-SDK
- 开发语言:C/C++
WSL可以让你在Windows系统下完成Linux环境开发,WSL的安装流程就不讲了,如果你有Linux实体/虚拟机也可以不用wsl直接vscode连远程,如果你不太会Linux则建议按 立创开发板-环境搭建 流程搭建配置Windows开发环境
配置环境
安装依赖
安装必备的软件包依赖
sudo apt-get install git wget flex bison gperf python3 python3-pip python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
1
Clone SDK
Conle SiFli-SDK开发包,按自己网络环境选择拉取地址拉取 拉取完成后不要忘记同步子模块哦,不然后面编译会报错。
git clone https://github.com/OpenSiFli/SiFli-SDK
# git clone https://gitee.com/SiFli/sifli-sdk
git submodule update --init --recursive
1
2
3
2
3
安装SDK
进入SDK目录,执行安装脚本即可 需要注意的是export的路径应当对应到你按照的SDK位置,我是将SDK安装到home路径下的,如果你和我路径不同记得修改。 export很重要,路径不对后面编译也会报错的
cd ./SiFli-SDK/
export SIFLI_SDK_TOOLS_PATH="$HOME/SiFli-SDK"
./install.sh
1
2
3
2
3
启用SDK
执行脚本即可,Linux就是这么简单,启用好后就可以执行编译了 需要注意的是每次在打开新的终端都需要执行一次这个脚本,如果你觉得这很麻烦,可以注册到shell配置中去。
. ./export.sh
1
Clone AIbox-Lite
Conle AIbox-Lite源码基于小智AI源码修改,如果想使用官方版本,可克隆官方代码仓
git clone https://gitee.com/JasonYANG170/aibox-lite
# git clone https://github.com/78/xiaozhi-sf32
# git clone https://github.com/OpenSiFli/xiaozhi-sf32
1
2
3
2
3
编译源码
编译线程可按照自己电脑性能配置 使用原生源码编译的如果出现warning: attempt to assign the value 'y' to the undefined symbol BSP_USING_ENCODER1
需要删除proj.conf中的CONFIG_BSP_USING_ENCODER1=y
后再去编译 提交PR未合并,建议使用https://gitee.com/JasonYANG170/aibox-lite 可以直接编译
cd app/project
scons --board=sf32lb52-lchspi-ulp -j$(nproc)
1
2
2
烧录固件
烧录固件较为简单,直接通过串口就能烧录,并且在构建完成固件后会自动在构建目录下生成烧录脚本,仅需执行烧录脚本并映射好串口即可。
由于我这里使用的是wsl,还需进行串口映射操作,你需要为Windows和WSL内的Linux安装usbipd,这里不演示安装流程。 这里我们演示映射流程,如果你是精简版Linux,还需打上串口驱动。WSL及虚拟机需要映射USB,物理机可跳过
usbipd list
# 记录COM对应的BUSID
usbipd bind --busid=你的BUSID
usbipd attach --wsl --busid=你的BUSID
1
2
3
4
2
3
4
执行脚本
cd ./build_sf32lb52-lchspi-ulp_hcpu/
./uart_download.sh
# 此时会让你提供Linux下的串口设备路径,我这里是/dev/ttyUSB0
/dev/ttyUSB0
# 一切就绪会自动烧录
1
2
3
4
5
2
3
4
5
使用说明
配网
前面我们讲了我们使用的模块不带WIFI功能,上网是通过蓝牙共享网络实现的,所以这里配网相较于WIFI配网有所不同,你需要开启设备的蓝牙网络共享功能。
Android16-蓝牙共享网络 | Windows11-蓝牙共享网络 |
---|---|
![]() | ![]() |
![]() | ![]() |
配置完成后打开蓝牙,连接蓝牙设备名为AIBox-Lite
的设备。 等待几秒后按下对话键,此时会语音播报设备码,前往xiaozhi.me
注册设备即可。