结合嵌入式系统和人工智能推理来创建一个端到端的会话助手
扫描二维码
随时随地手机看文章
ESP32语音助手
步骤1:连接电路一旦你有了所有的部件,开始连接。参考以下原理图:
记住:
•INMP441严格要求3v3 ONLY
•DAC输出(GPIO 25)→LM386→扬声器
•TP4056通过5V输出给ESP32供电
工作流程:
理解整个工作流程是很重要的:按钮按-> ESP32开始录制通过INMP441麦克风。I2S音频捕获,16千赫的样本在websocket实时流。AI处理(服务器)
•Whisper转换音频→文本
•Gemini 2.5 Flash生成上下文回复
•Piper转换文本→自然语音
响应回放,服务器将8位PCM块流回ESP32用于DAC输出。用户听到AI语音,LM386放大器驱动扬声器。
步骤2:Flash代码到ESP32
首先确保安装了WebSocketsClient库。对于Arduino IDE,您可以简单地下载zip文件并将库安装到IDE。
1. ESP32草图
2. 秘密文件
你还需要一个secrets.h文件:
步骤3:AI后端设置(Python)
为此,我建议托管一个分配了静态ip的AWS EC2实例。或者,您可以在笔记本电脑上运行本地服务器,并通过热点连接ESP32。把这个后端看作是系统的大脑,因为所有的处理都发生在这里。在/server目录下查找源代码。下面是如何设置它:
1)安装所有依赖项:
或者使用Docker:
2)需要的环境变量和模型
•GEMINI_API_KEY
•你还需要一个风笛手的声音模型。使用以下命令下载它:
你也可以选择其他型号,在这里找到它们。
就这些!你的语音助手现在应该回应你的查询,一旦你按下按钮!
本文编译自hackster.io





