Compare commits

..

3 Commits

Author SHA1 Message Date
Aiden
b2d6c9c1f3 Timing tests 2026-05-13 13:12:43 +10:00
Aiden
f406bc12a2 Response from RCP 2026-05-13 13:10:25 +10:00
Aiden
f99a60710e responses 2026-05-13 12:30:37 +10:00
49 changed files with 4830 additions and 1 deletions

View File

@@ -0,0 +1,17 @@
Listening on COM5 at 38400 8N1; will send 00 00 B0 00 80 6A after 1.5s
12:58:47.795 RX 001 bytes 00
12:58:47.845 RX 005 bytes 00 00 00 80 DA
12:58:48.500 RX 006 bytes 00 00 00 00 80 DA
12:58:48.652 TX frame 006 00 00 B0 00 80 6A
12:58:49.208 RX 006 bytes 00 00 00 00 80 DA
12:58:49.461 RX 006 bytes 00 00 00 00 80 DA
12:58:49.714 RX 006 bytes 00 00 00 00 80 DA
12:58:49.967 RX 006 bytes 00 00 00 00 80 DA
12:58:50.220 RX 006 bytes 00 00 00 00 80 DA
12:58:50.472 RX 006 bytes 00 00 00 00 80 DA
12:58:51.127 RX 006 bytes 00 00 00 00 80 DA
12:58:51.782 RX 001 bytes 00
12:58:51.834 RX 005 bytes 00 00 00 80 DA
12:58:52.491 RX 001 bytes 00
12:58:52.542 RX 005 bytes 00 00 00 80 DA
12:58:53.199 RX 006 bytes 00 00 00 00 80 DA

View File

@@ -0,0 +1,15 @@
Listening on COM5 at 38400 8N1; will send 00 00 B1 00 80 6B after 1.5s
12:59:05.114 RX 006 bytes 00 00 00 00 80 DA
12:59:05.820 RX 006 bytes 00 00 00 00 80 DA
12:59:05.971 TX frame 006 00 00 B1 00 80 6B
12:59:06.525 RX 006 bytes 00 00 00 00 80 DA
12:59:06.777 RX 006 bytes 00 00 00 00 80 DA
12:59:07.031 RX 006 bytes 00 00 00 00 80 DA
12:59:07.283 RX 006 bytes 00 00 00 00 80 DA
12:59:07.535 RX 006 bytes 00 00 00 00 80 DA
12:59:07.787 RX 006 bytes 00 00 00 00 80 DA
12:59:08.393 RX 001 bytes 00
12:59:08.444 RX 005 bytes 00 00 00 80 DA
12:59:09.101 RX 006 bytes 00 00 00 00 80 DA
12:59:09.808 RX 006 bytes 00 00 00 00 80 DA
12:59:10.515 RX 006 bytes 00 00 00 00 80 DA

View File

@@ -0,0 +1,20 @@
Listening on COM5 at 38400 8N1; will send 00 00 B4 00 80 6E after 1.5s
12:55:25.765 RX 001 bytes 00
12:55:25.817 RX 005 bytes 00 00 00 80 DA
12:55:26.474 RX 006 bytes 00 00 00 00 80 DA
12:55:26.979 TX frame 006 00 00 B4 00 80 6E
12:55:27.180 RX 006 bytes 00 00 00 00 80 DA
12:55:27.433 RX 006 bytes 00 00 00 00 80 DA
12:55:27.685 RX 006 bytes 00 00 00 00 80 DA
12:55:27.938 RX 006 bytes 00 00 00 00 80 DA
12:55:28.190 RX 006 bytes 00 00 00 00 80 DA
12:55:28.442 RX 006 bytes 00 00 00 00 80 DA
12:55:28.694 RX 006 bytes 00 00 00 00 80 DA
12:55:28.948 RX 006 bytes 00 00 00 00 80 DA
12:55:29.558 RX 001 bytes 00
12:55:29.608 RX 005 bytes 00 00 00 80 DA
12:55:30.261 RX 001 bytes 00
12:55:30.312 RX 005 bytes 00 00 00 80 DA
12:55:30.968 RX 001 bytes 00
12:55:31.018 RX 005 bytes 00 00 00 80 DA
12:55:31.676 RX 006 bytes 00 00 00 00 80 DA

View File

@@ -0,0 +1,19 @@
Listening on COM5 at 38400 8N1; will send 00 00 B5 00 80 6F after 1.5s
12:55:41.489 RX 006 bytes 00 00 00 00 80 DA
12:55:42.195 RX 006 bytes 00 00 00 00 80 DA
12:55:42.848 TX frame 006 00 00 B5 00 80 6F
12:55:42.899 RX 006 bytes 00 00 00 00 80 DA
12:55:43.150 RX 006 bytes 00 00 00 00 80 DA
12:55:43.404 RX 006 bytes 00 00 00 00 80 DA
12:55:43.655 RX 006 bytes 00 00 00 00 80 DA
12:55:43.909 RX 006 bytes 00 00 00 00 80 DA
12:55:44.110 RX 001 bytes 00
12:55:44.161 RX 005 bytes 00 00 00 80 DA
12:55:44.363 RX 001 bytes 00
12:55:44.414 RX 005 bytes 00 00 00 80 DA
12:55:44.618 RX 001 bytes 00
12:55:44.669 RX 005 bytes 00 00 00 80 DA
12:55:45.275 RX 006 bytes 00 00 00 00 80 DA
12:55:45.984 RX 006 bytes 00 00 00 00 80 DA
12:55:46.689 RX 006 bytes 00 00 00 00 80 DA
12:55:47.396 RX 006 bytes 00 00 00 00 80 DA

View File

@@ -0,0 +1,18 @@
Listening on COM5 at 38400 8N1; will send 00 00 B6 00 80 6C after 1.5s
12:55:57.174 RX 006 bytes 00 00 00 00 80 DA
12:55:57.879 RX 006 bytes 00 00 00 00 80 DA
12:55:58.233 TX frame 006 00 00 B6 00 80 6C
12:55:58.587 RX 006 bytes 00 00 00 00 80 DA
12:55:58.839 RX 006 bytes 00 00 00 00 80 DA
12:55:59.092 RX 006 bytes 00 00 00 00 80 DA
12:55:59.345 RX 006 bytes 00 00 00 00 80 DA
12:55:59.597 RX 006 bytes 00 00 00 00 80 DA
12:55:59.849 RX 006 bytes 00 00 00 00 80 DA
12:56:00.101 RX 006 bytes 00 00 00 00 80 DA
12:56:00.758 RX 001 bytes 00
12:56:00.808 RX 005 bytes 00 00 00 80 DA
12:56:01.464 RX 001 bytes 00
12:56:01.515 RX 005 bytes 00 00 00 80 DA
12:56:02.168 RX 001 bytes 00
12:56:02.218 RX 005 bytes 00 00 00 80 DA
12:56:02.873 RX 006 bytes 00 00 00 00 80 DA

View File

@@ -0,0 +1,189 @@
Direct response sweep: 256 frames on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes
12:49:52.045 TX p1=0x00 p2=0x00 cmd=0x00 state=0x00 value=0x80 frame 006 00 00 00 00 80 DA
12:49:52.656 TX p1=0x00 p2=0x00 cmd=0x01 state=0x00 value=0x80 frame 006 00 00 01 00 80 DB
12:49:53.265 TX p1=0x00 p2=0x00 cmd=0x02 state=0x00 value=0x80 frame 006 00 00 02 00 80 D8
12:49:53.874 TX p1=0x00 p2=0x00 cmd=0x03 state=0x00 value=0x80 frame 006 00 00 03 00 80 D9
12:49:54.482 TX p1=0x00 p2=0x00 cmd=0x04 state=0x00 value=0x80 frame 006 00 00 04 00 80 DE
12:49:55.093 TX p1=0x00 p2=0x00 cmd=0x05 state=0x00 value=0x80 frame 006 00 00 05 00 80 DF
12:49:55.705 TX p1=0x00 p2=0x00 cmd=0x06 state=0x00 value=0x80 frame 006 00 00 06 00 80 DC
12:49:56.314 TX p1=0x00 p2=0x00 cmd=0x07 state=0x00 value=0x80 frame 006 00 00 07 00 80 DD
12:49:56.924 TX p1=0x00 p2=0x00 cmd=0x08 state=0x00 value=0x80 frame 006 00 00 08 00 80 D2
12:49:57.535 TX p1=0x00 p2=0x00 cmd=0x09 state=0x00 value=0x80 frame 006 00 00 09 00 80 D3
12:49:58.145 TX p1=0x00 p2=0x00 cmd=0x0A state=0x00 value=0x80 frame 006 00 00 0A 00 80 D0
12:49:58.756 TX p1=0x00 p2=0x00 cmd=0x0B state=0x00 value=0x80 frame 006 00 00 0B 00 80 D1
12:49:59.367 TX p1=0x00 p2=0x00 cmd=0x0C state=0x00 value=0x80 frame 006 00 00 0C 00 80 D6
12:49:59.977 TX p1=0x00 p2=0x00 cmd=0x0D state=0x00 value=0x80 frame 006 00 00 0D 00 80 D7
12:50:00.588 TX p1=0x00 p2=0x00 cmd=0x0E state=0x00 value=0x80 frame 006 00 00 0E 00 80 D4
12:50:01.197 TX p1=0x00 p2=0x00 cmd=0x0F state=0x00 value=0x80 frame 006 00 00 0F 00 80 D5
12:50:01.808 TX p1=0x00 p2=0x00 cmd=0x10 state=0x00 value=0x80 frame 006 00 00 10 00 80 CA
12:50:02.417 TX p1=0x00 p2=0x00 cmd=0x11 state=0x00 value=0x80 frame 006 00 00 11 00 80 CB
12:50:03.027 TX p1=0x00 p2=0x00 cmd=0x12 state=0x00 value=0x80 frame 006 00 00 12 00 80 C8
12:50:03.638 TX p1=0x00 p2=0x00 cmd=0x13 state=0x00 value=0x80 frame 006 00 00 13 00 80 C9
12:50:04.248 TX p1=0x00 p2=0x00 cmd=0x14 state=0x00 value=0x80 frame 006 00 00 14 00 80 CE
12:50:04.857 TX p1=0x00 p2=0x00 cmd=0x15 state=0x00 value=0x80 frame 006 00 00 15 00 80 CF
12:50:05.469 TX p1=0x00 p2=0x00 cmd=0x16 state=0x00 value=0x80 frame 006 00 00 16 00 80 CC
12:50:06.077 TX p1=0x00 p2=0x00 cmd=0x17 state=0x00 value=0x80 frame 006 00 00 17 00 80 CD
12:50:06.687 TX p1=0x00 p2=0x00 cmd=0x18 state=0x00 value=0x80 frame 006 00 00 18 00 80 C2
12:50:07.301 TX p1=0x00 p2=0x00 cmd=0x19 state=0x00 value=0x80 frame 006 00 00 19 00 80 C3
12:50:07.940 TX p1=0x00 p2=0x00 cmd=0x1A state=0x00 value=0x80 frame 006 00 00 1A 00 80 C0
12:50:08.549 TX p1=0x00 p2=0x00 cmd=0x1B state=0x00 value=0x80 frame 006 00 00 1B 00 80 C1
12:50:09.161 TX p1=0x00 p2=0x00 cmd=0x1C state=0x00 value=0x80 frame 006 00 00 1C 00 80 C6
12:50:09.771 TX p1=0x00 p2=0x00 cmd=0x1D state=0x00 value=0x80 frame 006 00 00 1D 00 80 C7
12:50:10.409 TX p1=0x00 p2=0x00 cmd=0x1E state=0x00 value=0x80 frame 006 00 00 1E 00 80 C4
12:50:11.020 TX p1=0x00 p2=0x00 cmd=0x1F state=0x00 value=0x80 frame 006 00 00 1F 00 80 C5
12:50:11.658 TX p1=0x00 p2=0x00 cmd=0x20 state=0x00 value=0x80 frame 006 00 00 20 00 80 FA
12:50:12.275 TX p1=0x00 p2=0x00 cmd=0x21 state=0x00 value=0x80 frame 006 00 00 21 00 80 FB
12:50:12.886 TX p1=0x00 p2=0x00 cmd=0x22 state=0x00 value=0x80 frame 006 00 00 22 00 80 F8
12:50:13.496 TX p1=0x00 p2=0x00 cmd=0x23 state=0x00 value=0x80 frame 006 00 00 23 00 80 F9
12:50:14.109 TX p1=0x00 p2=0x00 cmd=0x24 state=0x00 value=0x80 frame 006 00 00 24 00 80 FE
12:50:14.718 TX p1=0x00 p2=0x00 cmd=0x25 state=0x00 value=0x80 frame 006 00 00 25 00 80 FF
12:50:15.325 TX p1=0x00 p2=0x00 cmd=0x26 state=0x00 value=0x80 frame 006 00 00 26 00 80 FC
12:50:15.934 TX p1=0x00 p2=0x00 cmd=0x27 state=0x00 value=0x80 frame 006 00 00 27 00 80 FD
12:50:16.545 TX p1=0x00 p2=0x00 cmd=0x28 state=0x00 value=0x80 frame 006 00 00 28 00 80 F2
12:50:17.155 TX p1=0x00 p2=0x00 cmd=0x29 state=0x00 value=0x80 frame 006 00 00 29 00 80 F3
12:50:17.763 TX p1=0x00 p2=0x00 cmd=0x2A state=0x00 value=0x80 frame 006 00 00 2A 00 80 F0
12:50:18.373 TX p1=0x00 p2=0x00 cmd=0x2B state=0x00 value=0x80 frame 006 00 00 2B 00 80 F1
12:50:18.981 TX p1=0x00 p2=0x00 cmd=0x2C state=0x00 value=0x80 frame 006 00 00 2C 00 80 F6
12:50:19.590 TX p1=0x00 p2=0x00 cmd=0x2D state=0x00 value=0x80 frame 006 00 00 2D 00 80 F7
12:50:20.199 TX p1=0x00 p2=0x00 cmd=0x2E state=0x00 value=0x80 frame 006 00 00 2E 00 80 F4
12:50:20.806 TX p1=0x00 p2=0x00 cmd=0x2F state=0x00 value=0x80 frame 006 00 00 2F 00 80 F5
12:50:21.415 TX p1=0x00 p2=0x00 cmd=0x30 state=0x00 value=0x80 frame 006 00 00 30 00 80 EA
12:50:22.023 TX p1=0x00 p2=0x00 cmd=0x31 state=0x00 value=0x80 frame 006 00 00 31 00 80 EB
12:50:22.633 TX p1=0x00 p2=0x00 cmd=0x32 state=0x00 value=0x80 frame 006 00 00 32 00 80 E8
12:50:23.244 TX p1=0x00 p2=0x00 cmd=0x33 state=0x00 value=0x80 frame 006 00 00 33 00 80 E9
12:50:23.852 TX p1=0x00 p2=0x00 cmd=0x34 state=0x00 value=0x80 frame 006 00 00 34 00 80 EE
12:50:24.459 TX p1=0x00 p2=0x00 cmd=0x35 state=0x00 value=0x80 frame 006 00 00 35 00 80 EF
12:50:25.072 TX p1=0x00 p2=0x00 cmd=0x36 state=0x00 value=0x80 frame 006 00 00 36 00 80 EC
12:50:25.681 TX p1=0x00 p2=0x00 cmd=0x37 state=0x00 value=0x80 frame 006 00 00 37 00 80 ED
12:50:26.294 TX p1=0x00 p2=0x00 cmd=0x38 state=0x00 value=0x80 frame 006 00 00 38 00 80 E2
12:50:26.902 TX p1=0x00 p2=0x00 cmd=0x39 state=0x00 value=0x80 frame 006 00 00 39 00 80 E3
12:50:27.513 TX p1=0x00 p2=0x00 cmd=0x3A state=0x00 value=0x80 frame 006 00 00 3A 00 80 E0
12:50:28.122 TX p1=0x00 p2=0x00 cmd=0x3B state=0x00 value=0x80 frame 006 00 00 3B 00 80 E1
12:50:28.732 TX p1=0x00 p2=0x00 cmd=0x3C state=0x00 value=0x80 frame 006 00 00 3C 00 80 E6
12:50:29.341 TX p1=0x00 p2=0x00 cmd=0x3D state=0x00 value=0x80 frame 006 00 00 3D 00 80 E7
12:50:29.951 TX p1=0x00 p2=0x00 cmd=0x3E state=0x00 value=0x80 frame 006 00 00 3E 00 80 E4
12:50:30.559 TX p1=0x00 p2=0x00 cmd=0x3F state=0x00 value=0x80 frame 006 00 00 3F 00 80 E5
12:50:31.168 TX p1=0x00 p2=0x00 cmd=0x40 state=0x00 value=0x80 frame 006 00 00 40 00 80 9A
12:50:31.777 TX p1=0x00 p2=0x00 cmd=0x41 state=0x00 value=0x80 frame 006 00 00 41 00 80 9B
12:50:32.388 TX p1=0x00 p2=0x00 cmd=0x42 state=0x00 value=0x80 frame 006 00 00 42 00 80 98
12:50:32.997 TX p1=0x00 p2=0x00 cmd=0x43 state=0x00 value=0x80 frame 006 00 00 43 00 80 99
12:50:33.605 TX p1=0x00 p2=0x00 cmd=0x44 state=0x00 value=0x80 frame 006 00 00 44 00 80 9E
12:50:34.219 TX p1=0x00 p2=0x00 cmd=0x45 state=0x00 value=0x80 frame 006 00 00 45 00 80 9F
12:50:34.825 TX p1=0x00 p2=0x00 cmd=0x46 state=0x00 value=0x80 frame 006 00 00 46 00 80 9C
12:50:35.436 TX p1=0x00 p2=0x00 cmd=0x47 state=0x00 value=0x80 frame 006 00 00 47 00 80 9D
12:50:36.043 TX p1=0x00 p2=0x00 cmd=0x48 state=0x00 value=0x80 frame 006 00 00 48 00 80 92
12:50:36.655 TX p1=0x00 p2=0x00 cmd=0x49 state=0x00 value=0x80 frame 006 00 00 49 00 80 93
12:50:37.264 TX p1=0x00 p2=0x00 cmd=0x4A state=0x00 value=0x80 frame 006 00 00 4A 00 80 90
12:50:37.875 TX p1=0x00 p2=0x00 cmd=0x4B state=0x00 value=0x80 frame 006 00 00 4B 00 80 91
12:50:38.484 TX p1=0x00 p2=0x00 cmd=0x4C state=0x00 value=0x80 frame 006 00 00 4C 00 80 96
12:50:39.093 TX p1=0x00 p2=0x00 cmd=0x4D state=0x00 value=0x80 frame 006 00 00 4D 00 80 97
12:50:39.705 TX p1=0x00 p2=0x00 cmd=0x4E state=0x00 value=0x80 frame 006 00 00 4E 00 80 94
12:50:40.314 TX p1=0x00 p2=0x00 cmd=0x4F state=0x00 value=0x80 frame 006 00 00 4F 00 80 95
12:50:40.925 TX p1=0x00 p2=0x00 cmd=0x50 state=0x00 value=0x80 frame 006 00 00 50 00 80 8A
12:50:41.534 TX p1=0x00 p2=0x00 cmd=0x51 state=0x00 value=0x80 frame 006 00 00 51 00 80 8B
12:50:42.143 TX p1=0x00 p2=0x00 cmd=0x52 state=0x00 value=0x80 frame 006 00 00 52 00 80 88
12:50:42.753 TX p1=0x00 p2=0x00 cmd=0x53 state=0x00 value=0x80 frame 006 00 00 53 00 80 89
12:50:43.362 TX p1=0x00 p2=0x00 cmd=0x54 state=0x00 value=0x80 frame 006 00 00 54 00 80 8E
12:50:43.972 TX p1=0x00 p2=0x00 cmd=0x55 state=0x00 value=0x80 frame 006 00 00 55 00 80 8F
12:50:44.583 TX p1=0x00 p2=0x00 cmd=0x56 state=0x00 value=0x80 frame 006 00 00 56 00 80 8C
12:50:45.193 TX p1=0x00 p2=0x00 cmd=0x57 state=0x00 value=0x80 frame 006 00 00 57 00 80 8D
12:50:45.802 TX p1=0x00 p2=0x00 cmd=0x58 state=0x00 value=0x80 frame 006 00 00 58 00 80 82
12:50:46.414 TX p1=0x00 p2=0x00 cmd=0x59 state=0x00 value=0x80 frame 006 00 00 59 00 80 83
12:50:47.023 TX p1=0x00 p2=0x00 cmd=0x5A state=0x00 value=0x80 frame 006 00 00 5A 00 80 80
12:50:47.634 TX p1=0x00 p2=0x00 cmd=0x5B state=0x00 value=0x80 frame 006 00 00 5B 00 80 81
12:50:48.244 TX p1=0x00 p2=0x00 cmd=0x5C state=0x00 value=0x80 frame 006 00 00 5C 00 80 86
12:50:48.853 TX p1=0x00 p2=0x00 cmd=0x5D state=0x00 value=0x80 frame 006 00 00 5D 00 80 87
12:50:49.462 TX p1=0x00 p2=0x00 cmd=0x5E state=0x00 value=0x80 frame 006 00 00 5E 00 80 84
12:50:50.073 TX p1=0x00 p2=0x00 cmd=0x5F state=0x00 value=0x80 frame 006 00 00 5F 00 80 85
12:50:50.683 TX p1=0x00 p2=0x00 cmd=0x60 state=0x00 value=0x80 frame 006 00 00 60 00 80 BA
12:50:51.293 TX p1=0x00 p2=0x00 cmd=0x61 state=0x00 value=0x80 frame 006 00 00 61 00 80 BB
12:50:51.904 TX p1=0x00 p2=0x00 cmd=0x62 state=0x00 value=0x80 frame 006 00 00 62 00 80 B8
12:50:52.512 TX p1=0x00 p2=0x00 cmd=0x63 state=0x00 value=0x80 frame 006 00 00 63 00 80 B9
12:50:53.121 TX p1=0x00 p2=0x00 cmd=0x64 state=0x00 value=0x80 frame 006 00 00 64 00 80 BE
12:50:53.730 TX p1=0x00 p2=0x00 cmd=0x65 state=0x00 value=0x80 frame 006 00 00 65 00 80 BF
12:50:54.337 TX p1=0x00 p2=0x00 cmd=0x66 state=0x00 value=0x80 frame 006 00 00 66 00 80 BC
12:50:54.950 TX p1=0x00 p2=0x00 cmd=0x67 state=0x00 value=0x80 frame 006 00 00 67 00 80 BD
12:50:55.559 TX p1=0x00 p2=0x00 cmd=0x68 state=0x00 value=0x80 frame 006 00 00 68 00 80 B2
12:50:56.170 TX p1=0x00 p2=0x00 cmd=0x69 state=0x00 value=0x80 frame 006 00 00 69 00 80 B3
12:50:56.778 TX p1=0x00 p2=0x00 cmd=0x6A state=0x00 value=0x80 frame 006 00 00 6A 00 80 B0
12:50:57.389 TX p1=0x00 p2=0x00 cmd=0x6B state=0x00 value=0x80 frame 006 00 00 6B 00 80 B1
12:50:57.998 TX p1=0x00 p2=0x00 cmd=0x6C state=0x00 value=0x80 frame 006 00 00 6C 00 80 B6
12:50:58.608 TX p1=0x00 p2=0x00 cmd=0x6D state=0x00 value=0x80 frame 006 00 00 6D 00 80 B7
12:50:59.219 TX p1=0x00 p2=0x00 cmd=0x6E state=0x00 value=0x80 frame 006 00 00 6E 00 80 B4
12:50:59.828 TX p1=0x00 p2=0x00 cmd=0x6F state=0x00 value=0x80 frame 006 00 00 6F 00 80 B5
12:51:00.440 TX p1=0x00 p2=0x00 cmd=0x70 state=0x00 value=0x80 frame 006 00 00 70 00 80 AA
12:51:01.052 TX p1=0x00 p2=0x00 cmd=0x71 state=0x00 value=0x80 frame 006 00 00 71 00 80 AB
12:51:01.664 TX p1=0x00 p2=0x00 cmd=0x72 state=0x00 value=0x80 frame 006 00 00 72 00 80 A8
12:51:02.273 TX p1=0x00 p2=0x00 cmd=0x73 state=0x00 value=0x80 frame 006 00 00 73 00 80 A9
12:51:02.883 TX p1=0x00 p2=0x00 cmd=0x74 state=0x00 value=0x80 frame 006 00 00 74 00 80 AE
12:51:03.492 TX p1=0x00 p2=0x00 cmd=0x75 state=0x00 value=0x80 frame 006 00 00 75 00 80 AF
12:51:04.101 TX p1=0x00 p2=0x00 cmd=0x76 state=0x00 value=0x80 frame 006 00 00 76 00 80 AC
12:51:04.711 TX p1=0x00 p2=0x00 cmd=0x77 state=0x00 value=0x80 frame 006 00 00 77 00 80 AD
12:51:05.319 TX p1=0x00 p2=0x00 cmd=0x78 state=0x00 value=0x80 frame 006 00 00 78 00 80 A2
12:51:05.927 TX p1=0x00 p2=0x00 cmd=0x79 state=0x00 value=0x80 frame 006 00 00 79 00 80 A3
12:51:06.538 TX p1=0x00 p2=0x00 cmd=0x7A state=0x00 value=0x80 frame 006 00 00 7A 00 80 A0
12:51:07.148 TX p1=0x00 p2=0x00 cmd=0x7B state=0x00 value=0x80 frame 006 00 00 7B 00 80 A1
12:51:07.758 TX p1=0x00 p2=0x00 cmd=0x7C state=0x00 value=0x80 frame 006 00 00 7C 00 80 A6
12:51:08.367 TX p1=0x00 p2=0x00 cmd=0x7D state=0x00 value=0x80 frame 006 00 00 7D 00 80 A7
12:51:08.976 TX p1=0x00 p2=0x00 cmd=0x7E state=0x00 value=0x80 frame 006 00 00 7E 00 80 A4
12:51:09.585 TX p1=0x00 p2=0x00 cmd=0x7F state=0x00 value=0x80 frame 006 00 00 7F 00 80 A5
12:51:10.194 TX p1=0x00 p2=0x00 cmd=0x80 state=0x00 value=0x80 frame 006 00 00 80 00 80 5A
12:51:10.802 TX p1=0x00 p2=0x00 cmd=0x81 state=0x00 value=0x80 frame 006 00 00 81 00 80 5B
12:51:11.412 TX p1=0x00 p2=0x00 cmd=0x82 state=0x00 value=0x80 frame 006 00 00 82 00 80 58
12:51:12.049 TX p1=0x00 p2=0x00 cmd=0x83 state=0x00 value=0x80 frame 006 00 00 83 00 80 59
12:51:12.658 TX p1=0x00 p2=0x00 cmd=0x84 state=0x00 value=0x80 frame 006 00 00 84 00 80 5E
12:51:13.271 TX p1=0x00 p2=0x00 cmd=0x85 state=0x00 value=0x80 frame 006 00 00 85 00 80 5F
12:51:13.881 TX p1=0x00 p2=0x00 cmd=0x86 state=0x00 value=0x80 frame 006 00 00 86 00 80 5C
12:51:14.490 TX p1=0x00 p2=0x00 cmd=0x87 state=0x00 value=0x80 frame 006 00 00 87 00 80 5D
12:51:15.100 TX p1=0x00 p2=0x00 cmd=0x88 state=0x00 value=0x80 frame 006 00 00 88 00 80 52
12:51:15.710 TX p1=0x00 p2=0x00 cmd=0x89 state=0x00 value=0x80 frame 006 00 00 89 00 80 53
12:51:16.318 TX p1=0x00 p2=0x00 cmd=0x8A state=0x00 value=0x80 frame 006 00 00 8A 00 80 50
12:51:16.930 TX p1=0x00 p2=0x00 cmd=0x8B state=0x00 value=0x80 frame 006 00 00 8B 00 80 51
12:51:17.540 TX p1=0x00 p2=0x00 cmd=0x8C state=0x00 value=0x80 frame 006 00 00 8C 00 80 56
12:51:18.149 TX p1=0x00 p2=0x00 cmd=0x8D state=0x00 value=0x80 frame 006 00 00 8D 00 80 57
12:51:18.758 TX p1=0x00 p2=0x00 cmd=0x8E state=0x00 value=0x80 frame 006 00 00 8E 00 80 54
12:51:19.367 TX p1=0x00 p2=0x00 cmd=0x8F state=0x00 value=0x80 frame 006 00 00 8F 00 80 55
12:51:19.976 TX p1=0x00 p2=0x00 cmd=0x90 state=0x00 value=0x80 frame 006 00 00 90 00 80 4A
12:51:20.583 TX p1=0x00 p2=0x00 cmd=0x91 state=0x00 value=0x80 frame 006 00 00 91 00 80 4B
12:51:21.192 TX p1=0x00 p2=0x00 cmd=0x92 state=0x00 value=0x80 frame 006 00 00 92 00 80 48
12:51:21.831 TX p1=0x00 p2=0x00 cmd=0x93 state=0x00 value=0x80 frame 006 00 00 93 00 80 49
12:51:22.440 TX p1=0x00 p2=0x00 cmd=0x94 state=0x00 value=0x80 frame 006 00 00 94 00 80 4E
12:51:23.052 TX p1=0x00 p2=0x00 cmd=0x95 state=0x00 value=0x80 frame 006 00 00 95 00 80 4F
12:51:23.661 TX p1=0x00 p2=0x00 cmd=0x96 state=0x00 value=0x80 frame 006 00 00 96 00 80 4C
12:51:24.299 TX p1=0x00 p2=0x00 cmd=0x97 state=0x00 value=0x80 frame 006 00 00 97 00 80 4D
12:51:24.910 TX p1=0x00 p2=0x00 cmd=0x98 state=0x00 value=0x80 frame 006 00 00 98 00 80 42
12:51:25.518 TX p1=0x00 p2=0x00 cmd=0x99 state=0x00 value=0x80 frame 006 00 00 99 00 80 43
12:51:26.125 TX p1=0x00 p2=0x00 cmd=0x9A state=0x00 value=0x80 frame 006 00 00 9A 00 80 40
12:51:26.735 TX p1=0x00 p2=0x00 cmd=0x9B state=0x00 value=0x80 frame 006 00 00 9B 00 80 41
12:51:27.344 TX p1=0x00 p2=0x00 cmd=0x9C state=0x00 value=0x80 frame 006 00 00 9C 00 80 46
12:51:27.955 TX p1=0x00 p2=0x00 cmd=0x9D state=0x00 value=0x80 frame 006 00 00 9D 00 80 47
12:51:28.563 TX p1=0x00 p2=0x00 cmd=0x9E state=0x00 value=0x80 frame 006 00 00 9E 00 80 44
12:51:29.173 TX p1=0x00 p2=0x00 cmd=0x9F state=0x00 value=0x80 frame 006 00 00 9F 00 80 45
12:51:29.782 TX p1=0x00 p2=0x00 cmd=0xA0 state=0x00 value=0x80 frame 006 00 00 A0 00 80 7A
12:51:30.392 TX p1=0x00 p2=0x00 cmd=0xA1 state=0x00 value=0x80 frame 006 00 00 A1 00 80 7B
12:51:31.000 TX p1=0x00 p2=0x00 cmd=0xA2 state=0x00 value=0x80 frame 006 00 00 A2 00 80 78
12:51:31.610 TX p1=0x00 p2=0x00 cmd=0xA3 state=0x00 value=0x80 frame 006 00 00 A3 00 80 79
12:51:32.220 TX p1=0x00 p2=0x00 cmd=0xA4 state=0x00 value=0x80 frame 006 00 00 A4 00 80 7E
12:51:32.829 TX p1=0x00 p2=0x00 cmd=0xA5 state=0x00 value=0x80 frame 006 00 00 A5 00 80 7F
12:51:33.439 TX p1=0x00 p2=0x00 cmd=0xA6 state=0x00 value=0x80 frame 006 00 00 A6 00 80 7C
12:51:34.048 TX p1=0x00 p2=0x00 cmd=0xA7 state=0x00 value=0x80 frame 006 00 00 A7 00 80 7D
12:51:34.658 TX p1=0x00 p2=0x00 cmd=0xA8 state=0x00 value=0x80 frame 006 00 00 A8 00 80 72
12:51:35.266 TX p1=0x00 p2=0x00 cmd=0xA9 state=0x00 value=0x80 frame 006 00 00 A9 00 80 73
12:51:35.878 TX p1=0x00 p2=0x00 cmd=0xAA state=0x00 value=0x80 frame 006 00 00 AA 00 80 70
12:51:36.488 TX p1=0x00 p2=0x00 cmd=0xAB state=0x00 value=0x80 frame 006 00 00 AB 00 80 71
12:51:37.096 TX p1=0x00 p2=0x00 cmd=0xAC state=0x00 value=0x80 frame 006 00 00 AC 00 80 76
12:51:37.710 TX p1=0x00 p2=0x00 cmd=0xAD state=0x00 value=0x80 frame 006 00 00 AD 00 80 77
12:51:38.348 TX p1=0x00 p2=0x00 cmd=0xAE state=0x00 value=0x80 frame 006 00 00 AE 00 80 74
12:51:38.958 TX p1=0x00 p2=0x00 cmd=0xAF state=0x00 value=0x80 frame 006 00 00 AF 00 80 75
12:51:39.570 TX p1=0x00 p2=0x00 cmd=0xB0 state=0x00 value=0x80 frame 006 00 00 B0 00 80 6A
12:51:40.180 TX p1=0x00 p2=0x00 cmd=0xB1 state=0x00 value=0x80 frame 006 00 00 B1 00 80 6B
12:51:40.791 TX p1=0x00 p2=0x00 cmd=0xB2 state=0x00 value=0x80 frame 006 00 00 B2 00 80 68
12:51:41.401 TX p1=0x00 p2=0x00 cmd=0xB3 state=0x00 value=0x80 frame 006 00 00 B3 00 80 69
12:51:42.014 TX p1=0x00 p2=0x00 cmd=0xB4 state=0x00 value=0x80 frame 006 00 00 B4 00 80 6E
12:51:42.623 TX p1=0x00 p2=0x00 cmd=0xB5 state=0x00 value=0x80 frame 006 00 00 B5 00 80 6F
12:51:42.623 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
12:51:42.623 RX raw 07 80 6D 20 D8 48 07 80 6D 20 D8 48 07 80 6D 20 D8 48
Stopping after anomaly.
FINAL ANOMALY 42 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
FINAL raw 07 80 6D 20 D8 48 07 80 6D 20 D8 48 07 80 6D 20 D8 48 07 80 6D 20 D8 48 07 80 6D 20 D8 48 07 80 6D 20 D8 48 00 00 00 00 80 DA

View File

@@ -0,0 +1,6 @@
Direct response sweep: 2 frames on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 12 bytes, offset 0, 2 frames + 0 bytes
12:59:25.335 TX p1=0x00 p2=0x00 cmd=0xB0 state=0x00 value=0x80 frame 006 00 00 B0 00 80 6A
12:59:25.944 TX p1=0x00 p2=0x00 cmd=0xB1 state=0x00 value=0x80 frame 006 00 00 B1 00 80 6B
FINAL heartbeat-compatible RX: 36 bytes, offset 0, 6 frames + 0 bytes
Anomalies: 0

View File

@@ -0,0 +1,9 @@
Direct response sweep: 9 frames on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 18 bytes, offset 0, 3 frames + 0 bytes
12:57:22.733 TX p1=0x00 p2=0x00 cmd=0xB0 state=0x00 value=0x80 frame 006 00 00 B0 00 80 6A
12:57:23.342 TX p1=0x00 p2=0x00 cmd=0xB1 state=0x00 value=0x80 frame 006 00 00 B1 00 80 6B
12:57:23.342 ANOMALY 6 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
12:57:23.342 RX raw 07 80 6C 20 D8 49
Stopping after anomaly.
FINAL heartbeat-compatible RX: 42 bytes, offset 0, 7 frames + 0 bytes
Anomalies: 1

View File

@@ -0,0 +1,294 @@
Probing 16 field combinations on COM5 at 38400 8N1
12:37:52.619 RX frame 006 00 00 00 00 80 DA
12:37:53.325 RX frame 006 00 00 00 00 80 DA
12:37:53.931 TX fields p1=0x00 p2=0x00 cmd=0x15 state=0x00 value=0x80 frame 006 00 00 15 00 80 CF
12:37:54.032 RX frame 006 00 00 00 00 80 DA
12:37:54.285 RX frame 006 00 00 00 00 80 DA
12:37:54.538 RX frame 006 00 00 00 00 80 DA
12:37:54.789 RX frame 006 00 00 00 00 80 DA
12:37:55.041 RX frame 006 00 00 00 00 80 DA
12:38:02.805 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:38:02.806 TX fields p1=0x00 p2=0x01 cmd=0x15 state=0x00 value=0x80 frame 006 00 01 15 00 80 CE
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.808 RX frame 006 00 00 00 00 80 DA
12:38:02.859 RX frame 006 00 00 00 00 80 DA
12:38:02.859 RX frame 006 00 00 00 00 80 DA
12:38:02.859 RX frame 006 00 00 00 00 80 DA
12:38:03.414 RX frame 006 00 00 00 00 80 DA
12:38:03.666 RX frame 006 00 00 00 00 80 DA
12:38:03.918 RX frame 006 00 00 00 00 80 DA
12:38:11.920 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:38:11.920 TX fields p1=0x00 p2=0x02 cmd=0x15 state=0x00 value=0x80 frame 006 00 02 15 00 80 CD
12:38:11.920 RX frame 006 00 00 00 00 80 DA
12:38:11.921 RX frame 006 00 00 00 00 80 DA
12:38:11.921 RX frame 006 00 00 00 00 80 DA
12:38:11.921 RX frame 006 00 00 00 00 80 DA
12:38:11.921 RX frame 006 00 00 00 00 80 DA
12:38:11.921 RX frame 006 00 00 00 00 80 DA
12:38:11.921 RX frame 006 00 00 00 00 80 DA
12:38:11.921 RX frame 006 00 00 00 00 80 DA
12:38:11.922 RX frame 006 00 00 00 00 80 DA
12:38:11.922 RX frame 006 00 00 00 00 80 DA
12:38:11.972 RX frame 006 00 00 00 00 80 DA
12:38:11.972 RX frame 006 00 00 00 00 80 DA
12:38:11.972 RX frame 006 00 00 00 00 80 DA
12:38:12.325 RX frame 006 00 00 00 00 80 DA
12:38:12.577 RX frame 006 00 00 00 00 80 DA
12:38:12.829 RX frame 006 00 00 00 00 80 DA
12:38:13.082 RX frame 006 00 00 00 00 80 DA
12:38:20.492 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:38:20.492 TX fields p1=0x00 p2=0x03 cmd=0x15 state=0x00 value=0x80 frame 006 00 03 15 00 80 CC
12:38:20.492 RX frame 006 00 00 00 00 80 DA
12:38:20.492 RX frame 006 00 00 00 00 80 DA
12:38:20.492 RX frame 006 00 00 00 00 80 DA
12:38:20.492 RX frame 006 00 00 00 00 80 DA
12:38:20.493 RX frame 006 00 00 00 00 80 DA
12:38:20.493 RX frame 006 00 00 00 00 80 DA
12:38:20.493 RX frame 006 00 00 00 00 80 DA
12:38:20.493 RX frame 006 00 00 00 00 80 DA
12:38:20.493 RX frame 006 00 00 00 00 80 DA
12:38:20.493 RX frame 006 00 00 00 00 80 DA
12:38:20.543 RX frame 006 00 00 00 00 80 DA
12:38:20.543 RX frame 006 00 00 00 00 80 DA
12:38:20.847 RX frame 006 00 00 00 00 80 DA
12:38:21.099 RX frame 006 00 00 00 00 80 DA
12:38:21.352 RX frame 006 00 00 00 00 80 DA
12:38:21.604 RX frame 006 00 00 00 00 80 DA
12:38:29.244 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NTO ACT
12:38:29.244 TX fields p1=0x00 p2=0x04 cmd=0x15 state=0x00 value=0x80 frame 006 00 04 15 00 80 CB
12:38:29.245 RX frame 006 00 00 00 00 80 DA
12:38:29.246 RX frame 006 00 00 00 00 80 DA
12:38:29.246 RX frame 006 00 00 00 00 80 DA
12:38:29.246 RX frame 006 00 00 00 00 80 DA
12:38:29.246 RX frame 006 00 00 00 00 80 DA
12:38:29.246 RX frame 006 00 00 00 00 80 DA
12:38:29.246 RX frame 006 00 00 00 00 80 DA
12:38:29.246 RX frame 006 00 00 00 00 80 DA
12:38:29.246 RX frame 006 00 00 00 00 80 DA
12:38:29.246 RX frame 006 00 00 00 00 80 DA
12:38:29.297 RX frame 006 00 00 00 00 80 DA
12:38:29.297 RX frame 006 00 00 00 00 80 DA
12:38:29.347 RX frame 006 00 00 00 00 80 DA
12:38:29.600 RX frame 006 00 00 00 00 80 DA
12:38:29.853 RX frame 006 00 00 00 00 80 DA
12:38:30.105 RX frame 006 00 00 00 00 80 DA
12:38:30.356 RX frame 006 00 00 00 00 80 DA
12:38:38.590 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:38:38.590 TX fields p1=0x00 p2=0x05 cmd=0x15 state=0x00 value=0x80 frame 006 00 05 15 00 80 CA
12:38:38.590 RX frame 006 00 00 00 00 80 DA
12:38:38.592 RX frame 006 00 00 00 00 80 DA
12:38:38.592 RX frame 006 00 00 00 00 80 DA
12:38:38.592 RX frame 006 00 00 00 00 80 DA
12:38:38.592 RX frame 006 00 00 00 00 80 DA
12:38:38.592 RX frame 006 00 00 00 00 80 DA
12:38:38.592 RX frame 006 00 00 00 00 80 DA
12:38:38.592 RX frame 006 00 00 00 00 80 DA
12:38:38.592 RX frame 006 00 00 00 00 80 DA
12:38:38.592 RX frame 006 00 00 00 00 80 DA
12:38:38.642 RX frame 006 00 00 00 00 80 DA
12:38:38.642 RX frame 006 00 00 00 00 80 DA
12:38:38.642 RX frame 006 00 00 00 00 80 DA
12:38:38.743 RX frame 006 00 00 00 00 80 DA
12:38:38.995 RX frame 006 00 00 00 00 80 DA
12:38:39.246 RX frame 006 00 00 00 00 80 DA
12:38:39.498 RX frame 006 00 00 00 00 80 DA
12:38:39.750 RX frame 006 00 00 00 00 80 DA
12:38:49.741 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:38:49.741 TX fields p1=0x00 p2=0x06 cmd=0x15 state=0x00 value=0x80 frame 006 00 06 15 00 80 C9
12:38:49.742 RX frame 006 00 00 00 00 80 DA
12:38:49.742 RX frame 006 00 00 00 00 80 DA
12:38:49.742 RX frame 006 00 00 00 00 80 DA
12:38:49.742 RX frame 006 00 00 00 00 80 DA
12:38:49.743 RX frame 006 00 00 00 00 80 DA
12:38:49.743 RX frame 006 00 00 00 00 80 DA
12:38:49.743 RX frame 006 00 00 00 00 80 DA
12:38:49.743 RX frame 006 00 00 00 00 80 DA
12:38:49.743 RX frame 006 00 00 00 00 80 DA
12:38:49.743 RX frame 006 00 00 00 00 80 DA
12:38:49.793 RX frame 006 00 00 00 00 80 DA
12:38:49.793 RX frame 006 00 00 00 00 80 DA
12:38:49.793 RX frame 006 00 00 00 00 80 DA
12:38:49.793 RX frame 006 00 00 00 00 80 DA
12:38:49.793 RX frame 006 00 00 00 00 80 DA
12:38:49.793 RX frame 006 00 00 00 00 80 DA
12:38:50.246 RX frame 006 00 00 00 00 80 DA
12:38:50.499 RX frame 006 00 00 00 00 80 DA
12:38:50.751 RX frame 006 00 00 00 00 80 DA
12:39:00.497 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:39:00.497 TX fields p1=0x00 p2=0x07 cmd=0x15 state=0x00 value=0x80 frame 006 00 07 15 00 80 C8
12:39:00.497 RX frame 006 00 00 00 00 80 DA
12:39:00.497 RX frame 006 00 00 00 00 80 DA
12:39:00.497 RX frame 006 00 00 00 00 80 DA
12:39:00.498 RX frame 006 00 00 00 00 80 DA
12:39:00.498 RX frame 006 00 00 00 00 80 DA
12:39:00.498 RX frame 006 00 00 00 00 80 DA
12:39:00.498 RX frame 006 00 00 00 00 80 DA
12:39:00.498 RX frame 006 00 00 00 00 80 DA
12:39:00.498 RX frame 006 00 00 00 00 80 DA
12:39:00.498 RX frame 006 00 00 00 00 80 DA
12:39:00.549 RX frame 006 00 00 00 00 80 DA
12:39:00.549 RX frame 006 00 00 00 00 80 DA
12:39:00.549 RX frame 006 00 00 00 00 80 DA
12:39:00.549 RX frame 006 00 00 00 00 80 DA
12:39:00.549 RX frame 006 00 00 00 00 80 DA
12:39:00.549 RX frame 006 00 00 00 00 80 DA
12:39:01.255 RX frame 006 00 00 00 00 80 DA
12:39:08.978 TX fields p1=0x00 p2=0x08 cmd=0x15 state=0x00 value=0x80 frame 006 00 08 15 00 80 C7
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:08.979 RX frame 006 00 00 00 00 80 DA
12:39:09.030 RX frame 006 00 00 00 00 80 DA
12:39:09.635 RX frame 006 00 00 00 00 80 DA
12:39:09.888 RX frame 006 00 00 00 00 80 DA
12:39:10.141 RX frame 006 00 00 00 00 80 DA
12:39:18.496 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:39:18.496 TX fields p1=0x00 p2=0x09 cmd=0x15 state=0x00 value=0x80 frame 006 00 09 15 00 80 C6
12:39:18.497 RX frame 006 00 00 00 00 80 DA
12:39:18.497 RX frame 006 00 00 00 00 80 DA
12:39:18.498 RX frame 006 00 00 00 00 80 DA
12:39:18.498 RX frame 006 00 00 00 00 80 DA
12:39:18.498 RX frame 006 00 00 00 00 80 DA
12:39:18.498 RX frame 006 00 00 00 00 80 DA
12:39:18.498 RX frame 006 00 00 00 00 80 DA
12:39:18.498 RX frame 006 00 00 00 00 80 DA
12:39:18.498 RX frame 006 00 00 00 00 80 DA
12:39:18.498 RX frame 006 00 00 00 00 80 DA
12:39:18.549 RX frame 006 00 00 00 00 80 DA
12:39:18.549 RX frame 006 00 00 00 00 80 DA
12:39:18.549 RX frame 006 00 00 00 00 80 DA
12:39:18.549 RX frame 006 00 00 00 00 80 DA
12:39:18.800 RX frame 006 00 00 00 00 80 DA
12:39:19.052 RX frame 006 00 00 00 00 80 DA
12:39:19.304 RX frame 006 00 00 00 00 80 DA
12:39:19.557 RX frame 006 00 00 00 00 80 DA
12:39:28.690 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:39:28.690 TX fields p1=0x00 p2=0x0A cmd=0x15 state=0x00 value=0x80 frame 006 00 0A 15 00 80 C5
12:39:28.690 RX frame 006 00 00 00 00 80 DA
12:39:28.690 RX frame 006 00 00 00 00 80 DA
12:39:28.690 RX frame 006 00 00 00 00 80 DA
12:39:28.690 RX frame 006 00 00 00 00 80 DA
12:39:28.690 RX frame 006 00 00 00 00 80 DA
12:39:28.691 RX frame 006 00 00 00 00 80 DA
12:39:28.691 RX frame 006 00 00 00 00 80 DA
12:39:28.691 RX frame 006 00 00 00 00 80 DA
12:39:28.691 RX frame 006 00 00 00 00 80 DA
12:39:28.691 RX frame 006 00 00 00 00 80 DA
12:39:28.741 RX frame 006 00 00 00 00 80 DA
12:39:28.741 RX frame 006 00 00 00 00 80 DA
12:39:28.741 RX frame 006 00 00 00 00 80 DA
12:39:28.741 RX frame 006 00 00 00 00 80 DA
12:39:28.741 RX frame 006 00 00 00 00 80 DA
12:39:29.349 RX frame 006 00 00 00 00 80 DA
12:39:29.601 RX frame 006 00 00 00 00 80 DA
12:39:29.853 RX frame 006 00 00 00 00 80 DA
12:39:37.248 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:39:37.248 TX fields p1=0x00 p2=0x0B cmd=0x15 state=0x00 value=0x80 frame 006 00 0B 15 00 80 C4
12:39:37.249 RX frame 006 00 00 00 00 80 DA
12:39:37.249 RX frame 006 00 00 00 00 80 DA
12:39:37.249 RX frame 006 00 00 00 00 80 DA
12:39:37.249 RX frame 006 00 00 00 00 80 DA
12:39:37.249 RX frame 006 00 00 00 00 80 DA
12:39:37.249 RX frame 006 00 00 00 00 80 DA
12:39:37.249 RX frame 006 00 00 00 00 80 DA
12:39:37.250 RX frame 006 00 00 00 00 80 DA
12:39:37.250 RX frame 006 00 00 00 00 80 DA
12:39:37.250 RX frame 006 00 00 00 00 80 DA
12:39:37.300 RX frame 006 00 00 00 00 80 DA
12:39:37.300 RX frame 006 00 00 00 00 80 DA
12:39:37.552 RX frame 006 00 00 00 00 80 DA
12:39:37.804 RX frame 006 00 00 00 00 80 DA
12:39:38.055 RX frame 006 00 00 00 00 80 DA
12:39:38.307 RX frame 006 00 00 00 00 80 DA
12:39:46.402 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:39:46.403 TX fields p1=0x00 p2=0x0C cmd=0x15 state=0x00 value=0x80 frame 006 00 0C 15 00 80 C3
12:39:46.403 RX frame 006 00 00 00 00 80 DA
12:39:46.404 RX frame 006 00 00 00 00 80 DA
12:39:46.404 RX frame 006 00 00 00 00 80 DA
12:39:46.404 RX frame 006 00 00 00 00 80 DA
12:39:46.405 RX frame 006 00 00 00 00 80 DA
12:39:46.405 RX frame 006 00 00 00 00 80 DA
12:39:46.405 RX frame 006 00 00 00 00 80 DA
12:39:46.405 RX frame 006 00 00 00 00 80 DA
12:39:46.405 RX frame 006 00 00 00 00 80 DA
12:39:46.405 RX frame 006 00 00 00 00 80 DA
12:39:46.455 RX frame 006 00 00 00 00 80 DA
12:39:46.455 RX frame 006 00 00 00 00 80 DA
12:39:46.455 RX frame 006 00 00 00 00 80 DA
12:39:46.757 RX frame 006 00 00 00 00 80 DA
12:39:47.011 RX frame 006 00 00 00 00 80 DA
12:39:47.264 RX frame 006 00 00 00 00 80 DA
12:39:47.517 RX frame 006 00 00 00 00 80 DA
12:39:54.570 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:39:54.571 TX fields p1=0x00 p2=0x0D cmd=0x15 state=0x00 value=0x80 frame 006 00 0D 15 00 80 C2
12:39:54.571 RX frame 006 00 00 00 00 80 DA
12:39:54.571 RX frame 006 00 00 00 00 80 DA
12:39:54.571 RX frame 006 00 00 00 00 80 DA
12:39:54.571 RX frame 006 00 00 00 00 80 DA
12:39:54.571 RX frame 006 00 00 00 00 80 DA
12:39:54.571 RX frame 006 00 00 00 00 80 DA
12:39:54.571 RX frame 006 00 00 00 00 80 DA
12:39:54.571 RX frame 006 00 00 00 00 80 DA
12:39:54.571 RX frame 006 00 00 00 00 80 DA
12:39:54.572 RX frame 006 00 00 00 00 80 DA
12:39:54.623 RX frame 006 00 00 00 00 80 DA
12:39:54.623 RX frame 006 00 00 00 00 80 DA
12:39:55.280 RX frame 006 00 00 00 00 80 DA
12:39:55.531 RX frame 006 00 00 00 00 80 DA
12:39:55.733 RX frame 006 00 00 00 00 80 DA
12:40:03.339 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:40:03.339 TX fields p1=0x00 p2=0x0E cmd=0x15 state=0x00 value=0x80 frame 006 00 0E 15 00 80 C1
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.340 RX frame 006 00 00 00 00 80 DA
12:40:03.391 RX frame 006 00 00 00 00 80 DA
12:40:03.391 RX frame 006 00 00 00 00 80 DA
12:40:03.442 RX frame 006 00 00 00 00 80 DA
12:40:03.693 RX frame 006 00 00 00 00 80 DA
12:40:03.945 RX frame 006 00 00 00 00 80 DA
12:40:04.198 RX frame 006 00 00 00 00 80 DA
12:40:04.450 RX frame 006 00 00 00 00 80 DA
12:40:10.928 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:40:10.928 TX fields p1=0x00 p2=0x0F cmd=0x15 state=0x00 value=0x80 frame 006 00 0F 15 00 80 C0
12:40:10.929 RX frame 006 00 00 00 00 80 DA
12:40:10.929 RX frame 006 00 00 00 00 80 DA
12:40:10.929 RX frame 006 00 00 00 00 80 DA
12:40:10.929 RX frame 006 00 00 00 00 80 DA
12:40:10.929 RX frame 006 00 00 00 00 80 DA
12:40:10.929 RX frame 006 00 00 00 00 80 DA
12:40:10.930 RX frame 006 00 00 00 00 80 DA
12:40:10.930 RX frame 006 00 00 00 00 80 DA
12:40:10.930 RX frame 006 00 00 00 00 80 DA
12:40:10.930 RX frame 006 00 00 00 00 80 DA
12:40:10.981 RX frame 006 00 00 00 00 80 DA
12:40:11.436 RX frame 006 00 00 00 00 80 DA
12:40:12.143 RX frame 006 00 00 00 00 80 DA
12:40:15.159 RX frame 006 00 00 00 00 80 DA
12:40:15.159 RX frame 006 00 00 00 00 80 DA
12:40:15.159 RX frame 006 00 00 00 00 80 DA
12:40:15.159 RX frame 006 00 00 00 00 80 DA
12:40:15.664 RX frame 006 00 00 00 00 80 DA
12:40:16.371 RX frame 006 00 00 00 00 80 DA
12:40:17.077 RX frame 006 00 00 00 00 80 DA
12:40:17.783 RX frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,88 @@
Probing 5 field combinations on COM5 at 38400 8N1
12:42:53.175 RX frame 006 00 00 00 00 80 DA
12:42:53.882 RX frame 006 00 00 00 00 80 DA
12:42:54.388 TX fields p1=0x00 p2=0x06 cmd=0x15 state=0x00 value=0x80 frame 006 00 06 15 00 80 C9
12:42:54.591 RX frame 006 00 00 00 00 80 DA
12:42:54.843 RX frame 006 00 00 00 00 80 DA
12:42:55.095 RX frame 006 00 00 00 00 80 DA
12:42:55.348 RX frame 006 00 00 00 00 80 DA
12:42:55.600 RX frame 006 00 00 00 00 80 DA
12:43:06.568 SCREEN p1=0x00 p2=0x06 cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:43:06.569 TX fields p1=0x00 p2=0x07 cmd=0x15 state=0x00 value=0x80 frame 006 00 07 15 00 80 C8
12:43:06.570 RX frame 006 00 00 00 00 80 DA
12:43:06.570 RX frame 006 00 00 00 00 80 DA
12:43:06.570 RX frame 006 00 00 00 00 80 DA
12:43:06.570 RX frame 006 00 00 00 00 80 DA
12:43:06.571 RX frame 006 00 00 00 00 80 DA
12:43:06.571 RX frame 006 00 00 00 00 80 DA
12:43:06.571 RX frame 006 00 00 00 00 80 DA
12:43:06.572 RX frame 006 00 00 00 00 80 DA
12:43:06.572 RX frame 006 00 00 00 00 80 DA
12:43:06.572 RX frame 006 00 00 00 00 80 DA
12:43:06.623 RX frame 006 00 00 00 00 80 DA
12:43:06.623 RX frame 006 00 00 00 00 80 DA
12:43:06.623 RX frame 006 00 00 00 00 80 DA
12:43:06.623 RX frame 006 00 00 00 00 80 DA
12:43:06.623 RX frame 006 00 00 00 00 80 DA
12:43:06.623 RX frame 006 00 00 00 00 80 DA
12:43:06.624 RX frame 006 00 00 00 00 80 DA
12:43:06.776 RX frame 006 00 00 00 00 80 DA
12:43:07.483 RX frame 006 00 00 00 00 80 DA
12:43:13.717 TX fields p1=0x00 p2=0x08 cmd=0x15 state=0x00 value=0x80 frame 006 00 08 15 00 80 C7
12:43:13.768 RX frame 006 00 00 00 00 80 DA
12:43:13.768 RX frame 006 00 00 00 00 80 DA
12:43:13.768 RX frame 006 00 00 00 00 80 DA
12:43:13.768 RX frame 006 00 00 00 00 80 DA
12:43:13.768 RX frame 006 00 00 00 00 80 DA
12:43:13.768 RX frame 006 00 00 00 00 80 DA
12:43:13.768 RX frame 006 00 00 00 00 80 DA
12:43:13.768 RX frame 006 00 00 00 00 80 DA
12:43:13.768 RX frame 006 00 00 00 00 80 DA
12:43:14.020 RX frame 006 00 00 00 00 80 DA
12:43:14.272 RX frame 006 00 00 00 00 80 DA
12:43:14.525 RX frame 006 00 00 00 00 80 DA
12:43:14.777 RX frame 006 00 00 00 00 80 DA
12:43:22.946 SCREEN p1=0x00 p2=0x08 cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:43:22.946 TX fields p1=0x00 p2=0x0E cmd=0x15 state=0x00 value=0x80 frame 006 00 0E 15 00 80 C1
12:43:22.947 RX frame 006 00 00 00 00 80 DA
12:43:22.947 RX frame 006 00 00 00 00 80 DA
12:43:22.947 RX frame 006 00 00 00 00 80 DA
12:43:22.947 RX frame 006 00 00 00 00 80 DA
12:43:22.947 RX frame 006 00 00 00 00 80 DA
12:43:22.947 RX frame 006 00 00 00 00 80 DA
12:43:22.948 RX frame 006 00 00 00 00 80 DA
12:43:22.948 RX frame 006 00 00 00 00 80 DA
12:43:22.948 RX frame 006 00 00 00 00 80 DA
12:43:22.948 RX frame 006 00 00 00 00 80 DA
12:43:22.998 RX frame 006 00 00 00 00 80 DA
12:43:22.998 RX frame 006 00 00 00 00 80 DA
12:43:22.998 RX frame 006 00 00 00 00 80 DA
12:43:23.200 RX frame 006 00 00 00 00 80 DA
12:43:23.453 RX frame 006 00 00 00 00 80 DA
12:43:23.705 RX frame 006 00 00 00 00 80 DA
12:43:23.957 RX frame 006 00 00 00 00 80 DA
12:43:31.920 SCREEN p1=0x00 p2=0x0E cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:43:31.920 TX fields p1=0x00 p2=0x0F cmd=0x15 state=0x00 value=0x80 frame 006 00 0F 15 00 80 C0
12:43:31.921 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.921 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.921 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.921 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.921 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.921 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.921 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.922 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.922 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.922 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.972 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.972 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:31.972 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:32.577 RX frame 006 00 00 00 80 DA 00 NON_HEARTBEAT
12:43:35.909 RX frame 006 00 00 00 00 80 DA
12:43:35.909 RX frame 006 00 00 00 00 80 DA
12:43:35.909 RX frame 006 00 00 00 00 80 DA
12:43:35.909 RX frame 006 00 00 00 00 80 DA
12:43:36.112 RX frame 006 00 00 00 00 80 DA
12:43:36.769 RX frame 006 00 00 00 00 80 DA
12:43:37.478 RX frame 006 00 00 00 00 80 DA
12:43:38.186 RX frame 006 00 00 00 00 80 DA
12:43:38.892 RX frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,102 @@
Probing 4 field combinations on COM5 at 38400 8N1
12:35:06.502 RX frame 006 00 00 00 00 80 DA
12:35:07.209 RX frame 006 00 00 00 00 80 DA
12:35:07.361 TX fields p1=0x00 p2=0x00 cmd=0x15 state=0x00 value=0x00 frame 006 00 00 15 00 00 4F
12:35:07.917 RX frame 006 00 00 00 00 80 DA
12:35:08.170 RX frame 006 00 00 00 00 80 DA
12:35:08.422 RX frame 006 00 00 00 00 80 DA
12:35:21.094 SCREEN cmd=0x15 state=0x00 value=0x00 CONNECT NOT ACT
12:35:21.094 TX fields p1=0x00 p2=0x00 cmd=0x15 state=0x00 value=0x80 frame 006 00 00 15 00 80 CF
12:35:21.094 RX frame 006 00 00 00 00 80 DA
12:35:21.096 RX frame 006 00 00 00 00 80 DA
12:35:21.096 RX frame 006 00 00 00 00 80 DA
12:35:21.096 RX frame 006 00 00 00 00 80 DA
12:35:21.096 RX frame 006 00 00 00 00 80 DA
12:35:21.096 RX frame 006 00 00 00 00 80 DA
12:35:21.096 RX frame 006 00 00 00 00 80 DA
12:35:21.096 RX frame 006 00 00 00 00 80 DA
12:35:21.096 RX frame 006 00 00 00 00 80 DA
12:35:21.096 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.146 RX frame 006 00 00 00 00 80 DA
12:35:21.704 RX frame 006 00 00 00 00 80 DA
12:35:21.955 RX frame 006 00 00 00 00 80 DA
12:35:22.208 RX frame 006 00 00 00 00 80 DA
12:35:31.923 SCREEN cmd=0x15 state=0x00 value=0x80 CONNECT NOT ACT
12:35:31.923 TX fields p1=0x00 p2=0x00 cmd=0x15 state=0x80 value=0x00 frame 006 00 00 15 80 00 CF
12:35:31.923 RX frame 006 00 00 00 00 80 DA
12:35:31.923 RX frame 006 00 00 00 00 80 DA
12:35:31.924 RX frame 006 00 00 00 00 80 DA
12:35:31.924 RX frame 006 00 00 00 00 80 DA
12:35:31.924 RX frame 006 00 00 00 00 80 DA
12:35:31.924 RX frame 006 00 00 00 00 80 DA
12:35:31.924 RX frame 006 00 00 00 00 80 DA
12:35:31.924 RX frame 006 00 00 00 00 80 DA
12:35:31.924 RX frame 006 00 00 00 00 80 DA
12:35:31.924 RX frame 006 00 00 00 00 80 DA
12:35:31.975 RX frame 006 00 00 00 00 80 DA
12:35:31.975 RX frame 006 00 00 00 00 80 DA
12:35:31.975 RX frame 006 00 00 00 00 80 DA
12:35:31.975 RX frame 006 00 00 00 00 80 DA
12:35:31.975 RX frame 006 00 00 00 00 80 DA
12:35:32.026 RX frame 006 00 00 00 00 80 DA
12:35:32.278 RX frame 006 00 00 00 00 80 DA
12:35:32.529 RX frame 006 00 00 00 00 80 DA
12:35:32.782 RX frame 006 00 00 00 00 80 DA
12:35:33.033 RX frame 006 00 00 00 00 80 DA
12:35:42.653 SCREEN cmd=0x15 state=0x80 value=0x00 CONNECT NOT ACT
12:35:42.653 TX fields p1=0x00 p2=0x00 cmd=0x15 state=0x80 value=0x80 frame 006 00 00 15 80 80 4F
12:35:42.654 RX frame 006 00 00 00 00 80 DA
12:35:42.654 RX frame 006 00 00 00 00 80 DA
12:35:42.655 RX frame 006 00 00 00 00 80 DA
12:35:42.655 RX frame 006 00 00 00 00 80 DA
12:35:42.655 RX frame 006 00 00 00 00 80 DA
12:35:42.656 RX frame 006 00 00 00 00 80 DA
12:35:42.656 RX frame 006 00 00 00 00 80 DA
12:35:42.656 RX frame 006 00 00 00 00 80 DA
12:35:42.656 RX frame 006 00 00 00 00 80 DA
12:35:42.656 RX frame 006 00 00 00 00 80 DA
12:35:42.706 RX frame 006 00 00 00 00 80 DA
12:35:42.706 RX frame 006 00 00 00 00 80 DA
12:35:42.706 RX frame 006 00 00 00 00 80 DA
12:35:42.706 RX frame 006 00 00 00 00 80 DA
12:35:42.706 RX frame 006 00 00 00 00 80 DA
12:35:42.807 RX frame 006 00 00 00 00 80 DA
12:35:43.060 RX frame 006 00 00 00 00 80 DA
12:35:43.313 RX frame 006 00 00 00 00 80 DA
12:35:43.566 RX frame 006 00 00 00 00 80 DA
12:35:43.817 RX frame 006 00 00 00 00 80 DA
12:35:56.963 SCREEN cmd=0x15 state=0x80 value=0x80 CONNECT NOT ACT
12:35:56.964 RX frame 006 00 00 00 00 80 DA
12:35:56.965 RX frame 006 00 00 00 00 80 DA
12:35:56.965 RX frame 006 00 00 00 00 80 DA
12:35:56.965 RX frame 006 00 00 00 00 80 DA
12:35:56.966 RX frame 006 00 00 00 00 80 DA
12:35:56.966 RX frame 006 00 00 00 00 80 DA
12:35:56.966 RX frame 006 00 00 00 00 80 DA
12:35:56.966 RX frame 006 00 00 00 00 80 DA
12:35:56.966 RX frame 006 00 00 00 00 80 DA
12:35:56.966 RX frame 006 00 00 00 00 80 DA
12:35:57.016 RX frame 006 00 00 00 00 80 DA
12:35:57.016 RX frame 006 00 00 00 00 80 DA
12:35:57.016 RX frame 006 00 00 00 00 80 DA
12:35:57.016 RX frame 006 00 00 00 00 80 DA
12:35:57.016 RX frame 006 00 00 00 00 80 DA
12:35:57.016 RX frame 006 00 00 00 00 80 DA
12:35:57.016 RX frame 006 00 00 00 00 80 DA
12:35:57.016 RX frame 006 00 00 00 00 80 DA
12:35:57.017 RX frame 006 00 00 00 00 80 DA
12:35:57.017 RX frame 006 00 00 00 00 80 DA
12:35:57.119 RX frame 006 00 00 00 00 80 DA
12:35:57.827 RX frame 006 00 00 00 00 80 DA
12:35:58.533 RX frame 006 00 00 00 00 80 DA
12:35:59.241 RX frame 006 00 00 00 00 80 DA
12:35:59.897 RX frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,67 @@
11:08:04.674 frame 006 00 00 00 00 80 DA
11:08:05.477 frame 006 00 00 00 00 80 DA
11:08:06.078 frame 006 00 00 00 00 80 DA
11:08:06.881 frame 006 00 00 00 00 80 DA
11:08:07.483 frame 006 00 00 00 00 80 DA
11:08:08.084 frame 006 00 00 00 00 80 DA
11:08:08.886 frame 006 00 00 00 00 80 DA
11:08:09.486 frame 006 00 00 00 00 80 DA
11:08:10.290 frame 006 00 00 00 00 80 DA
11:08:10.891 frame 006 00 00 00 00 80 DA
11:08:11.693 frame 006 00 00 00 00 80 DA
11:08:12.295 frame 006 00 00 00 00 80 DA
11:08:13.096 frame 006 00 00 00 00 80 DA
11:08:13.697 frame 006 00 00 00 00 80 DA
11:08:14.501 frame 006 00 00 00 00 80 DA
11:08:15.102 frame 006 00 00 00 00 80 DA
11:08:15.904 frame 006 00 00 00 00 80 DA
11:08:16.505 frame 006 00 00 00 00 80 DA
11:08:17.306 frame 006 00 00 00 00 80 DA
11:08:17.907 frame 006 00 00 00 00 80 DA
11:08:18.708 frame 006 00 00 00 00 80 DA
11:08:19.309 frame 006 00 00 00 00 80 DA
11:08:20.111 frame 006 00 00 00 00 80 DA
11:08:20.713 frame 006 00 00 00 00 80 DA
11:08:21.515 frame 006 00 00 00 00 80 DA
11:08:22.117 frame 006 00 00 00 00 80 DA
11:08:22.919 frame 006 00 00 00 00 80 DA
11:08:23.522 frame 006 00 00 00 00 80 DA
11:08:24.323 frame 006 00 00 00 00 80 DA
11:08:24.925 frame 006 00 00 00 00 80 DA
11:08:25.726 frame 006 00 00 00 00 80 DA
11:08:26.328 frame 006 00 00 00 00 80 DA
11:08:27.131 frame 006 00 00 00 00 80 DA
11:08:27.732 frame 006 00 00 00 00 80 DA
11:08:28.535 frame 006 00 00 00 00 80 DA
11:08:29.136 frame 006 00 00 00 00 80 DA
11:08:29.938 frame 006 00 00 00 00 80 DA
11:08:30.539 frame 006 00 00 00 00 80 DA
11:08:31.341 frame 006 00 00 00 00 80 DA
11:08:31.942 frame 006 00 00 00 00 80 DA
11:08:32.743 frame 006 00 00 00 00 80 DA
11:08:33.345 frame 006 00 00 00 00 80 DA
11:08:34.147 frame 006 00 00 00 00 80 DA
11:08:34.748 frame 006 00 00 00 00 80 DA
11:08:35.551 frame 006 00 00 00 00 80 DA
11:08:36.152 frame 006 00 00 00 00 80 DA
11:08:36.953 frame 006 00 00 00 00 80 DA
11:08:37.556 frame 006 00 00 00 00 80 DA
11:08:38.358 frame 006 00 00 00 00 80 DA
11:08:38.959 frame 006 00 00 00 00 80 DA
11:08:39.761 frame 006 00 00 00 00 80 DA
11:08:40.362 frame 006 00 00 00 00 80 DA
11:08:41.163 frame 006 00 00 00 00 80 DA
11:08:41.766 frame 006 00 00 00 00 80 DA
11:08:42.567 frame 006 00 00 00 00 80 DA
11:08:43.169 frame 006 00 00 00 00 80 DA
11:08:43.972 frame 006 00 00 00 00 80 DA
11:08:44.572 frame 006 00 00 00 00 80 DA
11:08:45.374 frame 006 00 00 00 00 80 DA
11:08:45.976 frame 006 00 00 00 00 80 DA
11:08:46.779 frame 006 00 00 00 00 80 DA
11:08:47.380 frame 006 00 00 00 00 80 DA
11:08:48.183 frame 006 00 00 00 00 80 DA
11:08:48.785 frame 006 00 00 00 00 80 DA
11:08:49.587 frame 006 00 00 00 00 80 DA
11:08:50.188 frame 006 00 00 00 00 80 DA
11:08:50.790 frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,25 @@
11:14:02.257 frame 006 00 00 00 00 80 DA
11:14:02.858 frame 006 00 00 00 00 80 DA
11:14:03.659 frame 006 00 00 00 00 80 DA
11:14:04.261 frame 006 00 00 00 00 80 DA
11:14:04.861 frame 006 00 00 15 80 00 CF
11:14:05.062 frame 006 00 00 15 00 00 4F
11:14:05.664 frame 006 00 00 00 00 80 DA
11:14:06.466 frame 006 00 00 00 00 80 DA
11:14:07.068 frame 006 00 00 00 00 80 DA
11:14:07.669 frame 006 00 00 15 80 00 CF
11:14:07.869 frame 006 00 00 15 00 00 4F
11:14:08.471 frame 006 00 00 00 00 80 DA
11:14:09.273 frame 006 00 00 00 00 80 DA
11:14:09.874 frame 006 00 00 00 00 80 DA
11:14:10.678 frame 006 00 00 00 00 80 DA
11:14:10.878 frame 006 00 00 15 80 00 CF
11:14:11.079 frame 006 00 00 15 00 00 4F
11:14:11.680 frame 006 00 00 00 00 80 DA
11:14:12.282 frame 006 00 00 00 00 80 DA
11:14:13.084 frame 006 00 00 00 00 80 DA
11:14:13.685 frame 006 00 00 00 00 80 DA
11:14:13.685 frame 006 00 00 15 80 00 CF
11:14:13.886 frame 006 00 00 15 00 00 4F
11:14:14.488 frame 006 00 00 00 00 80 DA
11:14:15.290 frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,27 @@
11:09:35.733 frame 006 00 00 00 00 80 DA
11:09:36.334 frame 006 00 00 00 00 80 DA
11:09:37.137 frame 006 00 00 00 00 80 DA
11:09:37.739 frame 006 00 00 00 00 80 DA
11:09:38.340 frame 006 00 00 07 80 00 DD
11:09:38.942 frame 006 00 00 00 00 80 DA
11:09:39.744 frame 006 00 00 00 00 80 DA
11:09:40.345 frame 006 00 00 00 00 80 DA
11:09:41.146 frame 006 00 00 00 00 80 DA
11:09:41.747 frame 006 00 00 00 00 80 DA
11:09:42.549 frame 006 00 00 00 00 80 DA
11:09:42.951 frame 006 00 00 07 80 00 DD
11:09:43.753 frame 006 00 00 00 00 80 DA
11:09:44.355 frame 006 00 00 00 00 80 DA
11:09:45.159 frame 006 00 00 00 00 80 DA
11:09:45.760 frame 006 00 00 00 00 80 DA
11:09:46.561 frame 006 00 00 00 00 80 DA
11:09:47.163 frame 006 00 00 00 00 80 DA
11:09:47.564 frame 006 00 00 07 80 00 DD
11:09:48.165 frame 006 00 00 00 00 80 DA
11:09:48.967 frame 006 00 00 00 00 80 DA
11:09:49.568 frame 006 00 00 00 00 80 DA
11:09:50.371 frame 006 00 00 00 00 80 DA
11:09:50.972 frame 006 00 00 00 00 80 DA
11:09:51.573 frame 006 00 00 07 80 00 DD
11:09:52.375 frame 006 00 00 00 00 80 DA
11:09:52.977 frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,10 @@
Direct response sweep: 9 frames x 1 cycles (9 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
13:05:24.270 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB0 state=0x00 value=0x80 frame 006 00 00 B0 00 80 6A
13:05:24.880 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB1 state=0x00 value=0x80 frame 006 00 00 B1 00 80 6B
13:05:24.880 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
13:05:24.880 RX raw 07 80 6C 20 D8 49 07 80 6C 20 D8 49 07 80 6C 20 D8 49
Stopping after anomaly.
FINAL ANOMALY 36 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
FINAL 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 00 00 00 00 80 DA
Anomalies: 1

View File

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

View File

@@ -0,0 +1,10 @@
Direct response sweep: 9 frames x 1 cycles (9 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
13:06:17.115 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB0 state=0x00 value=0x80 frame 006 00 00 B0 00 80 6A
13:06:17.725 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB1 state=0x00 value=0x80 frame 006 00 00 B1 00 80 6B
13:06:17.725 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
13:06:17.725 RX raw 07 80 6C 20 D8 49 07 80 6C 20 D8 49 07 80 6C 20 D8 49
Stopping after anomaly.
FINAL ANOMALY 36 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
FINAL 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 00 00 00 00 80 DA
Anomalies: 1

View File

@@ -0,0 +1,5 @@
Direct response sweep: 1 frames x 1 cycles (1 total) on COM5 at 38400 8N1
BASELINE heartbeat-compatible RX: 24 bytes, offset 0, 4 frames + 0 bytes
13:09:03.408 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB0 state=0x00 value=0x80 frame 006 00 00 B0 00 80 6A
FINAL heartbeat-compatible RX: 36 bytes, offset 0, 6 frames + 0 bytes
Anomalies: 0

View File

@@ -0,0 +1,44 @@
Listening on COM5 at 38400 8N1; will send 00 00 B1 00 80 6B after 3.0s
13:08:08.742 RX 006 bytes 00 00 00 00 80 DA
13:08:09.450 RX 006 bytes 00 00 00 00 80 DA
13:08:10.106 RX 001 bytes 00
13:08:10.156 RX 005 bytes 00 00 00 80 DA
13:08:10.813 RX 001 bytes 00
13:08:10.863 RX 005 bytes 00 00 00 80 DA
13:08:11.468 TX frame 006 00 00 B1 00 80 6B
13:08:11.519 RX 006 bytes 00 00 00 00 80 DA
13:08:11.771 RX 006 bytes 00 00 00 00 80 DA
13:08:12.024 RX 006 bytes 00 00 00 00 80 DA
13:08:12.277 RX 006 bytes 00 00 00 00 80 DA
13:08:12.529 RX 006 bytes 00 00 00 00 80 DA
13:08:12.783 RX 006 bytes 00 00 00 00 80 DA
13:08:13.036 RX 006 bytes 00 00 00 00 80 DA
13:08:13.287 RX 006 bytes 00 00 00 00 80 DA
13:08:13.943 RX 006 bytes 00 00 00 00 80 DA
13:08:14.600 RX 001 bytes 00
13:08:14.650 RX 005 bytes 00 00 00 80 DA
13:08:15.307 RX 001 bytes 00
13:08:15.357 RX 005 bytes 00 00 00 80 DA
13:08:16.013 RX 001 bytes 00
13:08:16.063 RX 005 bytes 00 00 00 80 DA
Listening on COM5 at 38400 8N1; will send 00 00 B1 00 80 6B after 3.0s
13:08:29.402 RX 006 bytes 00 00 00 00 80 DA
13:08:30.110 RX 006 bytes 00 00 00 00 80 DA
13:08:30.765 RX 001 bytes 00
13:08:30.815 RX 005 bytes 00 00 00 80 DA
13:08:31.471 RX 001 bytes 00
13:08:31.522 RX 005 bytes 00 00 00 80 DA
13:08:32.178 RX 006 bytes 00 00 00 00 80 DA
13:08:32.279 TX frame 006 00 00 B1 00 80 6B
13:08:32.885 RX 006 bytes 00 00 00 00 80 DA
13:08:33.137 RX 006 bytes 00 00 00 00 80 DA
13:08:33.389 RX 006 bytes 00 00 00 00 80 DA
13:08:33.642 RX 006 bytes 00 00 00 00 80 DA
13:08:33.894 RX 006 bytes 00 00 00 00 80 DA
13:08:34.146 RX 006 bytes 00 00 00 00 80 DA
13:08:34.804 RX 006 bytes 00 00 00 00 80 DA
13:08:35.510 RX 006 bytes 00 00 00 00 80 DA
13:08:36.166 RX 001 bytes 00
13:08:36.216 RX 005 bytes 00 00 00 80 DA
13:08:36.873 RX 001 bytes 00
13:08:36.924 RX 005 bytes 00 00 00 80 DA

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: 24 bytes, offset 0, 4 frames + 0 bytes
13:07:51.066 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB0 state=0x00 value=0x80 frame 006 00 00 B0 00 80 6A
13:07:51.674 TX cycle=1 p1=0x00 p2=0x00 cmd=0xB1 state=0x00 value=0x80 frame 006 00 00 B1 00 80 6B
13:07:51.674 ANOMALY 18 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
13:07:51.674 RX raw 07 80 6C 20 D8 49 07 80 6C 20 D8 49 07 80 6C 20 D8 49
Stopping after anomaly.
FINAL ANOMALY 36 RX bytes; first mismatch at byte 0: got 07, heartbeat offset 3 expected 00
FINAL 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 00 00 00 00 80 DA
Anomalies: 1

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

@@ -0,0 +1,22 @@
Listening on COM5 at 38400 8N1; will send 00 00 00 00 after 3.0s
12:00:12.417 RX frame 006 00 00 00 00 80 DA
12:00:13.123 RX frame 006 00 00 00 00 80 DA
12:00:13.831 RX frame 006 00 00 00 00 80 DA
12:00:14.488 RX frame 006 00 00 00 00 80 DA
12:00:14.942 TX frame 004 00 00 00 00
12:00:15.194 RX frame 006 00 00 00 00 80 DA
12:00:15.546 TX frame 004 00 00 00 00
12:00:15.909 RX frame 006 00 00 00 00 80 DA
12:00:16.162 TX frame 004 00 00 00 00
12:00:16.618 RX frame 006 00 00 00 00 80 DA
12:00:16.769 TX frame 004 00 00 00 00
12:00:17.325 RX frame 006 00 00 00 00 80 DA
12:00:17.377 TX frame 004 00 00 00 00
12:00:17.985 RX frame 006 00 00 00 00 80 DA
12:00:18.689 RX frame 006 00 00 00 00 80 DA
12:00:19.397 RX frame 006 00 00 00 00 80 DA
12:00:20.105 RX frame 006 00 00 00 00 80 DA
12:00:20.813 RX frame 006 00 00 00 00 80 DA
12:00:21.520 RX frame 006 00 00 00 00 80 DA
12:00:22.226 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,21 @@
Listening on COM5 at 38400 8N1; will send 00 00 00 00 80 after 3.0s
12:00:26.394 RX frame 006 00 00 00 00 80 DA
12:00:27.100 RX frame 006 00 00 00 00 80 DA
12:00:27.809 RX frame 006 00 00 00 00 80 DA
12:00:28.515 RX frame 006 00 00 00 00 80 DA
12:00:29.222 RX frame 006 00 00 00 00 80 DA
12:00:29.275 TX frame 005 00 00 00 00 80
12:00:29.930 RX frame 006 00 00 00 00 80 DA
12:00:29.930 TX frame 005 00 00 00 00 80
12:00:30.585 RX frame 006 00 00 00 00 80 DA
12:00:30.585 TX frame 005 00 00 00 00 80
12:00:31.192 TX frame 005 00 00 00 00 80
12:00:31.292 RX frame 006 00 00 00 00 80 DA
12:00:31.800 TX frame 005 00 00 00 00 80
12:00:32.002 RX frame 006 00 00 00 00 80 DA
12:00:32.708 RX frame 006 00 00 00 00 80 DA
12:00:33.414 RX frame 006 00 00 00 00 80 DA
12:00:34.119 RX frame 006 00 00 00 00 80 DA
12:00:34.829 RX frame 006 00 00 00 00 80 DA
12:00:35.484 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,19 @@
Listening on COM5 at 38400 8N1; will send 00 00 00 00 80 DA 00 after 3.0s
12:00:40.398 RX frame 006 00 00 00 00 80 DA
12:00:41.105 RX frame 006 00 00 00 00 80 DA
12:00:41.812 RX frame 006 00 00 00 00 80 DA
12:00:42.519 RX frame 006 00 00 00 00 80 DA
12:00:42.922 TX frame 007 00 00 00 00 80 DA 00
12:00:43.528 TX frame 007 00 00 00 00 80 DA 00
12:00:44.135 TX frame 007 00 00 00 00 80 DA 00
12:00:44.790 TX frame 007 00 00 00 00 80 DA 00
12:00:45.446 TX frame 007 00 00 00 00 80 DA 00
12:00:47.414 RX frame 006 00 00 00 00 80 DA
12:00:48.121 RX frame 006 00 00 00 00 80 DA
12:00:48.834 RX frame 006 00 00 00 00 80 DA
12:00:49.490 RX frame 006 00 00 00 00 80 DA
12:00:50.196 RX frame 006 00 00 00 00 80 DA
12:00:50.904 RX frame 006 00 00 00 00 80 DA
12:00:51.611 RX frame 006 00 00 00 00 80 DA
12:00:52.315 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,71 @@
Listening on COM5 at 38400 8N1; will send 00 00 01 00 80 DB after 3.0s
12:03:15.833 RX frame 006 00 00 00 00 80 DA
12:03:16.541 RX frame 006 00 00 00 00 80 DA
12:03:17.246 RX frame 006 00 00 00 00 80 DA
12:03:17.952 RX frame 006 00 00 00 00 80 DA
12:03:18.608 RX frame 006 00 00 00 00 80 DA
12:03:18.710 TX frame 006 00 00 01 00 80 DB
12:03:19.316 RX frame 006 00 00 00 00 80 DA
12:03:19.316 TX frame 006 00 00 01 00 80 DB
12:03:19.366 RX frame 006 00 00 00 00 80 DA
12:03:19.619 RX frame 006 00 00 00 00 80 DA
12:03:19.872 RX frame 006 00 00 00 00 80 DA
12:03:19.925 TX frame 006 00 00 01 00 80 DB
12:03:19.975 RX frame 006 00 00 00 00 80 DA
12:03:20.228 RX frame 006 00 00 00 00 80 DA
12:03:20.482 RX frame 006 00 00 00 00 80 DA
12:03:20.532 TX frame 006 00 00 01 00 80 DB
12:03:20.583 RX frame 006 00 00 00 00 80 DA
12:03:20.835 RX frame 006 00 00 00 00 80 DA
12:03:21.087 RX frame 006 00 00 00 00 80 DA
12:03:21.137 TX frame 006 00 00 01 00 80 DB
12:03:21.187 RX frame 006 00 00 00 00 80 DA
12:03:21.439 RX frame 006 00 00 00 00 80 DA
12:03:21.691 RX frame 006 00 00 00 00 80 DA
12:03:21.943 RX frame 006 00 00 00 00 80 DA
12:03:22.196 RX frame 006 00 00 00 00 80 DA
12:03:22.449 RX frame 006 00 00 00 00 80 DA
12:03:22.701 RX frame 006 00 00 00 00 80 DA
12:03:22.955 RX frame 006 00 00 00 00 80 DA
12:03:23.612 RX frame 006 00 00 00 00 80 DA
12:03:24.318 RX frame 006 00 00 00 00 80 DA
12:03:25.024 RX frame 006 00 00 00 00 80 DA
Stopped.
CONNECT: NOT ACT
Listening on COM5 at 38400 8N1; will send 00 00 02 00 80 DB after 3.0s
12:11:41.891 RX frame 006 00 00 00 00 80 DA
12:11:42.598 RX frame 006 00 00 00 00 80 DA
12:11:43.304 RX frame 006 00 00 00 00 80 DA
12:11:44.010 RX frame 006 00 00 00 00 80 DA
12:11:44.463 TX frame 006 00 00 02 00 80 DB
12:11:44.716 RX frame 006 00 00 00 00 80 DA
12:11:44.968 RX frame 006 00 00 00 00 80 DA
12:11:45.068 TX frame 006 00 00 02 00 80 DB
12:11:45.120 RX frame 006 00 00 00 00 80 DA
12:11:45.373 RX frame 006 00 00 00 00 80 DA
12:11:45.626 RX frame 006 00 00 00 00 80 DA
12:11:45.677 TX frame 006 00 00 02 00 80 DB
12:11:45.727 RX frame 006 00 00 00 00 80 DA
12:11:45.980 RX frame 006 00 00 00 00 80 DA
12:11:46.233 RX frame 006 00 00 00 00 80 DA
12:11:46.283 TX frame 006 00 00 02 00 80 DB
12:11:46.333 RX frame 006 00 00 00 00 80 DA
12:11:46.585 RX frame 006 00 00 00 00 80 DA
12:11:46.838 RX frame 006 00 00 00 00 80 DA
12:11:46.889 TX frame 006 00 00 02 00 80 DB
12:11:46.939 RX frame 006 00 00 00 00 80 DA
12:11:47.191 RX frame 006 00 00 00 00 80 DA
12:11:47.443 RX frame 006 00 00 00 00 80 DA
12:11:47.696 RX frame 006 00 00 00 00 80 DA
12:11:47.946 RX frame 006 00 00 00 00 80 DA
12:11:48.199 RX frame 006 00 00 00 00 80 DA
12:11:48.452 RX frame 006 00 00 00 00 80 DA
12:11:48.713 RX frame 006 00 00 00 00 80 DA
12:11:49.318 RX frame 006 00 00 00 00 80 DA
12:11:50.026 RX frame 006 00 00 00 00 80 DA
12:11:50.685 RX frame 006 00 00 00 00 80 DA
12:11:51.394 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,101 @@
Listening on COM5 at 38400 8N1; will send 00 00 02 00 80 DB after 3.0s
12:04:29.422 RX frame 006 00 00 00 00 80 DA
12:04:30.130 RX frame 006 00 00 00 00 80 DA
12:04:30.837 RX frame 006 00 00 00 00 80 DA
12:04:31.543 RX frame 006 00 00 00 00 80 DA
12:04:32.249 RX frame 006 00 00 00 00 80 DA
12:04:32.300 TX frame 006 00 00 02 00 80 DB
12:04:32.905 TX frame 006 00 00 02 00 80 DB
12:04:32.955 RX frame 006 00 00 00 00 80 DA
12:04:32.955 RX frame 006 00 00 00 00 80 DA
12:04:33.208 RX frame 006 00 00 00 00 80 DA
12:04:33.460 RX frame 006 00 00 00 00 80 DA
12:04:33.513 TX frame 006 00 00 02 00 80 DB
12:04:33.563 RX frame 006 00 00 00 00 80 DA
12:04:33.816 RX frame 006 00 00 00 00 80 DA
12:04:34.068 RX frame 006 00 00 00 00 80 DA
12:04:34.119 TX frame 006 00 00 02 00 80 DB
12:04:34.170 RX frame 006 00 00 00 00 80 DA
12:04:34.423 RX frame 006 00 00 00 00 80 DA
12:04:34.676 RX frame 006 00 00 00 00 80 DA
12:04:34.777 TX frame 006 00 00 02 00 80 DB
12:04:34.827 RX frame 006 00 00 00 00 80 DA
12:04:35.080 RX frame 006 00 00 00 00 80 DA
12:04:35.332 RX frame 006 00 00 00 00 80 DA
12:04:35.584 RX frame 006 00 00 00 00 80 DA
12:04:35.836 RX frame 006 00 00 00 00 80 DA
12:04:36.088 RX frame 006 00 00 00 00 80 DA
12:04:36.341 RX frame 006 00 00 00 00 80 DA
12:04:36.594 RX frame 006 00 00 00 00 80 DA
12:04:37.250 RX frame 006 00 00 00 00 80 DA
12:04:37.956 RX frame 006 00 00 00 00 80 DA
12:04:38.661 RX frame 006 00 00 00 00 80 DA
12:04:39.366 RX frame 006 00 00 00 00 80 DA
12:04:40.021 RX frame 006 00 00 00 00 80 DA
12:04:40.728 RX frame 006 00 00 00 00 80 DA
12:04:41.434 RX frame 006 00 00 00 00 80 DA
12:04:42.139 RX frame 006 00 00 00 00 80 DA
Stopped.
Listening on COM5 at 38400 8N1; will send 00 00 02 00 80 D8 after 3.0s
12:05:12.253 RX frame 006 00 00 00 00 80 DA
12:05:12.960 RX frame 006 00 00 00 00 80 DA
12:05:13.666 RX frame 006 00 00 00 00 80 DA
12:05:14.372 RX frame 006 00 00 00 00 80 DA
12:05:14.675 TX frame 006 00 00 02 00 80 D8
12:05:15.028 RX frame 006 00 00 00 00 80 DA
12:05:15.280 RX frame 006 00 00 00 00 80 DA
12:05:15.281 TX frame 006 00 00 02 00 80 D8
12:05:15.332 RX frame 006 00 00 00 00 80 DA
12:05:15.584 RX frame 006 00 00 00 00 80 DA
12:05:15.837 RX frame 006 00 00 00 00 80 DA
12:05:15.888 TX frame 006 00 00 02 00 80 D8
12:05:15.938 RX frame 006 00 00 00 00 80 DA
12:05:16.191 RX frame 006 00 00 00 00 80 DA
12:05:16.442 RX frame 006 00 00 00 00 80 DA
12:05:16.544 TX frame 006 00 00 02 00 80 D8
12:05:16.594 RX frame 006 00 00 00 00 80 DA
12:05:16.846 RX frame 006 00 00 00 00 80 DA
12:05:17.099 RX frame 006 00 00 00 00 80 DA
12:05:17.200 TX frame 006 00 00 02 00 80 D8
12:05:17.250 RX frame 006 00 00 00 00 80 DA
12:05:17.503 RX frame 006 00 00 00 00 80 DA
12:05:17.754 RX frame 006 00 00 00 00 80 DA
12:05:18.007 RX frame 006 00 00 00 00 80 DA
12:05:18.259 RX frame 006 00 00 00 00 80 DA
12:05:18.510 RX frame 006 00 00 00 00 80 DA
12:05:18.762 RX frame 006 00 00 00 00 80 DA
Stopped.
CONNECT NOT ACTListening on COM5 at 38400 8N1; will send 00 00 02 00 80 D8 after 3.0s
12:11:23.106 RX frame 006 00 00 00 00 80 DA
12:11:23.811 RX frame 006 00 00 00 00 80 DA
12:11:24.517 RX frame 006 00 00 00 00 80 DA
12:11:25.223 RX frame 006 00 00 00 00 80 DA
12:11:25.678 TX frame 006 00 00 02 00 80 D8
12:11:25.880 RX frame 006 00 00 00 00 80 DA
12:11:26.131 RX frame 006 00 00 00 00 80 DA
12:11:26.284 TX frame 006 00 00 02 00 80 D8
12:11:26.334 RX frame 006 00 00 00 00 80 DA
12:11:26.586 RX frame 006 00 00 00 00 80 DA
12:11:26.839 RX frame 006 00 00 00 00 80 DA
12:11:26.889 TX frame 006 00 00 02 00 80 D8
12:11:26.939 RX frame 006 00 00 00 00 80 DA
12:11:27.190 RX frame 006 00 00 00 00 80 DA
12:11:27.444 RX frame 006 00 00 00 00 80 DA
12:11:27.545 TX frame 006 00 00 02 00 80 D8
12:11:27.595 RX frame 006 00 00 00 00 80 DA
12:11:27.848 RX frame 006 00 00 00 00 80 DA
12:11:28.101 RX frame 006 00 00 00 00 80 DA
12:11:28.201 TX frame 006 00 00 02 00 80 D8
12:11:28.252 RX frame 006 00 00 00 00 80 DA
12:11:28.506 RX frame 006 00 00 00 00 80 DA
12:11:28.758 RX frame 006 00 00 00 00 80 DA
12:11:29.010 RX frame 006 00 00 00 00 80 DA
12:11:29.262 RX frame 006 00 00 00 00 80 DA
12:11:29.515 RX frame 006 00 00 00 00 80 DA
12:11:29.767 RX frame 006 00 00 00 00 80 DA
12:11:30.019 RX frame 006 00 00 00 00 80 DA
12:11:30.727 RX frame 006 00 00 00 00 80 DA
12:11:31.382 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,36 @@
Listening on COM5 at 38400 8N1; will send 00 00 03 00 80 D9 after 3.0s
12:06:09.358 RX frame 006 00 00 00 00 80 DA
12:06:10.066 RX frame 006 00 00 00 00 80 DA
12:06:10.773 RX frame 006 00 00 00 00 80 DA
12:06:11.479 RX frame 006 00 00 00 00 80 DA
12:06:11.882 TX frame 006 00 00 03 00 80 D9
12:06:12.134 RX frame 006 00 00 00 00 80 DA
12:06:12.386 RX frame 006 00 00 00 00 80 DA
12:06:12.486 TX frame 006 00 00 03 00 80 D9
12:06:12.537 RX frame 006 00 00 00 00 80 DA
12:06:12.789 RX frame 006 00 00 00 00 80 DA
12:06:13.040 RX frame 006 00 00 00 00 80 DA
12:06:13.092 TX frame 006 00 00 03 00 80 D9
12:06:13.142 RX frame 006 00 00 00 00 80 DA
12:06:13.395 RX frame 006 00 00 00 00 80 DA
12:06:13.645 RX frame 006 00 00 00 00 80 DA
12:06:13.746 TX frame 006 00 00 03 00 80 D9
12:06:13.796 RX frame 006 00 00 00 00 80 DA
12:06:14.048 RX frame 006 00 00 00 00 80 DA
12:06:14.301 RX frame 006 00 00 00 00 80 DA
12:06:14.403 TX frame 006 00 00 03 00 80 D9
12:06:14.453 RX frame 006 00 00 00 00 80 DA
12:06:14.707 RX frame 006 00 00 00 00 80 DA
12:06:14.959 RX frame 006 00 00 00 00 80 DA
12:06:15.212 RX frame 006 00 00 00 00 80 DA
12:06:15.465 RX frame 006 00 00 00 00 80 DA
12:06:15.717 RX frame 006 00 00 00 00 80 DA
12:06:15.968 RX frame 006 00 00 00 00 80 DA
12:06:16.220 RX frame 006 00 00 00 00 80 DA
12:06:16.875 RX frame 006 00 00 00 00 80 DA
12:06:17.582 RX frame 006 00 00 00 00 80 DA
12:06:18.237 RX frame 006 00 00 00 00 80 DA
Stopped.
CONNECT: NOT ACT

View File

@@ -0,0 +1,70 @@
Listening on COM5 at 38400 8N1; will send 00 00 7F 00 80 A5 after 3.0s
12:07:03.765 RX frame 006 00 00 00 00 80 DA
12:07:04.470 RX frame 006 00 00 00 00 80 DA
12:07:05.176 RX frame 006 00 00 00 00 80 DA
12:07:05.882 RX frame 006 00 00 00 00 80 DA
12:07:06.589 RX frame 006 00 00 00 00 80 DA
12:07:06.589 TX frame 006 00 00 7F 00 80 A5
12:07:07.246 RX frame 006 00 00 00 00 80 DA
12:07:07.246 TX frame 006 00 00 7F 00 80 A5
12:07:07.902 TX frame 006 00 00 7F 00 80 A5
12:07:07.953 RX frame 006 00 00 00 00 80 DA
12:07:08.559 TX frame 006 00 00 7F 00 80 A5
12:07:08.662 RX frame 006 00 00 00 00 80 DA
12:07:09.218 TX frame 006 00 00 7F 00 80 A5
12:07:09.369 RX frame 006 00 00 00 00 80 DA
12:07:10.076 RX frame 006 00 00 00 00 80 DA
12:07:10.783 RX frame 006 00 00 00 00 80 DA
12:07:11.491 RX frame 006 00 00 00 00 80 DA
12:07:12.147 RX frame 006 00 00 00 00 80 DA
12:07:12.852 RX frame 006 00 00 00 00 80 DA
12:07:13.557 RX frame 006 00 00 00 00 80 DA
12:07:14.263 RX frame 006 00 00 00 00 80 DA
12:07:14.969 RX frame 006 00 00 00 00 80 DA
Stopped.
NO SCREEN CHANGEListening on COM5 at 38400 8N1; will send 00 00 7F 00 80 A5 after 3.0s
12:07:43.686 RX frame 006 00 00 00 00 80 DA
12:07:44.393 RX frame 006 00 00 00 00 80 DA
12:07:45.050 RX frame 006 00 00 00 00 80 DA
12:07:45.755 RX frame 006 00 00 00 00 80 DA
12:07:46.411 TX frame 006 00 00 7F 00 80 A5
12:07:46.462 RX frame 006 00 00 00 00 80 DA
12:07:47.018 TX frame 006 00 00 7F 00 80 A5
12:07:47.170 RX frame 006 00 00 00 00 80 DA
12:07:47.622 TX frame 006 00 00 7F 00 80 A5
12:07:47.875 RX frame 006 00 00 00 00 80 DA
12:07:48.278 TX frame 006 00 00 7F 00 80 A5
12:07:48.581 RX frame 006 00 00 00 00 80 DA
12:07:48.934 TX frame 006 00 00 7F 00 80 A5
12:07:49.287 RX frame 006 00 00 00 00 80 DA
12:07:49.992 RX frame 006 00 00 00 00 80 DA
12:07:50.648 RX frame 006 00 00 00 00 80 DA
12:07:51.355 RX frame 006 00 00 00 00 80 DA
12:07:52.062 RX frame 006 00 00 00 00 80 DA
Stopped.
Listening on COM5 at 38400 8N1; will send 00 00 7F 00 80 A5 after 3.0s
12:12:25.701 RX frame 006 00 00 00 00 80 DA
12:12:26.410 RX frame 006 00 00 00 00 80 DA
12:12:27.116 RX frame 006 00 00 00 00 80 DA
12:12:27.823 RX frame 006 00 00 00 00 80 DA
12:12:28.075 TX frame 006 00 00 7F 00 80 A5
12:12:28.529 RX frame 006 00 00 00 00 80 DA
12:12:28.680 TX frame 006 00 00 7F 00 80 A5
12:12:29.233 RX frame 006 00 00 00 00 80 DA
12:12:29.283 TX frame 006 00 00 7F 00 80 A5
12:12:29.891 RX frame 006 00 00 00 00 80 DA
12:12:29.891 TX frame 006 00 00 7F 00 80 A5
12:12:30.548 TX frame 006 00 00 7F 00 80 A5
12:12:30.598 RX frame 006 00 00 00 00 80 DA
12:12:31.305 RX frame 006 00 00 00 00 80 DA
12:12:32.014 RX frame 006 00 00 00 00 80 DA
12:12:32.722 RX frame 006 00 00 00 00 80 DA
12:12:33.427 RX frame 006 00 00 00 00 80 DA
12:12:34.134 RX frame 006 00 00 00 00 80 DA
12:12:34.791 RX frame 006 00 00 00 00 80 DA
12:12:35.498 RX frame 006 00 00 00 00 80 DA
12:12:36.205 RX frame 006 00 00 00 00 80 DA
12:12:36.912 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,39 @@
Listening on COM5 at 38400 8N1; will send 00 00 80 00 80 5A after 3.0s
12:08:42.475 RX frame 006 00 00 00 00 80 DA
12:08:43.182 RX frame 006 00 00 00 00 80 DA
12:08:43.889 RX frame 006 00 00 00 00 80 DA
12:08:44.595 RX frame 006 00 00 00 00 80 DA
12:08:44.797 TX frame 006 00 00 80 00 80 5A
12:08:45.303 RX frame 006 00 00 00 00 80 DA
12:08:45.404 TX frame 006 00 00 80 00 80 5A
12:08:45.454 RX frame 006 00 00 00 00 80 DA
12:08:45.708 RX frame 006 00 00 00 00 80 DA
12:08:45.960 RX frame 006 00 00 00 00 80 DA
12:08:46.062 TX frame 006 00 00 80 00 80 5A
12:08:46.116 RX frame 006 00 00 00 00 80 DA
12:08:46.368 RX frame 006 00 00 00 00 80 DA
12:08:46.621 RX frame 006 00 00 00 00 80 DA
12:08:46.672 TX frame 006 00 00 80 00 80 5A
12:08:46.722 RX frame 006 00 00 00 00 80 DA
12:08:46.974 RX frame 006 00 00 00 00 80 DA
12:08:47.226 RX frame 006 00 00 00 00 80 DA
12:08:47.327 TX frame 006 00 00 80 00 80 5A
12:08:47.378 RX frame 006 00 00 00 00 80 DA
12:08:47.629 RX frame 006 00 00 00 00 80 DA
12:08:47.882 RX frame 006 00 00 00 00 80 DA
12:08:48.135 RX frame 006 00 00 00 00 80 DA
12:08:48.388 RX frame 006 00 00 00 00 80 DA
12:08:48.640 RX frame 006 00 00 00 00 80 DA
12:08:48.893 RX frame 006 00 00 00 00 80 DA
12:08:49.145 RX frame 006 00 00 00 00 80 DA
12:08:49.801 RX frame 006 00 00 00 00 80 DA
12:08:50.457 RX frame 006 00 00 00 00 80 DA
12:08:51.163 RX frame 006 00 00 00 00 80 DA
12:08:51.869 RX frame 006 00 00 00 00 80 DA
12:08:52.577 RX frame 006 00 00 00 00 80 DA
12:08:53.284 RX frame 006 00 00 00 00 80 DA
12:08:53.991 RX frame 006 00 00 00 00 80 DA
12:08:54.698 RX frame 006 00 00 00 00 80 DA
12:08:55.404 RX frame 006 00 00 00 00 80 DA
Screen change

View File

@@ -0,0 +1,60 @@
Listening on COM5 at 38400 8N1; will send 00 00 00 00 80 DA after 3.0s
11:47:17.509 RX frame 006 00 00 00 00 80 DA
11:47:18.215 RX frame 006 00 00 00 00 80 DA
11:47:18.871 RX frame 006 00 00 00 00 80 DA
11:47:19.579 RX frame 006 00 00 00 00 80 DA
11:47:20.284 RX frame 006 00 00 00 00 80 DA
11:47:20.384 TX frame 006 00 00 00 00 80 DA
11:47:20.991 RX frame 006 00 00 00 00 80 DA
11:47:20.991 TX frame 006 00 00 00 00 80 DA
11:47:21.042 RX frame 006 00 00 00 00 80 DA
11:47:21.295 RX frame 006 00 00 00 00 80 DA
11:47:21.547 RX frame 006 00 00 00 00 80 DA
11:47:21.600 TX frame 006 00 00 00 00 80 DA
11:47:21.650 RX frame 006 00 00 00 00 80 DA
11:47:21.903 RX frame 006 00 00 00 00 80 DA
11:47:22.154 RX frame 006 00 00 00 00 80 DA
11:47:22.205 TX frame 006 00 00 00 00 80 DA
11:47:22.255 RX frame 006 00 00 00 00 80 DA
11:47:22.507 RX frame 006 00 00 00 00 80 DA
11:47:22.759 RX frame 006 00 00 00 00 80 DA
11:47:22.859 TX frame 006 00 00 00 00 80 DA
11:47:22.910 RX frame 006 00 00 00 00 80 DA
11:47:23.163 RX frame 006 00 00 00 00 80 DA
11:47:23.416 RX frame 006 00 00 00 00 80 DA
11:47:23.516 TX frame 006 00 00 00 00 80 DA
11:47:23.568 RX frame 006 00 00 00 00 80 DA
11:47:23.819 RX frame 006 00 00 00 00 80 DA
11:47:24.071 RX frame 006 00 00 00 00 80 DA
11:47:24.172 TX frame 006 00 00 00 00 80 DA
11:47:24.222 RX frame 006 00 00 00 00 80 DA
11:47:24.475 RX frame 006 00 00 00 00 80 DA
11:47:24.728 RX frame 006 00 00 00 00 80 DA
11:47:24.779 TX frame 006 00 00 00 00 80 DA
11:47:24.829 RX frame 006 00 00 00 00 80 DA
11:47:25.080 RX frame 006 00 00 00 00 80 DA
11:47:25.334 RX frame 006 00 00 00 00 80 DA
11:47:25.384 TX frame 006 00 00 00 00 80 DA
11:47:25.435 RX frame 006 00 00 00 00 80 DA
11:47:25.687 RX frame 006 00 00 00 00 80 DA
11:47:25.939 RX frame 006 00 00 00 00 80 DA
11:47:25.989 TX frame 006 00 00 00 00 80 DA
11:47:26.040 RX frame 006 00 00 00 00 80 DA
11:47:26.293 RX frame 006 00 00 00 00 80 DA
11:47:26.545 RX frame 006 00 00 00 00 80 DA
11:47:26.797 RX frame 006 00 00 00 00 80 DA
11:47:27.051 RX frame 006 00 00 00 00 80 DA
11:47:27.304 RX frame 006 00 00 00 00 80 DA
11:47:27.556 RX frame 006 00 00 00 00 80 DA
11:47:27.809 RX frame 006 00 00 00 00 80 DA
11:47:28.516 RX frame 006 00 00 00 00 80 DA
11:47:29.172 RX frame 006 00 00 00 00 80 DA
11:47:29.879 RX frame 006 00 00 00 00 80 DA
11:47:30.584 RX frame 006 00 00 00 00 80 DA
11:47:31.292 RX frame 006 00 00 00 00 80 DA
11:47:31.998 RX frame 006 00 00 00 00 80 DA
11:47:32.706 RX frame 006 00 00 00 00 80 DA
11:47:33.414 RX frame 006 00 00 00 00 80 DA
11:47:34.070 RX frame 006 00 00 00 00 80 DA
11:47:34.778 RX frame 006 00 00 00 00 80 DA
11:47:35.485 RX frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,35 @@
Listening on COM5 at 38400 8N1; will send 00 00 00 00 80 00 after 3.0s
11:52:53.545 RX frame 006 00 00 00 00 80 DA
11:52:54.253 RX frame 006 00 00 00 00 80 DA
11:52:54.959 RX frame 006 00 00 00 00 80 DA
11:52:55.616 RX frame 006 00 00 00 00 80 DA
11:52:56.120 TX frame 006 00 00 00 00 80 00
11:52:56.321 RX frame 006 00 00 00 00 80 DA
11:52:56.573 RX frame 006 00 00 00 00 80 DA
11:52:56.725 TX frame 006 00 00 00 00 80 00
11:52:56.775 RX frame 006 00 00 00 00 80 DA
11:52:57.027 RX frame 006 00 00 00 00 80 DA
11:52:57.279 RX frame 006 00 00 00 00 80 DA
11:52:57.332 TX frame 006 00 00 00 00 80 00
11:52:57.383 RX frame 006 00 00 00 00 80 DA
11:52:57.635 RX frame 006 00 00 00 00 80 DA
11:52:57.888 RX frame 006 00 00 00 00 80 DA
11:52:57.990 TX frame 006 00 00 00 00 80 00
11:52:58.040 RX frame 006 00 00 00 00 80 DA
11:52:58.291 RX frame 006 00 00 00 00 80 DA
11:52:58.543 RX frame 006 00 00 00 00 80 DA
11:52:58.644 TX frame 006 00 00 00 00 80 00
11:52:58.695 RX frame 006 00 00 00 00 80 DA
11:52:58.948 RX frame 006 00 00 00 00 80 DA
11:52:59.201 RX frame 006 00 00 00 00 80 DA
11:52:59.454 RX frame 006 00 00 00 00 80 DA
11:52:59.705 RX frame 006 00 00 00 00 80 DA
11:52:59.957 RX frame 006 00 00 00 00 80 DA
11:53:00.208 RX frame 006 00 00 00 00 80 DA
11:53:00.460 RX frame 006 00 00 00 00 80 DA
11:53:01.166 RX frame 006 00 00 00 00 80 DA
11:53:01.822 RX frame 006 00 00 00 00 80 DA
11:53:02.528 RX frame 006 00 00 00 00 80 DA
11:53:03.232 RX frame 006 00 00 00 00 80 DA
11:53:03.940 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,21 @@
Listening on COM5 at 38400 8N1; will send 00 00 00 after 3.0s
11:58:35.096 RX frame 006 00 00 00 00 80 DA
11:58:35.802 RX frame 006 00 00 00 00 80 DA
11:58:36.508 RX frame 006 00 00 00 00 80 DA
11:58:37.166 RX frame 006 00 00 00 00 80 DA
11:58:37.871 RX frame 006 00 00 00 00 80 DA
11:58:37.972 TX frame 003 00 00 00
11:58:38.578 RX frame 006 00 00 00 00 80 DA
11:58:38.578 TX frame 003 00 00 00
11:58:39.184 TX frame 003 00 00 00
11:58:39.285 RX frame 006 00 00 00 00 80 DA
11:58:39.789 TX frame 003 00 00 00
11:58:39.992 RX frame 006 00 00 00 00 80 DA
11:58:40.398 TX frame 003 00 00 00
11:58:40.699 RX frame 006 00 00 00 00 80 DA
11:58:41.405 RX frame 006 00 00 00 00 80 DA
11:58:42.112 RX frame 006 00 00 00 00 80 DA
11:58:42.767 RX frame 006 00 00 00 00 80 DA
11:58:43.473 RX frame 006 00 00 00 00 80 DA
11:58:44.180 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,25 @@
Listening on COM5 at 38400 8N1; will send 00 after 3.0s
11:57:57.280 RX frame 006 00 00 00 00 80 DA
11:57:57.988 RX frame 006 00 00 00 00 80 DA
11:57:58.694 RX frame 006 00 00 00 00 80 DA
11:57:59.402 RX frame 006 00 00 00 00 80 DA
11:57:59.655 TX frame 001 00
11:58:00.110 RX frame 006 00 00 00 00 80 DA
11:58:00.262 TX frame 001 00
11:58:00.763 RX frame 006 00 00 00 00 80 DA
11:58:00.914 TX frame 001 00
11:58:01.467 RX frame 006 00 00 00 00 80 DA
11:58:01.569 TX frame 001 00
11:58:02.175 RX frame 006 00 00 00 00 80 DA
11:58:02.226 TX frame 001 00
11:58:02.884 RX frame 006 00 00 00 00 80 DA
11:58:03.591 RX frame 006 00 00 00 00 80 DA
11:58:04.298 RX frame 006 00 00 00 00 80 DA
11:58:05.004 RX frame 006 00 00 00 00 80 DA
11:58:05.662 RX frame 006 00 00 00 00 80 DA
11:58:06.370 RX frame 006 00 00 00 00 80 DA
11:58:07.077 RX frame 006 00 00 00 00 80 DA
11:58:07.782 RX frame 006 00 00 00 00 80 DA
11:58:08.490 RX frame 006 00 00 00 00 80 DA
11:58:09.197 RX frame 006 00 00 00 00 80 DA
11:58:09.903 RX frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,24 @@
Listening on COM5 at 38400 8N1; will send FF after 3.0s
11:58:18.998 RX frame 006 00 00 00 00 80 DA
11:58:19.704 RX frame 006 00 00 00 00 80 DA
11:58:20.410 RX frame 006 00 00 00 00 80 DA
11:58:21.068 RX frame 006 00 00 00 00 80 DA
11:58:21.776 RX frame 006 00 00 00 00 80 DA
11:58:21.927 TX frame 001 FF
11:58:22.481 RX frame 006 00 00 00 00 80 DA
11:58:22.531 TX frame 001 FF
11:58:23.138 TX frame 001 FF
11:58:23.189 RX frame 006 00 00 00 00 80 DA
11:58:23.742 TX frame 001 FF
11:58:23.894 RX frame 006 00 00 00 00 80 DA
11:58:24.399 TX frame 001 FF
11:58:24.603 RX frame 006 00 00 00 00 80 DA
11:58:25.310 RX frame 006 00 00 00 00 80 DA
11:58:25.967 RX frame 006 00 00 00 00 80 DA
11:58:26.672 RX frame 006 00 00 00 00 80 DA
11:58:27.379 RX frame 006 00 00 00 00 80 DA
11:58:28.085 RX frame 006 00 00 00 00 80 DA
11:58:28.788 RX frame 006 00 00 00 00 80 DA
11:58:29.494 RX frame 006 00 00 00 00 80 DA
11:58:30.199 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,59 @@
Listening on COM5 at 38400 8N1; will send 00 00 00 80 00 DA after 3.0s
11:50:03.524 RX frame 006 00 00 00 00 80 DA
11:50:04.232 RX frame 006 00 00 00 00 80 DA
11:50:04.939 RX frame 006 00 00 00 00 80 DA
11:50:05.594 RX frame 006 00 00 00 00 80 DA
11:50:06.301 RX frame 006 00 00 00 00 80 DA
11:50:06.301 TX frame 006 00 00 00 80 00 DA
11:50:06.957 TX frame 006 00 00 00 80 00 DA
11:50:07.008 RX frame 006 00 00 00 00 80 DA
11:50:07.260 RX frame 006 00 00 00 00 80 DA
11:50:07.512 RX frame 006 00 00 00 00 80 DA
11:50:07.613 TX frame 006 00 00 00 80 00 DA
11:50:07.665 RX frame 006 00 00 00 00 80 DA
11:50:07.917 RX frame 006 00 00 00 00 80 DA
11:50:08.169 RX frame 006 00 00 00 00 80 DA
11:50:08.271 TX frame 006 00 00 00 80 00 DA
11:50:08.321 RX frame 006 00 00 00 00 80 DA
11:50:08.573 RX frame 006 00 00 00 00 80 DA
11:50:08.824 RX frame 006 00 00 00 00 80 DA
11:50:08.926 TX frame 006 00 00 00 80 00 DA
11:50:08.976 RX frame 006 00 00 00 00 80 DA
11:50:09.228 RX frame 006 00 00 00 00 80 DA
11:50:09.480 RX frame 006 00 00 00 00 80 DA
11:50:09.580 TX frame 006 00 00 00 80 00 DA
11:50:09.631 RX frame 006 00 00 00 00 80 DA
11:50:09.883 RX frame 006 00 00 00 00 80 DA
11:50:10.136 RX frame 006 00 00 00 00 80 DA
11:50:10.236 TX frame 006 00 00 00 80 00 DA
11:50:10.286 RX frame 006 00 00 00 00 80 DA
11:50:10.540 RX frame 006 00 00 00 00 80 DA
11:50:10.792 RX frame 006 00 00 00 00 80 DA
11:50:10.893 TX frame 006 00 00 00 80 00 DA
11:50:10.943 RX frame 006 00 00 00 00 80 DA
11:50:11.195 RX frame 006 00 00 00 00 80 DA
11:50:11.447 RX frame 006 00 00 00 00 80 DA
11:50:11.548 TX frame 006 00 00 00 80 00 DA
11:50:11.599 RX frame 006 00 00 00 00 80 DA
11:50:11.851 RX frame 006 00 00 00 00 80 DA
11:50:12.106 RX frame 006 00 00 00 00 80 DA
11:50:12.156 TX frame 006 00 00 00 80 00 DA
11:50:12.207 RX frame 006 00 00 00 00 80 DA
11:50:12.458 RX frame 006 00 00 00 00 80 DA
11:50:12.711 RX frame 006 00 00 00 00 80 DA
11:50:12.964 RX frame 006 00 00 00 00 80 DA
11:50:13.217 RX frame 006 00 00 00 00 80 DA
11:50:13.469 RX frame 006 00 00 00 00 80 DA
11:50:13.722 RX frame 006 00 00 00 00 80 DA
11:50:13.974 RX frame 006 00 00 00 00 80 DA
11:50:14.628 RX frame 006 00 00 00 00 80 DA
11:50:15.334 RX frame 006 00 00 00 00 80 DA
11:50:16.039 RX frame 006 00 00 00 00 80 DA
11:50:16.696 RX frame 006 00 00 00 00 80 DA
11:50:17.404 RX frame 006 00 00 00 00 80 DA
11:50:18.111 RX frame 006 00 00 00 00 80 DA
11:50:18.817 RX frame 006 00 00 00 00 80 DA
11:50:19.523 RX frame 006 00 00 00 00 80 DA
11:50:20.226 RX frame 006 00 00 00 00 80 DA
11:50:20.935 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,59 @@
Listening on COM5 at 38400 8N1; will send 00 00 00 00 00 5A after 3.0s
11:49:35.226 RX frame 006 00 00 00 00 80 DA
11:49:35.934 RX frame 006 00 00 00 00 80 DA
11:49:36.588 RX frame 006 00 00 00 00 80 DA
11:49:37.295 RX frame 006 00 00 00 00 80 DA
11:49:37.698 TX frame 006 00 00 00 00 00 5A
11:49:38.003 RX frame 006 00 00 00 00 80 DA
11:49:38.255 RX frame 006 00 00 00 00 80 DA
11:49:38.305 TX frame 006 00 00 00 00 00 5A
11:49:38.356 RX frame 006 00 00 00 00 80 DA
11:49:38.607 RX frame 006 00 00 00 00 80 DA
11:49:38.860 RX frame 006 00 00 00 00 80 DA
11:49:38.911 TX frame 006 00 00 00 00 00 5A
11:49:38.961 RX frame 006 00 00 00 00 80 DA
11:49:39.213 RX frame 006 00 00 00 00 80 DA
11:49:39.466 RX frame 006 00 00 00 00 80 DA
11:49:39.567 TX frame 006 00 00 00 00 00 5A
11:49:39.617 RX frame 006 00 00 00 00 80 DA
11:49:39.869 RX frame 006 00 00 00 00 80 DA
11:49:40.121 RX frame 006 00 00 00 00 80 DA
11:49:40.223 TX frame 006 00 00 00 00 00 5A
11:49:40.274 RX frame 006 00 00 00 00 80 DA
11:49:40.525 RX frame 006 00 00 00 00 80 DA
11:49:40.777 RX frame 006 00 00 00 00 80 DA
11:49:40.878 TX frame 006 00 00 00 00 00 5A
11:49:40.929 RX frame 006 00 00 00 00 80 DA
11:49:41.181 RX frame 006 00 00 00 00 80 DA
11:49:41.434 RX frame 006 00 00 00 00 80 DA
11:49:41.535 TX frame 006 00 00 00 00 00 5A
11:49:41.586 RX frame 006 00 00 00 00 80 DA
11:49:41.838 RX frame 006 00 00 00 00 80 DA
11:49:42.090 RX frame 006 00 00 00 00 80 DA
11:49:42.191 TX frame 006 00 00 00 00 00 5A
11:49:42.242 RX frame 006 00 00 00 00 80 DA
11:49:42.494 RX frame 006 00 00 00 00 80 DA
11:49:42.747 RX frame 006 00 00 00 00 80 DA
11:49:42.847 TX frame 006 00 00 00 00 00 5A
11:49:42.897 RX frame 006 00 00 00 00 80 DA
11:49:43.149 RX frame 006 00 00 00 00 80 DA
11:49:43.402 RX frame 006 00 00 00 00 80 DA
11:49:43.503 TX frame 006 00 00 00 00 00 5A
11:49:43.553 RX frame 006 00 00 00 00 80 DA
11:49:43.805 RX frame 006 00 00 00 00 80 DA
11:49:44.058 RX frame 006 00 00 00 00 80 DA
11:49:44.310 RX frame 006 00 00 00 00 80 DA
11:49:44.562 RX frame 006 00 00 00 00 80 DA
11:49:44.814 RX frame 006 00 00 00 00 80 DA
11:49:45.067 RX frame 006 00 00 00 00 80 DA
11:49:45.320 RX frame 006 00 00 00 00 80 DA
11:49:46.028 RX frame 006 00 00 00 00 80 DA
11:49:46.734 RX frame 006 00 00 00 00 80 DA
11:49:47.394 RX frame 006 00 00 00 00 80 DA
11:49:48.101 RX frame 006 00 00 00 00 80 DA
11:49:48.808 RX frame 006 00 00 00 00 80 DA
11:49:49.514 RX frame 006 00 00 00 00 80 DA
11:49:50.220 RX frame 006 00 00 00 00 80 DA
11:49:50.928 RX frame 006 00 00 00 00 80 DA
11:49:51.634 RX frame 006 00 00 00 00 80 DA
Stopped.

View File

@@ -0,0 +1,163 @@
Sweeping commands 0x00-0x20 on COM5 at 38400 8N1
12:16:09.764 RX frame 006 00 00 00 00 80 DA
12:16:10.421 RX frame 006 00 00 00 00 80 DA
12:16:10.825 TX cmd 0x00 frame 006 00 00 00 00 80 DA
12:16:11.128 RX frame 006 00 00 00 00 80 DA
12:16:11.381 RX frame 006 00 00 00 00 80 DA
12:16:11.633 RX frame 006 00 00 00 00 80 DA
12:16:11.835 TX cmd 0x01 frame 006 00 00 01 00 80 DB
12:16:11.886 RX frame 006 00 00 00 00 80 DA
12:16:12.138 RX frame 006 00 00 00 00 80 DA
12:16:12.391 RX frame 006 00 00 00 00 80 DA
12:16:12.643 RX frame 006 00 00 00 00 80 DA
12:16:12.846 TX cmd 0x02 frame 006 00 00 02 00 80 D8
12:16:12.896 RX frame 006 00 00 00 00 80 DA
12:16:13.149 RX frame 006 00 00 00 00 80 DA
12:16:13.400 RX frame 006 00 00 00 00 80 DA
12:16:13.652 RX frame 006 00 00 00 00 80 DA
12:16:13.854 TX cmd 0x03 frame 006 00 00 03 00 80 D9
12:16:13.905 RX frame 006 00 00 00 00 80 DA
12:16:14.157 RX frame 006 00 00 00 00 80 DA
12:16:14.408 RX frame 006 00 00 00 00 80 DA
12:16:14.661 RX frame 006 00 00 00 00 80 DA
12:16:14.862 TX cmd 0x04 frame 006 00 00 04 00 80 DE
12:16:14.913 RX frame 006 00 00 00 00 80 DA
12:16:15.165 RX frame 006 00 00 00 00 80 DA
12:16:15.417 RX frame 006 00 00 00 00 80 DA
12:16:15.668 RX frame 006 00 00 00 00 80 DA
12:16:15.868 TX cmd 0x05 frame 006 00 00 05 00 80 DF
12:16:15.919 RX frame 006 00 00 00 00 80 DA
12:16:16.170 RX frame 006 00 00 00 00 80 DA
12:16:16.422 RX frame 006 00 00 00 00 80 DA
12:16:16.675 RX frame 006 00 00 00 00 80 DA
12:16:16.877 TX cmd 0x06 frame 006 00 00 06 00 80 DC
12:16:16.927 RX frame 006 00 00 00 00 80 DA
12:16:17.178 RX frame 006 00 00 00 00 80 DA
12:16:17.431 RX frame 006 00 00 00 00 80 DA
12:16:17.683 RX frame 006 00 00 00 00 80 DA
12:16:17.886 TX cmd 0x07 frame 006 00 00 07 00 80 DD
12:16:17.936 RX frame 006 00 00 00 00 80 DA
12:16:18.189 RX frame 006 00 00 00 00 80 DA
12:16:18.441 RX frame 006 00 00 00 00 80 DA
12:16:18.693 RX frame 006 00 00 00 00 80 DA
12:16:18.894 TX cmd 0x08 frame 006 00 00 08 00 80 D2
12:16:18.944 RX frame 006 00 00 00 00 80 DA
12:16:19.196 RX frame 006 00 00 00 00 80 DA
12:16:19.447 RX frame 006 00 00 00 00 80 DA
12:16:19.700 RX frame 006 00 00 00 00 80 DA
12:16:19.901 TX cmd 0x09 frame 006 00 00 09 00 80 D3
12:16:19.951 RX frame 006 00 00 00 00 80 DA
12:16:20.202 RX frame 006 00 00 00 00 80 DA
12:16:20.456 RX frame 006 00 00 00 00 80 DA
12:16:20.708 RX frame 006 00 00 00 00 80 DA
12:16:20.910 TX cmd 0x0A frame 006 00 00 0A 00 80 D0
12:16:20.960 RX frame 006 00 00 00 00 80 DA
12:16:21.212 RX frame 006 00 00 00 00 80 DA
12:16:21.463 RX frame 006 00 00 00 00 80 DA
12:16:21.714 RX frame 006 00 00 00 00 80 DA
12:16:21.916 TX cmd 0x0B frame 006 00 00 0B 00 80 D1
12:16:21.966 RX frame 006 00 00 00 00 80 DA
12:16:22.218 RX frame 006 00 00 00 00 80 DA
12:16:22.470 RX frame 006 00 00 00 00 80 DA
12:16:22.721 RX frame 006 00 00 00 00 80 DA
12:16:22.922 TX cmd 0x0C frame 006 00 00 0C 00 80 D6
12:16:22.973 RX frame 006 00 00 00 00 80 DA
12:16:23.224 RX frame 006 00 00 00 00 80 DA
12:16:23.477 RX frame 006 00 00 00 00 80 DA
12:16:23.728 RX frame 006 00 00 00 00 80 DA
12:16:23.930 TX cmd 0x0D frame 006 00 00 0D 00 80 D7
12:16:23.980 RX frame 006 00 00 00 00 80 DA
12:16:24.233 RX frame 006 00 00 00 00 80 DA
12:16:24.484 RX frame 006 00 00 00 00 80 DA
12:16:24.735 RX frame 006 00 00 00 00 80 DA
12:16:24.937 TX cmd 0x0E frame 006 00 00 0E 00 80 D4
12:16:24.987 RX frame 006 00 00 00 00 80 DA
12:16:25.240 RX frame 006 00 00 00 00 80 DA
12:16:25.492 RX frame 006 00 00 00 00 80 DA
12:16:25.745 RX frame 006 00 00 00 00 80 DA
12:16:25.947 TX cmd 0x0F frame 006 00 00 0F 00 80 D5
12:16:26.451 RX frame 006 00 00 00 00 80 DA
12:16:26.955 TX cmd 0x10 frame 006 00 00 10 00 80 CA
12:16:27.157 RX frame 006 00 00 00 00 80 DA
12:16:27.408 RX frame 006 00 00 00 00 80 DA
12:16:27.662 RX frame 006 00 00 00 00 80 DA
12:16:27.914 RX frame 006 00 00 00 00 80 DA
12:16:27.965 TX cmd 0x11 frame 006 00 00 11 00 80 CB
12:16:28.015 RX frame 006 00 00 00 00 80 DA
12:16:28.267 RX frame 006 00 00 00 00 80 DA
12:16:28.519 RX frame 006 00 00 00 00 80 DA
12:16:28.771 RX frame 006 00 00 00 00 80 DA
12:16:28.973 TX cmd 0x12 frame 006 00 00 12 00 80 C8
12:16:29.025 RX frame 006 00 00 00 00 80 DA
12:16:29.278 RX frame 006 00 00 00 00 80 DA
12:16:29.531 RX frame 006 00 00 00 00 80 DA
12:16:29.782 RX frame 006 00 00 00 00 80 DA
12:16:29.984 TX cmd 0x13 frame 006 00 00 13 00 80 C9
12:16:30.036 RX frame 006 00 00 00 00 80 DA
12:16:30.289 RX frame 006 00 00 00 00 80 DA
12:16:30.543 RX frame 006 00 00 00 00 80 DA
12:16:30.796 RX frame 006 00 00 00 00 80 DA
12:16:30.998 TX cmd 0x14 frame 006 00 00 14 00 80 CE
12:16:31.049 RX frame 006 00 00 00 00 80 DA
12:16:31.306 RX frame 006 00 00 00 00 80 DA
12:16:31.559 RX frame 006 00 00 00 00 80 DA
12:16:31.811 RX frame 006 00 00 00 00 80 DA
12:16:32.013 TX cmd 0x15 frame 006 00 00 15 00 80 CF
12:16:32.064 RX frame 006 00 00 00 00 80 DA
12:16:32.316 RX frame 006 00 00 00 00 80 DA
12:16:32.569 RX frame 006 00 00 00 00 80 DA
12:16:32.822 RX frame 006 00 00 00 00 80 DA
12:16:33.023 TX cmd 0x16 frame 006 00 00 16 00 80 CC
12:16:33.073 RX frame 006 00 00 00 00 80 DA
12:16:33.327 RX frame 006 00 00 00 00 80 DA
12:16:33.579 RX frame 006 00 00 00 00 80 DA
12:16:33.832 RX frame 006 00 00 00 00 80 DA
12:16:34.034 TX cmd 0x17 frame 006 00 00 17 00 80 CD
12:16:34.086 RX frame 006 00 00 00 00 80 DA
12:16:34.339 RX frame 006 00 00 00 00 80 DA
12:16:34.592 RX frame 006 00 00 00 00 80 DA
12:16:34.844 RX frame 006 00 00 00 00 80 DA
12:16:35.048 TX cmd 0x18 frame 006 00 00 18 00 80 C2
12:16:35.098 RX frame 006 00 00 00 00 80 DA
12:16:35.350 RX frame 006 00 00 00 00 80 DA
12:16:35.603 RX frame 006 00 00 00 00 80 DA
12:16:35.857 RX frame 006 00 00 00 00 80 DA
12:16:36.059 TX cmd 0x19 frame 006 00 00 19 00 80 C3
12:16:36.110 RX frame 006 00 00 00 00 80 DA
12:16:36.362 RX frame 006 00 00 00 00 80 DA
12:16:36.614 RX frame 006 00 00 00 00 80 DA
12:16:36.867 RX frame 006 00 00 00 00 80 DA
12:16:37.068 TX cmd 0x1A frame 006 00 00 1A 00 80 C0
12:16:37.119 RX frame 006 00 00 00 00 80 DA
12:16:37.372 RX frame 006 00 00 00 00 80 DA
12:16:37.625 RX frame 006 00 00 00 00 80 DA
12:16:37.877 RX frame 006 00 00 00 00 80 DA
12:16:38.079 TX cmd 0x1B frame 006 00 00 1B 00 80 C1
12:16:38.130 RX frame 006 00 00 00 00 80 DA
12:16:38.382 RX frame 006 00 00 00 00 80 DA
12:16:38.636 RX frame 006 00 00 00 00 80 DA
12:16:38.889 RX frame 006 00 00 00 00 80 DA
12:16:39.090 TX cmd 0x1C frame 006 00 00 1C 00 80 C6
12:16:39.142 RX frame 006 00 00 00 00 80 DA
12:16:39.396 RX frame 006 00 00 00 00 80 DA
12:16:39.648 RX frame 006 00 00 00 00 80 DA
12:16:39.901 RX frame 006 00 00 00 00 80 DA
12:16:40.103 TX cmd 0x1D frame 006 00 00 1D 00 80 C7
12:16:40.155 RX frame 006 00 00 00 00 80 DA
12:16:40.407 RX frame 006 00 00 00 00 80 DA
12:16:40.658 RX frame 006 00 00 00 00 80 DA
12:16:40.909 RX frame 006 00 00 00 00 80 DA
12:16:41.111 TX cmd 0x1E frame 006 00 00 1E 00 80 C4
12:16:41.161 RX frame 006 00 00 00 00 80 DA
12:16:41.413 RX frame 006 00 00 00 00 80 DA
12:16:41.664 RX frame 006 00 00 00 00 80 DA
12:16:41.917 RX frame 006 00 00 00 00 80 DA
12:16:42.120 TX cmd 0x1F frame 006 00 00 1F 00 80 C5
12:16:42.575 RX frame 006 00 00 00 00 80 DA
12:16:43.129 TX cmd 0x20 frame 006 00 00 20 00 80 FA
12:16:43.229 RX frame 006 00 00 00 00 80 DA
12:16:43.938 RX frame 006 00 00 00 00 80 DA
12:16:44.643 RX frame 006 00 00 00 00 80 DA
12:16:45.350 RX frame 006 00 00 00 00 80 DA
12:16:46.055 RX frame 006 00 00 00 00 80 DA
12:16:46.762 RX frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,171 @@
Sweeping commands 0x0C-0x14 on COM5 at 38400 8N1
12:18:44.384 RX frame 006 00 00 00 00 80 DA
12:18:45.091 RX frame 006 00 00 00 00 80 DA
12:18:45.242 TX cmd 0x0C frame 006 00 00 0C 00 80 D6
12:18:45.748 RX frame 006 00 00 00 00 80 DA
12:18:46.000 RX frame 006 00 00 00 00 80 DA
12:18:46.252 RX frame 006 00 00 00 00 80 DA
12:19:03.561 SCREEN cmd 0x0C CONNECT not ACT
12:19:03.561 TX cmd 0x0D frame 006 00 00 0D 00 80 D7
12:19:03.561 RX frame 006 00 00 00 00 80 DA
12:19:03.562 RX frame 006 00 00 00 00 80 DA
12:19:03.562 RX frame 006 00 00 00 00 80 DA
12:19:03.563 RX frame 006 00 00 00 00 80 DA
12:19:03.563 RX frame 006 00 00 00 00 80 DA
12:19:03.563 RX frame 006 00 00 00 00 80 DA
12:19:03.563 RX frame 006 00 00 00 00 80 DA
12:19:03.563 RX frame 006 00 00 00 00 80 DA
12:19:03.563 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.564 RX frame 006 00 00 00 00 80 DA
12:19:03.615 RX frame 006 00 00 00 00 80 DA
12:19:03.615 RX frame 006 00 00 00 00 80 DA
12:19:03.615 RX frame 006 00 00 00 00 80 DA
12:19:03.615 RX frame 006 00 00 00 00 80 DA
12:19:03.615 RX frame 006 00 00 00 00 80 DA
12:19:03.766 RX frame 006 00 00 00 00 80 DA
12:19:04.018 RX frame 006 00 00 00 00 80 DA
12:19:04.270 RX frame 006 00 00 00 00 80 DA
12:19:04.522 RX frame 006 00 00 00 00 80 DA
12:19:04.774 RX frame 006 00 00 00 00 80 DA
12:19:13.933 SCREEN cmd 0x0D CONNECT NOT ACT
12:19:13.934 TX cmd 0x0E frame 006 00 00 0E 00 80 D4
12:19:13.934 RX frame 006 00 00 00 00 80 DA
12:19:13.935 RX frame 006 00 00 00 00 80 DA
12:19:13.935 RX frame 006 00 00 00 00 80 DA
12:19:13.935 RX frame 006 00 00 00 00 80 DA
12:19:13.935 RX frame 006 00 00 00 00 80 DA
12:19:13.935 RX frame 006 00 00 00 00 80 DA
12:19:13.935 RX frame 006 00 00 00 00 80 DA
12:19:13.935 RX frame 006 00 00 00 00 80 DA
12:19:13.935 RX frame 006 00 00 00 00 80 DA
12:19:13.936 RX frame 006 00 00 00 00 80 DA
12:19:13.987 RX frame 006 00 00 00 00 80 DA
12:19:13.987 RX frame 006 00 00 00 00 80 DA
12:19:13.987 RX frame 006 00 00 00 00 80 DA
12:19:13.987 RX frame 006 00 00 00 00 80 DA
12:19:13.987 RX frame 006 00 00 00 00 80 DA
12:19:14.594 RX frame 006 00 00 00 00 80 DA
12:19:19.941 TX cmd 0x0F frame 006 00 00 0F 00 80 D5
12:19:19.993 RX frame 006 00 00 00 00 80 DA
12:19:19.993 RX frame 006 00 00 00 00 80 DA
12:19:19.993 RX frame 006 00 00 00 00 80 DA
12:19:19.993 RX frame 006 00 00 00 00 80 DA
12:19:19.993 RX frame 006 00 00 00 00 80 DA
12:19:19.993 RX frame 006 00 00 00 00 80 DA
12:19:19.993 RX frame 006 00 00 00 00 80 DA
12:19:20.196 RX frame 006 00 00 00 00 80 DA
12:19:20.853 RX frame 006 00 00 00 00 80 DA
12:19:24.283 TX cmd 0x10 frame 006 00 00 10 00 80 CA
12:19:24.334 RX frame 006 00 00 00 00 80 DA
12:19:24.334 RX frame 006 00 00 00 00 80 DA
12:19:24.334 RX frame 006 00 00 00 00 80 DA
12:19:24.334 RX frame 006 00 00 00 00 80 DA
12:19:24.384 RX frame 006 00 00 00 00 80 DA
12:19:24.636 RX frame 006 00 00 00 00 80 DA
12:19:24.889 RX frame 006 00 00 00 00 80 DA
12:19:25.142 RX frame 006 00 00 00 00 80 DA
12:19:25.394 RX frame 006 00 00 00 00 80 DA
12:19:33.803 SCREEN cmd 0x10 CONNECT NOT ACT
12:19:33.803 TX cmd 0x11 frame 006 00 00 11 00 80 CB
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.804 RX frame 006 00 00 00 00 80 DA
12:19:33.855 RX frame 006 00 00 00 00 80 DA
12:19:33.855 RX frame 006 00 00 00 00 80 DA
12:19:33.855 RX frame 006 00 00 00 00 80 DA
12:19:33.855 RX frame 006 00 00 00 00 80 DA
12:19:34.461 RX frame 006 00 00 00 00 80 DA
12:19:34.715 RX frame 006 00 00 00 00 80 DA
12:19:34.967 RX frame 006 00 00 00 00 80 DA
12:19:42.513 SCREEN cmd 0x11 CONNECT NOT ACT
12:19:42.514 TX cmd 0x12 frame 006 00 00 12 00 80 C8
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.515 RX frame 006 00 00 00 00 80 DA
12:19:42.565 RX frame 006 00 00 00 00 80 DA
12:19:42.565 RX frame 006 00 00 00 00 80 DA
12:19:42.667 RX frame 006 00 00 00 00 80 DA
12:19:42.920 RX frame 006 00 00 00 00 80 DA
12:19:43.173 RX frame 006 00 00 00 00 80 DA
12:19:43.425 RX frame 006 00 00 00 00 80 DA
12:19:43.678 RX frame 006 00 00 00 00 80 DA
12:19:51.420 SCREEN cmd 0x12 CONNECT NOT ACT
12:19:51.420 TX cmd 0x13 frame 006 00 00 13 00 80 C9
12:19:51.421 RX frame 006 00 00 00 00 80 DA
12:19:51.422 RX frame 006 00 00 00 00 80 DA
12:19:51.422 RX frame 006 00 00 00 00 80 DA
12:19:51.422 RX frame 006 00 00 00 00 80 DA
12:19:51.422 RX frame 006 00 00 00 00 80 DA
12:19:51.422 RX frame 006 00 00 00 00 80 DA
12:19:51.422 RX frame 006 00 00 00 00 80 DA
12:19:51.423 RX frame 006 00 00 00 00 80 DA
12:19:51.423 RX frame 006 00 00 00 00 80 DA
12:19:51.423 RX frame 006 00 00 00 00 80 DA
12:19:51.474 RX frame 006 00 00 00 00 80 DA
12:19:51.474 RX frame 006 00 00 00 00 80 DA
12:19:51.474 RX frame 006 00 00 00 00 80 DA
12:19:52.083 RX frame 006 00 00 00 00 80 DA
12:19:52.334 RX frame 006 00 00 00 00 80 DA
12:19:52.586 RX frame 006 00 00 00 00 80 DA
12:20:02.062 SCREEN cmd 0x13 CONNECT NOT ACT
12:20:02.062 TX cmd 0x14 frame 006 00 00 14 00 80 CE
12:20:02.062 RX frame 006 00 00 00 00 80 DA
12:20:02.062 RX frame 006 00 00 00 00 80 DA
12:20:02.063 RX frame 006 00 00 00 00 80 DA
12:20:02.063 RX frame 006 00 00 00 00 80 DA
12:20:02.063 RX frame 006 00 00 00 00 80 DA
12:20:02.063 RX frame 006 00 00 00 00 80 DA
12:20:02.063 RX frame 006 00 00 00 00 80 DA
12:20:02.063 RX frame 006 00 00 00 00 80 DA
12:20:02.063 RX frame 006 00 00 00 00 80 DA
12:20:02.063 RX frame 006 00 00 00 00 80 DA
12:20:02.113 RX frame 006 00 00 00 00 80 DA
12:20:02.113 RX frame 006 00 00 00 00 80 DA
12:20:02.113 RX frame 006 00 00 00 00 80 DA
12:20:02.113 RX frame 006 00 00 00 00 80 DA
12:20:02.113 RX frame 006 00 00 00 00 80 DA
12:20:02.366 RX frame 006 00 00 00 00 80 DA
12:20:02.618 RX frame 006 00 00 00 00 80 DA
12:20:02.871 RX frame 006 00 00 00 00 80 DA
12:20:03.123 RX frame 006 00 00 00 00 80 DA
12:20:09.899 SCREEN cmd 0x14 CONNECT NOT ACT
12:20:09.900 RX frame 006 00 00 00 00 80 DA
12:20:09.900 RX frame 006 00 00 00 00 80 DA
12:20:09.900 RX frame 006 00 00 00 00 80 DA
12:20:09.900 RX frame 006 00 00 00 00 80 DA
12:20:09.900 RX frame 006 00 00 00 00 80 DA
12:20:09.900 RX frame 006 00 00 00 00 80 DA
12:20:09.900 RX frame 006 00 00 00 00 80 DA
12:20:09.900 RX frame 006 00 00 00 00 80 DA
12:20:09.900 RX frame 006 00 00 00 00 80 DA
12:20:09.901 RX frame 006 00 00 00 00 80 DA
12:20:09.951 RX frame 006 00 00 00 00 80 DA
12:20:10.203 RX frame 006 00 00 00 00 80 DA
12:20:10.859 RX frame 006 00 00 00 00 80 DA
12:20:11.564 RX frame 006 00 00 00 00 80 DA
12:20:12.271 RX frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,446 @@
Sweeping commands 0x15-0x30 on COM5 at 38400 8N1
12:24:01.190 RX frame 006 00 00 00 00 80 DA
12:24:01.896 RX frame 006 00 00 00 00 80 DA
12:24:02.602 RX frame 006 00 00 00 00 80 DA
12:24:02.652 TX cmd 0x15 frame 006 00 00 15 00 80 CF
12:24:03.310 RX frame 006 00 00 00 00 80 DA
12:24:03.562 RX frame 006 00 00 00 00 80 DA
12:24:03.814 RX frame 006 00 00 00 00 80 DA
12:24:11.510 SCREEN cmd 0x15 CONNECT NOT ACT
12:24:11.510 TX cmd 0x16 frame 006 00 00 16 00 80 CC
12:24:11.511 RX frame 006 00 00 00 00 80 DA
12:24:11.511 RX frame 006 00 00 00 00 80 DA
12:24:11.511 RX frame 006 00 00 00 00 80 DA
12:24:11.511 RX frame 006 00 00 00 00 80 DA
12:24:11.511 RX frame 006 00 00 00 00 80 DA
12:24:11.512 RX frame 006 00 00 00 00 80 DA
12:24:11.512 RX frame 006 00 00 00 00 80 DA
12:24:11.512 RX frame 006 00 00 00 00 80 DA
12:24:11.512 RX frame 006 00 00 00 00 80 DA
12:24:11.512 RX frame 006 00 00 00 00 80 DA
12:24:11.563 RX frame 006 00 00 00 00 80 DA
12:24:11.563 RX frame 006 00 00 00 00 80 DA
12:24:11.563 RX frame 006 00 00 00 00 80 DA
12:24:12.219 RX frame 006 00 00 00 00 80 DA
12:24:12.472 RX frame 006 00 00 00 00 80 DA
12:24:12.725 RX frame 006 00 00 00 00 80 DA
Sweeping commands 0x15-0x30 on COM5 at 38400 8N1
12:24:19.020 RX frame 006 00 00 00 00 80 DA
12:24:19.725 RX frame 006 00 00 00 00 80 DA
12:24:20.431 RX frame 006 00 00 00 00 80 DA
12:24:20.481 TX cmd 0x15 frame 006 00 00 15 00 80 CF
12:24:21.139 RX frame 006 00 00 00 00 80 DA
12:24:21.392 RX frame 006 00 00 00 00 80 DA
12:24:21.645 RX frame 006 00 00 00 00 80 DA
12:24:30.740 SCREEN cmd 0x15 CONNECT NOT ACT
12:24:30.740 TX cmd 0x16 frame 006 00 00 16 00 80 CC
12:24:30.740 RX frame 006 00 00 00 00 80 DA
12:24:30.741 RX frame 006 00 00 00 00 80 DA
12:24:30.741 RX frame 006 00 00 00 00 80 DA
12:24:30.741 RX frame 006 00 00 00 00 80 DA
12:24:30.741 RX frame 006 00 00 00 00 80 DA
12:24:30.741 RX frame 006 00 00 00 00 80 DA
12:24:30.741 RX frame 006 00 00 00 00 80 DA
12:24:30.741 RX frame 006 00 00 00 00 80 DA
12:24:30.741 RX frame 006 00 00 00 00 80 DA
12:24:30.741 RX frame 006 00 00 00 00 80 DA
12:24:30.792 RX frame 006 00 00 00 00 80 DA
12:24:30.792 RX frame 006 00 00 00 00 80 DA
12:24:30.792 RX frame 006 00 00 00 00 80 DA
12:24:30.792 RX frame 006 00 00 00 00 80 DA
12:24:30.792 RX frame 006 00 00 00 00 80 DA
12:24:31.399 RX frame 006 00 00 00 00 80 DA
12:24:31.650 RX frame 006 00 00 00 00 80 DA
12:24:31.901 RX frame 006 00 00 00 00 80 DA
12:24:41.410 SCREEN cmd 0x16 CONNECT NOT ACT
12:24:41.410 TX cmd 0x17 frame 006 00 00 17 00 80 CD
12:24:41.411 RX frame 006 00 00 00 00 80 DA
12:24:41.411 RX frame 006 00 00 00 00 80 DA
12:24:41.412 RX frame 006 00 00 00 00 80 DA
12:24:41.412 RX frame 006 00 00 00 00 80 DA
12:24:41.412 RX frame 006 00 00 00 00 80 DA
12:24:41.412 RX frame 006 00 00 00 00 80 DA
12:24:41.412 RX frame 006 00 00 00 00 80 DA
12:24:41.412 RX frame 006 00 00 00 00 80 DA
12:24:41.412 RX frame 006 00 00 00 00 80 DA
12:24:41.412 RX frame 006 00 00 00 00 80 DA
12:24:41.463 RX frame 006 00 00 00 00 80 DA
12:24:41.463 RX frame 006 00 00 00 00 80 DA
12:24:41.463 RX frame 006 00 00 00 00 80 DA
12:24:41.463 RX frame 006 00 00 00 00 80 DA
12:24:41.463 RX frame 006 00 00 00 00 80 DA
12:24:41.717 RX frame 006 00 00 00 00 80 DA
12:24:41.968 RX frame 006 00 00 00 00 80 DA
12:24:42.220 RX frame 006 00 00 00 00 80 DA
12:24:42.473 RX frame 006 00 00 00 00 80 DA
12:24:50.364 SCREEN cmd 0x17 CONECT NOT ACT
12:24:50.365 TX cmd 0x18 frame 006 00 00 18 00 80 C2
12:24:50.365 RX frame 006 00 00 00 00 80 DA
12:24:50.365 RX frame 006 00 00 00 00 80 DA
12:24:50.365 RX frame 006 00 00 00 00 80 DA
12:24:50.365 RX frame 006 00 00 00 00 80 DA
12:24:50.365 RX frame 006 00 00 00 00 80 DA
12:24:50.365 RX frame 006 00 00 00 00 80 DA
12:24:50.365 RX frame 006 00 00 00 00 80 DA
12:24:50.365 RX frame 006 00 00 00 00 80 DA
12:24:50.366 RX frame 006 00 00 00 00 80 DA
12:24:50.366 RX frame 006 00 00 00 00 80 DA
12:24:50.417 RX frame 006 00 00 00 00 80 DA
12:24:50.417 RX frame 006 00 00 00 00 80 DA
12:24:50.417 RX frame 006 00 00 00 00 80 DA
12:24:50.920 RX frame 006 00 00 00 00 80 DA
12:24:51.173 RX frame 006 00 00 00 00 80 DA
12:24:51.425 RX frame 006 00 00 00 00 80 DA
12:25:00.326 SCREEN cmd 0x18 CONNECT NOT ACT
12:25:00.326 TX cmd 0x19 frame 006 00 00 19 00 80 C3
12:25:00.326 RX frame 006 00 00 00 00 80 DA
12:25:00.326 RX frame 006 00 00 00 00 80 DA
12:25:00.326 RX frame 006 00 00 00 00 80 DA
12:25:00.326 RX frame 006 00 00 00 00 80 DA
12:25:00.326 RX frame 006 00 00 00 00 80 DA
12:25:00.327 RX frame 006 00 00 00 00 80 DA
12:25:00.327 RX frame 006 00 00 00 00 80 DA
12:25:00.327 RX frame 006 00 00 00 00 80 DA
12:25:00.327 RX frame 006 00 00 00 00 80 DA
12:25:00.327 RX frame 006 00 00 00 00 80 DA
12:25:00.378 RX frame 006 00 00 00 00 80 DA
12:25:00.378 RX frame 006 00 00 00 00 80 DA
12:25:00.378 RX frame 006 00 00 00 00 80 DA
12:25:00.379 RX frame 006 00 00 00 00 80 DA
12:25:00.530 RX frame 006 00 00 00 00 80 DA
12:25:00.785 RX frame 006 00 00 00 00 80 DA
12:25:01.036 RX frame 006 00 00 00 00 80 DA
12:25:01.289 RX frame 006 00 00 00 00 80 DA
12:25:01.540 RX frame 006 00 00 00 00 80 DA
12:25:10.813 SCREEN cmd 0x19 CONNECT NOT ACT
12:25:10.813 TX cmd 0x1A frame 006 00 00 1A 00 80 C0
12:25:10.813 RX frame 006 00 00 00 00 80 DA
12:25:10.814 RX frame 006 00 00 00 00 80 DA
12:25:10.814 RX frame 006 00 00 00 00 80 DA
12:25:10.814 RX frame 006 00 00 00 00 80 DA
12:25:10.814 RX frame 006 00 00 00 00 80 DA
12:25:10.814 RX frame 006 00 00 00 00 80 DA
12:25:10.814 RX frame 006 00 00 00 00 80 DA
12:25:10.814 RX frame 006 00 00 00 00 80 DA
12:25:10.814 RX frame 006 00 00 00 00 80 DA
12:25:10.814 RX frame 006 00 00 00 00 80 DA
12:25:10.864 RX frame 006 00 00 00 00 80 DA
12:25:10.864 RX frame 006 00 00 00 00 80 DA
12:25:10.864 RX frame 006 00 00 00 00 80 DA
12:25:10.864 RX frame 006 00 00 00 00 80 DA
12:25:10.864 RX frame 006 00 00 00 00 80 DA
12:25:11.318 RX frame 006 00 00 00 00 80 DA
12:25:11.570 RX frame 006 00 00 00 00 80 DA
12:25:11.822 RX frame 006 00 00 00 00 80 DA
12:25:20.870 SCREEN cmd 0x1A CONNECT NOT ACT
12:25:20.871 TX cmd 0x1B frame 006 00 00 1B 00 80 C1
12:25:20.871 RX frame 006 00 00 00 00 80 DA
12:25:20.871 RX frame 006 00 00 00 00 80 DA
12:25:20.871 RX frame 006 00 00 00 00 80 DA
12:25:20.871 RX frame 006 00 00 00 00 80 DA
12:25:20.872 RX frame 006 00 00 00 00 80 DA
12:25:20.872 RX frame 006 00 00 00 00 80 DA
12:25:20.872 RX frame 006 00 00 00 00 80 DA
12:25:20.872 RX frame 006 00 00 00 00 80 DA
12:25:20.872 RX frame 006 00 00 00 00 80 DA
12:25:20.872 RX frame 006 00 00 00 00 80 DA
12:25:20.922 RX frame 006 00 00 00 00 80 DA
12:25:20.922 RX frame 006 00 00 00 00 80 DA
12:25:20.922 RX frame 006 00 00 00 00 80 DA
12:25:20.922 RX frame 006 00 00 00 00 80 DA
12:25:20.922 RX frame 006 00 00 00 00 80 DA
12:25:21.174 RX frame 006 00 00 00 00 80 DA
12:25:21.427 RX frame 006 00 00 00 00 80 DA
12:25:21.679 RX frame 006 00 00 00 00 80 DA
12:25:21.931 RX frame 006 00 00 00 00 80 DA
12:25:30.579 SCREEN cmd 0x1B CONNECT NOT ACT
12:25:30.580 TX cmd 0x1C frame 006 00 00 1C 00 80 C6
12:25:30.580 RX frame 006 00 00 00 00 80 DA
12:25:30.580 RX frame 006 00 00 00 00 80 DA
12:25:30.581 RX frame 006 00 00 00 00 80 DA
12:25:30.581 RX frame 006 00 00 00 00 80 DA
12:25:30.581 RX frame 006 00 00 00 00 80 DA
12:25:30.581 RX frame 006 00 00 00 00 80 DA
12:25:30.581 RX frame 006 00 00 00 00 80 DA
12:25:30.581 RX frame 006 00 00 00 00 80 DA
12:25:30.581 RX frame 006 00 00 00 00 80 DA
12:25:30.582 RX frame 006 00 00 00 00 80 DA
12:25:30.633 RX frame 006 00 00 00 00 80 DA
12:25:30.633 RX frame 006 00 00 00 00 80 DA
12:25:30.633 RX frame 006 00 00 00 00 80 DA
12:25:30.634 RX frame 006 00 00 00 00 80 DA
12:25:31.038 RX frame 006 00 00 00 00 80 DA
12:25:31.290 RX frame 006 00 00 00 00 80 DA
12:25:31.543 RX frame 006 00 00 00 00 80 DA
12:25:31.796 RX frame 006 00 00 00 00 80 DA
12:25:39.051 SCREEN cmd 0x1C CONNECT NOT ACT
12:25:39.051 TX cmd 0x1D frame 006 00 00 1D 00 80 C7
12:25:39.051 RX frame 006 00 00 00 00 80 DA
12:25:39.051 RX frame 006 00 00 00 00 80 DA
12:25:39.052 RX frame 006 00 00 00 00 80 DA
12:25:39.052 RX frame 006 00 00 00 00 80 DA
12:25:39.052 RX frame 006 00 00 00 00 80 DA
12:25:39.052 RX frame 006 00 00 00 00 80 DA
12:25:39.052 RX frame 006 00 00 00 00 80 DA
12:25:39.052 RX frame 006 00 00 00 00 80 DA
12:25:39.052 RX frame 006 00 00 00 00 80 DA
12:25:39.052 RX frame 006 00 00 00 00 80 DA
12:25:39.102 RX frame 006 00 00 00 00 80 DA
12:25:39.253 RX frame 006 00 00 00 00 80 DA
12:25:39.505 RX frame 006 00 00 00 00 80 DA
12:25:39.708 RX frame 006 00 00 00 00 80 DA
12:25:39.959 RX frame 006 00 00 00 00 80 DA
12:25:40.212 RX frame 006 00 00 00 00 80 DA
12:25:48.864 SCREEN cmd 0x1D CONNECT NOT ACT
12:25:48.865 TX cmd 0x1E frame 006 00 00 1E 00 80 C4
12:25:48.867 RX frame 006 00 00 00 00 80 DA
12:25:48.867 RX frame 006 00 00 00 00 80 DA
12:25:48.867 RX frame 006 00 00 00 00 80 DA
12:25:48.867 RX frame 006 00 00 00 00 80 DA
12:25:48.867 RX frame 006 00 00 00 00 80 DA
12:25:48.867 RX frame 006 00 00 00 00 80 DA
12:25:48.867 RX frame 006 00 00 00 00 80 DA
12:25:48.867 RX frame 006 00 00 00 00 80 DA
12:25:48.867 RX frame 006 00 00 00 00 80 DA
12:25:48.868 RX frame 006 00 00 00 00 80 DA
12:25:48.919 RX frame 006 00 00 00 00 80 DA
12:25:48.919 RX frame 006 00 00 00 00 80 DA
12:25:48.919 RX frame 006 00 00 00 00 80 DA
12:25:48.919 RX frame 006 00 00 00 00 80 DA
12:25:49.323 RX frame 006 00 00 00 00 80 DA
12:25:50.028 RX frame 006 00 00 00 00 80 DA
12:25:55.659 TX cmd 0x1F frame 006 00 00 1F 00 80 C5
12:25:55.710 RX frame 006 00 00 00 00 80 DA
12:25:55.710 RX frame 006 00 00 00 00 80 DA
12:25:55.710 RX frame 006 00 00 00 00 80 DA
12:25:55.710 RX frame 006 00 00 00 00 80 DA
12:25:55.711 RX frame 006 00 00 00 00 80 DA
12:25:55.711 RX frame 006 00 00 00 00 80 DA
12:25:55.711 RX frame 006 00 00 00 00 80 DA
12:25:55.711 RX frame 006 00 00 00 00 80 DA
12:25:56.315 RX frame 006 00 00 00 00 80 DA
12:26:02.498 TX cmd 0x20 frame 006 00 00 20 00 80 FA
12:26:02.549 RX frame 006 00 00 00 00 80 DA
12:26:02.549 RX frame 006 00 00 00 00 80 DA
12:26:02.549 RX frame 006 00 00 00 00 80 DA
12:26:02.549 RX frame 006 00 00 00 00 80 DA
12:26:02.549 RX frame 006 00 00 00 00 80 DA
12:26:02.549 RX frame 006 00 00 00 00 80 DA
12:26:02.549 RX frame 006 00 00 00 00 80 DA
12:26:02.549 RX frame 006 00 00 00 00 80 DA
12:26:02.650 RX frame 006 00 00 00 00 80 DA
12:26:03.355 RX frame 006 00 00 00 00 80 DA
12:26:06.522 TX cmd 0x21 frame 006 00 00 21 00 80 FB
12:26:06.572 RX frame 006 00 00 00 00 80 DA
12:26:06.572 RX frame 006 00 00 00 00 80 DA
12:26:06.572 RX frame 006 00 00 00 00 80 DA
12:26:06.572 RX frame 006 00 00 00 00 80 DA
12:26:06.823 RX frame 006 00 00 00 00 80 DA
12:26:07.529 RX frame 006 00 00 00 00 80 DA
12:26:10.573 TX cmd 0x22 frame 006 00 00 22 00 80 F8
12:26:10.623 RX frame 006 00 00 00 00 80 DA
12:26:10.623 RX frame 006 00 00 00 00 80 DA
12:26:10.623 RX frame 006 00 00 00 00 80 DA
12:26:10.623 RX frame 006 00 00 00 00 80 DA
12:26:11.026 RX frame 006 00 00 00 00 80 DA
12:26:11.732 RX frame 006 00 00 00 00 80 DA
12:26:15.634 TX cmd 0x23 frame 006 00 00 23 00 80 F9
12:26:15.685 RX frame 006 00 00 00 00 80 DA
12:26:15.685 RX frame 006 00 00 00 00 80 DA
12:26:15.685 RX frame 006 00 00 00 00 80 DA
12:26:15.685 RX frame 006 00 00 00 00 80 DA
12:26:15.686 RX frame 006 00 00 00 00 80 DA
12:26:15.939 RX frame 006 00 00 00 00 80 DA
12:26:16.644 RX frame 006 00 00 00 00 80 DA
12:26:20.967 TX cmd 0x24 frame 006 00 00 24 00 80 FE
12:26:21.018 RX frame 006 00 00 00 00 80 DA
12:26:21.018 RX frame 006 00 00 00 00 80 DA
12:26:21.018 RX frame 006 00 00 00 00 80 DA
12:26:21.018 RX frame 006 00 00 00 00 80 DA
12:26:21.018 RX frame 006 00 00 00 00 80 DA
12:26:21.018 RX frame 006 00 00 00 00 80 DA
12:26:21.521 RX frame 006 00 00 00 00 80 DA
12:26:29.048 TX cmd 0x25 frame 006 00 00 25 00 80 FF
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.100 RX frame 006 00 00 00 00 80 DA
12:26:29.251 RX frame 006 00 00 00 00 80 DA
12:26:29.957 RX frame 006 00 00 00 00 80 DA
12:26:33.686 TX cmd 0x26 frame 006 00 00 26 00 80 FC
12:26:33.737 RX frame 006 00 00 00 00 80 DA
12:26:33.737 RX frame 006 00 00 00 00 80 DA
12:26:33.737 RX frame 006 00 00 00 00 80 DA
12:26:33.737 RX frame 006 00 00 00 00 80 DA
12:26:33.737 RX frame 006 00 00 00 00 80 DA
12:26:34.141 RX frame 006 00 00 00 00 80 DA
12:26:34.849 RX frame 006 00 00 00 00 80 DA
12:26:38.924 TX cmd 0x27 frame 006 00 00 27 00 80 FD
12:26:38.975 RX frame 006 00 00 00 00 80 DA
12:26:38.975 RX frame 006 00 00 00 00 80 DA
12:26:38.975 RX frame 006 00 00 00 00 80 DA
12:26:38.975 RX frame 006 00 00 00 00 80 DA
12:26:38.975 RX frame 006 00 00 00 00 80 DA
12:26:39.026 RX frame 006 00 00 00 00 80 DA
12:26:39.733 RX frame 006 00 00 00 00 80 DA
12:26:43.741 TX cmd 0x28 frame 006 00 00 28 00 80 F2
12:26:43.793 RX frame 006 00 00 00 00 80 DA
12:26:43.793 RX frame 006 00 00 00 00 80 DA
12:26:43.793 RX frame 006 00 00 00 00 80 DA
12:26:43.793 RX frame 006 00 00 00 00 80 DA
12:26:43.793 RX frame 006 00 00 00 00 80 DA
12:26:43.944 RX frame 006 00 00 00 00 80 DA
12:26:44.197 RX frame 006 00 00 00 00 80 DA
12:26:44.449 RX frame 006 00 00 00 00 80 DA
12:26:44.701 RX frame 006 00 00 00 00 80 DA
12:26:44.954 RX frame 006 00 00 00 00 80 DA
12:26:53.867 SCREEN cmd 0x28 CONNECT NOT ACT
12:26:53.868 TX cmd 0x29 frame 006 00 00 29 00 80 F3
12:26:53.869 RX frame 006 00 00 00 00 80 DA
12:26:53.869 RX frame 006 00 00 00 00 80 DA
12:26:53.869 RX frame 006 00 00 00 00 80 DA
12:26:53.869 RX frame 006 00 00 00 00 80 DA
12:26:53.869 RX frame 006 00 00 00 00 80 DA
12:26:53.869 RX frame 006 00 00 00 00 80 DA
12:26:53.869 RX frame 006 00 00 00 00 80 DA
12:26:53.869 RX frame 006 00 00 00 00 80 DA
12:26:53.870 RX frame 006 00 00 00 00 80 DA
12:26:53.870 RX frame 006 00 00 00 00 80 DA
12:26:53.921 RX frame 006 00 00 00 00 80 DA
12:26:53.921 RX frame 006 00 00 00 00 80 DA
12:26:53.921 RX frame 006 00 00 00 00 80 DA
12:26:53.921 RX frame 006 00 00 00 00 80 DA
12:26:54.021 RX frame 006 00 00 00 00 80 DA
12:26:54.275 RX frame 006 00 00 00 00 80 DA
12:26:54.528 RX frame 006 00 00 00 00 80 DA
12:26:54.779 RX frame 006 00 00 00 00 80 DA
12:26:55.032 RX frame 006 00 00 00 00 80 DA
12:27:02.549 SCREEN cmd 0x29 CONNECT NOT ACT
12:27:02.549 TX cmd 0x2A frame 006 00 00 2A 00 80 F0
12:27:02.549 RX frame 006 00 00 00 00 80 DA
12:27:02.549 RX frame 006 00 00 00 00 80 DA
12:27:02.549 RX frame 006 00 00 00 00 80 DA
12:27:02.550 RX frame 006 00 00 00 00 80 DA
12:27:02.550 RX frame 006 00 00 00 00 80 DA
12:27:02.550 RX frame 006 00 00 00 00 80 DA
12:27:02.550 RX frame 006 00 00 00 00 80 DA
12:27:02.550 RX frame 006 00 00 00 00 80 DA
12:27:02.550 RX frame 006 00 00 00 00 80 DA
12:27:02.550 RX frame 006 00 00 00 00 80 DA
12:27:02.601 RX frame 006 00 00 00 00 80 DA
12:27:02.601 RX frame 006 00 00 00 00 80 DA
12:27:02.753 RX frame 006 00 00 00 00 80 DA
12:27:03.459 RX frame 006 00 00 00 00 80 DA
12:27:08.068 TX cmd 0x2B frame 006 00 00 2B 00 80 F1
12:27:08.118 RX frame 006 00 00 00 00 80 DA
12:27:08.118 RX frame 006 00 00 00 00 80 DA
12:27:08.118 RX frame 006 00 00 00 00 80 DA
12:27:08.118 RX frame 006 00 00 00 00 80 DA
12:27:08.118 RX frame 006 00 00 00 00 80 DA
12:27:08.118 RX frame 006 00 00 00 00 80 DA
12:27:08.321 RX frame 006 00 00 00 00 80 DA
12:27:09.030 RX frame 006 00 00 00 00 80 DA
12:27:19.808 TX cmd 0x2C frame 006 00 00 2C 00 80 F6
12:27:19.808 RX frame 006 00 00 00 00 80 DA
12:27:19.808 RX frame 006 00 00 00 00 80 DA
12:27:19.809 RX frame 006 00 00 00 00 80 DA
12:27:19.809 RX frame 006 00 00 00 00 80 DA
12:27:19.809 RX frame 006 00 00 00 00 80 DA
12:27:19.809 RX frame 006 00 00 00 00 80 DA
12:27:19.809 RX frame 006 00 00 00 00 80 DA
12:27:19.809 RX frame 006 00 00 00 00 80 DA
12:27:19.809 RX frame 006 00 00 00 00 80 DA
12:27:19.809 RX frame 006 00 00 00 00 80 DA
12:27:19.860 RX frame 006 00 00 00 00 80 DA
12:27:19.860 RX frame 006 00 00 00 00 80 DA
12:27:19.860 RX frame 006 00 00 00 00 80 DA
12:27:19.860 RX frame 006 00 00 00 00 80 DA
12:27:19.860 RX frame 006 00 00 00 00 80 DA
12:27:20.265 RX frame 006 00 00 00 00 80 DA
12:27:20.517 RX frame 006 00 00 00 00 80 DA
12:27:20.770 RX frame 006 00 00 00 00 80 DA
12:27:21.023 RX frame 006 00 00 00 00 80 DA
12:27:28.878 SCREEN cmd 0x2C CONNECT NOT ACT
12:27:28.879 TX cmd 0x2D frame 006 00 00 2D 00 80 F7
12:27:28.880 RX frame 006 00 00 00 00 80 DA
12:27:28.881 RX frame 006 00 00 00 00 80 DA
12:27:28.881 RX frame 006 00 00 00 00 80 DA
12:27:28.881 RX frame 006 00 00 00 00 80 DA
12:27:28.881 RX frame 006 00 00 00 00 80 DA
12:27:28.881 RX frame 006 00 00 00 00 80 DA
12:27:28.881 RX frame 006 00 00 00 00 80 DA
12:27:28.882 RX frame 006 00 00 00 00 80 DA
12:27:28.882 RX frame 006 00 00 00 00 80 DA
12:27:28.882 RX frame 006 00 00 00 00 80 DA
12:27:28.932 RX frame 006 00 00 00 00 80 DA
12:27:28.932 RX frame 006 00 00 00 00 80 DA
12:27:28.932 RX frame 006 00 00 00 00 80 DA
12:27:29.437 RX frame 006 00 00 00 00 80 DA
12:27:29.690 RX frame 006 00 00 00 00 80 DA
12:27:29.942 RX frame 006 00 00 00 00 80 DA
12:27:38.801 SCREEN cmd 0x2D CONNECT NOT ACT
12:27:38.801 TX cmd 0x2E frame 006 00 00 2E 00 80 F4
12:27:38.803 RX frame 006 00 00 00 00 80 DA
12:27:38.803 RX frame 006 00 00 00 00 80 DA
12:27:38.803 RX frame 006 00 00 00 00 80 DA
12:27:38.803 RX frame 006 00 00 00 00 80 DA
12:27:38.803 RX frame 006 00 00 00 00 80 DA
12:27:38.804 RX frame 006 00 00 00 00 80 DA
12:27:38.804 RX frame 006 00 00 00 00 80 DA
12:27:38.804 RX frame 006 00 00 00 00 80 DA
12:27:38.804 RX frame 006 00 00 00 00 80 DA
12:27:38.804 RX frame 006 00 00 00 00 80 DA
12:27:38.854 RX frame 006 00 00 00 00 80 DA
12:27:38.854 RX frame 006 00 00 00 00 80 DA
12:27:38.854 RX frame 006 00 00 00 00 80 DA
12:27:38.854 RX frame 006 00 00 00 00 80 DA
12:27:39.056 RX frame 006 00 00 00 00 80 DA
12:27:39.763 RX frame 006 00 00 00 00 80 DA
12:27:45.820 TX cmd 0x2F frame 006 00 00 2F 00 80 F5
12:27:45.871 RX frame 006 00 00 00 00 80 DA
12:27:45.871 RX frame 006 00 00 00 00 80 DA
12:27:45.871 RX frame 006 00 00 00 00 80 DA
12:27:45.871 RX frame 006 00 00 00 00 80 DA
12:27:45.871 RX frame 006 00 00 00 00 80 DA
12:27:45.871 RX frame 006 00 00 00 00 80 DA
12:27:45.871 RX frame 006 00 00 00 00 80 DA
12:27:45.871 RX frame 006 00 00 00 00 80 DA
12:27:46.024 RX frame 006 00 00 00 00 80 DA
12:27:46.730 RX frame 006 00 00 00 00 80 DA
12:27:50.634 TX cmd 0x30 frame 006 00 00 30 00 80 EA
12:27:50.686 RX frame 006 00 00 00 00 80 DA
12:27:50.686 RX frame 006 00 00 00 00 80 DA
12:27:50.686 RX frame 006 00 00 00 00 80 DA
12:27:50.686 RX frame 006 00 00 00 00 80 DA
12:27:50.686 RX frame 006 00 00 00 00 80 DA
12:27:50.939 RX frame 006 00 00 00 00 80 DA
12:27:51.192 RX frame 006 00 00 00 00 80 DA
12:27:51.444 RX frame 006 00 00 00 00 80 DA
12:27:51.698 RX frame 006 00 00 00 00 80 DA
12:28:01.571 SCREEN cmd 0x30 CONNECT NOT ACT
12:28:01.571 RX frame 006 00 00 00 00 80 DA
12:28:01.572 RX frame 006 00 00 00 00 80 DA
12:28:01.572 RX frame 006 00 00 00 00 80 DA
12:28:01.572 RX frame 006 00 00 00 00 80 DA
12:28:01.572 RX frame 006 00 00 00 00 80 DA
12:28:01.573 RX frame 006 00 00 00 00 80 DA
12:28:01.574 RX frame 006 00 00 00 00 80 DA
12:28:01.574 RX frame 006 00 00 00 00 80 DA
12:28:01.574 RX frame 006 00 00 00 00 80 DA
12:28:01.574 RX frame 006 00 00 00 00 80 DA
12:28:01.625 RX frame 006 00 00 00 00 80 DA
12:28:01.625 RX frame 006 00 00 00 00 80 DA
12:28:01.625 RX frame 006 00 00 00 00 80 DA
12:28:01.625 RX frame 006 00 00 00 00 80 DA
12:28:01.625 RX frame 006 00 00 00 00 80 DA
12:28:01.625 RX frame 006 00 00 00 00 80 DA
12:28:02.231 RX frame 006 00 00 00 00 80 DA
12:28:02.939 RX frame 006 00 00 00 00 80 DA
12:28:03.646 RX frame 006 00 00 00 00 80 DA
12:28:04.354 RX frame 006 00 00 00 00 80 DA

View File

@@ -0,0 +1,54 @@
11:54:40.567 frame 006 00 00 00 00 80 DA
11:54:41.368 frame 006 00 00 00 00 80 DA
11:54:41.970 frame 006 00 00 00 00 80 DA
11:54:42.772 frame 006 00 00 00 00 80 DA
11:54:43.373 frame 006 00 00 00 00 80 DA
11:54:44.176 frame 006 00 00 00 00 80 DA
11:54:44.778 frame 006 00 00 00 00 80 DA
11:54:45.580 frame 006 00 00 00 00 80 DA
11:54:46.183 frame 006 00 00 00 00 80 DA
11:54:46.984 frame 006 00 00 00 00 80 DA
11:54:47.586 frame 006 00 00 00 00 80 DA
11:54:48.387 frame 006 00 00 00 00 80 DA
11:54:48.988 frame 006 00 00 00 00 80 DA
11:54:49.790 frame 006 00 00 00 00 80 DA
11:54:50.393 frame 006 00 00 00 00 80 DA
11:54:51.196 frame 006 00 00 00 00 80 DA
11:54:51.797 frame 006 00 00 00 00 80 DA
11:54:52.599 frame 006 00 00 00 00 80 DA
11:54:53.201 frame 006 00 00 00 00 80 DA
11:54:54.003 frame 006 00 00 00 00 80 DA
11:54:54.604 frame 006 00 00 00 00 80 DA
11:54:55.406 frame 006 00 00 00 00 80 DA
11:54:56.009 frame 006 00 00 00 00 80 DA
11:54:56.812 frame 006 00 00 00 00 80 DA
11:54:57.413 frame 006 00 00 00 00 80 DA
11:54:58.215 frame 006 00 00 00 00 80 DA
11:54:58.816 frame 006 00 00 00 00 80 DA
11:54:59.619 frame 006 00 00 00 00 80 DA
11:55:00.220 frame 006 00 00 00 00 80 DA
11:55:01.023 frame 006 00 00 00 00 80 DA
11:55:01.625 frame 006 00 00 00 00 80 DA
11:55:02.426 frame 006 00 00 00 00 80 DA
11:55:03.027 frame 006 00 00 00 00 80 DA
11:55:03.829 frame 006 00 00 00 00 80 DA
11:55:04.430 frame 006 00 00 00 00 80 DA
11:55:05.231 frame 006 00 00 00 00 80 DA
11:55:05.832 frame 006 00 00 00 00 80 DA
11:55:06.634 frame 006 00 00 00 00 80 DA
11:55:07.235 frame 006 00 00 00 00 80 DA
11:55:07.837 frame 006 00 00 00 00 80 DA
11:55:08.638 frame 006 00 00 00 00 80 DA
11:55:09.239 frame 006 00 00 00 00 80 DA
11:55:10.040 frame 006 00 00 00 00 80 DA
11:55:10.642 frame 006 00 00 00 00 80 DA
11:55:11.443 frame 006 00 00 00 00 80 DA
11:55:12.045 frame 006 00 00 00 00 80 DA
11:55:12.848 frame 006 00 00 00 00 80 DA
11:55:13.450 frame 006 00 00 00 00 80 DA
11:55:14.253 frame 006 00 00 00 00 80 DA
11:55:14.854 frame 006 00 00 00 00 80 DA
11:55:15.657 frame 006 00 00 00 00 80 DA
11:55:16.259 frame 006 00 00 00 00 80 DA
11:55:17.061 frame 006 00 00 00 00 80 DA
11:55:17.663 frame 006 00 00 00 00 80 DA

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,59 @@
#!/usr/bin/env python3
"""Summarize fixed-size hex frames from serial helper logs."""
from __future__ import annotations
import argparse
import collections
import re
from pathlib import Path
FRAME_RE = re.compile(
r"\b(?P<direction>RX|TX)(?:\s+cmd\s+0x[0-9A-Fa-f]{2})?"
r"(?:\s+fields\b.*?)?\s+"
r"frame\s+\d+\s+(?P<frame>(?:[0-9A-Fa-f]{2}\s*)+)(?:\s+\S.*)?$"
)
def frames_from_log(path: Path) -> list[tuple[str, str]]:
frames: list[tuple[str, str]] = []
for line in path.read_text(encoding="utf-8").splitlines():
match = FRAME_RE.search(line.strip())
if match:
direction = match.group("direction")
frame = " ".join(match.group("frame").upper().split())
frames.append((direction, frame))
return frames
def checksum_note(frame: str) -> str:
values = [int(part, 16) for part in frame.split()]
if len(values) != 6:
return ""
checksum = 0x5A
for value in values[:5]:
checksum ^= value
if checksum == values[5]:
return " checksum ok"
return f" checksum expected {checksum:02X}"
def main() -> int:
parser = argparse.ArgumentParser(description="Count frames in capture logs.")
parser.add_argument("logs", nargs="+", type=Path)
args = parser.parse_args()
for log in args.logs:
frames = frames_from_log(log)
counts = collections.Counter(frames)
print(f"{log}: {len(frames)} frames, {len(counts)} unique direction/frame pairs")
for (direction, frame), count in counts.most_common():
print(f" {count:5d} {direction:<2} {frame}{checksum_note(frame)}")
return 0
if __name__ == "__main__":
raise SystemExit(main())

View File

@@ -0,0 +1,293 @@
#!/usr/bin/env python3
"""Sweep RCP-TX7 host frames and flag raw RX bytes beyond heartbeat.
This helper is for unattended response hunting. It sends checksum-valid 6-byte
candidate frames and reads the RCP-to-host line as raw bytes. Instead of forcing
the incoming stream into fixed 6-byte frames, it checks whether the received
bytes can be explained as a contiguous slice of the known repeated heartbeat:
00 00 00 00 80 DA
That avoids false positives such as:
00 00 00 80 DA 00
which is just the normal heartbeat viewed one byte late.
"""
from __future__ import annotations
import argparse
import datetime as dt
import itertools
import sys
import time
try:
import serial
except ImportError:
print(
"Missing dependency: pyserial\n"
"Install it with: python -m pip install pyserial",
file=sys.stderr,
)
raise SystemExit(2)
HEARTBEAT = bytes.fromhex("00 00 00 00 80 DA")
def parse_byte(text: str) -> int:
value = int(text, 0)
if not 0 <= value <= 0xFF:
raise argparse.ArgumentTypeError(f"must be a byte: {text}")
return value
def parse_byte_set(text: str) -> list[int]:
values: list[int] = []
for part in text.replace(",", " ").split():
if "-" in part:
start_text, end_text = part.split("-", 1)
start = parse_byte(start_text)
end = parse_byte(end_text)
if end < start:
raise argparse.ArgumentTypeError(f"bad range: {part}")
values.extend(range(start, end + 1))
else:
values.append(parse_byte(part))
if not values:
raise argparse.ArgumentTypeError("empty byte set")
return list(dict.fromkeys(values))
def build_frame(prefix1: int, prefix2: int, command: int, state: int, value: int) -> bytes:
body = bytes([prefix1, prefix2, command, state, value])
checksum = 0x5A
for byte in body:
checksum ^= byte
return body + bytes([checksum])
def hex_preview(data: bytes) -> str:
return " ".join(f"{byte:02X}" for byte in data)
def make_logger(path: str | None):
log_file = open(path, "a", encoding="utf-8") if path else None
def emit(line: str) -> None:
print(line)
if log_file:
log_file.write(line + "\n")
log_file.flush()
return emit, log_file
def heartbeat_offset(data: bytes) -> int | None:
if not data:
return 0
for offset in range(len(HEARTBEAT)):
if all(byte == HEARTBEAT[(offset + index) % len(HEARTBEAT)] for index, byte in enumerate(data)):
return offset
return None
def first_mismatch(data: bytes, offset: int) -> tuple[int, int, int] | None:
for index, byte in enumerate(data):
expected = HEARTBEAT[(offset + index) % len(HEARTBEAT)]
if byte != expected:
return index, byte, expected
return None
def classify_rx(data: bytes) -> tuple[bool, str]:
if not data:
return False, "no RX bytes"
offset = heartbeat_offset(data)
if offset is not None:
full = len(data) // len(HEARTBEAT)
extra = len(data) % len(HEARTBEAT)
return False, f"heartbeat-compatible RX: {len(data)} bytes, offset {offset}, {full} frames + {extra} bytes"
best_offset = min(
range(len(HEARTBEAT)),
key=lambda candidate: sum(
byte != HEARTBEAT[(candidate + index) % len(HEARTBEAT)]
for index, byte in enumerate(data)
),
)
mismatch = first_mismatch(data, best_offset)
if mismatch is None:
return False, "heartbeat-compatible RX"
index, byte, expected = mismatch
return (
True,
f"ANOMALY {len(data)} RX bytes; first mismatch at byte {index}: "
f"got {byte:02X}, heartbeat offset {best_offset} expected {expected:02X}",
)
def read_window(ser: serial.Serial, duration: float) -> bytes:
stop_at = time.monotonic() + duration
data = bytearray()
while time.monotonic() < stop_at:
chunk = ser.read(128)
if chunk:
data.extend(chunk)
return bytes(data)
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser(
description="Sweep candidate host frames and stop/log on non-heartbeat raw RX."
)
parser.add_argument("--port", required=True, help="serial port, for example COM5")
parser.add_argument("--baud", type=int, default=38400)
parser.add_argument("--prefix1s", type=parse_byte_set, default=[0x00])
parser.add_argument("--prefix2s", type=parse_byte_set, default=[0x00])
parser.add_argument("--commands", type=parse_byte_set, default=[0x00])
parser.add_argument("--states", type=parse_byte_set, default=[0x00])
parser.add_argument("--values", type=parse_byte_set, default=[0x80])
parser.add_argument("--settle", type=float, default=1.5)
parser.add_argument("--after-each", type=float, default=1.0)
parser.add_argument("--after", type=float, default=2.0)
parser.add_argument("--timeout", type=float, default=0.03)
parser.add_argument("--log", help="append sweep log to this file")
parser.add_argument("--dry-run", action="store_true")
parser.add_argument("--stop-on-anomaly", action="store_true")
parser.add_argument("--verbose-heartbeat", action="store_true")
parser.add_argument("--cycles", type=int, default=1)
parser.add_argument("--cycle-pause", type=float, default=0.0)
parser.add_argument(
"--max-frames",
type=int,
default=512,
help="safety limit for generated frames",
)
return parser.parse_args()
def main() -> int:
args = parse_args()
if args.cycles < 1:
raise SystemExit("--cycles must be >= 1")
rows = list(
itertools.product(
args.prefix1s,
args.prefix2s,
args.commands,
args.states,
args.values,
)
)
if len(rows) > args.max_frames:
raise SystemExit(
f"Refusing to send {len(rows)} frames; raise --max-frames if intentional"
)
frames = [
(prefix1, prefix2, command, state, value, build_frame(prefix1, prefix2, command, state, value))
for prefix1, prefix2, command, state, value in rows
]
if args.dry_run:
for prefix1, prefix2, command, state, value, frame in frames:
print(
f"p1=0x{prefix1:02X} p2=0x{prefix2:02X} cmd=0x{command:02X} "
f"state=0x{state:02X} value=0x{value:02X}: {hex_preview(frame)}"
)
return 0
emit, log_file = make_logger(args.log)
anomaly_count = 0
try:
with serial.Serial(
port=args.port,
baudrate=args.baud,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
timeout=args.timeout,
write_timeout=1.0,
rtscts=False,
dsrdtr=False,
xonxoff=False,
) as ser:
ser.reset_input_buffer()
total_frames = len(frames) * args.cycles
emit(
f"Direct response sweep: {len(frames)} frames x {args.cycles} cycles "
f"({total_frames} total) on {ser.port} at {ser.baudrate} 8N1"
)
baseline = read_window(ser, args.settle)
baseline_anomaly, baseline_note = classify_rx(baseline)
emit(f"BASELINE {baseline_note}")
if baseline_anomaly:
emit(f"BASELINE raw {hex_preview(baseline)}")
should_stop = False
for cycle in range(1, args.cycles + 1):
if args.cycles > 1:
emit(f"CYCLE {cycle}/{args.cycles}")
for prefix1, prefix2, command, state, value, frame in frames:
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(
f"{stamp} TX cycle={cycle} p1=0x{prefix1:02X} p2=0x{prefix2:02X} "
f"cmd=0x{command:02X} state=0x{state:02X} value=0x{value:02X} "
f"frame {len(frame):03d} {hex_preview(frame)}"
)
ser.write(frame)
ser.flush()
rx = read_window(ser, args.after_each)
is_anomaly, note = classify_rx(rx)
if is_anomaly:
anomaly_count += 1
emit(f"{stamp} {note}")
emit(f"{stamp} RX raw {hex_preview(rx)}")
if args.stop_on_anomaly:
emit("Stopping after anomaly.")
should_stop = True
break
elif args.verbose_heartbeat:
emit(f"{stamp} {note}")
if should_stop:
break
if cycle < args.cycles and args.cycle_pause > 0:
pause_rx = read_window(ser, args.cycle_pause)
pause_anomaly, pause_note = classify_rx(pause_rx)
emit(f"CYCLE {cycle} PAUSE {pause_note}")
if pause_anomaly:
anomaly_count += 1
emit(f"CYCLE {cycle} PAUSE raw {hex_preview(pause_rx)}")
if args.stop_on_anomaly:
emit("Stopping after anomaly.")
break
final_rx = read_window(ser, args.after)
final_anomaly, final_note = classify_rx(final_rx)
emit(f"FINAL {final_note}")
if final_anomaly:
emit(f"FINAL raw {hex_preview(final_rx)}")
emit(f"Anomalies: {anomaly_count}")
except KeyboardInterrupt:
emit("Stopped.")
return 0
except serial.SerialException as exc:
print(f"Serial error: {exc}", file=sys.stderr)
return 1
finally:
if log_file:
log_file.close()
return 0
if __name__ == "__main__":
raise SystemExit(main())

View File

@@ -0,0 +1,226 @@
#!/usr/bin/env python3
"""Targeted RCP-TX7 host-frame field probe.
This is for the phase after a command sweep finds parser-visible commands. It
keeps the observed 6-byte frame shape:
prefix1 prefix2 command state value checksum
and tries a small matrix of selected field values with the checksum hypothesis:
checksum = 0x5A xor prefix1 xor prefix2 xor command xor state xor value
Use narrow ranges and reset the RCP between screen-triggering attempts when you
need independent observations.
"""
from __future__ import annotations
import argparse
import datetime as dt
import itertools
import sys
import time
try:
import serial
except ImportError:
print(
"Missing dependency: pyserial\n"
"Install it with: python -m pip install pyserial",
file=sys.stderr,
)
raise SystemExit(2)
HEARTBEAT = bytes.fromhex("00 00 00 00 80 DA")
def parse_byte(text: str) -> int:
value = int(text, 0)
if not 0 <= value <= 0xFF:
raise argparse.ArgumentTypeError(f"must be a byte: {text}")
return value
def parse_byte_set(text: str) -> list[int]:
values: list[int] = []
for part in text.replace(",", " ").split():
if "-" in part:
start_text, end_text = part.split("-", 1)
start = parse_byte(start_text)
end = parse_byte(end_text)
if end < start:
raise argparse.ArgumentTypeError(f"bad range: {part}")
values.extend(range(start, end + 1))
else:
values.append(parse_byte(part))
if not values:
raise argparse.ArgumentTypeError("empty byte set")
deduped = list(dict.fromkeys(values))
return deduped
def build_frame(prefix1: int, prefix2: int, command: int, state: int, value: int) -> bytes:
body = bytes([prefix1, prefix2, command, state, value])
checksum = 0x5A
for byte in body:
checksum ^= byte
return body + bytes([checksum])
def hex_preview(data: bytes) -> str:
return " ".join(f"{byte:02X}" for byte in data)
def make_logger(path: str | None):
log_file = open(path, "a", encoding="utf-8") if path else None
def emit(line: str) -> None:
print(line)
if log_file:
log_file.write(line + "\n")
log_file.flush()
return emit, log_file
def drain_rx(ser: serial.Serial, emit, until: float, frame_size: int) -> int:
buffer = bytearray()
interesting = 0
while time.monotonic() < until:
data = ser.read(64)
if not data:
continue
buffer.extend(data)
while len(buffer) >= frame_size:
frame = bytes(buffer[:frame_size])
del buffer[:frame_size]
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
marker = "" if frame == HEARTBEAT else " NON_HEARTBEAT"
emit(f"{stamp} RX frame {frame_size:03d} {hex_preview(frame)}{marker}")
if frame != HEARTBEAT:
interesting += 1
return interesting
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser(
description="Probe selected RCP-TX7 frame fields and log screen observations."
)
parser.add_argument("--port", required=True, help="serial port, for example COM5")
parser.add_argument("--baud", type=int, default=38400)
parser.add_argument("--prefix1s", type=parse_byte_set, default=[0x00])
parser.add_argument("--prefix2s", type=parse_byte_set, default=[0x00])
parser.add_argument("--commands", type=parse_byte_set, default=[0x15])
parser.add_argument("--states", type=parse_byte_set, default=[0x00, 0x80])
parser.add_argument("--values", type=parse_byte_set, default=[0x00, 0x80])
parser.add_argument("--settle", type=float, default=1.5)
parser.add_argument("--after-each", type=float, default=1.0)
parser.add_argument("--after", type=float, default=3.0)
parser.add_argument("--frame-size", type=int, default=6)
parser.add_argument("--log", help="append capture/transmit log to this file")
parser.add_argument("--prompt-screen", action="store_true")
parser.add_argument("--dry-run", action="store_true")
parser.add_argument(
"--max-frames",
type=int,
default=64,
help="safety limit for generated frames",
)
return parser.parse_args()
def main() -> int:
args = parse_args()
rows = list(
itertools.product(
args.prefix1s,
args.prefix2s,
args.commands,
args.states,
args.values,
)
)
if len(rows) > args.max_frames:
raise SystemExit(
f"Refusing to send {len(rows)} frames; raise --max-frames if intentional"
)
frames = [
(prefix1, prefix2, command, state, value, build_frame(prefix1, prefix2, command, state, value))
for prefix1, prefix2, command, state, value in rows
]
if args.dry_run:
for prefix1, prefix2, command, state, value, frame in frames:
print(
f"p1=0x{prefix1:02X} p2=0x{prefix2:02X} cmd=0x{command:02X} "
f"state=0x{state:02X} value=0x{value:02X}: {hex_preview(frame)}"
)
return 0
emit, log_file = make_logger(args.log)
try:
with serial.Serial(
port=args.port,
baudrate=args.baud,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
timeout=0.05,
write_timeout=1.0,
rtscts=False,
dsrdtr=False,
xonxoff=False,
) as ser:
ser.reset_input_buffer()
emit(f"Probing {len(frames)} field combinations on {ser.port} at {ser.baudrate} 8N1")
drain_rx(ser, emit, time.monotonic() + args.settle, args.frame_size)
for prefix1, prefix2, command, state, value, frame in frames:
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(
f"{stamp} TX fields p1=0x{prefix1:02X} p2=0x{prefix2:02X} "
f"cmd=0x{command:02X} state=0x{state:02X} value=0x{value:02X} "
f"frame {len(frame):03d} {hex_preview(frame)}"
)
ser.write(frame)
ser.flush()
drain_rx(ser, emit, time.monotonic() + args.after_each, args.frame_size)
if args.prompt_screen:
screen = input(
"Screen after "
f"cmd 0x{command:02X} state 0x{state:02X} value 0x{value:02X} "
"(blank = no change, q = stop): "
).strip()
if screen:
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(
f"{stamp} SCREEN p1=0x{prefix1:02X} p2=0x{prefix2:02X} "
f"cmd=0x{command:02X} state=0x{state:02X} "
f"value=0x{value:02X} {screen}"
)
if screen.lower() in {"q", "quit", "stop"}:
break
drain_rx(ser, emit, time.monotonic() + args.after, args.frame_size)
except KeyboardInterrupt:
print("Stopped.")
return 0
except serial.SerialException as exc:
print(f"Serial error: {exc}", file=sys.stderr)
return 1
finally:
if log_file:
log_file.close()
return 0
if __name__ == "__main__":
raise SystemExit(main())

View File

@@ -0,0 +1,168 @@
#!/usr/bin/env python3
"""Listen on RX while sending candidate RCP-TX7 host-response frames.
Windows usually allows only one process to open a COM port, so this script
combines capture and transmit in one pyserial session.
"""
from __future__ import annotations
import argparse
import datetime as dt
import sys
import time
try:
import serial
except ImportError:
print(
"Missing dependency: pyserial\n"
"Install it with: python -m pip install pyserial",
file=sys.stderr,
)
raise SystemExit(2)
def parse_hex_bytes(text: str) -> bytes:
normalized = text.replace(",", " ").replace("0x", "").replace("0X", "")
parts = normalized.split()
try:
values = [int(part, 16) for part in parts]
except ValueError as exc:
raise argparse.ArgumentTypeError(f"invalid hex byte list: {text}") from exc
if not values:
raise argparse.ArgumentTypeError("hex frame cannot be empty")
if any(value < 0 or value > 0xFF for value in values):
raise argparse.ArgumentTypeError("hex values must be bytes")
return bytes(values)
def hex_preview(data: bytes) -> str:
return " ".join(f"{byte:02X}" for byte in data)
def ascii_preview(data: bytes) -> str:
return "".join(chr(byte) if 32 <= byte <= 126 else "." for byte in data)
def make_logger(path: str | None):
log_file = open(path, "a", encoding="utf-8") if path else None
def emit(line: str) -> None:
print(line)
if log_file:
log_file.write(line + "\n")
log_file.flush()
return emit, log_file
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser(
description="Capture RX frames while sending candidate TX responses."
)
parser.add_argument("--port", required=True, help="serial port, for example COM3")
parser.add_argument("--baud", type=int, default=38400)
parser.add_argument(
"--tx-frame",
type=parse_hex_bytes,
default=parse_hex_bytes("00 00 00 00 80 DA"),
help="hex frame to send on TXD",
)
parser.add_argument("--repeat", type=int, default=5)
parser.add_argument("--interval", type=float, default=0.2)
parser.add_argument(
"--delay",
type=float,
default=3.0,
help="seconds to listen before first transmit",
)
parser.add_argument(
"--after",
type=float,
default=5.0,
help="seconds to keep listening after the last transmit",
)
parser.add_argument("--frame-size", type=int, default=6)
parser.add_argument("--chunk-size", type=int, default=64)
parser.add_argument("--timeout", type=float, default=0.05)
parser.add_argument("--ascii", action="store_true")
parser.add_argument("--log", help="append capture/transmit log to this file")
return parser.parse_args()
def main() -> int:
args = parse_args()
emit, log_file = make_logger(args.log)
frame_buffer = bytearray()
try:
with serial.Serial(
port=args.port,
baudrate=args.baud,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
timeout=args.timeout,
write_timeout=1.0,
rtscts=False,
dsrdtr=False,
xonxoff=False,
) as ser:
ser.reset_input_buffer()
start = time.monotonic()
next_tx = start + args.delay
sent = 0
stop_at = None
emit(
f"Listening on {ser.port} at {ser.baudrate} 8N1; "
f"will send {hex_preview(args.tx_frame)} after {args.delay:.1f}s"
)
while True:
now = time.monotonic()
if sent < args.repeat and now >= next_tx:
ser.write(args.tx_frame)
ser.flush()
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(f"{stamp} TX frame {len(args.tx_frame):03d} {hex_preview(args.tx_frame)}")
sent += 1
next_tx = now + args.interval
if sent == args.repeat:
stop_at = now + args.after
data = ser.read(args.chunk_size)
if data:
if args.frame_size:
frame_buffer.extend(data)
while len(frame_buffer) >= args.frame_size:
frame = bytes(frame_buffer[: args.frame_size])
del frame_buffer[: args.frame_size]
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(f"{stamp} RX frame {args.frame_size:03d} {hex_preview(frame)}")
if args.ascii:
emit(f"{'':14} ASCII {ascii_preview(frame)}")
else:
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(f"{stamp} RX {len(data):03d} bytes {hex_preview(data)}")
if stop_at is not None and now >= stop_at:
break
except KeyboardInterrupt:
emit("Stopped.")
return 0
except serial.SerialException as exc:
print(f"Serial error: {exc}", file=sys.stderr)
return 1
finally:
if log_file:
log_file.close()
return 0
if __name__ == "__main__":
raise SystemExit(main())

View File

@@ -0,0 +1,118 @@
#!/usr/bin/env python3
"""Send one Sony RCP-TX7 candidate serial frame.
Use carefully. This is for controlled experiments on the host-to-RCP line
through an RS-232 adapter. It can either send a complete hex frame or build the
observed 6-byte frame shape and checksum from fields.
"""
from __future__ import annotations
import argparse
import sys
import time
try:
import serial
except ImportError:
print(
"Missing dependency: pyserial\n"
"Install it with: python -m pip install pyserial",
file=sys.stderr,
)
raise SystemExit(2)
def parse_hex_bytes(text: str) -> bytes:
normalized = text.replace(",", " ").replace("0x", "").replace("0X", "")
parts = normalized.split()
try:
data = bytes(int(part, 16) for part in parts)
except ValueError as exc:
raise argparse.ArgumentTypeError(f"invalid hex byte list: {text}") from exc
if not data:
raise argparse.ArgumentTypeError("hex frame cannot be empty")
if any(part and int(part, 16) > 0xFF for part in parts):
raise argparse.ArgumentTypeError("hex values must be bytes")
return data
def build_frame(prefix1: int, prefix2: int, command: int, state: int, value: int) -> bytes:
body = bytes([prefix1, prefix2, command, state, value])
checksum = 0x5A
for byte in body:
checksum ^= byte
return body + bytes([checksum])
def hex_preview(data: bytes) -> str:
return " ".join(f"{byte:02X}" for byte in data)
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser(
description="Send an explicit or checksum-built 6-byte RCP-TX7 frame."
)
parser.add_argument("--port", required=True, help="serial port, for example COM3")
parser.add_argument("--baud", type=int, default=38400)
parser.add_argument(
"--frame",
type=parse_hex_bytes,
help="complete hex frame, for example \"00 00 00 00 80 DA\"",
)
parser.add_argument("--prefix1", type=lambda s: int(s, 0), default=0)
parser.add_argument("--prefix2", type=lambda s: int(s, 0), default=0)
parser.add_argument("--command", type=lambda s: int(s, 0), default=0)
parser.add_argument("--state", type=lambda s: int(s, 0), default=0)
parser.add_argument("--value", type=lambda s: int(s, 0), default=0x80)
parser.add_argument("--repeat", type=int, default=1)
parser.add_argument("--interval", type=float, default=0.2)
parser.add_argument(
"--dry-run",
action="store_true",
help="print the frame but do not open the serial port",
)
return parser.parse_args()
def validate_byte(name: str, value: int) -> None:
if not 0 <= value <= 0xFF:
raise SystemExit(f"{name} must be a byte, got {value!r}")
def main() -> int:
args = parse_args()
if args.frame:
frame = args.frame
else:
for name in ("prefix1", "prefix2", "command", "state", "value"):
validate_byte(name, getattr(args, name))
frame = build_frame(args.prefix1, args.prefix2, args.command, args.state, args.value)
print(f"Frame: {hex_preview(frame)}")
if args.dry_run:
return 0
with serial.Serial(
port=args.port,
baudrate=args.baud,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
timeout=0.2,
write_timeout=1.0,
rtscts=False,
dsrdtr=False,
xonxoff=False,
) as ser:
for index in range(args.repeat):
ser.write(frame)
ser.flush()
print(f"Sent {index + 1}/{args.repeat}")
if index + 1 < args.repeat:
time.sleep(args.interval)
return 0
if __name__ == "__main__":
raise SystemExit(main())

170
scripts/serial_sniff.py Normal file
View File

@@ -0,0 +1,170 @@
#!/usr/bin/env python3
"""Small serial sniffer for Sony RCP-TX7 restoration work.
This is intended for RX-only capture from a USB serial adapter.
Default settings match the CCU-D50/TX7 notes for RCP-TX7-class remotes:
38400 baud, 8 data bits, no parity, 1 stop bit.
"""
from __future__ import annotations
import argparse
import datetime as dt
import sys
import time
try:
import serial
from serial.tools import list_ports
except ImportError:
print(
"Missing dependency: pyserial\n"
"Install it with: python -m pip install pyserial",
file=sys.stderr,
)
raise SystemExit(2)
def ascii_preview(data: bytes) -> str:
return "".join(chr(byte) if 32 <= byte <= 126 else "." for byte in data)
def hex_preview(data: bytes) -> str:
return " ".join(f"{byte:02X}" for byte in data)
def list_serial_ports() -> None:
ports = list(list_ports.comports())
if not ports:
print("No serial ports found.")
return
for port in ports:
parts = [port.device]
if port.description:
parts.append(port.description)
if port.hwid:
parts.append(port.hwid)
print(" | ".join(parts))
def sniff(args: argparse.Namespace) -> int:
log_file = open(args.log, "a", encoding="utf-8") if args.log else None
def emit(line: str) -> None:
print(line)
if log_file:
log_file.write(line + "\n")
log_file.flush()
with serial.Serial(
port=args.port,
baudrate=args.baud,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
timeout=args.timeout,
rtscts=False,
dsrdtr=False,
xonxoff=False,
) as ser:
ser.reset_input_buffer()
print(
f"Listening on {ser.port} at {ser.baudrate} 8N1. "
"Press Ctrl+C to stop."
)
print("Tip: press RCP buttons and watch for new hex bytes.")
last_rx = time.monotonic()
frame_buffer = bytearray()
while True:
data = ser.read(args.chunk_size)
now = time.monotonic()
if data:
if args.frame_size:
frame_buffer.extend(data)
while len(frame_buffer) >= args.frame_size:
frame = bytes(frame_buffer[: args.frame_size])
del frame_buffer[: args.frame_size]
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(
f"{stamp} frame {args.frame_size:03d} "
f"{hex_preview(frame)}"
)
if args.ascii:
emit(f"{'':14} ASCII {ascii_preview(frame)}")
else:
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(f"{stamp} {len(data):03d} bytes {hex_preview(data)}")
if args.ascii:
emit(f"{'':14} ASCII {ascii_preview(data)}")
last_rx = now
elif args.heartbeat and now - last_rx >= args.heartbeat:
stamp = dt.datetime.now().strftime("%H:%M:%S")
emit(f"{stamp} no data")
last_rx = now
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser(
description="RX-only serial sniffer for RCP-TX7 experiments."
)
parser.add_argument(
"--list",
action="store_true",
help="list available serial ports and exit",
)
parser.add_argument(
"--port",
help="serial port, for example COM3 on Windows or /dev/ttyUSB0 on Linux",
)
parser.add_argument("--baud", type=int, default=38400)
parser.add_argument("--timeout", type=float, default=0.2)
parser.add_argument("--chunk-size", type=int, default=64)
parser.add_argument(
"--ascii",
action="store_true",
help="also print printable ASCII preview",
)
parser.add_argument(
"--heartbeat",
type=float,
default=5.0,
help="print 'no data' every N seconds while idle; set 0 to disable",
)
parser.add_argument(
"--frame-size",
type=int,
default=0,
help="group stream into fixed-size frames, for example 6",
)
parser.add_argument(
"--log",
help="append capture output to this text file",
)
return parser.parse_args()
def main() -> int:
args = parse_args()
if args.list:
list_serial_ports()
return 0
if not args.port:
print("Pass --port COMx, or run --list first.", file=sys.stderr)
return 2
try:
return sniff(args)
except KeyboardInterrupt:
print("\nStopped.")
return 0
except serial.SerialException as exc:
print(f"Serial error: {exc}", file=sys.stderr)
return 1
if __name__ == "__main__":
raise SystemExit(main())

View File

@@ -0,0 +1,216 @@
#!/usr/bin/env python3
"""Cautious RCP-TX7 host-frame command sweep.
This sends checksum-valid 6-byte frames of the observed shape:
prefix1 prefix2 command state value checksum
The checksum is the current working hypothesis:
checksum = 0x5A xor prefix1 xor prefix2 xor command xor state xor value
The script logs TX frames plus any RX frames. It highlights RX frames that differ
from the known heartbeat so a run can be scanned quickly.
"""
from __future__ import annotations
import argparse
import datetime as dt
import sys
import time
try:
import serial
except ImportError:
print(
"Missing dependency: pyserial\n"
"Install it with: python -m pip install pyserial",
file=sys.stderr,
)
raise SystemExit(2)
HEARTBEAT = bytes.fromhex("00 00 00 00 80 DA")
def parse_int(text: str) -> int:
value = int(text, 0)
if not 0 <= value <= 0xFF:
raise argparse.ArgumentTypeError(f"must be a byte: {text}")
return value
def build_frame(prefix1: int, prefix2: int, command: int, state: int, value: int) -> bytes:
body = bytes([prefix1, prefix2, command, state, value])
checksum = 0x5A
for byte in body:
checksum ^= byte
return body + bytes([checksum])
def hex_preview(data: bytes) -> str:
return " ".join(f"{byte:02X}" for byte in data)
def make_logger(path: str | None):
log_file = open(path, "a", encoding="utf-8") if path else None
def emit(line: str) -> None:
print(line)
if log_file:
log_file.write(line + "\n")
log_file.flush()
return emit, log_file
def drain_rx(ser: serial.Serial, emit, until: float, frame_size: int) -> int:
buffer = bytearray()
interesting = 0
while time.monotonic() < until:
data = ser.read(64)
if not data:
continue
buffer.extend(data)
while len(buffer) >= frame_size:
frame = bytes(buffer[:frame_size])
del buffer[:frame_size]
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
marker = "" if frame == HEARTBEAT else " NON_HEARTBEAT"
emit(f"{stamp} RX frame {frame_size:03d} {hex_preview(frame)}{marker}")
if frame != HEARTBEAT:
interesting += 1
return interesting
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser(
description="Sweep checksum-valid command bytes and log non-heartbeat RX."
)
parser.add_argument("--port", required=True, help="serial port, for example COM5")
parser.add_argument("--baud", type=int, default=38400)
parser.add_argument("--start", type=parse_int, default=0x00)
parser.add_argument("--end", type=parse_int, default=0x20)
parser.add_argument("--prefix1", type=parse_int, default=0x00)
parser.add_argument("--prefix2", type=parse_int, default=0x00)
parser.add_argument("--state", type=parse_int, default=0x00)
parser.add_argument("--value", type=parse_int, default=0x80)
parser.add_argument(
"--settle",
type=float,
default=1.5,
help="seconds to listen before the sweep starts",
)
parser.add_argument(
"--after-each",
type=float,
default=0.8,
help="seconds to listen after each transmitted frame",
)
parser.add_argument(
"--after",
type=float,
default=3.0,
help="seconds to listen after the whole sweep",
)
parser.add_argument("--frame-size", type=int, default=6)
parser.add_argument("--log", help="append capture/transmit log to this file")
parser.add_argument(
"--stop-on-non-heartbeat",
action="store_true",
help="stop the sweep if the RCP sends any non-heartbeat frame",
)
parser.add_argument(
"--prompt-screen",
action="store_true",
help="after each command, prompt for the observed RCP screen state",
)
parser.add_argument(
"--dry-run",
action="store_true",
help="print frames without opening the serial port",
)
return parser.parse_args()
def main() -> int:
args = parse_args()
if args.end < args.start:
raise SystemExit("--end must be >= --start")
frames = [
(command, build_frame(args.prefix1, args.prefix2, command, args.state, args.value))
for command in range(args.start, args.end + 1)
]
if args.dry_run:
for command, frame in frames:
print(f"cmd 0x{command:02X}: {hex_preview(frame)}")
return 0
emit, log_file = make_logger(args.log)
try:
with serial.Serial(
port=args.port,
baudrate=args.baud,
bytesize=serial.EIGHTBITS,
parity=serial.PARITY_NONE,
stopbits=serial.STOPBITS_ONE,
timeout=0.05,
write_timeout=1.0,
rtscts=False,
dsrdtr=False,
xonxoff=False,
) as ser:
ser.reset_input_buffer()
emit(
f"Sweeping commands 0x{args.start:02X}-0x{args.end:02X} "
f"on {ser.port} at {ser.baudrate} 8N1"
)
drain_rx(ser, emit, time.monotonic() + args.settle, args.frame_size)
for command, frame in frames:
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(f"{stamp} TX cmd 0x{command:02X} frame {len(frame):03d} {hex_preview(frame)}")
ser.write(frame)
ser.flush()
interesting = drain_rx(
ser,
emit,
time.monotonic() + args.after_each,
args.frame_size,
)
if interesting and args.stop_on_non_heartbeat:
emit(f"Stopping after cmd 0x{command:02X}: non-heartbeat RX observed")
break
if args.prompt_screen:
screen = input(
f"Screen after cmd 0x{command:02X} "
"(blank = no change, q = stop): "
).strip()
if screen:
stamp = dt.datetime.now().strftime("%H:%M:%S.%f")[:-3]
emit(f"{stamp} SCREEN cmd 0x{command:02X} {screen}")
if screen.lower() in {"q", "quit", "stop"}:
break
drain_rx(ser, emit, time.monotonic() + args.after, args.frame_size)
except KeyboardInterrupt:
print("Stopped.")
return 0
except serial.SerialException as exc:
print(f"Serial error: {exc}", file=sys.stderr)
return 1
finally:
if log_file:
log_file.close()
return 0
if __name__ == "__main__":
raise SystemExit(main())