mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-26 17:13:54 +08:00
update:添加编译固件的步骤
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||

|

|
||||||
本项目为开源智能硬件项目 [xiaozhi-esp32](https://github.com/78/xiaozhi-esp32)
|
本项目为开源智能硬件项目 [xiaozhi-esp32](https://github.com/78/xiaozhi-esp32)
|
||||||
提供后端服务。根据[小智通信协议](https://ccnphfhqs21z.feishu.cn/wiki/M0XiwldO9iJwHikpXD5cEx71nKh)使用`Python`实现。
|
提供后端服务。根据[小智通信协议](https://ccnphfhqs21z.feishu.cn/wiki/M0XiwldO9iJwHikpXD5cEx71nKh)使用`Python`实现。
|
||||||
|
|
||||||
## 适用人群
|
## 适用人群
|
||||||
@@ -113,11 +113,86 @@ LLM:
|
|||||||
python app.py
|
python app.py
|
||||||
```
|
```
|
||||||
|
|
||||||
|
启动后,会看到类似以下日志
|
||||||
|
|
||||||
|
```
|
||||||
|
2025-xx-xx xx:51:59,492 - core.server - INFO - Server is running at ws://192.168.1.25:8000
|
||||||
|
2025-xx-xx xx:51:59,516 - websockets.server - INFO - server listening on 0.0.0.0:8000
|
||||||
|
```
|
||||||
|
|
||||||
|
其中上面的`ws://192.168.1.25:8000`就是本项目提供的接口地址了,当然你自己的机器和我的是不一样的,记得要找到自己的地址。
|
||||||
|
|
||||||
### 6.编译esp32固件
|
### 6.编译esp32固件
|
||||||
|
|
||||||
|
1. 下载`xiaozhi-esp32`
|
||||||
|
项目,按照这个教程配置项目环境[《Windows搭建 ESP IDF 5.3.2开发环境以及编译小智》](https://icnynnzcwou8.feishu.cn/wiki/JEYDwTTALi5s2zkGlFGcDiRknXf)
|
||||||
|
|
||||||
|
2. 打开`xiaozhi-esp32/main/Kconfig.projbuild`文件,找到`WEBSOCKET_URL`的`default`的内容,把`wss://api.tenclass.net`
|
||||||
|
改成你自己的地址,例如
|
||||||
|
修改前:
|
||||||
|
|
||||||
|
```
|
||||||
|
config WEBSOCKET_URL
|
||||||
|
depends on CONNECTION_TYPE_WEBSOCKET
|
||||||
|
string "Websocket URL"
|
||||||
|
default "wss://api.tenclass.net/xiaozhi/v1/"
|
||||||
|
help
|
||||||
|
Communication with the server through websocket after wake up.
|
||||||
|
```
|
||||||
|
|
||||||
|
修改后(示例):
|
||||||
|
|
||||||
|
```
|
||||||
|
config WEBSOCKET_URL
|
||||||
|
depends on CONNECTION_TYPE_WEBSOCKET
|
||||||
|
string "Websocket URL"
|
||||||
|
default "ws://192.168.1.25:8000/xiaozhi/v1/"
|
||||||
|
help
|
||||||
|
Communication with the server through websocket after wake up.
|
||||||
|
```
|
||||||
|
|
||||||
|
3. 设置编译参数
|
||||||
|
|
||||||
|
```
|
||||||
|
# 终端命令行进入xiaozhi-esp32的根目录
|
||||||
|
cd xiaozhi-esp32
|
||||||
|
# 例如我使用的板子是esp32s3,所以设置编译目标为esp32s3,如果你的板子是其他型号,请替换成对应的型号
|
||||||
|
idf.py set-target esp32s3
|
||||||
|
# 进入菜单配置
|
||||||
|
idf.py menuconfig
|
||||||
|
```
|
||||||
|
|
||||||
|
进入菜单配置后,再进入`Xiaozhi Assistant`,将`CONNECTION_TYPE`设置为`Websocket`
|
||||||
|
回退到主菜单,再进入`Xiaozhi Assistant`,将`BOARD_TYPE`设置你板子的具体型号
|
||||||
|
保存退出,回到终端命令行。
|
||||||
|
|
||||||
|
4. 编译固件
|
||||||
|
|
||||||
|
```
|
||||||
|
idf.py build
|
||||||
|
```
|
||||||
|
|
||||||
|
5. 打包bin固件
|
||||||
|
|
||||||
|
```
|
||||||
|
python release.py
|
||||||
|
```
|
||||||
|
|
||||||
|
编译成功后,会在`release/bin`目录下生成固件文件。
|
||||||
|
|
||||||
|
6. 烧录固件
|
||||||
|
将esp32设备连接电脑,使用chrome浏览器,打开以下网址
|
||||||
|
|
||||||
|
```
|
||||||
|
https://espressif.github.io/esp-launchpad/
|
||||||
|
```
|
||||||
|
|
||||||
|
打开这个教程,[Flash工具/Web端烧录固件(无IDF开发环境)](https://ccnphfhqs21z.feishu.cn/wiki/F5krwD16viZoF0kKkvDcrZNYnhb)。
|
||||||
|
翻到:`方式二:ESP-Launchpad 浏览器WEB端烧录`,从`3. 烧录固件/下载到开发板`开始,按照教程操作。
|
||||||
|
|
||||||
# 常见问题
|
# 常见问题
|
||||||
|
|
||||||
## 1、TTS 经常失败、大模型反应慢
|
## 1、TTS 经常失败,经常超时
|
||||||
|
|
||||||
建议:如果`EdgeTTS`慢或经常失败,可以更换成`火山引擎的豆包TTS`,如果两个都慢,可能所处的网络环境需要优化一下。
|
建议:如果`EdgeTTS`慢或经常失败,可以更换成`火山引擎的豆包TTS`,如果两个都慢,可能所处的网络环境需要优化一下。
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user