SYNTH · USB MCU DISPLAY

SYNTH USB 状态屏模拟器 428 × 142 px

上位机一次性下放配置 + 实时状态报文局部更新。素材离线预处理到原生尺寸,Web 与 MCU 均直接使用预处理产物:动画 cell 131×142,进度条 270×16,APP 图标 16×16。

实时状态报文 ● PARSED
每行一条 KEY: VALUE,即改即显(局部更新)。支持键:APP / STATUS / SESSION / TOKEN / 5H_PCT / WEEK_PCT / 5H_RESET(HH:MM:SS 倒计时,屏上显示折算后的 MM-DD HH:MM) / WEEK_RESET,未知键忽略。
STATUS 六态:IDLE / WORKING / COMPLETE / APPROVAL / ERROR / UNASSIGNED(兼容别名 BUSY→WORKING、DONE→COMPLETE)。
状态快切 / STATUS
动画映射(cell 131×142 · 行 0–8)
预处理表:synth-fit142.webp(1048×1278,8 列 × 9 行,cell 131×142)。每个原始 192×208 cell 已离线等比缩放为 131×142;Web 直接读取预处理 cell 并在 142×142 容器内原生居中绘制,不运行时缩放、不读取原始精灵表。
素材下载(仅预处理产物 · hover 预览)
动画 · 预处理 cell 131×142 / 容器 142×142 · PNG(通用)+ BIN(RGB565 直刷)
进度条 · 270×16(完整横向渐变:左=空·红 → 右=满·绿;fill 裁宽 + track 裁余,两次 blit)
APP 图标 · 16×16
原始素材(sprite.webp / pet.json / codex.png / claude.png)不上屏、不出货,仅作为预处理输入保留。
ZOOM 428×142 · 1× 显示
逻辑分辨率恒为 428×142;画布按 devicePixelRatio 超采样渲染,文字矢量清晰,素材像素最近邻直贴(1 素材像素 = 整数个物理像素)。
UI 规范 / SPEC

硬件

屏幕428 × 142 px(逻辑 1px = 1 物理像素)
背景色#000000 · 固定不可调
结构圆角大屏(r10)内嵌宠物容器(r10 微圆角)

布局(px)

宠物容器(0,0) 142×142 · 填充 #121814 · 边 #1F2820
信息区x 150–420(宽 270)
headery 6–22 · 图标 16×16 + APP 名 · token / 状态直贴屏底
session基线 y40 · 11px · 超长 truncate
quota 5h / 1w标签基线 66 / 106 · 条 y72 / 112

精灵图(动画)

文件synth-fit142.png(通用)/ .bin(MCU 直刷)
整表1048 × 1278(8 列 × 9 行)
cell131 × 142(Web / MCU 最终预处理尺寸)
预处理192×208 × 0.6827 → 131×142
显示142×142 容器内 x=5 原生绘制,无运行时缩放/裁剪
行帧数6 / 8 / 8 / 4 / 5 / 8 / 6 / 6 / 6
bin 格式RGB565 小端 · 行主序 · 无文件头 · 透明合成 #000 · 2,678,688 B

进度条

底槽bar-track-270x16.png · 270×16
填充bar-fill-270x16.png · 270×16 横向渐变
语义横轴=余量刻度:左空(红) → 右满(绿)
渲染fill 裁宽 270·pct% + track 整贴(两次 blit)

APP 图标

尺寸16 × 16(原生直贴)
已有app-codex-16 / app-claude-16
回退无图标时显示 APP 文字

状态(六态)

报文键

配置APP /(动画映射表)
实时STATUS / SESSION / TOKEN / 5H_PCT / WEEK_PCT / 5H_RESET / WEEK_RESET