灯光中转 — WebSocket 测试客户端
与
server/main.go
协议一致。RX 角色加入房间接收灯光帧;TX 角色模拟发射端发送灯光帧(含 SipHash-2-4 认证)。
连接
服务器 URL
角色
RX 子设备(接收)
TX 发射端(发送)
addr / room(冒号分隔 5 字节)
版本
连接
断开
未连接
HOP_KEY(32 hex 字符)
必须与固件
hop_config.h
的 HOP_KEY 逐字节一致
灯光模拟(RX 渲染)
未收到帧
mode:
—
peak:
—
color:
—
phase(锚):
—
phase(实时):
—
亮度(实时):
—
step/ms:
—
seq:
—
同步误差:
—
本地 phase 连续推进(按
rf_phase_step_ms
),每帧朝收到 phase 做软同步(α=0.3, 限幅±8192)——既抗网络抖动不顿挫, 又防长期漂移不同步。mode 切换时硬重对齐。
事件日志
RX 接收帧
最近 200 帧(色块=g,b,r 渲染, 亮度条=brightness, MAC=本地校验)
时间
seq
色
brt
mode
phase
units
MAC
g,b,r
TX 发送灯光帧
颜色(RGB, 发送时拆成 g,b,r)
亮度 brightness (0..255)
200
mode
0 CONST(常亮)
2 BLINK(闪烁)
3 GRADIENT(渐变)
phase (0..65535)
blink_period_units
seq(自动递增, 可重置)
发送一帧
自动发送间隔(ms, 0=关)
启动自动
停止自动
phase 自动推进:发送时按当前 mode 的 step(MODE_TICK_MS=32 对齐)累加,勾选下方可改用手动 phase。
手动 phase(不自动推进)
预览:当前 TX 帧将渲染为