diff --git a/captures/rcp-he30-cold-2f95c9.txt b/captures/rcp-he30-cold-2f95c9.txt new file mode 100644 index 0000000..ecc9ccd --- /dev/null +++ b/captures/rcp-he30-cold-2f95c9.txt @@ -0,0 +1,19 @@ +Sequence probe: 2 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 2F 95 C9 29 +FRAME 2: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +BEGIN group 1/2 +21:17:23.393 TX group=1 frame=1 len=006 00 00 2F 95 C9 29 +21:17:23.393 RX group=1 frame=1 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +21:17:23.929 TX group=1 frame=2 len=006 00 00 00 00 80 DA +21:17:23.929 RX group=1 frame=2 no RX bytes +GROUP 1 TAIL heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes +BEGIN group 2/2 +21:17:25.056 TX group=2 frame=1 len=006 00 00 2F 95 C9 29 +21:17:25.056 RX group=2 frame=1 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +21:17:25.561 TX group=2 frame=2 len=006 00 00 00 00 80 DA +21:17:25.561 RX group=2 frame=2 ANOMALY 18 RX bytes; first mismatch at byte 6: got 07, heartbeat offset 0 expected 00 +21:17:25.561 RX group=2 frame=2 raw 00 00 00 00 80 DA 07 80 40 40 30 ED 07 80 40 40 30 ED +GROUP 2 TAIL ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +GROUP 2 TAIL raw 07 80 40 40 30 ED 07 80 40 40 30 ED 07 80 40 40 30 ED +Anomalies: 2 diff --git a/captures/rcp-he30-cold-d05026.txt b/captures/rcp-he30-cold-d05026.txt new file mode 100644 index 0000000..165196a --- /dev/null +++ b/captures/rcp-he30-cold-d05026.txt @@ -0,0 +1,19 @@ +Sequence probe: 2 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 D0 50 26 FC +FRAME 2: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 7 bytes, offset 0, 1 frames + 1 bytes +BEGIN group 1/2 +21:17:35.184 TX group=1 frame=1 len=006 00 00 D0 50 26 FC +21:17:35.184 RX group=1 frame=1 heartbeat-compatible RX: 5 bytes, offset 1, 0 frames + 5 bytes +21:17:35.690 TX group=1 frame=2 len=006 00 00 00 00 80 DA +21:17:35.690 RX group=1 frame=2 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +GROUP 1 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +BEGIN group 2/2 +21:17:36.852 TX group=2 frame=1 len=006 00 00 D0 50 26 FC +21:17:36.852 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:17:37.358 TX group=2 frame=2 len=006 00 00 00 00 80 DA +21:17:37.358 RX group=2 frame=2 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +21:17:37.358 RX group=2 frame=2 raw 07 80 C0 40 30 6D 07 80 C0 40 30 6D 07 80 C0 40 30 6D +GROUP 2 TAIL ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +GROUP 2 TAIL raw 07 80 C0 40 30 6D 07 80 C0 40 30 6D 07 80 C0 40 30 6D +Anomalies: 2 diff --git a/captures/rcp-he30-exact-2f95c9.txt b/captures/rcp-he30-exact-2f95c9.txt new file mode 100644 index 0000000..eb0b454 --- /dev/null +++ b/captures/rcp-he30-exact-2f95c9.txt @@ -0,0 +1,28 @@ +Sequence probe: 4 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 00 00 80 DA +FRAME 2: 00 00 7A 50 26 56 +FRAME 3: 07 80 2F 95 C9 AE +FRAME 4: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +BEGIN group 1/2 +21:14:25.531 TX group=1 frame=1 len=006 00 00 00 00 80 DA +21:14:25.531 RX group=1 frame=1 no RX bytes +21:14:26.066 TX group=1 frame=2 len=006 00 00 7A 50 26 56 +21:14:26.066 RX group=1 frame=2 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +21:14:26.066 RX group=1 frame=2 raw 07 80 2F 95 C9 AE +21:14:26.576 TX group=1 frame=3 len=006 07 80 2F 95 C9 AE +21:14:26.576 RX group=1 frame=3 no RX bytes +21:14:27.112 TX group=1 frame=4 len=006 00 00 00 00 80 DA +21:14:27.112 RX group=1 frame=4 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +GROUP 1 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +BEGIN group 2/2 +21:14:28.239 TX group=2 frame=1 len=006 00 00 00 00 80 DA +21:14:28.239 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:14:28.746 TX group=2 frame=2 len=006 00 00 7A 50 26 56 +21:14:28.746 RX group=2 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:14:29.283 TX group=2 frame=3 len=006 07 80 2F 95 C9 AE +21:14:29.283 RX group=2 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:14:29.818 TX group=2 frame=4 len=006 00 00 00 00 80 DA +21:14:29.818 RX group=2 frame=4 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +GROUP 2 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +Anomalies: 1 diff --git a/captures/rcp-he30-exact-d05026.txt b/captures/rcp-he30-exact-d05026.txt new file mode 100644 index 0000000..2c40faa --- /dev/null +++ b/captures/rcp-he30-exact-d05026.txt @@ -0,0 +1,29 @@ +Sequence probe: 4 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 00 00 80 DA +FRAME 2: 00 00 40 40 30 6A +FRAME 3: 07 80 D0 50 26 7B +FRAME 4: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +BEGIN group 1/2 +21:15:27.131 TX group=1 frame=1 len=006 00 00 00 00 80 DA +21:15:27.131 RX group=1 frame=1 no RX bytes +21:15:27.639 TX group=1 frame=2 len=006 00 00 40 40 30 6A +21:15:27.639 RX group=1 frame=2 ANOMALY 18 RX bytes; first mismatch at byte 6: got 07, heartbeat offset 0 expected 00 +21:15:27.639 RX group=1 frame=2 raw 00 00 00 00 80 DA 07 80 50 78 26 D3 07 80 50 78 26 D3 +21:15:28.179 TX group=1 frame=3 len=006 07 80 D0 50 26 7B +21:15:28.179 RX group=1 frame=3 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00 +21:15:28.179 RX group=1 frame=3 raw 07 80 50 78 26 D3 00 00 00 00 80 DA 00 00 00 00 80 DA +21:15:28.686 TX group=1 frame=4 len=006 00 00 00 00 80 DA +21:15:28.686 RX group=1 frame=4 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +GROUP 1 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +BEGIN group 2/2 +21:15:29.846 TX group=2 frame=1 len=006 00 00 00 00 80 DA +21:15:29.846 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:15:30.382 TX group=2 frame=2 len=006 00 00 40 40 30 6A +21:15:30.382 RX group=2 frame=2 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +21:15:30.887 TX group=2 frame=3 len=006 07 80 D0 50 26 7B +21:15:30.887 RX group=2 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:15:31.423 TX group=2 frame=4 len=006 00 00 00 00 80 DA +21:15:31.423 RX group=2 frame=4 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +GROUP 2 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +Anomalies: 2 diff --git a/captures/rcp-he30-host-2f9509-after-2f95c9.txt b/captures/rcp-he30-host-2f9509-after-2f95c9.txt new file mode 100644 index 0000000..c22c7e9 --- /dev/null +++ b/captures/rcp-he30-host-2f9509-after-2f95c9.txt @@ -0,0 +1,28 @@ +Sequence probe: 4 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 00 00 80 DA +FRAME 2: 00 00 7A 50 26 56 +FRAME 3: 00 00 2F 95 09 E9 +FRAME 4: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +BEGIN group 1/2 +21:15:06.976 TX group=1 frame=1 len=006 00 00 00 00 80 DA +21:15:06.976 RX group=1 frame=1 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +21:15:06.976 RX group=1 frame=1 raw 07 80 C0 40 30 6D +21:15:07.483 TX group=1 frame=2 len=006 00 00 7A 50 26 56 +21:15:07.483 RX group=1 frame=2 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +21:15:08.020 TX group=1 frame=3 len=006 00 00 2F 95 09 E9 +21:15:08.020 RX group=1 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:15:08.526 TX group=1 frame=4 len=006 00 00 00 00 80 DA +21:15:08.526 RX group=1 frame=4 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +GROUP 1 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +BEGIN group 2/2 +21:15:09.656 TX group=2 frame=1 len=006 00 00 00 00 80 DA +21:15:09.656 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:15:10.192 TX group=2 frame=2 len=006 00 00 7A 50 26 56 +21:15:10.192 RX group=2 frame=2 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +21:15:10.698 TX group=2 frame=3 len=006 00 00 2F 95 09 E9 +21:15:10.698 RX group=2 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:15:11.202 TX group=2 frame=4 len=006 00 00 00 00 80 DA +21:15:11.202 RX group=2 frame=4 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +GROUP 2 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +Anomalies: 1 diff --git a/captures/rcp-he30-host-2f95c9.txt b/captures/rcp-he30-host-2f95c9.txt new file mode 100644 index 0000000..5b5abfe --- /dev/null +++ b/captures/rcp-he30-host-2f95c9.txt @@ -0,0 +1,28 @@ +Sequence probe: 4 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 00 00 80 DA +FRAME 2: 00 00 7A 50 26 56 +FRAME 3: 00 00 2F 95 C9 29 +FRAME 4: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +BEGIN group 1/2 +21:14:48.320 TX group=1 frame=1 len=006 00 00 00 00 80 DA +21:14:48.320 RX group=1 frame=1 no RX bytes +21:14:48.826 TX group=1 frame=2 len=006 00 00 7A 50 26 56 +21:14:48.826 RX group=1 frame=2 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +21:14:48.826 RX group=1 frame=2 raw 07 80 2F 95 C9 AE +21:14:49.365 TX group=1 frame=3 len=006 00 00 2F 95 C9 29 +21:14:49.365 RX group=1 frame=3 no RX bytes +21:14:49.871 TX group=1 frame=4 len=006 00 00 00 00 80 DA +21:14:49.871 RX group=1 frame=4 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +GROUP 1 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +BEGIN group 2/2 +21:14:51.034 TX group=2 frame=1 len=006 00 00 00 00 80 DA +21:14:51.034 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:14:51.568 TX group=2 frame=2 len=006 00 00 7A 50 26 56 +21:14:51.568 RX group=2 frame=2 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +21:14:52.072 TX group=2 frame=3 len=006 00 00 2F 95 C9 29 +21:14:52.072 RX group=2 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:14:52.579 TX group=2 frame=4 len=006 00 00 00 00 80 DA +21:14:52.579 RX group=2 frame=4 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +GROUP 2 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +Anomalies: 1 diff --git a/captures/rcp-he30-host-d05026.txt b/captures/rcp-he30-host-d05026.txt new file mode 100644 index 0000000..f7c53f9 --- /dev/null +++ b/captures/rcp-he30-host-d05026.txt @@ -0,0 +1,28 @@ +Sequence probe: 4 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 00 00 80 DA +FRAME 2: 00 00 40 40 30 6A +FRAME 3: 00 00 D0 50 26 FC +FRAME 4: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +BEGIN group 1/2 +21:15:47.360 TX group=1 frame=1 len=006 00 00 00 00 80 DA +21:15:47.360 RX group=1 frame=1 no RX bytes +21:15:47.896 TX group=1 frame=2 len=006 00 00 40 40 30 6A +21:15:47.896 RX group=1 frame=2 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +21:15:47.896 RX group=1 frame=2 raw 07 80 50 50 26 FB +21:15:48.405 TX group=1 frame=3 len=006 00 00 D0 50 26 FC +21:15:48.405 RX group=1 frame=3 no RX bytes +21:15:48.941 TX group=1 frame=4 len=006 00 00 00 00 80 DA +21:15:48.941 RX group=1 frame=4 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +GROUP 1 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +BEGIN group 2/2 +21:15:50.067 TX group=2 frame=1 len=006 00 00 00 00 80 DA +21:15:50.067 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:15:50.572 TX group=2 frame=2 len=006 00 00 40 40 30 6A +21:15:50.572 RX group=2 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:15:51.078 TX group=2 frame=3 len=006 00 00 D0 50 26 FC +21:15:51.078 RX group=2 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:15:51.614 TX group=2 frame=4 len=006 00 00 00 00 80 DA +21:15:51.614 RX group=2 frame=4 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +GROUP 2 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +Anomalies: 1 diff --git a/captures/rcp-he30-trigger-406030.txt b/captures/rcp-he30-trigger-406030.txt new file mode 100644 index 0000000..8cce567 --- /dev/null +++ b/captures/rcp-he30-trigger-406030.txt @@ -0,0 +1,24 @@ +Sequence probe: 3 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 00 00 80 DA +FRAME 2: 00 00 40 60 30 4A +FRAME 3: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +BEGIN group 1/2 +21:17:06.565 TX group=1 frame=1 len=006 00 00 00 00 80 DA +21:17:06.565 RX group=1 frame=1 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +21:17:07.072 TX group=1 frame=2 len=006 00 00 40 60 30 4A +21:17:07.072 RX group=1 frame=2 ANOMALY 18 RX bytes; first mismatch at byte 6: got 07, heartbeat offset 0 expected 00 +21:17:07.072 RX group=1 frame=2 raw 00 00 00 00 80 DA 07 80 50 58 26 F3 07 80 50 58 26 F3 +21:17:07.580 TX group=1 frame=3 len=006 00 00 00 00 80 DA +21:17:07.580 RX group=1 frame=3 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00 +21:17:07.580 RX group=1 frame=3 raw 07 80 50 58 26 F3 00 00 00 00 80 DA 00 00 00 00 80 DA +GROUP 1 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +BEGIN group 2/2 +21:17:08.739 TX group=2 frame=1 len=006 00 00 00 00 80 DA +21:17:08.739 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:17:09.275 TX group=2 frame=2 len=006 00 00 40 60 30 4A +21:17:09.275 RX group=2 frame=2 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +21:17:09.781 TX group=2 frame=3 len=006 00 00 00 00 80 DA +21:17:09.781 RX group=2 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +GROUP 2 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +Anomalies: 2 diff --git a/captures/rcp-he30-trigger-504030.txt b/captures/rcp-he30-trigger-504030.txt new file mode 100644 index 0000000..a53a8c0 --- /dev/null +++ b/captures/rcp-he30-trigger-504030.txt @@ -0,0 +1,24 @@ +Sequence probe: 3 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 00 00 80 DA +FRAME 2: 00 00 50 40 30 7A +FRAME 3: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +BEGIN group 1/2 +21:16:51.421 TX group=1 frame=1 len=006 00 00 00 00 80 DA +21:16:51.421 RX group=1 frame=1 no RX bytes +21:16:51.933 TX group=1 frame=2 len=006 00 00 50 40 30 7A +21:16:51.933 RX group=1 frame=2 ANOMALY 18 RX bytes; first mismatch at byte 6: got 07, heartbeat offset 0 expected 00 +21:16:51.933 RX group=1 frame=2 raw 00 00 00 00 80 DA 07 80 D4 50 26 7F 07 80 D4 50 26 7F +21:16:52.441 TX group=1 frame=3 len=006 00 00 00 00 80 DA +21:16:52.441 RX group=1 frame=3 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00 +21:16:52.441 RX group=1 frame=3 raw 07 80 D4 50 26 7F 00 00 00 00 80 DA 00 00 00 00 80 DA +GROUP 1 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +BEGIN group 2/2 +21:16:53.598 TX group=2 frame=1 len=006 00 00 00 00 80 DA +21:16:53.598 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:16:54.104 TX group=2 frame=2 len=006 00 00 50 40 30 7A +21:16:54.104 RX group=2 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:16:54.609 TX group=2 frame=3 len=006 00 00 00 00 80 DA +21:16:54.609 RX group=2 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +GROUP 2 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +Anomalies: 2 diff --git a/captures/rcp-he30-trigger-7a503a.txt b/captures/rcp-he30-trigger-7a503a.txt new file mode 100644 index 0000000..0c40b9b --- /dev/null +++ b/captures/rcp-he30-trigger-7a503a.txt @@ -0,0 +1,24 @@ +Sequence probe: 3 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 00 00 80 DA +FRAME 2: 00 00 7A 50 3A 4A +FRAME 3: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +BEGIN group 1/2 +21:16:26.894 TX group=1 frame=1 len=006 00 00 00 00 80 DA +21:16:26.894 RX group=1 frame=1 no RX bytes +21:16:27.401 TX group=1 frame=2 len=006 00 00 7A 50 3A 4A +21:16:27.401 RX group=1 frame=2 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +21:16:27.401 RX group=1 frame=2 raw 07 80 2F 95 52 35 +21:16:27.908 TX group=1 frame=3 len=006 00 00 00 00 80 DA +21:16:27.908 RX group=1 frame=3 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +GROUP 1 TAIL heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes +BEGIN group 2/2 +21:16:29.069 TX group=2 frame=1 len=006 00 00 00 00 80 DA +21:16:29.069 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:16:29.575 TX group=2 frame=2 len=006 00 00 7A 50 3A 4A +21:16:29.575 RX group=2 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:16:30.111 TX group=2 frame=3 len=006 00 00 00 00 80 DA +21:16:30.111 RX group=2 frame=3 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +GROUP 2 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +21:16:44.113 PANEL python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 50 40 30 7A" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-trigger-504030.txt +Anomalies: 1 diff --git a/captures/rcp-he30-trigger-7a5826.txt b/captures/rcp-he30-trigger-7a5826.txt new file mode 100644 index 0000000..1849e7d --- /dev/null +++ b/captures/rcp-he30-trigger-7a5826.txt @@ -0,0 +1,23 @@ +Sequence probe: 3 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 00 00 80 DA +FRAME 2: 00 00 7A 58 26 5E +FRAME 3: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +BEGIN group 1/2 +21:16:08.034 TX group=1 frame=1 len=006 00 00 00 00 80 DA +21:16:08.034 RX group=1 frame=1 no RX bytes +21:16:08.571 TX group=1 frame=2 len=006 00 00 7A 58 26 5E +21:16:08.571 RX group=1 frame=2 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +21:16:08.571 RX group=1 frame=2 raw 07 80 2F 65 F2 65 +21:16:09.079 TX group=1 frame=3 len=006 00 00 00 00 80 DA +21:16:09.079 RX group=1 frame=3 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +GROUP 1 TAIL heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes +BEGIN group 2/2 +21:16:10.239 TX group=2 frame=1 len=006 00 00 00 00 80 DA +21:16:10.239 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:16:10.747 TX group=2 frame=2 len=006 00 00 7A 58 26 5E +21:16:10.747 RX group=2 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +21:16:11.283 TX group=2 frame=3 len=006 00 00 00 00 80 DA +21:16:11.283 RX group=2 frame=3 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +GROUP 2 TAIL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +Anomalies: 1 diff --git a/docs/discovery-notes.md b/docs/discovery-notes.md index 7051b2e..84f0cb2 100644 --- a/docs/discovery-notes.md +++ b/docs/discovery-notes.md @@ -6755,3 +6755,315 @@ Best current read after HE29: host-stimulated response families (`2F 95 C9` and `D0 50 26`) and test whether they represent a deeper camera/base-status layer rather than just more one-shot siblings. + +### HE30: Targeted Follow-Up On `2F 95 C9` And `D0 50 26` + +Goal: + +- Treat the two new HE29 host-stimulated families as real protocol leads: + - `07 80 2F 95 C9 AE` + - `07 80 D0 50 26 7B` +- Work out whether they are: + - simple one-shot siblings + - a deeper base-status layer + - or part of a real next-turn exchange that we have not answered correctly yet + +Strategy: + +1. Reproduce each family cleanly and answer **that exact observed family** +2. Try the host-shaped mirror of the observed family +3. Compare the new `2F 95 C9` branch to the older `2F 95 09` branch +4. Probe nearby host-side trigger siblings to see whether the branch is narrow + or family-wide +5. Test whether the new family itself works cold after boot, or only as a + response branch + +Checksums: + +- host `2F 95 C9` -> `00 00 2F 95 C9 29` +- host `D0 50 26` -> `00 00 D0 50 26 FC` +- older host `2F 95 09` -> `00 00 2F 95 09 E9` +- host `7A 58 26` -> `00 00 7A 58 26 5E` +- host `7A 50 3A` -> `00 00 7A 50 3A 4A` +- host `40 60 30` -> `00 00 40 60 30 4A` + +#### HE30a: Exact and host-shaped answers to `07 80 2F 95 C9 AE` + +Hypothesis: + +- If `2F 95 C9` is a real second-stage family, answering the exact observed + frame or its host-shaped mirror may produce a cleaner third step than the old + `2F 95 09` branch did. + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 7A 50 26 56" --frame "07 80 2F 95 C9 AE" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-exact-2f95c9.txt + +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 7A 50 26 56" --frame "00 00 2F 95 C9 29" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-host-2f95c9.txt +``` + +#### HE30b: Compare new `2F 95 C9` with old `2F 95 09` + +Hypothesis: + +- The new `2F` branch may be a close sibling of the older `07 C0 2F 95 09 2E` + branch from `EC -> 7B`. +- If so, sending the older host-shaped `2F 95 09` after provoking the new + `2F 95 C9` branch may reveal whether the last data byte is page/subtype rather + than a completely separate family. + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 7A 50 26 56" --frame "00 00 2F 95 09 E9" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-host-2f9509-after-2f95c9.txt +``` + +#### HE30c: Exact and host-shaped answers to `07 80 D0 50 26 7B` + +Hypothesis: + +- If `D0 50 26` is a deeper base-status family, it may respond differently to + exact and host-shaped answers than the selector-space `7A/7B/FB` families do. + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 40 40 30 6A" --frame "07 80 D0 50 26 7B" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-exact-d05026.txt + +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 40 40 30 6A" --frame "00 00 D0 50 26 FC" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-host-d05026.txt +``` + +#### HE30d: Trigger-sibling probes around the `2F 95 C9` branch + +Hypothesis: + +- The new `2F 95 C9` branch may not belong only to host `7A 50 26`. +- Nearby host-side `7A` siblings might land on related `2F` pages if this is a + small camera-data family rather than a single magic value. + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 7A 58 26 5E" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-trigger-7a5826.txt + +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 7A 50 3A 4A" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-trigger-7a503a.txt +``` + +#### HE30e: Trigger-sibling probes around the `D0 50 26` branch + +Hypothesis: + +- If `D0 50 26` is tied to a broader base-status surface, nearby host-side + `40/50/C0` style pages may land on related families. + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 50 40 30 7A" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-trigger-504030.txt + +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 00 00 80 DA" --frame "00 00 40 60 30 4A" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-trigger-406030.txt +``` + +#### HE30f: Cold-start direct tests of the new host-shaped families + +Hypothesis: + +- If these families are really camera/base-status feed pages, they may work + directly after boot without needing the earlier provoking host frame. +- If they do **not**, they are more likely to be second-stage response branches. + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 2F 95 C9 29" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-cold-2f95c9.txt + +python scripts/serial_sequence_probe.py --port COM5 --prompt --prompt-screen --pre-read 1.0 --frame "00 00 D0 50 26 FC" --frame "00 00 00 00 80 DA" --repeat 2 --frame-interval 0.20 --read-after-frame 0.30 --read-after-group 0.8 --log captures/rcp-he30-cold-d05026.txt +``` + +Recommended order: + +1. `HE30a` exact/host `2F 95 C9` +2. `HE30c` exact/host `D0 50 26` +3. `HE30f` cold-start direct tests +4. `HE30b` old-vs-new `2F` comparison +5. `HE30d` and `HE30e` trigger-sibling probes + +Reasoning: + +- First check whether the new families themselves can be answered meaningfully. +- Then check whether they are direct-feed candidates or only response branches. +- Only after that spend time mapping nearby siblings. + +### 2026-05-13 HE30 Results + +This ladder did not produce a stable multi-turn exchange, but it did reveal a +stronger family structure around both new HE29 branches. + +#### HE30a: Answering `07 80 2F 95 C9 AE` + +Logs: + +- `captures/rcp-he30-exact-2f95c9.txt` +- `captures/rcp-he30-host-2f95c9.txt` + +Result: + +- Group 1, host `00 00 7A 50 26 56` again produced: + - `07 80 2F 95 C9 AE` +- Answering that with either: + - exact `07 80 2F 95 C9 AE` + - or host `00 00 2F 95 C9 29` + produced no new stage. +- Group 2 was heartbeat-only in both runs. + +Read: + +- `2F 95 C9` is real and reproducible as a one-shot branch under the `7A 50 26` + host feed. +- But it still does **not** behave like an immediate prompt that the host can + simply echo back. + +#### HE30b: Comparing new `2F 95 C9` to old `2F 95 09` + +Log: + +- `captures/rcp-he30-host-2f9509-after-2f95c9.txt` + +Result: + +- This run did **not** reproduce the new `2F 95 C9` branch first. +- Instead, the initial host heartbeat itself provoked: + - `07 80 C0 40 30 6D` +- After that, host `00 00 7A 50 26 56` and host `00 00 2F 95 09 E9` stayed + heartbeat-compatible only. + +Read: + +- This run did not establish a useful direct relationship between `2F 95 C9` + and the older `2F 95 09` branch. +- It does reinforce that these branches are timing/context-sensitive and can be + pre-empted by fallback-family behavior. + +#### HE30c: Answering `07 80 D0 50 26 7B` + +Logs: + +- `captures/rcp-he30-exact-d05026.txt` +- `captures/rcp-he30-host-d05026.txt` + +Result: + +- The originally observed `07 80 D0 50 26 7B` did **not** reproduce exactly. +- Instead, `00 00 40 40 30 6A` produced sibling families: + - exact-answer run: `07 80 50 78 26 D3` + - host-answer run: `07 80 50 50 26 FB` +- Answering those with either: + - exact `07 80 D0 50 26 7B` + - or host `00 00 D0 50 26 FC` + did not open a new stage. +- Group 2 was heartbeat-only in both runs. + +Read: + +- The `40`-triggered branch is real, but the stable thing is not a single + fixed `D0` family. +- It looks more like a **parameterized `50 xx 26` sibling strip** that can vary + by context. + +#### HE30d: `7A` trigger siblings + +Logs: + +- `captures/rcp-he30-trigger-7a5826.txt` +- `captures/rcp-he30-trigger-7a503a.txt` + +Result: + +- `00 00 7A 58 26 5E` produced: + - `07 80 2F 65 F2 65` +- `00 00 7A 50 3A 4A` produced: + - `07 80 2F 95 52 35` +- Both appeared in group 1 only. +- Group 2 was heartbeat-only. + +Read: + +- This is a strong result. +- The `7A` host-fed branch is not a single magic trigger for one fixed + `2F 95 C9` reply. +- It looks like a **family mapping**: + host-side `7A ...` variants can produce related `2F ...` response variants. + +#### HE30e: `40/50` trigger siblings + +Logs: + +- `captures/rcp-he30-trigger-504030.txt` +- `captures/rcp-he30-trigger-406030.txt` + +Result: + +- `00 00 50 40 30 7A` produced: + - `07 80 D4 50 26 7F` +- `00 00 40 60 30 4A` produced: + - `07 80 50 58 26 F3` +- Both appeared in group 1 only. +- Group 2 was heartbeat-only. + +Read: + +- This is the matching strong result on the heartbeat/base-status side. +- The `40/50` host-fed branch also looks like a **family mapping**, not a lone + one-off response. + +#### HE30f: Cold-start direct tests + +Logs: + +- `captures/rcp-he30-cold-2f95c9.txt` +- `captures/rcp-he30-cold-d05026.txt` + +Result: + +- Cold host `00 00 2F 95 C9 29` did not reproduce the `2F` branch directly. +- Instead, on the second group tail it drifted into: + - `07 80 40 40 30 ED` +- Cold host `00 00 D0 50 26 FC` did not reproduce the `D0`/`50` branch + directly. +- Instead, on the second group tail it drifted into: + - `07 80 C0 40 30 6D` + +Read: + +- These new families do **not** currently look like valid cold-start camera feed + pages by themselves. +- They look more like second-stage response families or branch-local pages that + require earlier context/stimulus. + +### HE30 Overall Read + +Most important change in our model: + +- We now have good evidence for two additional **parameterized response + surfaces**: + - host `7A ...` -> RCP `2F ...` + - host `40/50 ...` -> RCP `50/D4 ...` + +Concrete examples: + +- `7A 50 26` -> `2F 95 C9` +- `7A 58 26` -> `2F 65 F2` +- `7A 50 3A` -> `2F 95 52` +- `40 40 30` -> `50 78 26` or `50 50 26` +- `50 40 30` -> `D4 50 26` +- `40 60 30` -> `50 58 26` + +What this suggests: + +- some host-fed family frames are acting more like **query/page selectors** + within a deeper status space +- and the resulting RCP families are parameterized, not isolated one-offs + +What it does **not** yet suggest: + +- that we have found the full active-session feed +- that these second-stage families can simply be echoed back to advance the + conversation +- that they are valid cold-start traffic on their own + +Best next move after HE30: + +- Stay narrow and **dense-map one family at a time**, especially: + - the host `7A ...` -> RCP `2F ...` surface + - the host `40/50 ...` -> RCP `50/D4 ...` surface +- Those now look more promising than continuing to brute-force entirely new + top-level selectors. diff --git a/docs/pt2-protocol-summary.md b/docs/pt2-protocol-summary.md index 2e4bf6e..e6b4aad 100644 --- a/docs/pt2-protocol-summary.md +++ b/docs/pt2-protocol-summary.md @@ -356,6 +356,33 @@ Current caution: - The protocol surface now looks parameterized rather than flat: command bytes pick broad regions, and `state/value` bytes appear to choose page, subtype, or class within those regions. +- Sustained "camera-info-like" fan-out streams have now also been tested: + repeated discovery carousels, selector carousels, direct host-shaped family + feeds, hybrid select-then-feed streams, and heartbeat-family base-status + feeds. +- None of those sustained streams visibly activated the panel or cleared the + broader inactive state. +- Two of those host-fed fan-out branches still produced new structured + responses: + host `00 00 7A 50 26 56` produced `07 80 2F 95 C9 AE`, and host + `00 00 40 40 30 6A` produced `07 80 D0 50 26 7B`. +- Those are best treated as meaningful one-shot host-stimulated branches, not + yet as proof of a stable live camera-info or session stream. +- Follow-up HE30 tests strengthened that further: + these do not look like isolated one-off branches, but like two small + parameterized family surfaces: + - host `7A ...` -> RCP `2F ...` + - host `40/50 ...` -> RCP `50 ...` / `D4 ...` +- Examples observed so far include: + - `7A 50 26` -> `2F 95 C9` + - `7A 58 26` -> `2F 65 F2` + - `7A 50 3A` -> `2F 95 52` + - `40 40 30` -> `50 78 26` or `50 50 26` + - `50 40 30` -> `D4 50 26` + - `40 60 30` -> `50 58 26` +- Exact and host-shaped answers to these second-stage families still did not + produce a stable next turn, and cold-start direct tests fell back toward + `40`/`C0` transient families instead. ## What We Do Not Know diff --git a/docs/pt2-state-map.md b/docs/pt2-state-map.md index 2a3cb73..fbf32d3 100644 --- a/docs/pt2-state-map.md +++ b/docs/pt2-state-map.md @@ -394,6 +394,56 @@ What is still missing: to answer - how this selector space relates to the real session activation handshake +## HE29 Host-Fed Branches + +The HE29 fan-out did not visibly wake the panel, but it did produce two new +structured RCP families when certain **host-shaped family/status frames** were +sent directly: + +| Host stimulus | RCP result | Read | +| --- | --- | --- | +| `00 00 7A 50 26 56` | `07 80 2F 95 C9 AE` | direct family-feed branch; meaningful but one-shot | +| `00 00 40 40 30 6A` | `07 80 D0 50 26 7B` | base-status-family branch; meaningful but one-shot | + +What this suggests: + +- not every interesting family is only a passive response/readback block +- some host-origin family-shaped frames can still stimulate deeper structured + responses +- but even these branches did **not** create a stable active session or visible + panel wake-up + +So, on the state map, these look like: + +- additional **host-fed branch entries** +- not yet evidence of the missing full conversation/session ladder + +## HE30 Family Surfaces + +HE30 suggests those HE29 host-fed branches are not isolated one-offs. They now +look like two small **parameterized surfaces**: + +| Host-side family | Observed RCP-side family variants | Read | +| --- | --- | --- | +| `7A ...` | `2F 95 C9`, `2F 65 F2`, `2F 95 52` | likely a host-fed `7A` -> `2F` mapping surface | +| `40/50 ...` | `50 78 26`, `50 50 26`, `50 58 26`, `D4 50 26` | likely a host-fed base-status mapping surface | + +Examples: + +- `00 00 7A 50 26 56` -> `07 80 2F 95 C9 AE` +- `00 00 7A 58 26 5E` -> `07 80 2F 65 F2 65` +- `00 00 7A 50 3A 4A` -> `07 80 2F 95 52 35` +- `00 00 40 40 30 6A` -> `07 80 50 78 26 D3` or `07 80 50 50 26 FB` +- `00 00 50 40 30 7A` -> `07 80 D4 50 26 7F` +- `00 00 40 60 30 4A` -> `07 80 50 58 26 F3` + +What this means on the map: + +- some host-fed families are acting like **query/page selectors** into deeper + response spaces +- those spaces are still one-shot and context-sensitive +- and they still do not by themselves imply a stable active session + ## Best Next Uses Of This Map This map is meant to help us ask sharper questions, for example: