# BL654：不同数量、频率及阶段最终实测报告（含完整 8 台补测）

> 按“设备数量 × 采集频率 × 运行阶段”重新整理的结论报告见：[1Hz 与 4Hz 双主线稳定性报告](BL654_PoC三维度稳定性报告_1Hz与4Hz双主线.md)。本文保留详细原始统计和历史对比。

## 最新：8 台 4Hz 连续两轮（5 秒接收等待）

完整 8 台 × 4Hz 连测两轮均通过零缺失标准。

两轮合计 19,200／19,200 条回复，零缺失、零掉线、零发送调度超期。查询周期仍为 250ms，接收超时及末尾等待从 2 秒改为 5 秒。实际最大 FIFO 估计延迟分别为 359.7ms、302.3ms，无超过 2 秒的回复，不能将本次通过单独归因于等待时间延长。

| 阶段 | 实际台数 | 计划查询 | 成功发送 | 有效回复 | 未发送 | 已发缺回复 | 掉线 | 判定 |
|---|---:|---:|---:|---:|---:|---:|---:|---|
| 前次单轮，2 秒等待 | 8 | 9600 | 9598 | 9596 | 2 | 2 | 0 | 未通过 |
| 本次第 1 轮，5 秒等待 | 8 | 9600 | 9600 | 9600 | 0 | 0 | 0 | 通过 |
| 本次第 2 轮，5 秒等待 | 8 | 9600 | 9600 | 9600 | 0 | 0 | 0 | 通过 |

[两轮验证详情](BL654_20261105_8台4Hz连续两轮_5秒接收验证报告.md)。以下保留前次数量对照及单轮补测，结果不被新一轮覆盖。

**此前单轮结论：完整 8 台 1Hz 通过；4Hz 未达到零缺失标准。凌晨实际 1、2、4、6、7 台的两种频率均通过。**

此前数量对照及单轮补测共完成 **12 个正式阶段**，每阶段 5 分钟，累计成功提交 **41,998 次**、收到 **41,996 条**有效回复，正式采集中掉线 **0 次**。完整 8 台补测期间，1Hz 切换至 4Hz 保持原连接，不主动重连或替换设备。

适配器：**BL654 / 451-00004 样品 1，USB 序列号 EA511D51F3F1，COM7，直插电脑。**沿用 C# / pc-ble-driver / Nordic connectivity USB、30ms 首选连接间隔、4 秒监督超时、原信道参数；没有更换适配器、固件或量具名单。不同阶段的二进制及驱动哈希保存在各自 manifest.json。

## 此前单轮的稳定性清单

| 检查项目 | 1、2、4、6、7 台 | 完整 8 台 | 判断 |
|---|---|---|---|
| 最终连接就绪 | 达到各组实际数量 | 8／8；两台首次服务发现失败，补试成功 | 最终可连接，首次准备仍需重试 |
| 链路观察 | 共 80／80 次检查成功 | 32／32 次成功 | 已测观察段通过 |
| 正式采集中保持连接 | 两种频率均零掉线 | 两种频率均零掉线 | 连接保持通过 |
| 1Hz 测量收发 | 全部零缺失 | 2400／2400 | 通过 |
| 4Hz 测量收发 | 全部零缺失 | 计划 9600、发送 9598、回复 9596 | 8 台未达严格标准 |
| 按时提交查询 | 零调度超期 | 4Hz 超期跳过 2 次 | 主机发送侧尚有异常 |
| 已提交查询是否完整回数 | 全部完整 | 4Hz 缺 2 条；1Hz 完整 | 与未发送分别统计 |
| 测试结束释放连接 | 全部正常 | 正常 | 通过 |
| 长期生产稳定性、休眠及断线恢复 | 未验证 | 未验证 | 本报告不能作生产保证 |

“连接保持通过”不等于“测量收发通过”。本轮正式阶段合计 **11／12 个通过**，唯一未通过的是完整 8 台 × 4Hz。

## 各数量的连接情况

| 实际数量 | 建连来源／准备情况 | 独立链路观察 | GATT 检查成功数 | 1Hz／4Hz 正式掉线 |
|---:|---|---|---:|---|
| 1 | 从共同设备保留连接，未重新逐台建连 | 60 秒，数量保持 | 4／4 | 0/0 |
| 2 | 从共同设备保留连接，未重新逐台建连 | 60 秒，数量保持 | 8／8 | 0/0 |
| 4 | 从共同设备保留连接，未重新逐台建连 | 60 秒，数量保持 | 16／16 | 0/0 |
| 6 | 从共同设备保留连接，未重新逐台建连 | 60 秒，数量保持 | 24／24 | 0/0 |
| 7 | 凌晨目标 8 台，实际 7 台；FA:26 补试成功，F9:A0 未发现 | 60 秒，数量保持 | 28／28 | 0/0 |
| 8 | 早晨完整 8 台；F4:D9、17:61 补试成功 | 60 秒，数量保持 | 32／32 | 0/0 |

较小数量组采用保留连接的方式，不能将其记录当作一次新的首次建连成功率测试。主动减少数量与测试结束主动断开，均不算异常掉线。

## 此前不同数量与频率的结果

各频率均测试 5 分钟；数字顺序统一为 **计划／成功发送／有效回复**。

| 实际台数 | 1Hz：计划／发送／回复 | 1Hz 判定 | 4Hz：计划／发送／回复 | 4Hz 判定 | 正式掉线 |
|---:|---:|---|---:|---|---:|
| 1 | 300／300／300 | 通过 | 1200／1200／1200 | 通过 | 0 |
| 2 | 600／600／600 | 通过 | 2400／2400／2400 | 通过 | 0 |
| 4 | 1200／1200／1200 | 通过 | 4800／4800／4800 | 通过 | 0 |
| 6 | 1800／1800／1800 | 通过 | 7200／7200／7200 | 通过 | 0 |
| 7 | 2100／2100／2100 | 通过 | 8400／8400／8400 | 通过 | 0 |
| 8 | 2400／2400／2400 | 通过 | 9600／9598／9596 | 未通过 | 0 |

凌晨计划 8 台时 F9:A0 未发现，故第一组实际为 7 台；早晨唤醒后另做完整 8 台补测。两批分别保留，7 台结果没有改写成 8 台。

## 完整 8 台 4Hz 的具体差额

计划查询 9600 次，成功提交 9598 次，有效回复 9596 条；未提交 2 次，已提交但缺回复 2 条。分项如下：

- 未发送：5A:48:69:C5:F4:C6，第 848 轮，发送调度晚了 291.5ms，超过 250ms 周期，程序按既定规则跳过，避免补发突发查询。
- 未发送：5A:48:69:C5:F4:D9，第 848 轮，发送调度晚了 265.8ms，超过 250ms 周期，程序按既定规则跳过，避免补发突发查询。
- 已发但缺回复：5A:48:69:C5:F9:A0，提交 1200 次、回复 1199 条，缺 1 条。
- 已发但缺回复：5A:48:69:C5:F5:D4，提交 1200 次、回复 1199 条，缺 1 条。

调度超期只能说明主机未按时提交，不等于量具丢包；主机当时停顿的具体原因尚未确定。回复缺失也不能仅凭这一次记录归因为设备损坏。

## 各阶段情况

**发现与连接准备：**凌晨最终连接 7 台；FA:26 首次服务发现时断开，补试成功。早晨补测发现并就绪 8／8 台，准备阶段记录 2 次失败：

- 5A:48:69:C5:F4:D9：Disconnected while waiting for GATT event 4。
- 5A:48:69:C6:17:61：Disconnected while waiting for GATT event 4。

上述失败发生在正式采集之前，补试后才开始观察；它们说明首次建连仍可能需要重试，不能用正式采集通过来抹去准备阶段的问题。

**持续连接观察：**每个数量组各观察 60 秒。凌晨共 80 次 GATT 检查全部成功；早晨完整 8 台共 32 次，失败 0 次。凌晨贯穿全部数量组的 F4:D9 连续保持连接约 56.9 分钟，直至测试结束主动释放。

**测量就绪确认：**每组先进行 3 轮测量查询，单独保存，不计入正式回复总数。所有实际连接设备均保留在正式统计中，未按回数表现择优剔除。

**正式采集：**总计已提交但缺回复 2 条，未成功提交 2 次，写入错误 0 次，发送调度超期 2 次。结果已独立解析原始通知字节核对；所有阶段结束后均正常释放连接。

## 完整 8 台逐台稳定性清单

共同 MAC 前缀为 `5A:48:69:`。此表仅统计早晨完整 8 台补测，所有设备均保持连接；数据为成功发送／有效回复。

| MAC 后缀 | 准备阶段 | 1Hz 收发 | 4Hz 收发 | 4Hz 未发送 | 4Hz 已发缺回复 | 本次记录 |
|---|---|---:|---:|---:|---:|---|
| C5:F4:B4 | 就绪 | 300／300 | 1200／1200 | 0 | 0 | 本次正式收发完整 |
| C5:F4:C6 | 就绪 | 300／300 | 1199／1199 | 1 | 0 | 主机调度超期，成功发送均回数 |
| C5:F4:D9 | 补试成功 | 300／300 | 1199／1199 | 1 | 0 | 主机调度超期，成功发送均回数 |
| C5:F5:D4 | 就绪 | 300／300 | 1200／1199 | 0 | 1 | 有已发缺回复 |
| C5:F9:A0 | 就绪 | 300／300 | 1200／1199 | 0 | 1 | 有已发缺回复 |
| C5:FA:26 | 就绪 | 300／300 | 1200／1200 | 0 | 0 | 本次正式收发完整 |
| C6:17:4E | 就绪 | 300／300 | 1200／1200 | 0 | 0 | 本次正式收发完整 |
| C6:17:61 | 补试成功 | 300／300 | 1200／1200 | 0 | 0 | 本次正式收发完整 |

C6、D9 的未发送属于主机调度超期，不应记成量具丢回复；F9:A0、F5:D4 各少 1 条实际回复。以上为本次异常分类，不是硬件好坏鉴定。

## 历史 8 台场景对照（设备与准备条件不同）

| 场景 | 频率 | 计划／发送／回复 | 采集中掉线 | 结果 |
|---|---|---:|---:|---|
| 换出 F4:5A、FA:10 之前 | 1Hz | 2400／2400／1609 | 0 | 未通过 |
| 换出 F4:5A、FA:10 之前 | 4Hz | 9600／9451／6501 | 1 | 未通过 |
| 换机前，连接观察后低频查询 | 0.2Hz | 480／480／374 | 0 | 未通过 |
| 换入 D9、17:61 后，直接低频查询 | 0.2Hz | 480／480／475 | 0 | 未通过 |
| 换机后，确认测量就绪再低频查询 | 0.2Hz | 480／480／480 | 0 | 通过 |
| 当前完整 8 台补测 | 1Hz | 2400／2400／2400 | 0 | 通过 |
| 当前完整 8 台补测 | 4Hz | 9600／9598／9596 | 0 | 未通过 |

这些阶段的量具组合、状态、准备流程和时间不同，不能当作仅改变数量的严格对照。换机前的 4Hz 有真实掉线；当前完整 8 台的 4Hz 保持连接但有少量未发送及缺回复，异常性质已不同。当前 8 台 4Hz 的缺回复也没有集中在某一台上。

## 稳定性判断与生产评估

凌晨实际 1、2、4、6、7 台均通过，但完整 8 台补测没有全部通过。本次存在主机发送调度异常，不能只凭数量差异确定是蓝牙容量问题。结合更换两台后收发明显改善的过程，不能再简单将此前不稳定归因于“连接数量多”；但设备构成、状态和测试时间均有变化，尚不能确定此前异常的唯一根因，也不能据此判定量具硬件损坏。

当前完整 8 台的 4Hz 不能判为严格通过；以提交、有效回复及未提交分别统计。完整查询频率和零缺失需同时满足，不因连接未断开就视为通过。上述结果不能用于确定适配器最大连接上限；本次没有重测 10 台。每个数量和频率仅测试 5 分钟，尚未验证完整 8 台长时间连续高负载、休眠唤醒、断线自动恢复及不同批次差异。

生产流程宜保留连接、通知开启和测量就绪确认，分别监控“连接断开”与“在线但不回数”；准备阶段的重试也应被记录。当前结果足以继续开发 PoC，生产容量承诺仍需对应目标组的长期验证。

## 设备及原始依据

固定名单（共同前缀 5A:48:69）：C5:F4:B4、C5:F4:C6、C5:F4:D9、C5:F5:D4、C5:F9:A0、C5:FA:26、C6:17:4E、C6:17:61。此前被换出的 F4:5A、FA:10 不在本轮名单中。

凌晨测试：2026-11-05T02:12:01.4460273+08:00 至 2026-11-05T03:09:47.1228855+08:00。

8 台补测：2026-11-05T07:46:32.9048207+08:00 至 2026-11-05T07:59:42.9942435+08:00（均为北京时间）。

凌晨证据目录：`D:\develop\second\blepcapp\winapp\poc-bl654-csharp\studies\20261105-overnight-021201`。

补测证据目录：`D:\develop\second\blepcapp\winapp\poc-bl654-csharp\studies\20261105-eight-followup-074632`。

各阶段包含 events.jsonl、summary.json、observed-audit.json；manifest.json 固定分组和参数，control-events.jsonl 区分连接准备、链路观察、主动减少数量与结束清理。汇总数据见 BL654_20261105_总体统计_含8台补测.json，凌晨报告快照单独保留。测量回复没有事务序号，逐条请求对应和延迟为 FIFO 估计；总有效回复数由实际通知解析核对。
