【MolunSmartHome】试图教会你编译自己的小智固件

源码下载
虾哥小智源码地址:[https://github.com/78/xiaozhi-esp32.git]

直接下载或者安装git客户端后命令拉取源码
gh repo clone 78/xiaozhi-esp32
gh repo clone 78/xiaozhi-esp32
gh repo clone 78/xiaozhi-esp32git clone https://github.com/78/xiaozhi-esp32.git
选择一种即可

环境配置

在VSCODE中打开文件夹,这里默认已经安装好乐鑫IDF





连接好开发板后,依次选择端口号,设置目标芯片,烧录方式





根据硬件情况选择,如果是通过串口芯片连接的ESP32S3就选择UART,否则选择JTAG

编译配置
选择SDK配置编辑器,对应命令
idf.py menuconfig
idf.py menuconfig
idf.py menuconfig

根据自己开发板情况进行以下修改

修改Flash size,因为我用的模组是ESP32-S3-WROOM-1-N4,即4M版本,没有PSRAM。

修改Custom partition CSV file分区表
partitions.csv 修改为 partitions_4M.csv
partitions.csv 修改为 partitions_4M.csv
partitions.csv 修改为 partitions_4M.csv
自己部署后台的可以修改这里,看到已有开源项目。

这里选择对应的开发板,如果是自己DIY的,就选择默认面包板wifi版本或者4G版本即可


貌似没有PSRAM,就不能语音唤醒,关掉即可。

切换回源码,进行IO口配置,如果按照虾哥推荐的接线方式就不需要动这里。

配置展示
#ifndef _BOARD_CONFIG_H_
#define _BOARD_CONFIG_H_
#include < driver/gpio.h >
#define AUDIO_INPUT_SAMPLE_RATE 16000
#define AUDIO_OUTPUT_SAMPLE_RATE 24000
// 如果使用 Duplex I2S 模式,请注释下面一行
#define AUDIO_I2S_METHOD_SIMPLEX
#ifdef AUDIO_I2S_METHOD_SIMPLEX
#define AUDIO_I2S_MIC_GPIO_WS GPIO_NUM_5
#define AUDIO_I2S_MIC_GPIO_SCK GPIO_NUM_4
#define AUDIO_I2S_MIC_GPIO_DIN GPIO_NUM_6
#define AUDIO_I2S_SPK_GPIO_DOUT GPIO_NUM_7
#define AUDIO_I2S_SPK_GPIO_BCLK GPIO_NUM_15
#define AUDIO_I2S_SPK_GPIO_LRCK GPIO_NUM_16
#else
#define AUDIO_I2S_GPIO_WS GPIO_NUM_5
#define AUDIO_I2S_GPIO_BCLK GPIO_NUM_4
#define AUDIO_I2S_GPIO_DIN GPIO_NUM_6
#define AUDIO_I2S_GPIO_DOUT GPIO_NUM_7
#endif
#define BUILTIN_LED_GPIO GPIO_NUM_14
#define BOOT_BUTTON_GPIO GPIO_NUM_0
#define TOUCH_BUTTON_GPIO GPIO_NUM_21
#define VOLUME_UP_BUTTON_GPIO GPIO_NUM_NC
#define VOLUME_DOWN_BUTTON_GPIO GPIO_NUM_NC
#define DISPLAY_SDA_PIN GPIO_NUM_41
#define DISPLAY_SCL_PIN GPIO_NUM_42
#define DISPLAY_WIDTH 128
#define DISPLAY_HEIGHT 64
#define DISPLAY_MIRROR_X true
#define DISPLAY_MIRROR_Y true
#endif // _BOARD_CONFIG_H_
以上是我的项目配置


这里暂且不关闭试试,上次关闭编译后使用正常。

这里选择唤醒词,乐鑫官方提供了一些,默认你好小智,还有诸如小爱同学、Hi乐鑫等,当然也可以付费定制优化自己的唤醒词。
免费模组
“白嫖”模组,实际上就是别的厂商优化唤醒词语料!

模组“白嫖”地址在这里,可别说我吃独食。别忘记填写邀请码:RJBGBB



继续往下翻找,或者搜索PSRAM,关闭PSRAM,如果你采用的是带有PSRAM的模组如N8R2之类的,可能需要调整对应的通道


我这里选择关闭PSRAM

固件编译&烧录

修改完毕之后保存生效,点击构建烧录

耐心等待ing




烧录成功

至此,可以用手机连接模组热点进行配网。我这里二次烧录后尽然不需要配网,直接接入了。
首次烧录后,配网完成会播报验证码,用于小智后台绑定。
控制台添加设备

[https://xiaozhi.me/console/devices]


可以设置备注名称,方便区分不同的设备。

进行智能体配置

保存后重启设备,开始体验吧!
审核编辑 黄宇
-
源码
+关注
关注
8文章
682浏览量
31117 -
编译
+关注
关注
0文章
689浏览量
34962 -
esp32s3
+关注
关注
0文章
9浏览量
2228
发布评论请先 登录
【道生物联TKB-623评估板试用】SDK固件编译
BEKEN BK7252芯片源码编译不过是什么原因?
【HZ-RK3568开发板免费体验】基于SDK固件编译
RTsmart源码编译错误,提醒我缺少文件导致make失败,为什么?
【经验分享】在Omni3576上编译Redis-8.0.2源码,并安装及性能测试
KiCad直播活动(三):在 Windows上编译KiCad 手把手教您编译/构建 KiCad 源码
编译系统镜像教程
迅为RK3568开发板篇OpenHarmony实操HDF驱动配置LED-编译源码
ADCPro工具下发到MMB0板子上的TMS320固件的源码,能不能获取到呢?
迅为RK3588开发板实时系统编译-Preemption系统/ Xenomai系统编译-获取Linux源码包
OpenHarmony源码编译后烧录镜像教程,RK3566鸿蒙开发板演示
VMware环境下,同时烧录固件检测不到设备如何解决?触觉智能鸿蒙开发板演示

MolunSmartHome虾哥小智源码编译固件演示
评论