1、下载离线安装包
首先进入
https://dl.espressif.com/dl/esp-idf/
如果无法下载也可以进百度云链接:
https://pan.baidu.com/s/11jwTFJbcOsV2K_IlkBriJQ?pwd=qm34 提取码: qm34
5.3.1和5.3.2和5.3.3在1.6.5之前的版本可以用,但是最新的代码需要5.4.1,因为增加了对摄像头的支持!!!
这个链接是乐鑫官方的下载网,可以在这里下载离线安装包,点击5.4.1版本的下载
网页最下面也可以选各种版本
不要用VSCODE的插件编译!!!很容易出错!!用下面的命令行编译!!!
2、安装环境
自行选择需要安装的版本,双击EXE文件开始安装
勾选我同意之后,一直点下一步就行了
可以在此处设置一下自己的IDF需要安装到的文件夹,尽量别安装到C盘
一直点下一步直到安装完成,等待安装完成
3、测试是否安装成功
双击桌面上的Powershell 会自动导入idf环境,电脑安装了windows terminal(win11自带,win10可以搜索store打开商店安装)的可以直接打开终端,终端的+号可以直接运行idf环境
当出现idf.py build字样就是安装成功了,可以编译固件了
运行
cd .\examples\get-started\hello_world\
进入工程的目录当使用不同型号的芯片时,以下为设置芯片的命令示例:
idf.py set-target esp32
设置目标芯片为esp32 idf.py set-target esp32s2
设置目标芯片为esp32s2 idf.py set-target esp32s3
设置目标芯片为esp32s3 idf.py set-target esp32c3
设置目标芯片为esp32c3输入
idf.py build
这就开始编译了,编译的时候记得把所有的杀毒软件关闭,包括360、火绒、windows defender之类的,会大大提高编译速度
编译完成之后可以运行
idf.py build flash monitor
进行下载和查看串口输出的日志信息
如果嫌下载速度慢,可以运行以下命令,增加-b参数 后面就是下载的波特率
idf.py -b 2000000 build flash monitor
如果不想所有分区都下载一遍,就运行以下命令,就只会下载app分区
idf.py build app-flash monitor
如果电脑上插入了很多个ESP32开发板,则需要区分端口,可以打开设备管理器看通信端口,比如我的板子端口是COM5,就需要运行:
idf.py -p COM5 build flash monitor
把一个工程转移到别的路径时需要删除build文件夹
不要把工程放到中文目录路径下!
养成良好的删除build文件夹的习惯!能解决各种小问题
4、编译小智
1、下载源码
进入虾哥代码主页:https://github.com/78/xiaozhi-esp32
点击Code - Download ZIP
电脑装了git的话,建议还是用命令
git clone
https://github.com/78/xiaozhi-esp32
,有时候下载zip会有问题下载完成后解压到任意目录备用
进入终端,打开IDF 5.3或者双击桌面的ESP IDF5.3 Powershell
我解压的目录和你们的不一样,各自输入 刚刚解压的目录:
cd J:\xiaozhi-esp32-main_2\xiaozhi-esp32-main
2、设置芯片类型
默认的编译芯片是ESP32的,所以自己的板子是S3的话一定要输入以下命令把芯片设置为S3
idf.py set-target esp32s3
如果你使用的芯片是ESP32C3的话,需要输入
idf.py set-target esp32c3
先把芯片类型设置为C3,再去menuconfig里选择对应的板子类型3、更换编译板子类型
默认编译出的固件是面包板的,如果需要更换板子,需要输入
idf.py menuconfig
进入Xiaozhi Assistant选项
自己是什么板子就选什么型号,不是一定要选Kevin SP V3板子,如果你是ESP32C3板子就要选C3的,并且一定要先运行idf.py set-target esp32c3
选择需要编译的板子固件后按键盘的‘S’键保存 然后Esc退出menuconfig
4、开始编译
再次输入
idf.py build
进行编译编译完成后输入
idf.py build flash monitor
进行下载和显示日志5、如何修改唤醒词
输入
idf.py menuconfig
进入配置界面键盘上下选择ESP Speech Recognition
选择任意唤醒词后按Enter确定后按键盘的'S'保存退出
6、如何修改websocket api接口
最新的1.6.2版本已经取消了从menuconfig配置websocket接口的源码,最新源码是从OTA接口接收websocket的api接口,无法自己设置,需要切换到1.6.0或者以下才可以
执行
git checkout v1.6.0
输入
idf.py menuconfig
进入配置界面键盘上下选择Xiaozhi Assistant
选择Websocket确定
输入自己的api地址后保存退出重新编译
7、如何打开AEC实时打断功能
目前暂时立创实战派S3、ESP-BOX、ESP32S3 Korvo开发板支持说话打断
在idf.py menuconfig中进入Xiaozhi Assistant选项,勾选最下面一栏
8、安装串口驱动
有的用户电脑没有串口驱动下载过程中一直卡着不动的情况下可以尝试一下安装以下驱动:
MAC下的驱动:
暂时无法在飞书文档外展示此内容
Windows下的驱动:
暂时无法在飞书文档外展示此内容
I2C冲突的问题解决办法:
如果您编译烧录后发现出现以下问题:
当然在最新版本代码里已经修复了此问题
进入idf.py menuconifg->Component config->Audio Codec Device Configuration
关掉第一行后重新编译烧录就可以了