Compare commits

...

2 Commits

Author SHA1 Message Date
Aiden
296709e6ff run 4 2026-05-14 02:31:15 +10:00
Aiden
6ffef616c2 run 3 2026-05-14 02:31:08 +10:00
12 changed files with 614 additions and 5 deletions

View File

@@ -0,0 +1,42 @@
Direct response sweep: 32 frames x 1 cycles (32 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
01:57:07.790 TX cycle=1 p1=0x00 p2=0x00 cmd=0x60 state=0x20 value=0xD0 frame 006 00 00 60 20 D0 CA
01:57:08.611 TX cycle=1 p1=0x00 p2=0x00 cmd=0x61 state=0x20 value=0xD0 frame 006 00 00 61 20 D0 CB
01:57:08.611 ANOMALY 24 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
01:57:08.611 RX raw 07 80 58 24 DD 7C 07 80 58 24 DD 7C 07 80 58 24 DD 7C 07 80 58 24 DD 7C
01:57:09.435 TX cycle=1 p1=0x00 p2=0x00 cmd=0x62 state=0x20 value=0xD0 frame 006 00 00 62 20 D0 C8
01:57:09.435 ANOMALY 24 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
01:57:09.435 RX raw 07 80 58 24 DD 7C 07 80 58 24 DD 7C 07 80 58 24 DD 7C 07 80 58 24 DD 7C
01:57:10.259 TX cycle=1 p1=0x00 p2=0x00 cmd=0x63 state=0x20 value=0xD0 frame 006 00 00 63 20 D0 C9
01:57:10.259 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
01:57:10.259 RX raw 07 80 58 24 DD 7C
01:57:11.081 TX cycle=1 p1=0x00 p2=0x00 cmd=0x64 state=0x20 value=0xD0 frame 006 00 00 64 20 D0 CE
01:57:11.903 TX cycle=1 p1=0x00 p2=0x00 cmd=0x65 state=0x20 value=0xD0 frame 006 00 00 65 20 D0 CF
01:57:12.724 TX cycle=1 p1=0x00 p2=0x00 cmd=0x66 state=0x20 value=0xD0 frame 006 00 00 66 20 D0 CC
01:57:13.548 TX cycle=1 p1=0x00 p2=0x00 cmd=0x67 state=0x20 value=0xD0 frame 006 00 00 67 20 D0 CD
01:57:14.374 TX cycle=1 p1=0x00 p2=0x00 cmd=0x68 state=0x20 value=0xD0 frame 006 00 00 68 20 D0 C2
01:57:15.199 TX cycle=1 p1=0x00 p2=0x00 cmd=0x69 state=0x20 value=0xD0 frame 006 00 00 69 20 D0 C3
01:57:16.023 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6A state=0x20 value=0xD0 frame 006 00 00 6A 20 D0 C0
01:57:16.844 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6B state=0x20 value=0xD0 frame 006 00 00 6B 20 D0 C1
01:57:17.668 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6C state=0x20 value=0xD0 frame 006 00 00 6C 20 D0 C6
01:57:18.490 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6D state=0x20 value=0xD0 frame 006 00 00 6D 20 D0 C7
01:57:19.311 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6E state=0x20 value=0xD0 frame 006 00 00 6E 20 D0 C4
01:57:20.136 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6F state=0x20 value=0xD0 frame 006 00 00 6F 20 D0 C5
01:57:20.959 TX cycle=1 p1=0x00 p2=0x00 cmd=0x70 state=0x20 value=0xD0 frame 006 00 00 70 20 D0 DA
01:57:21.781 TX cycle=1 p1=0x00 p2=0x00 cmd=0x71 state=0x20 value=0xD0 frame 006 00 00 71 20 D0 DB
01:57:22.605 TX cycle=1 p1=0x00 p2=0x00 cmd=0x72 state=0x20 value=0xD0 frame 006 00 00 72 20 D0 D8
01:57:23.428 TX cycle=1 p1=0x00 p2=0x00 cmd=0x73 state=0x20 value=0xD0 frame 006 00 00 73 20 D0 D9
01:57:24.250 TX cycle=1 p1=0x00 p2=0x00 cmd=0x74 state=0x20 value=0xD0 frame 006 00 00 74 20 D0 DE
01:57:25.074 TX cycle=1 p1=0x00 p2=0x00 cmd=0x75 state=0x20 value=0xD0 frame 006 00 00 75 20 D0 DF
01:57:25.898 TX cycle=1 p1=0x00 p2=0x00 cmd=0x76 state=0x20 value=0xD0 frame 006 00 00 76 20 D0 DC
01:57:26.723 TX cycle=1 p1=0x00 p2=0x00 cmd=0x77 state=0x20 value=0xD0 frame 006 00 00 77 20 D0 DD
01:57:27.548 TX cycle=1 p1=0x00 p2=0x00 cmd=0x78 state=0x20 value=0xD0 frame 006 00 00 78 20 D0 D2
01:57:28.371 TX cycle=1 p1=0x00 p2=0x00 cmd=0x79 state=0x20 value=0xD0 frame 006 00 00 79 20 D0 D3
01:57:29.193 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7A state=0x20 value=0xD0 frame 006 00 00 7A 20 D0 D0
01:57:30.015 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7B state=0x20 value=0xD0 frame 006 00 00 7B 20 D0 D1
01:57:30.836 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7C state=0x20 value=0xD0 frame 006 00 00 7C 20 D0 D6
01:57:31.659 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7D state=0x20 value=0xD0 frame 006 00 00 7D 20 D0 D7
01:57:32.482 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7E state=0x20 value=0xD0 frame 006 00 00 7E 20 D0 D4
01:57:33.305 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7F state=0x20 value=0xD0 frame 006 00 00 7F 20 D0 D5
FINAL heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes
Anomalies: 3

View File

@@ -0,0 +1,38 @@
Direct response sweep: 32 frames x 1 cycles (32 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 30 bytes, offset 0, 5 frames + 0 bytes
01:57:45.070 TX cycle=1 p1=0x00 p2=0x00 cmd=0x80 state=0x20 value=0xD0 frame 006 00 00 80 20 D0 2A
01:57:45.891 TX cycle=1 p1=0x00 p2=0x00 cmd=0x81 state=0x20 value=0xD0 frame 006 00 00 81 20 D0 2B
01:57:45.891 ANOMALY 29 RX bytes; first mismatch at byte 5: got 07, heartbeat offset 1 expected 00
01:57:45.891 RX raw 00 00 00 80 DA 07 80 60 24 DD 44 07 80 60 24 DD 44 07 80 60 24 DD 44 07 80 60 24 DD 44
01:57:46.710 TX cycle=1 p1=0x00 p2=0x00 cmd=0x82 state=0x20 value=0xD0 frame 006 00 00 82 20 D0 28
01:57:47.537 TX cycle=1 p1=0x00 p2=0x00 cmd=0x83 state=0x20 value=0xD0 frame 006 00 00 83 20 D0 29
01:57:48.358 TX cycle=1 p1=0x00 p2=0x00 cmd=0x84 state=0x20 value=0xD0 frame 006 00 00 84 20 D0 2E
01:57:49.181 TX cycle=1 p1=0x00 p2=0x00 cmd=0x85 state=0x20 value=0xD0 frame 006 00 00 85 20 D0 2F
01:57:50.003 TX cycle=1 p1=0x00 p2=0x00 cmd=0x86 state=0x20 value=0xD0 frame 006 00 00 86 20 D0 2C
01:57:50.827 TX cycle=1 p1=0x00 p2=0x00 cmd=0x87 state=0x20 value=0xD0 frame 006 00 00 87 20 D0 2D
01:57:51.649 TX cycle=1 p1=0x00 p2=0x00 cmd=0x88 state=0x20 value=0xD0 frame 006 00 00 88 20 D0 22
01:57:52.473 TX cycle=1 p1=0x00 p2=0x00 cmd=0x89 state=0x20 value=0xD0 frame 006 00 00 89 20 D0 23
01:57:53.299 TX cycle=1 p1=0x00 p2=0x00 cmd=0x8A state=0x20 value=0xD0 frame 006 00 00 8A 20 D0 20
01:57:54.122 TX cycle=1 p1=0x00 p2=0x00 cmd=0x8B state=0x20 value=0xD0 frame 006 00 00 8B 20 D0 21
01:57:54.947 TX cycle=1 p1=0x00 p2=0x00 cmd=0x8C state=0x20 value=0xD0 frame 006 00 00 8C 20 D0 26
01:57:55.768 TX cycle=1 p1=0x00 p2=0x00 cmd=0x8D state=0x20 value=0xD0 frame 006 00 00 8D 20 D0 27
01:57:56.590 TX cycle=1 p1=0x00 p2=0x00 cmd=0x8E state=0x20 value=0xD0 frame 006 00 00 8E 20 D0 24
01:57:57.409 TX cycle=1 p1=0x00 p2=0x00 cmd=0x8F state=0x20 value=0xD0 frame 006 00 00 8F 20 D0 25
01:57:58.231 TX cycle=1 p1=0x00 p2=0x00 cmd=0x90 state=0x20 value=0xD0 frame 006 00 00 90 20 D0 3A
01:57:59.052 TX cycle=1 p1=0x00 p2=0x00 cmd=0x91 state=0x20 value=0xD0 frame 006 00 00 91 20 D0 3B
01:57:59.874 TX cycle=1 p1=0x00 p2=0x00 cmd=0x92 state=0x20 value=0xD0 frame 006 00 00 92 20 D0 38
01:58:00.697 TX cycle=1 p1=0x00 p2=0x00 cmd=0x93 state=0x20 value=0xD0 frame 006 00 00 93 20 D0 39
01:58:01.519 TX cycle=1 p1=0x00 p2=0x00 cmd=0x94 state=0x20 value=0xD0 frame 006 00 00 94 20 D0 3E
01:58:02.344 TX cycle=1 p1=0x00 p2=0x00 cmd=0x95 state=0x20 value=0xD0 frame 006 00 00 95 20 D0 3F
01:58:03.164 TX cycle=1 p1=0x00 p2=0x00 cmd=0x96 state=0x20 value=0xD0 frame 006 00 00 96 20 D0 3C
01:58:03.987 TX cycle=1 p1=0x00 p2=0x00 cmd=0x97 state=0x20 value=0xD0 frame 006 00 00 97 20 D0 3D
01:58:04.809 TX cycle=1 p1=0x00 p2=0x00 cmd=0x98 state=0x20 value=0xD0 frame 006 00 00 98 20 D0 32
01:58:05.632 TX cycle=1 p1=0x00 p2=0x00 cmd=0x99 state=0x20 value=0xD0 frame 006 00 00 99 20 D0 33
01:58:06.457 TX cycle=1 p1=0x00 p2=0x00 cmd=0x9A state=0x20 value=0xD0 frame 006 00 00 9A 20 D0 30
01:58:07.278 TX cycle=1 p1=0x00 p2=0x00 cmd=0x9B state=0x20 value=0xD0 frame 006 00 00 9B 20 D0 31
01:58:08.099 TX cycle=1 p1=0x00 p2=0x00 cmd=0x9C state=0x20 value=0xD0 frame 006 00 00 9C 20 D0 36
01:58:08.924 TX cycle=1 p1=0x00 p2=0x00 cmd=0x9D state=0x20 value=0xD0 frame 006 00 00 9D 20 D0 37
01:58:09.748 TX cycle=1 p1=0x00 p2=0x00 cmd=0x9E state=0x20 value=0xD0 frame 006 00 00 9E 20 D0 34
01:58:10.571 TX cycle=1 p1=0x00 p2=0x00 cmd=0x9F state=0x20 value=0xD0 frame 006 00 00 9F 20 D0 35
FINAL heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes
Anomalies: 1

View File

@@ -0,0 +1,38 @@
Direct response sweep: 32 frames x 1 cycles (32 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
01:59:11.444 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC0 state=0x20 value=0xD0 frame 006 00 00 C0 20 D0 6A
01:59:12.267 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC1 state=0x20 value=0xD0 frame 006 00 00 C1 20 D0 6B
01:59:12.267 ANOMALY 30 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
01:59:12.267 RX raw 07 80 70 24 DD 54 07 80 70 24 DD 54 07 80 70 24 DD 54 07 80 70 24 DD 54 07 80 70 24 DD 54
01:59:13.089 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC2 state=0x20 value=0xD0 frame 006 00 00 C2 20 D0 68
01:59:13.915 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC3 state=0x20 value=0xD0 frame 006 00 00 C3 20 D0 69
01:59:14.737 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC4 state=0x20 value=0xD0 frame 006 00 00 C4 20 D0 6E
01:59:15.558 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC5 state=0x20 value=0xD0 frame 006 00 00 C5 20 D0 6F
01:59:16.379 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC6 state=0x20 value=0xD0 frame 006 00 00 C6 20 D0 6C
01:59:17.201 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC7 state=0x20 value=0xD0 frame 006 00 00 C7 20 D0 6D
01:59:18.024 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC8 state=0x20 value=0xD0 frame 006 00 00 C8 20 D0 62
01:59:18.848 TX cycle=1 p1=0x00 p2=0x00 cmd=0xC9 state=0x20 value=0xD0 frame 006 00 00 C9 20 D0 63
01:59:19.669 TX cycle=1 p1=0x00 p2=0x00 cmd=0xCA state=0x20 value=0xD0 frame 006 00 00 CA 20 D0 60
01:59:20.492 TX cycle=1 p1=0x00 p2=0x00 cmd=0xCB state=0x20 value=0xD0 frame 006 00 00 CB 20 D0 61
01:59:21.317 TX cycle=1 p1=0x00 p2=0x00 cmd=0xCC state=0x20 value=0xD0 frame 006 00 00 CC 20 D0 66
01:59:22.139 TX cycle=1 p1=0x00 p2=0x00 cmd=0xCD state=0x20 value=0xD0 frame 006 00 00 CD 20 D0 67
01:59:22.960 TX cycle=1 p1=0x00 p2=0x00 cmd=0xCE state=0x20 value=0xD0 frame 006 00 00 CE 20 D0 64
01:59:23.784 TX cycle=1 p1=0x00 p2=0x00 cmd=0xCF state=0x20 value=0xD0 frame 006 00 00 CF 20 D0 65
01:59:24.606 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD0 state=0x20 value=0xD0 frame 006 00 00 D0 20 D0 7A
01:59:25.428 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD1 state=0x20 value=0xD0 frame 006 00 00 D1 20 D0 7B
01:59:26.250 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD2 state=0x20 value=0xD0 frame 006 00 00 D2 20 D0 78
01:59:27.074 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD3 state=0x20 value=0xD0 frame 006 00 00 D3 20 D0 79
01:59:27.895 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD4 state=0x20 value=0xD0 frame 006 00 00 D4 20 D0 7E
01:59:28.718 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD5 state=0x20 value=0xD0 frame 006 00 00 D5 20 D0 7F
01:59:29.540 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD6 state=0x20 value=0xD0 frame 006 00 00 D6 20 D0 7C
01:59:30.365 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD7 state=0x20 value=0xD0 frame 006 00 00 D7 20 D0 7D
01:59:31.188 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD8 state=0x20 value=0xD0 frame 006 00 00 D8 20 D0 72
01:59:32.011 TX cycle=1 p1=0x00 p2=0x00 cmd=0xD9 state=0x20 value=0xD0 frame 006 00 00 D9 20 D0 73
01:59:32.835 TX cycle=1 p1=0x00 p2=0x00 cmd=0xDA state=0x20 value=0xD0 frame 006 00 00 DA 20 D0 70
01:59:33.658 TX cycle=1 p1=0x00 p2=0x00 cmd=0xDB state=0x20 value=0xD0 frame 006 00 00 DB 20 D0 71
01:59:34.481 TX cycle=1 p1=0x00 p2=0x00 cmd=0xDC state=0x20 value=0xD0 frame 006 00 00 DC 20 D0 76
01:59:35.302 TX cycle=1 p1=0x00 p2=0x00 cmd=0xDD state=0x20 value=0xD0 frame 006 00 00 DD 20 D0 77
01:59:36.126 TX cycle=1 p1=0x00 p2=0x00 cmd=0xDE state=0x20 value=0xD0 frame 006 00 00 DE 20 D0 74
01:59:36.949 TX cycle=1 p1=0x00 p2=0x00 cmd=0xDF state=0x20 value=0xD0 frame 006 00 00 DF 20 D0 75
FINAL heartbeat-compatible RX: 17 bytes, offset 1, 2 frames + 5 bytes
Anomalies: 1

View File

@@ -0,0 +1,38 @@
Direct response sweep: 32 frames x 1 cycles (32 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
01:59:56.030 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE0 state=0x20 value=0xD0 frame 006 00 00 E0 20 D0 4A
01:59:56.855 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE1 state=0x20 value=0xD0 frame 006 00 00 E1 20 D0 4B
01:59:56.855 ANOMALY 30 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
01:59:56.855 RX raw 07 80 78 24 DD 5C 07 80 78 24 DD 5C 07 80 78 24 DD 5C 07 80 78 24 DD 5C 07 80 78 24 DD 5C
01:59:57.676 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE2 state=0x20 value=0xD0 frame 006 00 00 E2 20 D0 48
01:59:58.500 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE3 state=0x20 value=0xD0 frame 006 00 00 E3 20 D0 49
01:59:59.323 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE4 state=0x20 value=0xD0 frame 006 00 00 E4 20 D0 4E
02:00:00.146 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE5 state=0x20 value=0xD0 frame 006 00 00 E5 20 D0 4F
02:00:00.971 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE6 state=0x20 value=0xD0 frame 006 00 00 E6 20 D0 4C
02:00:01.792 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE7 state=0x20 value=0xD0 frame 006 00 00 E7 20 D0 4D
02:00:02.618 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE8 state=0x20 value=0xD0 frame 006 00 00 E8 20 D0 42
02:00:03.442 TX cycle=1 p1=0x00 p2=0x00 cmd=0xE9 state=0x20 value=0xD0 frame 006 00 00 E9 20 D0 43
02:00:04.265 TX cycle=1 p1=0x00 p2=0x00 cmd=0xEA state=0x20 value=0xD0 frame 006 00 00 EA 20 D0 40
02:00:05.091 TX cycle=1 p1=0x00 p2=0x00 cmd=0xEB state=0x20 value=0xD0 frame 006 00 00 EB 20 D0 41
02:00:05.917 TX cycle=1 p1=0x00 p2=0x00 cmd=0xEC state=0x20 value=0xD0 frame 006 00 00 EC 20 D0 46
02:00:06.742 TX cycle=1 p1=0x00 p2=0x00 cmd=0xED state=0x20 value=0xD0 frame 006 00 00 ED 20 D0 47
02:00:07.563 TX cycle=1 p1=0x00 p2=0x00 cmd=0xEE state=0x20 value=0xD0 frame 006 00 00 EE 20 D0 44
02:00:08.385 TX cycle=1 p1=0x00 p2=0x00 cmd=0xEF state=0x20 value=0xD0 frame 006 00 00 EF 20 D0 45
02:00:09.208 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF0 state=0x20 value=0xD0 frame 006 00 00 F0 20 D0 5A
02:00:10.028 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF1 state=0x20 value=0xD0 frame 006 00 00 F1 20 D0 5B
02:00:10.850 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF2 state=0x20 value=0xD0 frame 006 00 00 F2 20 D0 58
02:00:11.674 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF3 state=0x20 value=0xD0 frame 006 00 00 F3 20 D0 59
02:00:12.496 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF4 state=0x20 value=0xD0 frame 006 00 00 F4 20 D0 5E
02:00:13.318 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF5 state=0x20 value=0xD0 frame 006 00 00 F5 20 D0 5F
02:00:14.145 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF6 state=0x20 value=0xD0 frame 006 00 00 F6 20 D0 5C
02:00:14.966 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF7 state=0x20 value=0xD0 frame 006 00 00 F7 20 D0 5D
02:00:15.790 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF8 state=0x20 value=0xD0 frame 006 00 00 F8 20 D0 52
02:00:16.617 TX cycle=1 p1=0x00 p2=0x00 cmd=0xF9 state=0x20 value=0xD0 frame 006 00 00 F9 20 D0 53
02:00:17.441 TX cycle=1 p1=0x00 p2=0x00 cmd=0xFA state=0x20 value=0xD0 frame 006 00 00 FA 20 D0 50
02:00:18.263 TX cycle=1 p1=0x00 p2=0x00 cmd=0xFB state=0x20 value=0xD0 frame 006 00 00 FB 20 D0 51
02:00:19.085 TX cycle=1 p1=0x00 p2=0x00 cmd=0xFC state=0x20 value=0xD0 frame 006 00 00 FC 20 D0 56
02:00:19.909 TX cycle=1 p1=0x00 p2=0x00 cmd=0xFD state=0x20 value=0xD0 frame 006 00 00 FD 20 D0 57
02:00:20.732 TX cycle=1 p1=0x00 p2=0x00 cmd=0xFE state=0x20 value=0xD0 frame 006 00 00 FE 20 D0 54
02:00:21.555 TX cycle=1 p1=0x00 p2=0x00 cmd=0xFF state=0x20 value=0xD0 frame 006 00 00 FF 20 D0 55
FINAL heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes
Anomalies: 1

View File

@@ -0,0 +1,38 @@
Direct response sweep: 32 frames x 1 cycles (32 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
02:02:08.207 TX cycle=1 p1=0x00 p2=0x00 cmd=0x00 state=0x40 value=0x30 frame 006 00 00 00 40 30 2A
02:02:09.032 TX cycle=1 p1=0x00 p2=0x00 cmd=0x01 state=0x40 value=0x30 frame 006 00 00 01 40 30 2B
02:02:09.032 ANOMALY 24 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
02:02:09.032 RX raw 07 80 40 28 D3 66 07 80 40 28 D3 66 07 80 40 28 D3 66 07 80 40 28 D3 66
02:02:09.856 TX cycle=1 p1=0x00 p2=0x00 cmd=0x02 state=0x40 value=0x30 frame 006 00 00 02 40 30 28
02:02:10.678 TX cycle=1 p1=0x00 p2=0x00 cmd=0x03 state=0x40 value=0x30 frame 006 00 00 03 40 30 29
02:02:11.501 TX cycle=1 p1=0x00 p2=0x00 cmd=0x04 state=0x40 value=0x30 frame 006 00 00 04 40 30 2E
02:02:12.323 TX cycle=1 p1=0x00 p2=0x00 cmd=0x05 state=0x40 value=0x30 frame 006 00 00 05 40 30 2F
02:02:13.143 TX cycle=1 p1=0x00 p2=0x00 cmd=0x06 state=0x40 value=0x30 frame 006 00 00 06 40 30 2C
02:02:13.964 TX cycle=1 p1=0x00 p2=0x00 cmd=0x07 state=0x40 value=0x30 frame 006 00 00 07 40 30 2D
02:02:14.790 TX cycle=1 p1=0x00 p2=0x00 cmd=0x08 state=0x40 value=0x30 frame 006 00 00 08 40 30 22
02:02:15.611 TX cycle=1 p1=0x00 p2=0x00 cmd=0x09 state=0x40 value=0x30 frame 006 00 00 09 40 30 23
02:02:16.430 TX cycle=1 p1=0x00 p2=0x00 cmd=0x0A state=0x40 value=0x30 frame 006 00 00 0A 40 30 20
02:02:17.251 TX cycle=1 p1=0x00 p2=0x00 cmd=0x0B state=0x40 value=0x30 frame 006 00 00 0B 40 30 21
02:02:18.074 TX cycle=1 p1=0x00 p2=0x00 cmd=0x0C state=0x40 value=0x30 frame 006 00 00 0C 40 30 26
02:02:18.898 TX cycle=1 p1=0x00 p2=0x00 cmd=0x0D state=0x40 value=0x30 frame 006 00 00 0D 40 30 27
02:02:19.722 TX cycle=1 p1=0x00 p2=0x00 cmd=0x0E state=0x40 value=0x30 frame 006 00 00 0E 40 30 24
02:02:20.543 TX cycle=1 p1=0x00 p2=0x00 cmd=0x0F state=0x40 value=0x30 frame 006 00 00 0F 40 30 25
02:02:21.365 TX cycle=1 p1=0x00 p2=0x00 cmd=0x10 state=0x40 value=0x30 frame 006 00 00 10 40 30 3A
02:02:22.191 TX cycle=1 p1=0x00 p2=0x00 cmd=0x11 state=0x40 value=0x30 frame 006 00 00 11 40 30 3B
02:02:23.012 TX cycle=1 p1=0x00 p2=0x00 cmd=0x12 state=0x40 value=0x30 frame 006 00 00 12 40 30 38
02:02:23.833 TX cycle=1 p1=0x00 p2=0x00 cmd=0x13 state=0x40 value=0x30 frame 006 00 00 13 40 30 39
02:02:24.656 TX cycle=1 p1=0x00 p2=0x00 cmd=0x14 state=0x40 value=0x30 frame 006 00 00 14 40 30 3E
02:02:25.480 TX cycle=1 p1=0x00 p2=0x00 cmd=0x15 state=0x40 value=0x30 frame 006 00 00 15 40 30 3F
02:02:26.303 TX cycle=1 p1=0x00 p2=0x00 cmd=0x16 state=0x40 value=0x30 frame 006 00 00 16 40 30 3C
02:02:27.126 TX cycle=1 p1=0x00 p2=0x00 cmd=0x17 state=0x40 value=0x30 frame 006 00 00 17 40 30 3D
02:02:27.948 TX cycle=1 p1=0x00 p2=0x00 cmd=0x18 state=0x40 value=0x30 frame 006 00 00 18 40 30 32
02:02:28.772 TX cycle=1 p1=0x00 p2=0x00 cmd=0x19 state=0x40 value=0x30 frame 006 00 00 19 40 30 33
02:02:29.593 TX cycle=1 p1=0x00 p2=0x00 cmd=0x1A state=0x40 value=0x30 frame 006 00 00 1A 40 30 30
02:02:30.415 TX cycle=1 p1=0x00 p2=0x00 cmd=0x1B state=0x40 value=0x30 frame 006 00 00 1B 40 30 31
02:02:31.237 TX cycle=1 p1=0x00 p2=0x00 cmd=0x1C state=0x40 value=0x30 frame 006 00 00 1C 40 30 36
02:02:32.058 TX cycle=1 p1=0x00 p2=0x00 cmd=0x1D state=0x40 value=0x30 frame 006 00 00 1D 40 30 37
02:02:32.880 TX cycle=1 p1=0x00 p2=0x00 cmd=0x1E state=0x40 value=0x30 frame 006 00 00 1E 40 30 34
02:02:33.701 TX cycle=1 p1=0x00 p2=0x00 cmd=0x1F state=0x40 value=0x30 frame 006 00 00 1F 40 30 35
FINAL heartbeat-compatible RX: 17 bytes, offset 1, 2 frames + 5 bytes
Anomalies: 1

View File

@@ -0,0 +1,38 @@
Direct response sweep: 32 frames x 1 cycles (32 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
02:00:34.961 TX cycle=1 p1=0x00 p2=0x00 cmd=0x40 state=0x40 value=0x30 frame 006 00 00 40 40 30 6A
02:00:35.783 TX cycle=1 p1=0x00 p2=0x00 cmd=0x41 state=0x40 value=0x30 frame 006 00 00 41 40 30 6B
02:00:35.783 ANOMALY 24 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
02:00:35.783 RX raw 07 80 50 28 D3 76 07 80 50 28 D3 76 07 80 50 28 D3 76 07 80 50 28 D3 76
02:00:36.608 TX cycle=1 p1=0x00 p2=0x00 cmd=0x42 state=0x40 value=0x30 frame 006 00 00 42 40 30 68
02:00:37.429 TX cycle=1 p1=0x00 p2=0x00 cmd=0x43 state=0x40 value=0x30 frame 006 00 00 43 40 30 69
02:00:38.252 TX cycle=1 p1=0x00 p2=0x00 cmd=0x44 state=0x40 value=0x30 frame 006 00 00 44 40 30 6E
02:00:39.076 TX cycle=1 p1=0x00 p2=0x00 cmd=0x45 state=0x40 value=0x30 frame 006 00 00 45 40 30 6F
02:00:39.900 TX cycle=1 p1=0x00 p2=0x00 cmd=0x46 state=0x40 value=0x30 frame 006 00 00 46 40 30 6C
02:00:40.728 TX cycle=1 p1=0x00 p2=0x00 cmd=0x47 state=0x40 value=0x30 frame 006 00 00 47 40 30 6D
02:00:41.549 TX cycle=1 p1=0x00 p2=0x00 cmd=0x48 state=0x40 value=0x30 frame 006 00 00 48 40 30 62
02:00:42.376 TX cycle=1 p1=0x00 p2=0x00 cmd=0x49 state=0x40 value=0x30 frame 006 00 00 49 40 30 63
02:00:43.202 TX cycle=1 p1=0x00 p2=0x00 cmd=0x4A state=0x40 value=0x30 frame 006 00 00 4A 40 30 60
02:00:44.026 TX cycle=1 p1=0x00 p2=0x00 cmd=0x4B state=0x40 value=0x30 frame 006 00 00 4B 40 30 61
02:00:44.850 TX cycle=1 p1=0x00 p2=0x00 cmd=0x4C state=0x40 value=0x30 frame 006 00 00 4C 40 30 66
02:00:45.674 TX cycle=1 p1=0x00 p2=0x00 cmd=0x4D state=0x40 value=0x30 frame 006 00 00 4D 40 30 67
02:00:46.495 TX cycle=1 p1=0x00 p2=0x00 cmd=0x4E state=0x40 value=0x30 frame 006 00 00 4E 40 30 64
02:00:47.313 TX cycle=1 p1=0x00 p2=0x00 cmd=0x4F state=0x40 value=0x30 frame 006 00 00 4F 40 30 65
02:00:48.138 TX cycle=1 p1=0x00 p2=0x00 cmd=0x50 state=0x40 value=0x30 frame 006 00 00 50 40 30 7A
02:00:48.960 TX cycle=1 p1=0x00 p2=0x00 cmd=0x51 state=0x40 value=0x30 frame 006 00 00 51 40 30 7B
02:00:49.782 TX cycle=1 p1=0x00 p2=0x00 cmd=0x52 state=0x40 value=0x30 frame 006 00 00 52 40 30 78
02:00:50.604 TX cycle=1 p1=0x00 p2=0x00 cmd=0x53 state=0x40 value=0x30 frame 006 00 00 53 40 30 79
02:00:51.428 TX cycle=1 p1=0x00 p2=0x00 cmd=0x54 state=0x40 value=0x30 frame 006 00 00 54 40 30 7E
02:00:52.249 TX cycle=1 p1=0x00 p2=0x00 cmd=0x55 state=0x40 value=0x30 frame 006 00 00 55 40 30 7F
02:00:53.072 TX cycle=1 p1=0x00 p2=0x00 cmd=0x56 state=0x40 value=0x30 frame 006 00 00 56 40 30 7C
02:00:53.895 TX cycle=1 p1=0x00 p2=0x00 cmd=0x57 state=0x40 value=0x30 frame 006 00 00 57 40 30 7D
02:00:54.716 TX cycle=1 p1=0x00 p2=0x00 cmd=0x58 state=0x40 value=0x30 frame 006 00 00 58 40 30 72
02:00:55.542 TX cycle=1 p1=0x00 p2=0x00 cmd=0x59 state=0x40 value=0x30 frame 006 00 00 59 40 30 73
02:00:56.364 TX cycle=1 p1=0x00 p2=0x00 cmd=0x5A state=0x40 value=0x30 frame 006 00 00 5A 40 30 70
02:00:57.188 TX cycle=1 p1=0x00 p2=0x00 cmd=0x5B state=0x40 value=0x30 frame 006 00 00 5B 40 30 71
02:00:58.012 TX cycle=1 p1=0x00 p2=0x00 cmd=0x5C state=0x40 value=0x30 frame 006 00 00 5C 40 30 76
02:00:58.837 TX cycle=1 p1=0x00 p2=0x00 cmd=0x5D state=0x40 value=0x30 frame 006 00 00 5D 40 30 77
02:00:59.661 TX cycle=1 p1=0x00 p2=0x00 cmd=0x5E state=0x40 value=0x30 frame 006 00 00 5E 40 30 74
02:01:00.483 TX cycle=1 p1=0x00 p2=0x00 cmd=0x5F state=0x40 value=0x30 frame 006 00 00 5F 40 30 75
FINAL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes
Anomalies: 1

View File

@@ -0,0 +1,38 @@
Direct response sweep: 32 frames x 1 cycles (32 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
02:01:21.124 TX cycle=1 p1=0x00 p2=0x00 cmd=0x60 state=0x40 value=0x30 frame 006 00 00 60 40 30 4A
02:01:21.946 TX cycle=1 p1=0x00 p2=0x00 cmd=0x61 state=0x40 value=0x30 frame 006 00 00 61 40 30 4B
02:01:21.946 ANOMALY 24 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
02:01:21.946 RX raw 07 80 58 28 D3 7E 07 80 58 28 D3 7E 07 80 58 28 D3 7E 07 80 58 28 D3 7E
02:01:22.772 TX cycle=1 p1=0x00 p2=0x00 cmd=0x62 state=0x40 value=0x30 frame 006 00 00 62 40 30 48
02:01:23.597 TX cycle=1 p1=0x00 p2=0x00 cmd=0x63 state=0x40 value=0x30 frame 006 00 00 63 40 30 49
02:01:24.417 TX cycle=1 p1=0x00 p2=0x00 cmd=0x64 state=0x40 value=0x30 frame 006 00 00 64 40 30 4E
02:01:25.239 TX cycle=1 p1=0x00 p2=0x00 cmd=0x65 state=0x40 value=0x30 frame 006 00 00 65 40 30 4F
02:01:26.063 TX cycle=1 p1=0x00 p2=0x00 cmd=0x66 state=0x40 value=0x30 frame 006 00 00 66 40 30 4C
02:01:26.885 TX cycle=1 p1=0x00 p2=0x00 cmd=0x67 state=0x40 value=0x30 frame 006 00 00 67 40 30 4D
02:01:27.706 TX cycle=1 p1=0x00 p2=0x00 cmd=0x68 state=0x40 value=0x30 frame 006 00 00 68 40 30 42
02:01:28.530 TX cycle=1 p1=0x00 p2=0x00 cmd=0x69 state=0x40 value=0x30 frame 006 00 00 69 40 30 43
02:01:29.354 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6A state=0x40 value=0x30 frame 006 00 00 6A 40 30 40
02:01:30.175 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6B state=0x40 value=0x30 frame 006 00 00 6B 40 30 41
02:01:30.995 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6C state=0x40 value=0x30 frame 006 00 00 6C 40 30 46
02:01:31.817 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6D state=0x40 value=0x30 frame 006 00 00 6D 40 30 47
02:01:32.643 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6E state=0x40 value=0x30 frame 006 00 00 6E 40 30 44
02:01:33.465 TX cycle=1 p1=0x00 p2=0x00 cmd=0x6F state=0x40 value=0x30 frame 006 00 00 6F 40 30 45
02:01:34.286 TX cycle=1 p1=0x00 p2=0x00 cmd=0x70 state=0x40 value=0x30 frame 006 00 00 70 40 30 5A
02:01:35.105 TX cycle=1 p1=0x00 p2=0x00 cmd=0x71 state=0x40 value=0x30 frame 006 00 00 71 40 30 5B
02:01:35.927 TX cycle=1 p1=0x00 p2=0x00 cmd=0x72 state=0x40 value=0x30 frame 006 00 00 72 40 30 58
02:01:36.748 TX cycle=1 p1=0x00 p2=0x00 cmd=0x73 state=0x40 value=0x30 frame 006 00 00 73 40 30 59
02:01:37.572 TX cycle=1 p1=0x00 p2=0x00 cmd=0x74 state=0x40 value=0x30 frame 006 00 00 74 40 30 5E
02:01:38.394 TX cycle=1 p1=0x00 p2=0x00 cmd=0x75 state=0x40 value=0x30 frame 006 00 00 75 40 30 5F
02:01:39.214 TX cycle=1 p1=0x00 p2=0x00 cmd=0x76 state=0x40 value=0x30 frame 006 00 00 76 40 30 5C
02:01:40.036 TX cycle=1 p1=0x00 p2=0x00 cmd=0x77 state=0x40 value=0x30 frame 006 00 00 77 40 30 5D
02:01:40.860 TX cycle=1 p1=0x00 p2=0x00 cmd=0x78 state=0x40 value=0x30 frame 006 00 00 78 40 30 52
02:01:41.684 TX cycle=1 p1=0x00 p2=0x00 cmd=0x79 state=0x40 value=0x30 frame 006 00 00 79 40 30 53
02:01:42.506 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7A state=0x40 value=0x30 frame 006 00 00 7A 40 30 50
02:01:43.330 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7B state=0x40 value=0x30 frame 006 00 00 7B 40 30 51
02:01:44.151 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7C state=0x40 value=0x30 frame 006 00 00 7C 40 30 56
02:01:44.974 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7D state=0x40 value=0x30 frame 006 00 00 7D 40 30 57
02:01:45.797 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7E state=0x40 value=0x30 frame 006 00 00 7E 40 30 54
02:01:46.622 TX cycle=1 p1=0x00 p2=0x00 cmd=0x7F state=0x40 value=0x30 frame 006 00 00 7F 40 30 55
FINAL heartbeat-compatible RX: 17 bytes, offset 1, 2 frames + 5 bytes
Anomalies: 1

View File

@@ -0,0 +1,22 @@
Direct response sweep: 16 frames x 1 cycles (16 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 30 bytes, offset 0, 5 frames + 0 bytes
02:03:36.274 TX cycle=1 p1=0x00 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 00 00 21 20 D0 8B
02:03:37.097 TX cycle=1 p1=0x01 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 01 00 21 20 D0 8A
02:03:37.097 ANOMALY 29 RX bytes; first mismatch at byte 5: got 07, heartbeat offset 1 expected 00
02:03:37.097 RX raw 00 00 00 80 DA 07 80 48 24 9D 2C 07 80 48 24 9D 2C 07 80 48 24 9D 2C 07 80 48 24 9D 2C
02:03:37.921 TX cycle=1 p1=0x02 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 02 00 21 20 D0 89
02:03:38.746 TX cycle=1 p1=0x03 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 03 00 21 20 D0 88
02:03:39.570 TX cycle=1 p1=0x04 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 04 00 21 20 D0 8F
02:03:40.396 TX cycle=1 p1=0x05 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 05 00 21 20 D0 8E
02:03:41.218 TX cycle=1 p1=0x06 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 06 00 21 20 D0 8D
02:03:42.040 TX cycle=1 p1=0x07 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 07 00 21 20 D0 8C
02:03:42.863 TX cycle=1 p1=0x08 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 08 00 21 20 D0 83
02:03:43.687 TX cycle=1 p1=0x09 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 09 00 21 20 D0 82
02:03:44.508 TX cycle=1 p1=0x0A p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 0A 00 21 20 D0 81
02:03:45.330 TX cycle=1 p1=0x0B p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 0B 00 21 20 D0 80
02:03:46.151 TX cycle=1 p1=0x0C p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 0C 00 21 20 D0 87
02:03:46.976 TX cycle=1 p1=0x0D p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 0D 00 21 20 D0 86
02:03:47.799 TX cycle=1 p1=0x0E p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 0E 00 21 20 D0 85
02:03:48.621 TX cycle=1 p1=0x0F p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 0F 00 21 20 D0 84
FINAL heartbeat-compatible RX: 30 bytes, offset 0, 5 frames + 0 bytes
Anomalies: 1

View File

@@ -0,0 +1,22 @@
Direct response sweep: 16 frames x 1 cycles (16 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
02:03:02.116 TX cycle=1 p1=0x00 p2=0x00 cmd=0x21 state=0x20 value=0xD0 frame 006 00 00 21 20 D0 8B
02:03:02.938 TX cycle=1 p1=0x00 p2=0x01 cmd=0x21 state=0x20 value=0xD0 frame 006 00 01 21 20 D0 8A
02:03:02.938 ANOMALY 24 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00
02:03:02.938 RX raw 07 40 24 12 9D B6 07 40 24 12 9D B6 07 40 24 12 9D B6 07 40 24 12 9D B6
02:03:03.763 TX cycle=1 p1=0x00 p2=0x02 cmd=0x21 state=0x20 value=0xD0 frame 006 00 02 21 20 D0 89
02:03:04.586 TX cycle=1 p1=0x00 p2=0x03 cmd=0x21 state=0x20 value=0xD0 frame 006 00 03 21 20 D0 88
02:03:05.407 TX cycle=1 p1=0x00 p2=0x04 cmd=0x21 state=0x20 value=0xD0 frame 006 00 04 21 20 D0 8F
02:03:06.228 TX cycle=1 p1=0x00 p2=0x05 cmd=0x21 state=0x20 value=0xD0 frame 006 00 05 21 20 D0 8E
02:03:07.049 TX cycle=1 p1=0x00 p2=0x06 cmd=0x21 state=0x20 value=0xD0 frame 006 00 06 21 20 D0 8D
02:03:07.871 TX cycle=1 p1=0x00 p2=0x07 cmd=0x21 state=0x20 value=0xD0 frame 006 00 07 21 20 D0 8C
02:03:08.692 TX cycle=1 p1=0x00 p2=0x08 cmd=0x21 state=0x20 value=0xD0 frame 006 00 08 21 20 D0 83
02:03:09.513 TX cycle=1 p1=0x00 p2=0x09 cmd=0x21 state=0x20 value=0xD0 frame 006 00 09 21 20 D0 82
02:03:10.334 TX cycle=1 p1=0x00 p2=0x0A cmd=0x21 state=0x20 value=0xD0 frame 006 00 0A 21 20 D0 81
02:03:11.154 TX cycle=1 p1=0x00 p2=0x0B cmd=0x21 state=0x20 value=0xD0 frame 006 00 0B 21 20 D0 80
02:03:11.981 TX cycle=1 p1=0x00 p2=0x0C cmd=0x21 state=0x20 value=0xD0 frame 006 00 0C 21 20 D0 87
02:03:12.804 TX cycle=1 p1=0x00 p2=0x0D cmd=0x21 state=0x20 value=0xD0 frame 006 00 0D 21 20 D0 86
02:03:13.628 TX cycle=1 p1=0x00 p2=0x0E cmd=0x21 state=0x20 value=0xD0 frame 006 00 0E 21 20 D0 85
02:03:14.451 TX cycle=1 p1=0x00 p2=0x0F cmd=0x21 state=0x20 value=0xD0 frame 006 00 0F 21 20 D0 84
FINAL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes
Anomalies: 1

View File

@@ -9626,23 +9626,27 @@ python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --pre
#### HE40b: `0x80-0x9F @ 20 D0`
Had several anomolys without entering CONNECT NOT ACT
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --prefix2s 0x00 --commands 0x80-0x9F --states 0x20 --values 0xD0 --settle 3.0 --after-each 0.8 --after 2.0 --log captures/he40-direct-20d0-cmd80-9f.txt
```
#### HE40c: `0xA0-0xBF @ 20 D0`
Did not enter CONNECT NOT ACT until half way through the run
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --prefix2s 0x00 --commands 0xA0-0xBF --states 0x20 --values 0xD0 --settle 3.0 --after-each 0.8 --after 2.0 --log captures/he40-direct-20d0-cmda0-bf.txt
```
#### HE40d: `0xC0-0xDF @ 20 D0`
Stayed alive for half the run
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --prefix2s 0x00 --commands 0xC0-0xDF --states 0x20 --values 0xD0 --settle 3.0 --after-each 0.8 --after 2.0 --log captures/he40-direct-20d0-cmdc0-df.txt
```
#### HE40e: `0xE0-0xFF @ 20 D0`
Stayed alive for half the run
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --prefix2s 0x00 --commands 0xE0-0xFF --states 0x20 --values 0xD0 --settle 3.0 --after-each 0.8 --after 2.0 --log captures/he40-direct-20d0-cmde0-ff.txt
@@ -9651,19 +9655,19 @@ python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --pre
#### Phase 2: broaden the `40 30` parallel surface
#### HE40f: `0x40-0x5F @ 40 30`
Stayed alive the whole run
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --prefix2s 0x00 --commands 0x40-0x5F --states 0x40 --values 0x30 --settle 3.0 --after-each 0.8 --after 2.0 --log captures/he40-direct-4030-cmd40-5f.txt
```
#### HE40g: `0x60-0x7F @ 40 30`
Stayed alive whole run
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --prefix2s 0x00 --commands 0x60-0x7F --states 0x40 --values 0x30 --settle 3.0 --after-each 0.8 --after 2.0 --log captures/he40-direct-4030-cmd60-7f.txt
```
#### HE40h: `0x00-0x1F @ 40 30`
Stayed alive whole run
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --prefix2s 0x00 --commands 0x00-0x1F --states 0x40 --values 0x30 --settle 3.0 --after-each 0.8 --after 2.0 --log captures/he40-direct-4030-cmd00-1f.txt
```
@@ -9679,13 +9683,13 @@ Known live slot chosen for prefix probing:
- `cmd=0x21`, `state/value=20 D0`
#### HE40i: `prefix2=0x00-0x0F` on `cmd=0x21 @ 20 D0`
Stayed alive whole run
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00 --prefix2s 0x00-0x0F --commands 0x21 --states 0x20 --values 0xD0 --settle 3.0 --after-each 0.8 --after 2.0 --log captures/he40-prefix2-00-0f-cmd21-20d0.txt
```
#### HE40j: `prefix1=0x00-0x0F` on `cmd=0x21 @ 20 D0`
Stayed alive whole run
```powershell
python scripts/serial_direct_response_sweep.py --port COM5 --prefix1s 0x00-0x0F --prefix2s 0x00 --commands 0x21 --states 0x20 --values 0xD0 --settle 3.0 --after-each 0.8 --after 2.0 --log captures/he40-prefix1-00-0f-cmd21-20d0.txt
```
@@ -9713,3 +9717,93 @@ Interpretation guide:
than command and payload pair for the surfaces we have been mapping
- if one prefix range opens a new aligned family on `cmd=0x21`, that becomes a
very strong next branch
#### HE40 results
Your bench notes on panel behavior:
- `HE40b` (`0x80-0x9F @ 20 D0`): several anomalies without entering
`CONNECT NOT ACT`
- `HE40c` (`0xA0-0xBF @ 20 D0`): note added in the docs, but no matching
capture file was present yet in `captures/`
- `HE40d` (`0xC0-0xDF @ 20 D0`): panel stayed alive for about half the run
- `HE40e` (`0xE0-0xFF @ 20 D0`): panel stayed alive for about half the run
- `HE40f/g/h` (`40 30` command sweeps): panel stayed alive for the whole run
- `HE40i/j` (prefix sweeps): panel stayed alive for the whole run
Structured results:
#### `0x60-0x7F @ 20 D0`
- `0x61` -> `07 80 58 24 DD 7C`
- `0x62` and `0x63` then drain more of that same `58 24 DD 7C` family
- this extends the `20 D0` maintained surface cleanly upward into the `0x60`
band
#### `0x80-0x9F @ 20 D0`
- `0x81` -> `07 80 60 24 DD 44`
- same broad shape as the earlier `48/50/58` families, but now stepping into a
new `0x60` family block
#### `0xC0-0xDF @ 20 D0`
- `0xC1` -> `07 80 70 24 DD 54`
#### `0xE0-0xFF @ 20 D0`
- `0xE1` -> `07 80 78 24 DD 5C`
Taken together, the confirmed `20 D0` ladder now includes:
- `0x01` -> `07 80 40 24 DD 64`
- `0x21` -> `07 80 48 24 DD 6C`
- `0x41` -> `07 80 50 24 DD 74`
- `0x61` -> `07 80 58 24 DD 7C`
- `0x81` -> `07 80 60 24 DD 44`
- `0xC1` -> `07 80 70 24 DD 54`
- `0xE1` -> `07 80 78 24 DD 5C`
That is a much stronger pattern than a few isolated hits. It looks like a real
upper command lattice.
#### `0x00-0x1F @ 40 30`
- `0x01` -> `07 80 40 28 D3 66`
#### `0x40-0x5F @ 40 30`
- `0x41` -> `07 80 50 28 D3 76`
#### `0x60-0x7F @ 40 30`
- `0x61` -> `07 80 58 28 D3 7E`
This confirms the `40 30` surface is a true aligned parallel of the `20 D0`
surface, not just a one-region curiosity.
#### Prefix completion on `cmd=0x21 @ 20 D0`
The prefix passes did **not** stay flat.
- `HE40i` varying `prefix2`, with `00 01 21 20 D0 8A`, opened:
- `07 40 24 12 9D B6`
- `HE40j` varying `prefix1`, with `01 00 21 20 D0 8A`, opened:
- `07 80 48 24 9D 2C`
That makes prefixes more interesting than the earlier simple model assumed.
They do not yet look like the main thing selecting the broad maintained
surfaces, but they clearly can perturb a known-live slot into a different
response family.
Takeaways:
- the upper command space is **not** untouched noise; it continues the same
structured lattice far above `0x5F`
- `20 D0` now looks like a very broad maintained-background class
- `40 30` mirrors it as a clean parallel surface
- nonzero prefixes are not dead:
- they can open altered variants on a known live command slot
- the only obvious completion gap from this pass is `HE40c`:
- `0xA0-0xBF @ 20 D0` still needs its matching capture if we want the ladder
complete

View File

@@ -505,6 +505,23 @@ Current caution:
- So the `0x50`-band currently looks like another valid maintained-background
surface inside the broader `20 D0` class, not yet a uniquely privileged
"real wake" surface.
- A later HE40 completion pass extended that picture much farther upward:
- `0x61 @ 20 D0` -> `07 80 58 24 DD 7C`
- `0x81 @ 20 D0` -> `07 80 60 24 DD 44`
- `0xC1 @ 20 D0` -> `07 80 70 24 DD 54`
- `0xE1 @ 20 D0` -> `07 80 78 24 DD 5C`
- That means the `20 D0` surface now looks like a broad upper command lattice,
not just a low-band or mid-band pocket.
- HE40 also reinforced that `40 30` is a true aligned parallel surface:
- `0x01 @ 40 30` -> `07 80 40 28 D3 66`
- `0x41 @ 40 30` -> `07 80 50 28 D3 76`
- `0x61 @ 40 30` -> `07 80 58 28 D3 7E`
- Small prefix-completion sweeps on `cmd=0x21 @ 20 D0` showed that nonzero
prefixes are not inert:
- `p2=0x01` opened `07 40 24 12 9D B6`
- `p1=0x01` opened `07 80 48 24 9D 2C`
- So prefixes probably do **not** define the main lattice by themselves, but
they can perturb a known-live slot into variant families.
## What We Do Not Know
@@ -557,6 +574,163 @@ Current best read:
stream that would normally feed the LCD, indicators, and value displays once
the session is established
## Probable CCU <-> RCP Traffic Model
This is an inferred working model, not yet a proof. It is the best current
attempt to explain both the manuals and the bench behavior using the same
mental picture.
### High-level picture
Current best read:
- the **CCU** probably holds the richer master state for the camera system
- the **RCP** behaves more like a smart terminal:
- it sends operator events upstream
- it receives recurring camera/session state downstream
- it renders that state onto the LCD, lamps, and numeric readouts
That would fit:
- the manuals describing filter, extender, self-diagnosis, and other camera
state on the RCP display
- the broad structured lattices now observed in the host-to-RCP direction
- the way repeated valid-looking traffic can keep the panel semi-awake without
fully activating it
### Likely traffic layers
#### 1. Startup / identity / mode layer
Probable job:
- establish PT2/TX7 personality
- announce CCU or camera-side mode/class
- select a broad session context before live status traffic begins
Best candidate families so far:
- `90` startup-beacon surface:
- `07 80 64 40 30 C9`
- `07 80 E4 40 30 49`
- `AF` startup-beacon surface:
- `07 80 0D 04 AB 7F`
- `07 80 0D 04 EB 3F`
- `A0` appears to act as an opener or primer in several selector contexts
Current interpretation:
- these look more like startup or class beacons than maintained live camera
state by themselves
#### 2. Maintained background status layer
Probable job:
- keep the panel in a live or semi-live session state
- refresh recurring camera/control pages
- provide the "boring background scan" a 1990s CCU would likely send
Best candidate surfaces so far:
- `20 D0` lattice:
- `0x01 -> 07 80 40 24 DD 64`
- `0x21 -> 07 80 48 24 DD 6C`
- `0x41 -> 07 80 50 24 DD 74`
- `0x61 -> 07 80 58 24 DD 7C`
- `0x81 -> 07 80 60 24 DD 44`
- `0xC1 -> 07 80 70 24 DD 54`
- `0xE1 -> 07 80 78 24 DD 5C`
- parallel `40 30` lattice:
- `0x01 -> 07 80 40 28 D3 66`
- `0x41 -> 07 80 50 28 D3 76`
- `0x61 -> 07 80 58 28 D3 7E`
- baseline `00 80` lattice:
- similar command slots but through `.. 20 D8 ..` surfaces
Current interpretation:
- these look like page/slot/status surfaces more than isolated commands
- a real CCU may repeatedly scan a small subset of these, not the whole space
- the panel's semi-awake behavior strongly suggests that at least part of this
layer is real maintained traffic
#### 3. Detail / page / selector layer
Probable job:
- select which family or page of data is being discussed
- open branches corresponding to different camera/status domains
Best candidate families so far:
- `E8`, `E9`, `EC` selector-like branches
- opener/context family around `A0`, `90`, `AF`
- downstream siblings:
- `7A`
- `7B`
- `FB`
- `FA`
- `E4`
Current interpretation:
- these may represent internal page classes or selector families
- they probably help choose *which* maintained or readable surface is live
- they do not yet look like the final always-on camera-state stream by
themselves
#### 4. Operator event layer
Probable job:
- carry human actions from the RCP to the CCU/camera side
Best candidate families so far:
- CALL path:
- host synthetic high/low pair can provoke `07 80 45 20 D0 68`
- CAM POWER and some other buttons:
- visible as outbound panel-origin activity
- but not yet shown to wake the panel or advance a session on their own
Current interpretation:
- this layer is probably mostly upstream: RCP telling the CCU what the operator
just did
- the event path alone is not enough to create an active session
### Most likely division of responsibility
If this model is right, then:
- the **CCU** likely maintains the richer camera-state lattice internally
- the **RCP** likely maintains a smaller local cache:
- current screen/page
- local control state
- most recently received camera values
- active indicator/lamp state
That would explain why:
- broad command sweeps find orderly families
- many repeated frames keep the panel semi-awake
- but the panel still refuses to fully wake without the right overall stream
### What this suggests for bench work
The main practical implication is:
- stop thinking only in terms of a single hidden wake frame
- keep thinking in terms of:
- startup beacon/context
- then a believable recurring maintained subset
- then additional detail pages layered on top
So the most likely missing ingredient is not just "more valid bytes." It is
probably a **specific recurring traffic mix** that a real CCU would send once
it had already identified the panel and camera path.
## Restoration Strategy
Near-term practical strategy:

View File

@@ -28,6 +28,33 @@ The current evidence suggests the panel behavior is shaped by several layers:
We have good evidence for layers 1-4. Layer 5 is still missing.
## Probable System-Level Flow
At the system level, the best current model is:
1. startup / identity / mode traffic
2. maintained background status scan
3. selector/detail pages layered onto that background
4. operator events flowing back upstream
5. unknown final condition that makes the panel fully active
This is less like a tiny request/ack protocol and more like a multiplexed
camera-state bus with a control return path.
Working split:
- **CCU side** probably holds the richer master camera/session state lattice
- **RCP side** probably behaves like a smart terminal that:
- caches a smaller local state
- displays received camera/session values
- sends button/control events back upstream
That model fits the manuals unusually well:
- LCD/status content such as filter, extender, and self-diagnosis data
- semi-awake behavior under recurring host traffic
- broad structured command/slot lattices under several payload surfaces
## Baseline States
### S0: Idle / Not Active