diff --git a/captures/rcp-heartbeat-echo-exact-7a28d35c.txt b/captures/rcp-heartbeat-echo-exact-7a28d35c.txt new file mode 100644 index 0000000..3d13fc2 --- /dev/null +++ b/captures/rcp-heartbeat-echo-exact-7a28d35c.txt @@ -0,0 +1,33 @@ +Sequence probe: 5 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 A0 00 80 7A +FRAME 2: 00 00 E9 40 30 C3 +FRAME 3: 07 80 7A 28 D3 5C +FRAME 4: 00 00 00 00 80 DA +FRAME 5: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 30 bytes, offset 0, 5 frames + 0 bytes +BEGIN group 1/2 +19:34:32.977 TX group=1 frame=1 len=006 00 00 A0 00 80 7A +19:34:32.977 RX group=1 frame=1 no RX bytes +19:34:33.514 TX group=1 frame=2 len=006 00 00 E9 40 30 C3 +19:34:33.514 RX group=1 frame=2 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +19:34:33.514 RX group=1 frame=2 raw 07 80 7A 28 D3 5C +19:34:34.020 TX group=1 frame=3 len=006 07 80 7A 28 D3 5C +19:34:34.020 RX group=1 frame=3 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +19:34:34.556 TX group=1 frame=4 len=006 00 00 00 00 80 DA +19:34:34.556 RX group=1 frame=4 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +19:34:35.093 TX group=1 frame=5 len=006 00 00 00 00 80 DA +19:34:35.093 RX group=1 frame=5 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 +19:34:36.217 TX group=2 frame=1 len=006 00 00 A0 00 80 7A +19:34:36.217 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:34:36.722 TX group=2 frame=2 len=006 00 00 E9 40 30 C3 +19:34:36.722 RX group=2 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:34:37.258 TX group=2 frame=3 len=006 07 80 7A 28 D3 5C +19:34:37.258 RX group=2 frame=3 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +19:34:37.793 TX group=2 frame=4 len=006 00 00 00 00 80 DA +19:34:37.793 RX group=2 frame=4 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +19:34:38.297 TX group=2 frame=5 len=006 00 00 00 00 80 DA +19:34:38.297 RX group=2 frame=5 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-heartbeat-echo-host-7a28d3.txt b/captures/rcp-heartbeat-echo-host-7a28d3.txt new file mode 100644 index 0000000..ce77714 --- /dev/null +++ b/captures/rcp-heartbeat-echo-host-7a28d3.txt @@ -0,0 +1,35 @@ +Sequence probe: 5 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 A0 00 80 7A +FRAME 2: 00 00 E9 40 30 C3 +FRAME 3: 00 00 7A 28 D3 DB +FRAME 4: 00 00 00 00 80 DA +FRAME 5: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes +BEGIN group 1/2 +19:35:02.450 TX group=1 frame=1 len=006 00 00 A0 00 80 7A +19:35:02.450 RX group=1 frame=1 no RX bytes +19:35:02.955 TX group=1 frame=2 len=006 00 00 E9 40 30 C3 +19:35:02.955 RX group=1 frame=2 ANOMALY 18 RX bytes; first mismatch at byte 6: got 07, heartbeat offset 0 expected 00 +19:35:02.955 RX group=1 frame=2 raw 00 00 00 00 80 DA 07 80 7A 28 D3 5C 07 80 7A 28 D3 5C +19:35:03.494 TX group=1 frame=3 len=006 00 00 7A 28 D3 DB +19:35:03.494 RX group=1 frame=3 ANOMALY 12 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00 +19:35:03.494 RX group=1 frame=3 raw 07 80 7A 28 D3 5C 07 80 7A 28 D3 5C +19:35:04.003 TX group=1 frame=4 len=006 00 00 00 00 80 DA +19:35:04.003 RX group=1 frame=4 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00 +19:35:04.003 RX group=1 frame=4 raw 07 80 7A 28 D3 5C 00 00 00 00 80 DA 00 00 00 00 80 DA +19:35:04.542 TX group=1 frame=5 len=006 00 00 00 00 80 DA +19:35:04.542 RX group=1 frame=5 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 +19:35:05.672 TX group=2 frame=1 len=006 00 00 A0 00 80 7A +19:35:05.672 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:35:06.177 TX group=2 frame=2 len=006 00 00 E9 40 30 C3 +19:35:06.177 RX group=2 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:35:06.713 TX group=2 frame=3 len=006 00 00 7A 28 D3 DB +19:35:06.713 RX group=2 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:35:07.221 TX group=2 frame=4 len=006 00 00 00 00 80 DA +19:35:07.221 RX group=2 frame=4 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +19:35:07.758 TX group=2 frame=5 len=006 00 00 00 00 80 DA +19:35:07.758 RX group=2 frame=5 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: 3 diff --git a/captures/rcp-heartbeat-neighbor-e6.txt b/captures/rcp-heartbeat-neighbor-e6.txt new file mode 100644 index 0000000..d3809f5 --- /dev/null +++ b/captures/rcp-heartbeat-neighbor-e6.txt @@ -0,0 +1,29 @@ +Sequence probe: 4 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 A0 00 80 7A +FRAME 2: 00 00 E6 40 30 CC +FRAME 3: 00 00 00 00 80 DA +FRAME 4: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes +BEGIN group 1/2 +19:38:18.604 TX group=1 frame=1 len=006 00 00 A0 00 80 7A +19:38:18.604 RX group=1 frame=1 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +19:38:19.111 TX group=1 frame=2 len=006 00 00 E6 40 30 CC +19:38:19.111 RX group=1 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:38:19.621 TX group=1 frame=3 len=006 00 00 00 00 80 DA +19:38:19.621 RX group=1 frame=3 ANOMALY 18 RX bytes; first mismatch at byte 6: got 07, heartbeat offset 0 expected 00 +19:38:19.621 RX group=1 frame=3 raw 00 00 00 00 80 DA 07 80 40 40 30 ED 07 80 40 40 30 ED +19:38:20.156 TX group=1 frame=4 len=006 00 00 00 00 80 DA +19:38:20.156 RX group=1 frame=4 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00 +19:38:20.156 RX group=1 frame=4 raw 07 80 40 40 30 ED 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 +19:38:21.282 TX group=2 frame=1 len=006 00 00 A0 00 80 7A +19:38:21.282 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:38:21.788 TX group=2 frame=2 len=006 00 00 E6 40 30 CC +19:38:21.788 RX group=2 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:38:22.325 TX group=2 frame=3 len=006 00 00 00 00 80 DA +19:38:22.325 RX group=2 frame=3 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +19:38:22.860 TX group=2 frame=4 len=006 00 00 00 00 80 DA +19:38:22.860 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-heartbeat-neighbor-eb.txt b/captures/rcp-heartbeat-neighbor-eb.txt new file mode 100644 index 0000000..10c49d8 --- /dev/null +++ b/captures/rcp-heartbeat-neighbor-eb.txt @@ -0,0 +1,29 @@ +Sequence probe: 4 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 A0 00 80 7A +FRAME 2: 00 00 EB 40 30 C1 +FRAME 3: 00 00 00 00 80 DA +FRAME 4: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes +BEGIN group 1/2 +19:38:37.173 TX group=1 frame=1 len=006 00 00 A0 00 80 7A +19:38:37.173 RX group=1 frame=1 heartbeat-compatible RX: 6 bytes, offset 0, 1 frames + 0 bytes +19:38:37.678 TX group=1 frame=2 len=006 00 00 EB 40 30 C1 +19:38:37.678 RX group=1 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:38:38.216 TX group=1 frame=3 len=006 00 00 00 00 80 DA +19:38:38.216 RX group=1 frame=3 ANOMALY 18 RX bytes; first mismatch at byte 6: got 07, heartbeat offset 0 expected 00 +19:38:38.216 RX group=1 frame=3 raw 00 00 00 00 80 DA 07 80 40 40 30 ED 07 80 40 40 30 ED +19:38:38.722 TX group=1 frame=4 len=006 00 00 00 00 80 DA +19:38:38.722 RX group=1 frame=4 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00 +19:38:38.722 RX group=1 frame=4 raw 07 80 40 40 30 ED 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 +19:38:39.849 TX group=2 frame=1 len=006 00 00 A0 00 80 7A +19:38:39.849 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:38:40.385 TX group=2 frame=2 len=006 00 00 EB 40 30 C1 +19:38:40.385 RX group=2 frame=2 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:38:40.922 TX group=2 frame=3 len=006 00 00 00 00 80 DA +19:38:40.922 RX group=2 frame=3 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +19:38:41.429 TX group=2 frame=4 len=006 00 00 00 00 80 DA +19:38:41.429 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: 2 diff --git a/captures/rcp-heartbeat-neighbor-ec.txt b/captures/rcp-heartbeat-neighbor-ec.txt new file mode 100644 index 0000000..0195dca --- /dev/null +++ b/captures/rcp-heartbeat-neighbor-ec.txt @@ -0,0 +1,29 @@ +Sequence probe: 4 frames x 2 group(s) on COM5 at 38400 8N1 +FRAME 1: 00 00 A0 00 80 7A +FRAME 2: 00 00 EC 40 30 C6 +FRAME 3: 00 00 00 00 80 DA +FRAME 4: 00 00 00 00 80 DA +BASELINE heartbeat-compatible RX: 30 bytes, offset 0, 5 frames + 0 bytes +BEGIN group 1/2 +19:39:14.023 TX group=1 frame=1 len=006 00 00 A0 00 80 7A +19:39:14.023 RX group=1 frame=1 no RX bytes +19:39:14.560 TX group=1 frame=2 len=006 00 00 EC 40 30 C6 +19:39:14.560 RX group=1 frame=2 ANOMALY 18 RX bytes; first mismatch at byte 6: got 07, heartbeat offset 0 expected 00 +19:39:14.560 RX group=1 frame=2 raw 00 00 00 00 80 DA 07 80 7B 50 26 D0 07 80 7B 50 26 D0 +19:39:15.068 TX group=1 frame=3 len=006 00 00 00 00 80 DA +19:39:15.068 RX group=1 frame=3 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00 +19:39:15.068 RX group=1 frame=3 raw 07 80 7B 50 26 D0 00 00 00 00 80 DA 00 00 00 00 80 DA +19:39:15.604 TX group=1 frame=4 len=006 00 00 00 00 80 DA +19:39:15.604 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 +19:39:16.760 TX group=2 frame=1 len=006 00 00 A0 00 80 7A +19:39:16.760 RX group=2 frame=1 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:39:17.297 TX group=2 frame=2 len=006 00 00 EC 40 30 C6 +19:39:17.297 RX group=2 frame=2 heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes +19:39:17.801 TX group=2 frame=3 len=006 00 00 00 00 80 DA +19:39:17.801 RX group=2 frame=3 heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes +19:39:18.336 TX group=2 frame=4 len=006 00 00 00 00 80 DA +19:39:18.336 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/docs/discovery-notes.md b/docs/discovery-notes.md index c1190ad..b30b2f2 100644 --- a/docs/discovery-notes.md +++ b/docs/discovery-notes.md @@ -5146,3 +5146,151 @@ Best current follow-up: - test exact and host-shaped handling of `07 80 7A 28 D3 5C` - optionally compare `E8` vs `E9` timing to see whether the differing `7A` payloads reflect selector choice or timing/context + +### HE13: Exact Echo Of `07 80 7A 28 D3 5C` + +Recreate the `E9` neighbor path, then immediately send the exact `7A`-family +response back to the panel. + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --frame "00 00 A0 00 80 7A" --frame "00 00 E9 40 30 C3" --frame "07 80 7A 28 D3 5C" --frame "00 00 00 00 80 DA" --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-heartbeat-echo-exact-7a28d35c.txt +``` + +### HE14: Host-Shaped Mirror Of `07 80 7A 28 D3 5C` + +Host-shaped checksum for `00 00 7A 28 D3 ??` is `DB`. + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --frame "00 00 A0 00 80 7A" --frame "00 00 E9 40 30 C3" --frame "00 00 7A 28 D3 DB" --frame "00 00 00 00 80 DA" --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-heartbeat-echo-host-7a28d3.txt +``` + +What would count as a hit: + +- any non-heartbeat response after the exact or host-shaped `7A 28 D3` frame +- a repeat of `07 80 7A 28 D3 5C` +- crossover into the `E8`-style `07 80 7A 50 26 D1` or `07 80 FA 50 26 51` + branch +- any new stable family that suggests `E9` is a second entry point into the + same broader selector surface + +### 2026-05-13 `E9` Mirror Result + +Captures: + +- `captures/rcp-heartbeat-echo-exact-7a28d35c.txt` +- `captures/rcp-heartbeat-echo-host-7a28d3.txt` + +Result summary: + +- `E9` cleanly reproduced its `7A`-family response in group 1 in both tests: + - `07 80 7A 28 D3 5C` +- Exact echo `07 80 7A 28 D3 5C` produced only heartbeat afterwards. +- Host-shaped mirror `00 00 7A 28 D3 DB` did not open a new stage either; it + only drained more copies of `07 80 7A 28 D3 5C` before falling back to + heartbeat. +- Group 2 was heartbeat-only in both tests. + +Interpretation: + +- `E9` behaves very much like the `E8` branch structurally: + - the host-shaped `E9` step is the active stimulus + - the downstream `7A` response is real and reproducible + - but directly echoing or mirroring that `7A` response does not advance the + exchange +- So `E8` and `E9` now look like sibling selector-style entry points into + related but distinct `7A`-family outputs: + - `E8` -> `07 80 7A 50 26 D1` + - `E9` -> `07 80 7A 28 D3 5C` +- This strengthens the idea that the `Ex` region may be selecting pages or + classes of status rather than carrying the real session-advance command. + +Best current next move: + +- test more nearby `Ex` values to see whether this is a broader selector strip +- or try explicit host queries for the downstream family bytes (`00 -> 7A`, + `00 -> FA`) after `E8`/`E9` selection + +### HE15: Continue Outward In The `Ex` Neighborhood + +Push one step farther out from the now-interesting `E8` / `E9` region and see +whether the selector-like behavior continues, shifts family again, or collapses +back into heartbeat-only behavior. + +Checksums: + +- `00 00 E6 40 30 CC` +- `00 00 EB 40 30 C1` +- `00 00 EC 40 30 C6` + +#### HE15a: Host-Shaped `E6` + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --frame "00 00 A0 00 80 7A" --frame "00 00 E6 40 30 CC" --frame "00 00 00 00 80 DA" --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-heartbeat-neighbor-e6.txt +``` + +#### HE15b: Host-Shaped `EB` + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --frame "00 00 A0 00 80 7A" --frame "00 00 EB 40 30 C1" --frame "00 00 00 00 80 DA" --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-heartbeat-neighbor-eb.txt +``` + +#### HE15c: Host-Shaped `EC` + +```powershell +python scripts/serial_sequence_probe.py --port COM5 --prompt --frame "00 00 A0 00 80 7A" --frame "00 00 EC 40 30 C6" --frame "00 00 00 00 80 DA" --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-heartbeat-neighbor-ec.txt +``` + +What would count as a hit: + +- any new non-heartbeat response after `E6`, `EB`, or `EC` +- recurrence of the `E8`-style `07 80 7A 50 26 D1` or `E9`-style + `07 80 7A 28 D3 5C` +- recurrence of known heartbeat-family transients like `07 80 40 40 30 ED` or + `07 80 C0 40 30 6D` +- any additional family that strengthens the idea of a selector strip across + the `Ex` region + +### 2026-05-13 Outward `Ex` Result + +Captures: + +- `captures/rcp-heartbeat-neighbor-e6.txt` +- `captures/rcp-heartbeat-neighbor-eb.txt` +- `captures/rcp-heartbeat-neighbor-ec.txt` + +Result summary: + +- `E6` and `EB` behaved the same way: + - no immediate structured reply at the `Ex` step + - the following heartbeat provoked `07 80 40 40 30 ED` +- `EC` produced a new structured family in group 1: + - `07 80 7B 50 26 D0` +- As with the other recent selector tests, all interesting behavior was group 1 + only. Group 2 was heartbeat-only. + +Observed outputs: + +| Host step | Structured result | +| --- | --- | +| `00 00 E6 40 30 CC` | later heartbeat provoked `07 80 40 40 30 ED` | +| `00 00 EB 40 30 C1` | later heartbeat provoked `07 80 40 40 30 ED` | +| `00 00 EC 40 30 C6` | produced `07 80 7B 50 26 D0` | + +Interpretation: + +- The `Ex` neighborhood is continuing to look like a selector-like strip with + mixed outcomes, not a uniform command class. +- `E6`, `E7`, and `EB` now cluster together as values that bias into the + `07 80 40 40 30 ED` heartbeat-family transient. +- `E8` and `E9` open distinct `7A`-family responses: + - `E8` -> `07 80 7A 50 26 D1` + - `E9` -> `07 80 7A 28 D3 5C` +- `EC` now extends that pattern one step further with a new sibling: + - `EC` -> `07 80 7B 50 26 D0` +- `EA` remains its own case steering toward `07 80 C0 40 30 6D`. + +Best current follow-up: + +- treat `EC` as the next strong lead and test exact/host-shaped handling of + `07 80 7B 50 26 D0` +- optionally try `ED` next to see whether the `7B` branch continues diff --git a/docs/pt2-protocol-summary.md b/docs/pt2-protocol-summary.md index 5543607..aa22fcf 100644 --- a/docs/pt2-protocol-summary.md +++ b/docs/pt2-protocol-summary.md @@ -241,6 +241,7 @@ confirmed Sony definition. | `07 C0 7A 50 A6 11` | exact echo of `07 80 E8 40 30 45`, seen once | low | new structured response family on the `E8` branch; not yet repeated | | `07 80 7A 50 26 D1` | host-shaped `E8` branch, reproduced across HE8-HE11 group 1 | medium-high | reproducible downstream response family in the `E8` / `FA` / `7A` branch | | `07 80 7A 28 D3 5C` | host-shaped `E9` neighbor, group 1 | low-medium | nearby distinct `7A`-family response; suggests an `E8`/`E9` selector neighborhood | +| `07 80 7B 50 26 D0` | host-shaped `EC` neighbor, group 1 | low-medium | new sibling family suggesting the `Ex` region is a selector-like strip | Current caution: @@ -264,6 +265,13 @@ Current caution: - Nearby host-shaped neighbors are mixed rather than uniform: `E9` produced a distinct `7A`-family response, while `E7` and `EA` steered back toward known heartbeat-family transients. +- The `E9` sibling behaves like `E8` structurally: + exact and host-shaped handling of `07 80 7A 28 D3 5C` did not advance the + exchange, so the active control point still appears to be the `Ex` selector + step rather than the downstream `7A` reply. +- Extending outward reinforced the selector-strip model: + `E6` and `EB` fall into the `07 80 40 40 30 ED` transient family, while `EC` + opens a new `07 80 7B 50 26 D0` sibling response. ## What We Know @@ -290,6 +298,12 @@ Current caution: response branch. - `E8` is not completely isolated: nearby `E9` can also open a `7A`-family response, but with different payload bytes. +- The emerging pattern is that `E8` and `E9` may be sibling selector-like host + entries into related status/response families, while `E7` and `EA` bias back + toward heartbeat-family transients. +- The wider `Ex` region now looks like a mixed selector surface: + some values collapse into heartbeat-family transients, while others open + related `7A` / `7B` downstream families. ## What We Do Not Know