AI 硬件 · 工程案例

别让 ESP32 只会联网:一台 AI 电子纸终端如何从按键对话走到云端运营闭环

从 ESP32-S3 设备身份、配网、MQTT/WebSocket 音频到 ASR/LLM、电子纸显示、APP/管理后台与合规运营接入,拆解一条可验收的 AIoT 工程链路。

作者:龙猫物联技术内容组技术审核:解决方案负责人

为什么“ESP32 接上大模型”很容易停在 Demo?

把麦克风接到开发板、把一段音频发给模型,再把一句回答打印到串口,通常只需要一个下午。但能演示不等于能交付:Demo 只证明某一次请求成功,产品要证明每天都能被触发、每一轮都找得到、每个结果都不会串台,并且失败时用户知道下一步做什么。

最容易被低估的是“上下文之外的工程”。样机可以把 Wi-Fi 凭据写死,可以把音频无限缓存,可以默认网络永远在线;量产设备却要面对配网失败、断电重启、重复点击、并发轮次、迟到响应、损坏图片和不完整升级。模型回答得再聪明,若设备无法确认这句话属于谁、这一张图是否完整,体验仍然是不可信的。采购方真正要买的不是一个模型 API,而是一条可追踪、可恢复、可验收的设备到云端链路。

因此,评估 ESP32 AI 项目时,建议把“会不会回答”降为基础问题,把“能否连续运行、能否定位问题、能否安全扩大规模”升为主问题。下文以按键对话为例,说明产品、固件、云端和运营分别负责什么。

一次按键对话的端到端时序

下面是一轮可验收的最小闭环。具体字段、编码和超时应在项目协议中冻结,公开文章不展开内部命名或身份规则。

  1. 1. 按键与预检。 设备收到按键边沿后先判断是否处于空闲、联网和电量允许状态,生成本轮仅在设备与云端可关联的会话标识;若上一轮仍在处理,按产品策略提示忙碌或安全取消,而不是把两段录音拼在一起。
  2. 2. 采集与封顶。 麦克风采集 PCM,固件按采样率、声道、单帧大小和最长时长切片,累计大小到达上限立即停止。无论用户长按多久,内存和上行流量都有上界;本地只保留完成本轮所需的短暂缓冲。
  3. 3. 建立任务通道。 MQTT 用于设备认证、任务控制、心跳和状态回报;WebSocket 或项目约定的音频通道承载有界 PCM。云端先校验设备是否已绑定、会话是否新鲜,再接受音频,不因一个可猜的设备编号直接放行。
  4. 4. 结束并转写。 设备发送明确的开始、音频块、结束信号;服务端按会话收齐或判断缺块,交给 ASR。ASR 文本连同轮次进入 LLM 编排,提示词、上下文长度和敏感信息策略由云端控制,端侧不保存模型密钥。
  5. 5. 结果与确认。 云端返回文本以及项目需要的图片或 TTS 媒体元数据。每个结果带回会话、轮次、类型、长度和校验信息;设备只接受当前等待的轮次,先校验再写入显示缓冲,成功后回 ACK,失败则保留上一张有效画面。
  6. 6. 可观测收尾。 管理侧记录开始、结束、耗时、失败原因、ACK 和重试次数,但默认不把原始语音当作永久运营数据。这样客服能定位“没录到”“没上传”“AI 超时”还是“屏幕拒收”,产品也能按真实失败分布安排迭代。

端侧与云端:边界越清楚,产品越稳定

端侧负责确定性

端侧负责按键去抖、录音状态机、时长与字节上限、网络重连、低功耗策略、显示刷新、媒体落盘前校验和用户可见反馈。它不负责保存云端密钥、不负责决定模型上下文,也不应该因为云端慢就无限占用内存。端侧的目标是可预测:任何状态都有退出路径,任何缓存都有上限。

云端负责变化性

云端负责设备接入策略、任务编排、ASR/LLM 调用、文本清洗、媒体生成或转发、会话审计和后台查询。模型、供应商和提示策略会变化,因此放在云端更便于灰度和替换;但云端也必须用明确的任务状态与失败码回应设备,不能只返回一段不可解释的“失败”。

边界还意味着责任可追溯:设备只报告自己确实观察到的状态,服务端不把“消息已下发”冒充“屏幕已显示”,运营人员不把“有一次成功回答”写成“长期稳定可用”。

四个容易决定成败的工程细节

设备身份。 身份应在生产、绑定、接入和撤销之间形成闭环:设备能证明自己属于哪个产品范围,云端能区分首次注册、已绑定和被禁用状态,后台能追溯一次任务来自哪台设备。文章不公开具体身份派生规则、密钥或通道命名;采购验收应要求供应方说明凭据保存、轮换、吊销和批量导入方式。

轮次隔离。 每次按键都要有独立任务边界。网络迟到的旧回答不能覆盖新回答,重复 ACK 不能让任务重复计费或重复播报,重启后恢复策略也要明确。最简单的做法是让设备只接受“当前等待轮次”,服务端同时校验设备、会话和轮次三元关系;更复杂的并发对话则另行设计队列。

有界音频。 有界不只是“设置一个超时”,还包括采样参数、单块大小、总块数、总字节数、内存占用和断线后的丢弃规则。超过上限要给用户明确提示,不能静默截断后让 ASR 猜。服务端也要拒绝超大包、缺失结束标志或不符合编码约定的数据。

媒体校验。 图片和 TTS 都是外部输入,设备接收后应检查类型、长度、尺寸或播放时长,并进行完整性校验;校验失败不覆盖上一份可用内容。文本可以先展示,图片稍后到达;媒体失败时保留可读的降级结果,这比整轮显示空白更符合真实产品体验。

硬件如何成为持续服务入口

一次回答只是功能,持续服务要从设备形成稳定的“回访入口”:用户按键提出新问题,设备留下可理解的结果,后台知道设备是否在线,产品团队依据匿名且获授权的事件判断哪里需要改进。电子纸的优势是低功耗、可长期展示和适合状态/内容回看;它不等于天然拥有用户画像,更不等于可以未经同意营销。

已有基础

当前可据实讨论 ESP32-S3 按键、录音、电子纸、Wi-Fi 配网、设备身份、MQTT/WebSocket PCM、ASR/LLM,以及图片/TTS 协议边界和设备/会话/ACK/超时/审计基础。

可按项目接入

在需求、授权和合规评审通过后,可接入 APP 绑定、历史内容、设备档案、客户自有 CRM 或营销系统的匿名事件。接入范围、数据留存和责任方需写进验收单。

仍属规划门禁

TLS 长稳、弱网策略、批量管理、量产安全、OTA 灰度、画像、线索评分、自动触达和复购预测不能在本案例中写成已上线能力,应以专项设计和测试结果为准。

七类以上异常路径:失败也要有产品答案

  1. 配网失败:提示凭据未保存、已保存但未联网的区别,保留重试和恢复入口。
  2. 身份未绑定或被撤销:拒绝任务并显示可理解状态,后台记录原因,不反复重试。
  3. MQTT/WebSocket 中断:按退避策略有限重连,清理过期音频,不把断线误报为成功。
  4. 录音超时或超限:停止采集、释放缓冲并提示重录,服务端拒收超界数据。
  5. ASR/LLM 迟到或空结果:按轮次标记超时,保留可重试状态,迟到结果不得覆盖新轮次。
  6. 图片损坏或 TTS 失败:校验失败不覆盖旧画面,优先展示文本并记录媒体错误。
  7. 重复点击与重复消息:用任务状态和幂等处理避免重复执行、重复 ACK 或重复计费。
  8. 断电重启:恢复到安全空闲态,未完成轮次按规则丢弃或查询,不能凭缓存盲目继续。
  9. 弱网、时间漂移或升级中断:把长稳、TLS、OTA 回滚和审计列为产品化门禁,不用一次演示代替专项验证。

这篇工程案例适合谁?

适合已有 ESP32 或 MCU 样机、需要把硬件、云端 AI、电子纸屏和后台运维接起来的产品团队,也适合电子纸阅读器、学习终端、桌面陪伴设备和语音终端项目。重点不是泛讲大模型,而是把交付边界拆清楚。

一条端到端链路怎样跑?

  1. 01

    设备入口

    实体按键触发有界录音;首次配网保存网络配置,并从设备硬件身份派生设备标识,不公开具体标识规则。

  2. 02

    云端任务

    MQTT 负责任务控制、身份、心跳和重连;WebSocket 将有界 PCM 音频送到云端服务。

  3. 03

    AI 结果

    云端完成 ASR 和 LLM;按项目范围返回文本、图片或 TTS 事件,并给出明确终态。

  4. 04

    显示与运营

    设备校验文字或媒体后再刷新电子纸;APP 或管理后台可展示设备、会话、命令、ACK、超时和审计状态。

哪些已有,哪些可接入,哪些不能直接宣称?

已验证基础

ESP32-S3 平台、按键录音、配网、MQTT/WebSocket 音频、ASR/LLM/图片/TTS 协议边界、显示处理,以及面向后台的设备和会话状态。

可按项目接入

APP 绑定、内容历史、经同意的匿名使用或咨询事件,以及客户自己的 CRM/营销系统,可在需求与合规评审后规划接入。

不写成已上线

统一 CRM、自动画像、线索评分、自动触达、复购预测、量产安全和长期稳定性,不是本文声称已经交付的能力。

至少要验收的异常路径

  • 配网或认证失败。 保留可恢复入口,区分凭据保存成功和真正联网成功。
  • MQTT 或 WebSocket 中断。 有界重连,不无限堆积 PCM,也不把断线当作任务完成。
  • AI 空结果、迟到或超时。 按任务轮次隔离,明确失败或超时,不能让屏幕一直停在处理中。
  • 媒体校验失败。 损坏或超限图片不能覆盖上一张有效画面;TTS 失败时保留文字结果。
  • 产品化门禁。 连续轮次、弱网、TLS、批量身份、OTA、BLE 共存和审计要单独验收。

采购方可复制的验收清单

  1. 运行主机组件回归并记录范围,不把组件通过写成量产验收通过。
  2. 在目标板验证配网、身份、MQTT 认证、重连和有界音频。
  3. 分别验证最终 ASR、任务隔离、文字显示、图片校验和可选媒体能力。
  4. 检查后台的设备状态、会话、命令 ACK、超时和审计事件。
  5. 量产前明确长稳、弱网、TLS、批量设备管理、OTA 和合规门禁。
  6. 连续执行至少多轮对话,确认旧轮次迟到结果不会覆盖新结果。
  7. 注入损坏、超限和缺块媒体,确认校验失败有降级提示且不覆盖有效画面。
  8. 模拟断电、重复点击和网络恢复,确认状态机、幂等和重试结果可追踪。
  9. 确认数据留存、权限、撤销、日志审计和售后定位责任,并让双方签字固化。
  10. 为每项验收保留输入、期望结果、实际证据和责任人,避免只凭现场口头确认。

常见问题

这篇文章讲的是已经量产的统一平台吗?

不是。本文是基于已验证基础链路的工程案例,项目仍需按具体产品线完成长稳、弱网、量产安全和批量设备管理等门禁。

AI 结果如何回到电子纸终端?

设备按键触发一轮任务后上传有界 PCM,云端完成 ASR/LLM,并按项目返回文本、图片或可选的 TTS 结果;终端校验结果后再展示,具体媒体能力以硬件分支和验收范围为准。

APP 和管理后台目前能承接什么?

可按项目承接配网、设备绑定、历史内容、设备档案、在线状态、远程命令、ACK、超时和审计;统一账号、小程序范围及全部运营功能需要单独确认。

是否已经有 CRM、自动营销或复购预测?

不能这样声称。经用户授权后,匿名使用或咨询事件可以接入客户自己的 CRM/营销系统;画像、线索评分、自动触达和复购预测属于可接入或规划能力。

采购验收应先看哪些项目?

建议分层验证主机组件、目标板基础链路、云端任务与媒体协议、后台状态,以及连续对话、弱网、TLS、批量身份和 OTA 等产品化门禁。

带着真实设备约一次评估

请提供 MCU、屏幕、联网方式、AI 入口和运营目标。龙猫物联可先评估范围与下一步验收;报价和周期需在需求沟通后确认。