WIZnet 开源方案分享:W55MH32 开发板 + 小智 AI实现以太网版本的小智机器人
背景
随着 AI 技术持续快速发展,将智能模型集成到低层级硬件架构上的需求变得比以往任何时候都更加迫切。WIZnet 始终确保旗下产品紧跟技术发展步伐,为用户带来更优质的使用体验。
受小智 - ESP32 项目的启发,WIZnet 团队开发了一款由 W55MH32Q/L-EVB 开发板驱动的 MCP 聊天机器人。
小智 - ESP32 是当前发展最快的 AI 项目之一,支持通过硬件终端与大语言模型(LLM)交互,可实现语音指令控制硬件等功能,自推出以来在物联网领域收获了极高的关注度与普及度。
MicroPython 是嵌入式领域广为人知的开发语言,允许开发者使用 Python 开展嵌入式系统开发。新手开发者无需跨越传统 C++ 的学习门槛,就能借助网络上丰富的 MicroPython 库与社区支持,快速开启裸机开发实践。
该项目团队认为,将这些成熟技术整合到一起,让普通开发者拥有定制化 AI 助手,将不再是遥不可及的设想。
项目概述
下图为 W55MH32L_EVB MCP 聊天机器人的硬件连接示意图:
2.jpeg
image.png
如示意图所示,扬声器与麦克风共用同一组 I2S 连接。开发板默认处于扬声器播放模式,当用户按住录音按钮时,设备会切换为麦克风采集模式。
用户需为开发板接入互联网并运行对应脚本,方可连接至 AI 服务器。操作时需将路由器的以太网线缆接入开发板网口,同时通过 USB 端口将开发板与电脑相连。
脚本启动后,程序会提示用户按下开始按钮发起连接。按键后设备将启动与服务器的通信链路,用户即可与小智 AI 进行交互;当终端进入消息输入状态时,用户也可切换至麦克风模式,通过语音与智能体对话。
3.gif
image.png
硬件组件与连接
本节将讨论聊天机器人所需的组件以及如何将它们连接在一起。
主板及外设
搭建这套聊天机器人需要准备以下物料:
W55MH32Q_EVB(购买链接)/ W55MH32L_EVB(购买链接)
I2S 接口 MAX98357A 放大器及配套扬声器
INMP441 麦克风模块
1 枚 10K 电阻
两枚按键开关
后续官方网站将上线完整的组件套装,方便用户一站式采购。
布线指南
接线先从 I2S 音频组件开始:
image.png
image.png
image.png
完成芯片端接线后,将扬声器接入 I2S 放大器的输出:
image.png
按键与 MCU 的连接可选用任意可用的 GPIO 引脚,两个按键分别承担两个功能:
启动网络连接
开启录音采集
在该项目的官方实现中,开发团队选用 PB9 引脚作为开始按键,PB8 引脚作为录音按键。
image.png
最后将开发板与电脑相连,同时把开发板直连至路由器。
image.png
若使用 W55MH32L_EVB 型号,需将板卡右侧的端口连接至电脑。
image.png
软件配置与定制
安装部署
用户首先需前往 W55MH32 MicroPython 文档站点,为开发板刷入最新版本固件,并准备好 Thonny IDE 开发环境。
随后访问项目的 GitHub 仓库,将代码克隆至本地电脑:
git clone https://github.com/wiznethk-git/w55mh32_xiaozhi_mcp_chat_bot.git
image.png
打开项目文件所在文件夹,通过 Thonny IDE 或任意兼容 MicroPython 的开发工具,将除 default_config.py 外的全部文件上传至开发板 MCU。
image.png
参数配置
用户可参考 default_config.py 中的模板修改配置项,编辑完成后将文件另存为 config.py 并上传至 MCU。
import uuid
client_id = uuid.uuid4()
secret = {
‘Client-Id’:client_id
}
config = {
# General
‘is_secure’: False,
‘async_timeout’: 10,
# I2S
'I2S_ENABLED': True,
# Websocket Specific
'ws_delay_ms': 0,
# MCP
'mcp_enabled': True,
# OTA Specific
'board_type':'YOUR_BOARD_TYPE',
# MQTT
'MQTT_USERNAME': 'MQTT_USERNAME',
'MQTT_PASSWORD': 'MQTT_PASSWORD',
'MQTT_IP':'MQTT_HOST',
'MQTT_ENABLED':True,
# Button Pins
'START_BUTTON':'PB9',
'RECORD_BUTTON':'PB8',
}
用户可根据自身设备需求,将 I2S、MCP 与 MQTT 开关设置为开启或关闭;项目开发团队建议保持 MCP 与 MQTT 开启,以获得完整的功能体验,若需要收听服务器返回的语音内容,则需启用 I2S 功能。
以太网连接
设备默认采用 DHCP 动态寻址方案,将开发板接入路由器后即可自动联网。若网络连接失败,用户可查询当前网络的详细参数,在 setup.py 文件头部修改配置,切换为静态 IP 模式。
静态 IP 的具体配置方法可参考官方提供的参考脚本页面。
更多推荐



所有评论(0)