花雕动手做|我没写一行代码,只说 5 句大白话:ESP-Claw 生成了"七彩虹"流光扫屏特效
标签:*ESP-Mosaico Device-Chat ChatCoding AI Agent 硬件在环 HIL Lua沙箱 创客实战*
## 导读:当“甲方”遇上一个自带示波器的 AI
在传统嵌入式开发中,要在 480x480 的屏幕上写一个流畅的流光扫屏动画,你需要处理坐标映射、帧率控制、画线 API 调用、颜色渐变算法,还要自己调试、编译、烧录。
而今天,我只需要对着手机(或板子)输入几句大白话,AI Agent 就自动接管了这一切:它不仅能精准领会“加粗”、“提速”、“换成七彩色”的需求,还在设备意外重启导致代码丢失时,完成了一场教科书级别的自我抢救。
结合我真实的会话截图,让我们一起来见证这场原生物理硬件在环(HIL)的丝滑闭环。
## 第一阶段:一句话生成流光特效(含史诗级翻车自愈)
需求下达:“一条亮白色光线沿着屏幕四边循环移动扫边,划过位置留下淡蓝色拖影。独占屏幕。”
Agent 执行:
ESP-Claw 瞬间解析意图,后台生成了名为 edge_sweep.lua 的脚本并热部署。
第一版效果快速上线:白色光点顺时针巡边,留下淡蓝色拖影,480px/s,30 帧/秒。
突发异常:设备重启,文件灰飞烟灭
我顺手发了个“显示”,结果 AI 敏锐地察觉到不对劲。
在后台的推理链路中,它展现了令人震惊的排障能力:
初步怀疑:用户说“显示”,是屏幕空了吗?是不是没执行?
现场勘查(第 2 轮):异常情况:设备似乎已重启!运行时间重置了,任务列表里 edge_sweep 已经消失。
寻找线索(第 3-4 轮):edge_sweep.lua 文件不存在。发现 progress7b.lua 存在,我来读一下这个文件,了解里面用的画线 API。
自学 API(第 5-6 轮):读取到 screen.fill_rect 和 screen.line 等 API,确认可行。
绝地反击(第 7-8 轮):通过 lua_run_script_async 重新写入代码,并拉起任务!
抢救成功:屏幕恢复正常。Agent 顺便向我报告了破案结果:“之前那次是设备重启后脚本文件丢了,所以屏幕是空的。现已重新写好脚本并运行。”
专业分析:
这种在物理环境中因为掉电、复位导致运行状态丢失的情况,是人类工程师的噩梦。ESP-Claw 通过读取系统 Uptime 识破重启,再去翻找同目录下的 progress7b.lua 偷师画线 API,最后重写脚本,这不就是 AI 版的硬件在环(HIL)自愈吗?


## 第二阶段:极速微调,秒级热更新
需求修改:“光点加粗,速度加快。”
Agent 执行:
无需重新分析整个工程,Agent 直接在上下文里进行参数定位。
粗细:4px -> 8px。
速度:480px/s -> 900px/s。
头部:改为三层叠加的 9/6/4px 光斑,看起来像个真正的发光体。
内部动作流:
Snap: 停止旧任务 edge_sweep -> 重新写入 update 后的 Lua 脚本 -> 拉起新任务。
专业分析:
这里完美展示了 ChatCoding 的核心优势:零编译、热部署。传统 C 语言开发,改个参数要等几十秒的编译和烧录;在这里,底层的 Lua 沙箱直接执行停止->覆写->启动,一秒钟即可看到肉眼反馈。


## 第三阶段:多线程几何计算,从单色到“七彩虹”
需求升级一:“并排红蓝绿三个光点,拖尾加长一倍。”
Agent 执行:自动推导出要划分 3 条平行车道。不仅生成了红、蓝、绿三色光点,还精确计算了“车道间距 8px”,并把拖尾从 170px 拉长到了 340px。
需求升级二:“七彩红七个光点。”
Agent 执行:这是一个复杂的空间分配问题。
Agent 的后台逻辑写道:“7 条彩色车道,车道宽度 + 间距之和必须 ≤ 70px(屏幕宽度限制)。车道厚度 THICK=4。”
瞬间,红橙黄绿青蓝紫七条光带同步绕边流转,视觉效果直接拉满,堪称屏幕上的“RGB 跑马灯”!
专业分析:
大模型在空间几何计算上的能力在此刻展现得淋漓尽致。它自己算好了 7 条平行线的坐标偏移量,避免了光带重叠成一坨,这比很多新手手写 for 循环算偏移量还要靠谱。




## 第四阶段:高阶特效,双组对向与图层叠加
需求终极版:“光点加粗二倍,设置二组。”
Agent 执行:
粗细:4px -> 8px,头部光环扩大到 7.5px。
布局:设置两组(两套七彩色带),分别位于屏幕对角。当第一组在左上扫边时,第二组在右下,沿四边相隔半圈同向移动。
效果:两组彩虹在屏幕边缘疯狂追逐渐进,带出极其炫酷的 340px 长拖尾,速度保持 900px/s。


## 飞书 IM 通道,同一个`bounce`任务的增量迭代实录(电脑版实时截图)







## 深度复盘:从“一句话”看 AI 硬件开发范式
回顾这场短短几十分钟的对话,我们其实经历了 Agent 开发的最前沿:
人类负责“审美与直觉”: “加粗”、“变快”、“两组”、“七彩色”,这些词全是感性的视觉描述。
Agent 负责“翻译与工程”: 它将这些词翻译成“像素值”、“帧率”、“坐标平行偏移量”、“颜色 HEX 值”以及“动画生命周期管理”。
环境提供“真实的物理校验”: 屏幕没有亮,或者设备重启了,Agent 无法通过纯软件模拟得知。是人的肉眼反馈(“显示”) 加上 硬件底层的状态上报(Uptime 重置),构成了完整的 HIL 闭环,让 AI 能够完成容错与自我修复。
如果这放在传统开发里,你需要:
打开电脑 -> 启动 ESP-IDF -> 查阅 LVGL/屏幕驱动手册 -> 写代码算三角函数和颜色 -> 编译烧录 -> 凑到屏幕前看效果 -> 回电脑修改参数 -> 再烧录……
而在 ESP-Mosaico + ChatCoding 的加持下,这一切都被压缩成了聊天的字符。
未来已来,硬件开发的“氛围编程(Vibe Coding)”时代,比想象中更近。




