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
01:13:49.563  TX cycle=1 p1=0x00 p2=0x00 cmd=0x10 state=0x20 value=0xD0 frame 006  00 00 10 20 D0 BA
01:13:50.385  TX cycle=1 p1=0x00 p2=0x00 cmd=0x11 state=0x20 value=0xD0 frame 006  00 00 11 20 D0 BB
01:13:50.385  ANOMALY 30 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
01:13:50.385  RX raw 07 80 44 24 DD 60 07 80 44 24 DD 60 07 80 44 24 DD 60 07 80 44 24 DD 60 07 80 44 24 DD 60
01:13:53.682  TX cycle=1 p1=0x00 p2=0x00 cmd=0x12 state=0x20 value=0xD0 frame 006  00 00 12 20 D0 B8
01:13:54.507  TX cycle=1 p1=0x00 p2=0x00 cmd=0x13 state=0x20 value=0xD0 frame 006  00 00 13 20 D0 B9
01:13:54.507  ANOMALY 12 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00
01:13:54.507  RX raw 07 80 22 12 97 7A 00 00 00 00 80 DA
01:13:57.843  TX cycle=1 p1=0x00 p2=0x00 cmd=0x14 state=0x20 value=0xD0 frame 006  00 00 14 20 D0 BE
01:13:58.668  TX cycle=1 p1=0x00 p2=0x00 cmd=0x15 state=0x20 value=0xD0 frame 006  00 00 15 20 D0 BF
01:13:58.668  ANOMALY 12 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00
01:13:58.668  RX raw 07 80 45 24 DD 61 00 00 00 00 80 DA
01:14:01.846  TX cycle=1 p1=0x00 p2=0x00 cmd=0x16 state=0x20 value=0xD0 frame 006  00 00 16 20 D0 BC
01:14:02.671  TX cycle=1 p1=0x00 p2=0x00 cmd=0x17 state=0x20 value=0xD0 frame 006  00 00 17 20 D0 BD
01:14:02.671  ANOMALY 12 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00
01:14:02.671  RX raw 07 80 11 09 D7 12 00 00 00 00 80 DA
01:14:05.604  TX cycle=1 p1=0x00 p2=0x00 cmd=0x18 state=0x20 value=0xD0 frame 006  00 00 18 20 D0 B2
01:14:06.426  TX cycle=1 p1=0x00 p2=0x00 cmd=0x19 state=0x20 value=0xD0 frame 006  00 00 19 20 D0 B3
01:14:06.426  ANOMALY 12 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00
01:14:06.426  RX raw 07 80 46 24 DD 62 00 00 00 00 80 DA
01:14:08.846  TX cycle=1 p1=0x00 p2=0x00 cmd=0x1A state=0x20 value=0xD0 frame 006  00 00 1A 20 D0 B0
01:14:09.668  TX cycle=1 p1=0x00 p2=0x00 cmd=0x1B state=0x20 value=0xD0 frame 006  00 00 1B 20 D0 B1
01:14:09.668  ANOMALY 12 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00
01:14:09.668  RX raw 07 80 23 12 17 FB 00 00 00 00 80 DA
01:14:12.628  TX cycle=1 p1=0x00 p2=0x00 cmd=0x1C state=0x20 value=0xD0 frame 006  00 00 1C 20 D0 B6
01:14:13.448  TX cycle=1 p1=0x00 p2=0x00 cmd=0x1D state=0x20 value=0xD0 frame 006  00 00 1D 20 D0 B7
01:14:13.448  ANOMALY 12 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 0 expected 00
01:14:13.448  RX raw 07 80 47 24 DD 63 00 00 00 00 80 DA
01:14:16.745  TX cycle=1 p1=0x00 p2=0x00 cmd=0x1E state=0x20 value=0xD0 frame 006  00 00 1E 20 D0 B4
01:14:17.570  TX cycle=1 p1=0x00 p2=0x00 cmd=0x1F state=0x20 value=0xD0 frame 006  00 00 1F 20 D0 B5
FINAL heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes
Anomalies: 7
