news 2026/4/17 17:19:28

小智Pro支持固件在线更新:原理+流程拆解(续)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
小智Pro支持固件在线更新:原理+流程拆解(续)

前文分享了小智AI自定义唤醒词+表情包+背景图的基本原理:

小智AI 如何自定义唤醒词+背景图:原理+流程拆解

远程控制+文字唤醒,小智Pro开放API调用,释放小智无限潜力

有朋友好奇:

浏览器生成的assets.bin是如何发送给设备的?

今日分享,聊聊前端-后端-设备端的三方通信逻辑。

基于此,给出小智Pro的具体实现方案。

1. 架构设计

回到前文的问题:

浏览器生成的assets.bin如何发送给设备端

参考:https://github.com/78/xiaozhi-assets-generator

来看小智的实现思路:一个非常巧妙的三方通信架构:

  • 前端 ↔️ 后端:WebSocket (控制通道)
  • 设备 ↔️ 后端:HTTP (数据通道)
  • 后端:作为中间协调者,连接两端

简单画个流程图:

为啥要这么搞?

  • 解耦设计:前端不直接与设备通信
  • 协议桥接:WebSocket ↔ HTTP 的实时数据转发
  • 状态同步:通过事件机制实现三端状态一致
  • 安全机制:临时URL,防止未授权访问

2. 完整流程

了解了架构,我们来看完整流程:

阶段1-2:前端准备阶段

前端通过WebSocket告诉后端:“我要上传一个文件”

const createMessage = { type: 'create_file', fileName: 'assets.bin', fileSize: blob.size }; this.ws.send(JSON.stringify(createMessage));

阶段3:后端生成URL

后端创建临时文件会话并返回下载URL:

阶段4:前端配置设备

前端拿到URL后告诉设备去下载:

await callMcpTool('self.assets.set_download_url', { url: downloadUrl // 这就是上面的download_url })

阶段5:设备端HTTP下载

// 设备端直接HTTP GET请求 if (!http->Open("GET", url)) { ESP_LOGE(TAG, "Failed to open HTTP connection"); return false; }

阶段6:后端转发数据给设备

当设备请求下载时,后端检测到这个请求对应某个session,不从文件系统读取,而是实时转发前端通过WebSocket发送的二进制数据:

阶段7:后端通知前端传输开始

当后端开始向设备提供HTTP数据时,发送transfer_started事件给前端:

case 'transfer_started': this.currentSession.transferStarted = true if (this.onTransferStarted) { this.onTransferStarted() // 通知前端可以开始发送数据了 }

阶段8:前端传输完成 & 后端下载完成

当前端传输的数据,被后端全部接收后,销毁session,完结撒花!

3. 小智Pro 实现

免费体验👇:

https://mkwyqeoebedx.sealosbja.site

基于以上原理和流程,小智Pro 服务端,现已支持自定义唤醒词+背景图

注:需下载小智Pro-v2.0.5.1及以上版本固件体验:

https://github.com/hougeai/xiaozhiPro/releases

写在最后

本文分享了小智AI实现固件更新前端-后端-设备端的三方通信逻辑。。

如果对你有帮助,不妨点赞收藏备用。

欢迎来聊。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/3 1:13:02

2005-2025年各省、地级市、上市公司人工智能创新发展试验区DID数据

在数字经济与人工智能深度融合的背景下,人工智能创新发展试验区作为国家推动 AI 技术落地、产业升级的核心载体,其政策实施效果的精准评估对优化创新治理体系具有关键意义。本数据基于双重差分(DID)方法构建,可有效剥离…

作者头像 李华
网站建设 2026/4/17 13:10:08

YHM4005CSST看门狗芯片

YHM4005CSST 是上海爻火微电子推出的带单线通信功能的看门狗芯片,核心用于监测主控设备的程序运行状态,避免 “死机”,具体信息如下: 一、芯片核心特性 功能:兼具看门狗复位+单线通信配置能力,支持超时周期可配置(通过单线通信调整)。 供电:宽电压 2.5V~5.5V,兼容 3…

作者头像 李华
网站建设 2026/4/17 6:23:31

雷达原理 魏青 使用的是第三版教材 软性开关脉冲调制器

一、概念与工作特征 软性开关脉冲调制器(soft-switch pulse modulator)的基本特点是:调制开关的前沿由外加的触发脉冲控制,使开关导通;但开关的截止并不由触发脉冲的后沿直接控制,而是由开关器件本身和整个放电过程决定。换言之,触发脉冲仅确定脉冲的起始点;当储能元件…

作者头像 李华
网站建设 2026/4/18 3:38:18

开题报告 “卡关” 到焦虑?虎贲等考 AI:1 小时生成 “导师眼前一亮” 模板,创新点直击核心

开题报告是论文创作的 “第一块敲门砖”,直接决定研究方向的可行性与学术价值。但多数学生和科研人都困在这一步:选题无创新被否定、研究方案逻辑断层被打回、技术路线模糊被要求重写,反复修改耗时数周仍难达标。普通 AI 工具仅能生成基础框架…

作者头像 李华
网站建设 2026/4/18 3:24:33

深度测评9个AI论文网站,自考学生轻松搞定毕业论文!

深度测评9个AI论文网站,自考学生轻松搞定毕业论文! AI 工具如何助力自考学生高效完成论文写作 随着人工智能技术的不断进步,AI 工具在学术写作领域的应用越来越广泛。对于自考学生而言,撰写毕业论文是一项既重要又充满挑战的任务。…

作者头像 李华