Timing tests

This commit is contained in:
Aiden
2026-05-13 13:12:43 +10:00
parent f406bc12a2
commit b2d6c9c1f3
3 changed files with 52 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
Direct response sweep: 2 frames x 1 cycles (2 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 30 bytes, offset 0, 5 frames + 0 bytes
13:10:55.391 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB0 state=0x00 value=0x80 frame 006 00 00 B0 00 80 6A
13:10:55.516 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB1 state=0x00 value=0x80 frame 006 00 00 B1 00 80 6B
13:10:55.516 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
13:10:55.516 RX raw 07 80 6C 20 D8 49
Stopping after anomaly.
FINAL heartbeat-compatible RX: 36 bytes, offset 0, 6 frames + 0 bytes
Anomalies: 1

View File

@@ -0,0 +1,10 @@
Direct response sweep: 2 frames x 1 cycles (2 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 30 bytes, offset 0, 5 frames + 0 bytes
13:11:18.492 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB0 state=0x00 value=0x80 frame 006 00 00 B0 00 80 6A
13:11:19.710 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB1 state=0x00 value=0x80 frame 006 00 00 B1 00 80 6B
13:11:19.710 ANOMALY 36 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
13:11:19.710 RX raw 07 80 6C 20 D8 49 07 80 6C 20 D8 49 07 80 6C 20 D8 49 07 80 6C 20 D8 49 07 80 6C 20 D8 49 07 80 6C 20 D8 49
Stopping after anomaly.
FINAL ANOMALY 30 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00
FINAL raw 07 80 6C 20 D8 49 07 80 6C 20 D8 49 07 80 6C 20 D8 49 00 00 00 00 80 DA 00 00 00 00 80 DA
Anomalies: 1

View File

@@ -1117,3 +1117,36 @@ Suggested nearby-pair tests, with power cycle between each:
python scripts/serial_direct_response_sweep.py --port COM5 --commands "0xB1-0xB2" --states 0x00 --values 0x80 --settle 3 --after-each 0.6 --stop-on-anomaly --log captures/rcp-powercycle-pair-b1-b2.txt python scripts/serial_direct_response_sweep.py --port COM5 --commands "0xB1-0xB2" --states 0x00 --values 0x80 --settle 3 --after-each 0.6 --stop-on-anomaly --log captures/rcp-powercycle-pair-b1-b2.txt
python scripts/serial_direct_response_sweep.py --port COM5 --commands "0xB2-0xB3" --states 0x00 --values 0x80 --settle 3 --after-each 0.6 --stop-on-anomaly --log captures/rcp-powercycle-pair-b2-b3.txt python scripts/serial_direct_response_sweep.py --port COM5 --commands "0xB2-0xB3" --states 0x00 --values 0x80 --settle 3 --after-each 0.6 --stop-on-anomaly --log captures/rcp-powercycle-pair-b2-b3.txt
``` ```
### 2026-05-13 B0-B1 Timing Result
Captures:
- `captures/rcp-powercycle-timing-b0-b1-100ms.txt`
- `captures/rcp-powercycle-timing-b0-b1-1200ms.txt`
Each test was run after a panel power cycle.
| B0-to-B1 spacing | RCP response |
| ---: | --- |
| about 100 ms | `07 80 6C 20 D8 49` |
| about 1200 ms | `07 80 6C 20 D8 49` repeated |
Interpretation:
- The `B0 -> B1` trigger is not tightly timing-sensitive across the tested
range.
- `B0` appears to prime a state that remains valid for at least about 1.2
seconds.
- The sequence order is more important than exact short timing.
Recommended next tests:
Power-cycle between each test. Check whether the trigger is specific to the
`B0 -> B1` pair or whether nearby ordered pairs also trigger related responses:
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --commands "0xB1-0xB2" --states 0x00 --values 0x80 --settle 3 --after-each 0.6 --stop-on-anomaly --log captures/rcp-powercycle-pair-b1-b2.txt
python scripts/serial_direct_response_sweep.py --port COM5 --commands "0xB2-0xB3" --states 0x00 --values 0x80 --settle 3 --after-each 0.6 --stop-on-anomaly --log captures/rcp-powercycle-pair-b2-b3.txt
python scripts/serial_direct_response_sweep.py --port COM5 --commands "0xAF-0xB0" --states 0x00 --values 0x80 --settle 3 --after-each 0.6 --stop-on-anomaly --log captures/rcp-powercycle-pair-af-b0.txt
```