首页/新闻资讯/正文详情

无名科技星智 1.54 METAL (wifi) 实战速通:触摸交互、休眠电源管理与 ESP32-S3 编译烧录完整指南

发布时间:2026/11/6 1:19:19 来源:云帆数科 栏目:资讯中心
无名科技星智 1.54 METAL (wifi) 实战速通:触摸交互、休眠电源管理与 ESP32-S3 编译烧录完整指南
无名科技星智 1.54 METAL (wifi) 实战速通触摸交互、休眠电源管理与 ESP32-S3 编译烧录完整指南【免费下载链接】xiaozhi-esp32An MCP-based chatbot | 一个基于MCP的聊天机器人项目地址: https://gitcode.com/GitHub_Trending/xia/xiaozhi-esp32xiaozhi-esp32 项目中的无名科技星智 1.54 METAL (wifi)是一块用 CST816 触摸交互替代物理按键的 ESP32-S3 语音助手板卡。本文先带你完成 ESP32-S3 编译烧录再讲清开关机、唤醒、配网三件事与休眠电源管理的底层原理。一、先跑起来把固件烧进这块板子如果你刚拿到手第一件事就是点亮它。整个过程不需要改动任何源码一条命令链走完克隆、配置、编译、烧录git clone https://gitcode.com/GitHub_Trending/xia/xiaozhi-esp32 cd xiaozhi-esp32 idf.py set-target esp32s3 idf.py menuconfig # Xiaozhi Assistant → Board Type → 选中 Nologo Xingzhi Metal 1.54-inch Wi-Fi (无名科技星智) idf.py build idf.py build flash monitor其中menuconfig是唯一的交互步骤沿Xiaozhi Assistant→Board Type找到「Nologo Xingzhi Metal 1.54-inch Wi-Fi (无名科技星智)」一项打勾最后build flash monitor一步完成下载固件并打开串口终端。这块板卡在仓库中的构建声明位于 config.jsonmanufacturer为nologo、type为xingzhi-metal-1.54-wifi、target为esp32s3sdkconfig_append是空数组——意味着它不额外追加 SDK 配置直接沿用工程默认的 esp32s3 配置。二、上手三件事开关机、唤醒对话、重新配网这块板子用「一块物理电源键 三个触摸区」承担全部操作。最常用的三个场景如下表关键阈值都标出来了动作操作现象开机关机状态下长按电源键3 秒旧版硬件 1 秒即可自动开机关机开机状态下长按电源键5 秒自动关机唤醒 / 打断正常通话中单击中间触摸键唤醒设备或打断当前对话重新配网开机后 1 秒内单击中间触摸键自动重启并进入配网界面 配网窗口只有开机后的 1 秒是最容易错过的操作——错过就长按电源键重启再来一次即可不用进菜单。三、音量到底怎么调单击 vs 长按音量由左、右两个触摸区分担中间区是「boot 键」唤醒 / 打断 / 配网入口三者分工如下触摸区单击效果长按效果左侧音量减小 10按住2 秒后持续递减中间唤醒 / 打断开机 1 秒内 重新配网无连续动作右侧音量增加 10按住2 秒后持续递增两种调节方式的差异在于节奏单击每次固定 ±10音量被钳制在 0~100ES8311_VOL_MIN/ES8311_VOL_MAX之间同时屏幕弹出VOLUME xx通知提示当前值长按先按住 2 秒触发连续调节之后每 200ms 按步长 5 递增或递减一次顶到上限/下限后自动停止松手LONG_PRESS_END也会立刻停止。原理上很简单CST816x 芯片通过 I2C 上报触点坐标板端守护任务按坐标分区 按压时长把原始触摸翻译成「单击 / 双击 / 长按开始 / 长按结束」四类事件再分发到对应动作——所以长按不是“按得久一点”而是有明确 2 秒阈值的独立事件。四、它是怎么自己省电的休眠与电源联动对使用者的价值可以直接总结成三条待命 60 秒→ 进入浅睡眠屏幕亮度降到 1%、表情切换为sleepy、聊天记录清空但设备仍可被唤醒待命累计 300 秒浅睡眠后继续计时→ 深睡眠也就是直接自动关机插在 USB 充电时不休眠拔掉充电线才重新计时浅睡眠状态下单击中间触摸键即可唤醒屏幕亮度恢复。源码入口只有一行值得先看板卡构造函数里用PowerSaveTimer(-1, 60, 300)创建休眠定时器后两个参数就是 60 秒浅睡眠、300 秒关机三个回调OnEnterSleepMode/OnExitSleepMode/OnShutdownRequest分别负责降亮度、恢复亮度、调用power_manager_-shutdown()。充电联动则由PowerManager的OnChargingStatusChanged回调驱动SetEnabled(false/true)实现「充电时休眠定时器整体停用」。细节见 power_save_timer.h 与 xingzhi-metal-1.54-wifi.cc。五、想改源码从这几个入口看全部文件都在 main/boards/nologo/xingzhi-metal-1.54-wifi/ 下按「先入口、后细节」的顺序导航xingzhi-metal-1.54-wifi.cc板卡类XINGZHI_METAL_1_54_WIFI继承WifiBoard。构造函数初始化顺序是电源管理 → 休眠定时器 → I2C扫描地址 1~126命中0x15才认为触摸芯片在位→ SPI → ST7789 屏幕 → 触摸任务三个休眠回调和充电联动逻辑也都在这里。cst816x.hTOUCH_THRESHOLD_TABLE定义三个触摸分区x 坐标 20 / 40 / 60y 均为 600及单击 200ms、双击窗口 240ms、长按 2sboot 区 4s等阈值VOL_ADJ_INTERVAL_US200ms、VOL_ADJ_STEP5控制长按连续调音量。cst816x.cctouchpad_daemon主循环每 40ms 轮询一次UpdateTouchPoint()从寄存器0x02读 6 字节解析触点分区事件分发与音量调节逻辑都在这个循环里。power_manager.hPowrSwitch()用 200ms 周期定时器轮询电源键完成开关机判定CheckBatteryStatus()/ReadBatteryAdcData()负责充电判定USB ADC 落在 1500~4000 区间视为充电与电量换算标定点1970→0%、2062→20%、2154→40%、2246→60%、2338→80%、2430→100%低电量阈值 20%shutdown()在充电时拒绝关机、拉低电源控制脚失败后以esp_deep_sleep_start()兜底。config.h所有引脚与显示/音频参数。关键引脚一览来自config.h功能引脚 / 参数音频 I2SWS / MCLK / BCLK / DIN / DOUT24kHzGPIO4 / GPIO5 / GPIO6 / GPIO17 / GPIO15Codec I2CES8311与触摸芯片共用SDA GPIO41 / SCL GPIO42触摸芯片 CST816I2C 地址 0x15物理 boot 按键GPIO0屏幕ST7789240×240SPI3_HOST 80MHzSDA GPIO10 / SCL GPIO9 / DC GPIO8 / CS GPIO14 / RES GPIO18 / 背光 GPIO13电源USB 插入检测 GPIO1ADC1_CH0/ 电源控制 GPIO48 / 电源键检测 GPIO47 / 电池 GPIO7ADC1_CH6六、常见问题与排查⚠️ 触摸完全无响应先看串口日志里有没有Device found at address 0x15。板卡启动时会扫描 I2C 总线 1~126 地址只有探测到触摸芯片0x15才会创建触摸任务否则整个触摸链路不会启动。若能看到Get CST816x chip ID日志说明芯片通信正常此时检查触摸是否落进了TOUCH_THRESHOLD_TABLE的三个分区坐标——落在分区外的触摸本来就不会有动作。进不去配网界面配网入口是「开机后 1 秒内单击中间触摸键」且要求设备仍处在启动状态kDeviceStateStarting。窗口极短最常见的失败原因就是点晚了。重启设备、在屏幕上刚亮起时立刻单击中间区即可若仍无效确认选中的是 Wi-Fi 版本xingzhi-metal-1.54-wifi固件。插着 USB 关不掉机这是设计行为而非故障shutdown()开头就检查充电状态检测到插入 USB 时直接返回日志会打印「检测到插入usb无法关机」。先拔掉 USB 线再长按电源键 5 秒即可正常关机。七、延伸还能怎么定制板卡把可定制点收敛得很干净改哪个维度就看哪个文件触摸分区与事件阈值想挪动分区位置、改长按判定时间或音量步长全部在 cst816x.h 的TOUCH_THRESHOLD_TABLE、VOL_ADJ_INTERVAL_US、VOL_ADJ_STEP三个位置休眠与电源策略60s/300s 的休眠节奏在 xingzhi-metal-1.54-wifi.cc 的PowerSaveTimer构造参数与三个回调里电量标定点、充电判定区间、关机兜底逻辑在 power_manager.h交互能力扩展xiaozhi-esp32 本身是基于 MCP 协议的项目设备端控制与云端工具都能通过 MCP 继续扩展思路可参考 docs/mcp-usage_zh.md 与 docs/mcp-protocol_zh.md移植到自己硬件流程见 docs/custom-board_zh.md把本文第五节的引脚表和初始化顺序当成模板即可。到这里这块板子「怎么烧、怎么用、怎么改」就都齐了你可以直接复现第一节的命令链完成首次烧录按第二、三节的表格完成日常操作也能顺着第五节的入口把触摸分区、休眠时长、电量标定改成适合自己产品的参数。【免费下载链接】xiaozhi-esp32An MCP-based chatbot | 一个基于MCP的聊天机器人项目地址: https://gitcode.com/GitHub_Trending/xia/xiaozhi-esp32创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

01:谁考了第k名
01:谁考了第k名

/*** 题目名称&#xff1a;谁考了第k名 <p>* 题目来源&#xff1a;http://noi.openjudge.cn/ch0110/01/ <p>* 程序功能&#xff1a;输出指定名次学生的学号和成绩** author 潘磊&#xff0c;just_panleijust.edu.cn* version 1.0*/import java.util.List; import j… · 2026/11/6 1:19:19

AI 不再只是工具!GOSIM 人工智能愿景高端论坛精彩回顾
AI 不再只是工具!GOSIM 人工智能愿景高端论坛精彩回顾

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:19:19

Pillow识别极验消消乐验证码
Pillow识别极验消消乐验证码

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:18:15

Akaunting:免费自托管会计软件,三步开张
Akaunting:免费自托管会计软件,三步开张

Akaunting&#xff1a;免费自托管会计软件&#xff0c;三步开张 【免费下载链接】akaunting Online Accounting Software 项目地址: https://gitcode.com/gh_mirrors/ak/akaunting Akaunting 是一款可以免费自托管的在线会计软件&#xff0c;面向不想买 SaaS 订阅、也不… · 2026/11/6 1:33:23

6步走通 lego 开源贡献:ACME 证书客户端的参与开发指南
6步走通 lego 开源贡献:ACME 证书客户端的参与开发指南

6步走通 lego 开源贡献&#xff1a;ACME 证书客户端的参与开发指南 【免费下载链接】lego Lets Encrypt/ACME client and library written in Go 项目地址: https://gitcode.com/gh_mirrors/le/lego lego 是一个用 Go 编写的 ACME 客户端与库&#xff0c;帮你的站点自动… · 2026/11/6 1:33:23

4-1-Computer Class Built-in Variables-serverPid
4-1-Computer Class Built-in Variables-serverPid

Computer Class Built-in VariablesType:Agent PropertiesMode:r-Name:serverPidDescription:PID of the PatrolAgents process · 2026/11/6 1:33:23

Rabbitmq Management管理界面介绍
Rabbitmq Management管理界面介绍

一、Overview Connections Channels Exchanges Queues and Streams Admin这些菜单分别对应RabbitMQ的整体状态、客户端连接、消息通道、交换机、队列以及系统管理等功能Rabbitmq中一条完整的消息传递流程通常如下生产者 ↓ Connection ↓ Channel ↓ Exchange ↓ Binding ↓ Qu… · 2026/11/6 1:33:23

线性结构:链表(1)
线性结构:链表(1)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:33:23

可白嫖源码---课程设计--毕业设计--springboot互动式教学平台[编号:project20179](案例分析)-附源
可白嫖源码---课程设计--毕业设计--springboot互动式教学平台[编号:project20179](案例分析)-附源

本文仅展示核心实现逻辑与部分代码片段&#xff0c;完整项目源码、配套文档、数据库脚本内容较多&#xff0c;篇幅有限无法全部放出。 有需要完整资源的同学&#xff0c;可以在评论区留言【资料或领源码】&#xff0c;我会一 一回复站内私信&#xff0c;发送完整文件 摘 要 … · 2026/11/6 1:32:23

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07

三菱PLC数据采集到数据库的时序设计:Python+MC协议实战
三菱PLC数据采集到数据库的时序设计:Python+MC协议实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11

ASIC主模式RTL设计:状态机与三态驱动的流片级实现
ASIC主模式RTL设计:状态机与三态驱动的流片级实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11

STM32嵌入式C++开发:GDB调试与Renode仿真实战指南
STM32嵌入式C++开发:GDB调试与Renode仿真实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 1:02:11

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:27:59

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:03

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/5 10:28:07

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码