成员研究实验
运行包自带Python,用于本机网页和设备通信。研究、修改、编译固件另需本机VS Code、ESP-IDF 5.5.4与独立源码包。成员各自使用电脑、同型号ESP32-C3/CH343开发板、USB数据线和自己的2.4G WPA2热点。
从源码进入真实实验
完整解压两个包;运行目录保持发行文件,源码解压到独立ASCII目录。双击运行包“启动平台.cmd”,在“研究与开发”填写独立源码、SDK、IDF的PowerShell profile与Python、独立构建目录,点击检查并关联。工作区和个人配置保存在本机data。
“研究源码”直接打开VS Code,不要求开发板入网。“在VS Code构建固件”请求真实集成终端任务,显示本次工具输出;成功后生成源码、配置、完整ELF和镜像身份。源码改变须重新构建。构建不会烧录。
研究工作区同时包含“成员开发:build”和“成员开发:flash”任务,可从VS Code“终端→运行任务”选择。打开源码不会自动运行任何任务;flash任务先询问当前串口并展示范围,仍需终端单次确认。查看源码不覆盖正在运行的开发请求。
连接开发板,结束网页会话后点击“在VS Code准备烧录”。集成终端显示串口身份、完整ELF、镜像、一次120秒及保留NVS范围,只有输入本次确认才执行。烧录工具成功后回到“首次配置→检查设备”,核对实际启动,再按需配置热点和独立配对。VS Code工作区要求信任时,由成员核对自己的源码目录后处理;平台不会关闭工作区信任。
AES批量
在设备页完成配置并结束会话,再进入“研究实验”。默认100条、64字节确定性ASCII负载、每条结束后间隔100毫秒、电脑结果等待3秒、最长600秒。逐条等待最终ACK或超时后再发下一条,不是固定发送频率压力实验。
板端ACK等待仍是800毫秒;电脑结果等待是观察最终反馈的时间,两者分开保存。参数的最坏预算为条数×(电脑等待+间隔)+45秒准备收尾余量,超过用户设定时限就拒绝启动。不要把较短超时与较长超时的数据混为相同条件。
普通超时和认证失败保留该条结果后继续下一条;串口写失败、设备/配对/启动/地址改变时整批停止。取消停止未来发送,已有数据继续保留;最终释放串口、UDP和设备锁。首次配置或开发构建进行时不能同时收发。
指标含义
计划数与实际提交数分别记录,取消后未发出的条目不算丢包。板端发送观测来自UDP发送反馈或已认证返回;没有证据时标明未观测。电脑收包的未认证报文仅能按来源及包头候选关联,不能宣称已经认证为板端。
上传未收率的分母是有板端发送观测的消息;认证失败率的分母是收到的可候选关联消息;最终未确认率的分母是实际提交消息。ACK超时不直接判为纯网络丢包。没有有效分母显示无法判定。
逐包保存认证、原文比对和最终ACK状态,晚到、重复及无法关联报文另记诊断,截止时失败不被晚到报文改成成功。耗时按对应阶段有效样本计算N、平均值、中位数和P95(最近秩);缺失或超时值不填0。seal_us、pc_open_us、ack_open_us为微秒,pc_path_ms与board_rtt_ms为毫秒,起止不同。
这些是当前顺序负载下的应用链路观测,不能直接代替无线抓包得到的纯网络丢包率、固定频率压力试验或正式算法性能排名。
导出与成员汇总
保存逐包CSV、汇总CSV和实验JSON。JSON绑定成员编号、设备、源码/完整ELF/配置身份和参数,不含密码、密钥或本机工具路径。原始消息字节以hex保存,CSV的公式前缀作防护。
组员发送自己的已结束实验JSON,由研究页面本地导入。相同构建、协议、负载、间隔和等待参数分组;汇总原始计数,再计算比例。重复实验不重复计数;同一实验编号内容改变会拒绝覆盖。不同实验条件不直接合并。导入、查询、查看历史均不连接开发板。
导入重新计算原始计数,不使用文件里预先给出的百分比。逐包字段限制为标量,拒绝嵌套数据、无效布尔值、计数与耗时;声明“原文相等”时核对已有原始字节。诊断中的Windows本机路径隐藏。JSON是研究记录,不是操作者或实机来源的签名证明;模拟实验必须明确标记SIMULATION_ONLY,不能计入真人成员实机复现。
只共享当前成员版源码和研究路线;完整第1—17周历史仍由作者保留。Ascon/SM4保留研究材料与电脑演示,实机业务仍为AES。每位成员的真实复现需各自验收。