1
0

knee auto tests

This commit is contained in:
Aiden
2026-05-26 18:35:13 +10:00
parent c007f2180c
commit a187214e06
5 changed files with 755 additions and 7 deletions

View File

@@ -0,0 +1,206 @@
{
"name": "lamp-isolate-knee-bit-scan",
"notes": [
"Bit-scan the two fresh-boot KNEE AUTO candidates, 0x00B9 and 0x0110.",
"Each selector gets its own fresh CONNECT OK seed, then high-byte bits are tested one at a time with clears between writes.",
"Record whether KNEE AUTO, KNEE manual, or any neighboring paint/detail lamp changes during each label."
],
"steps": [
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_00b9",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_00b9",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_00b9_bit15_watch",
"frame": "00 01 39 80 00 E2",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_00b9_clear_after_bit15",
"frame": "00 01 39 00 00 62",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_00b9_bit14_watch",
"frame": "00 01 39 40 00 22",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_00b9_clear_after_bit14",
"frame": "00 01 39 00 00 62",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_00b9_bit13_watch",
"frame": "00 01 39 20 00 42",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_00b9_clear_after_bit13",
"frame": "00 01 39 00 00 62",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_00b9_bit12_watch",
"frame": "00 01 39 10 00 72",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_00b9_clear_after_bit12",
"frame": "00 01 39 00 00 62",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_00b9_bit11_watch",
"frame": "00 01 39 08 00 6A",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_00b9_clear_after_bit11",
"frame": "00 01 39 00 00 62",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_00b9_lowff_watch",
"frame": "00 01 39 00 FF 9D",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_00b9_clear_after_lowff",
"frame": "00 01 39 00 00 62",
"listen": 0.70
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_0110",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_0110",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_0110_bit15_watch",
"frame": "00 01 90 80 00 4B",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_0110_clear_after_bit15",
"frame": "00 01 90 00 00 CB",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_0110_bit14_watch",
"frame": "00 01 90 40 00 8B",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_0110_clear_after_bit14",
"frame": "00 01 90 00 00 CB",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_0110_bit13_watch",
"frame": "00 01 90 20 00 EB",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_0110_clear_after_bit13",
"frame": "00 01 90 00 00 CB",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_0110_bit12_watch",
"frame": "00 01 90 10 00 DB",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_0110_clear_after_bit12",
"frame": "00 01 90 00 00 CB",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_0110_bit11_watch",
"frame": "00 01 90 08 00 C3",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_0110_clear_after_bit11",
"frame": "00 01 90 00 00 CB",
"listen": 0.70
},
{
"action": "send",
"label": "candidate_0110_lowff_watch",
"frame": "00 01 90 00 FF 34",
"listen": 1.30
},
{
"action": "send",
"label": "candidate_0110_clear_after_lowff",
"frame": "00 01 90 00 00 CB",
"listen": 0.70
}
]
}

View File

@@ -0,0 +1,260 @@
{
"name": "lamp-isolate-knee-tail-single-boot",
"notes": [
"Fresh-boot isolation for the late broad-status candidates after KNEE AUTO appeared toward the end of the previous run.",
"Selector 0x0092 is included as a guard before the stronger tail candidates 0x00A7, 0x00B7, 0x00B9, and 0x0110.",
"Each candidate tests high, clear, all bits, clear."
],
"steps": [
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_0092",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_0092",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_0092_high_watch",
"frame": "00 01 12 80 00 C9",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_0092_clear_after_high",
"frame": "00 01 12 00 00 49",
"listen": 0.90
},
{
"action": "send",
"label": "candidate_0092_all_bits_watch",
"frame": "00 01 12 FF FF 49",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_0092_clear_after_all",
"frame": "00 01 12 00 00 49",
"listen": 0.90
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_00a7",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_00a7",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_00a7_high_watch",
"frame": "00 01 27 80 00 FC",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_00a7_clear_after_high",
"frame": "00 01 27 00 00 7C",
"listen": 0.90
},
{
"action": "send",
"label": "candidate_00a7_all_bits_watch",
"frame": "00 01 27 FF FF 7C",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_00a7_clear_after_all",
"frame": "00 01 27 00 00 7C",
"listen": 0.90
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_00b7",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_00b7",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_00b7_high_watch",
"frame": "00 01 37 80 00 EC",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_00b7_clear_after_high",
"frame": "00 01 37 00 00 6C",
"listen": 0.90
},
{
"action": "send",
"label": "candidate_00b7_all_bits_watch",
"frame": "00 01 37 FF FF 6C",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_00b7_clear_after_all",
"frame": "00 01 37 00 00 6C",
"listen": 0.90
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_00b9",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_00b9",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_00b9_high_watch",
"frame": "00 01 39 80 00 E2",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_00b9_clear_after_high",
"frame": "00 01 39 00 00 62",
"listen": 0.90
},
{
"action": "send",
"label": "candidate_00b9_all_bits_watch",
"frame": "00 01 39 FF FF 62",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_00b9_clear_after_all",
"frame": "00 01 39 00 00 62",
"listen": 0.90
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_0110",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_0110",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_0110_high_watch",
"frame": "00 01 90 80 00 4B",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_0110_clear_after_high",
"frame": "00 01 90 00 00 CB",
"listen": 0.90
},
{
"action": "send",
"label": "candidate_0110_all_bits_watch",
"frame": "00 01 90 FF FF CB",
"listen": 1.80
},
{
"action": "send",
"label": "candidate_0110_clear_after_all",
"frame": "00 01 90 00 00 CB",
"listen": 0.90
}
]
}

View File

@@ -0,0 +1,238 @@
{
"name": "lamp-isolate-neighbor-single-boot",
"notes": [
"Fresh-boot isolation for the selector cluster that produced SLAVE, green tally, BARS, MASTER, and related lamps.",
"Each candidate starts from a fresh power cycle and CONNECT OK seed so latched lamps from the previous selector cannot contaminate the result.",
"Record the visible lamp during the high hold and whether the low write clears it."
],
"steps": [
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_0012",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_0012",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_0012_high_watch",
"frame": "00 00 12 80 00 C8",
"listen": 2.00
},
{
"action": "send",
"label": "candidate_0012_low_clear_watch",
"frame": "00 00 12 00 00 48",
"listen": 1.20
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_0013",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_0013",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_0013_high_watch",
"frame": "00 00 13 80 00 C9",
"listen": 2.00
},
{
"action": "send",
"label": "candidate_0013_low_clear_watch",
"frame": "00 00 13 00 00 49",
"listen": 1.20
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_0016",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_0016",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_0016_high_watch",
"frame": "00 00 16 80 00 CC",
"listen": 2.00
},
{
"action": "send",
"label": "candidate_0016_low_clear_watch",
"frame": "00 00 16 00 00 4C",
"listen": 1.20
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_0017",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_0017",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_0017_high_watch",
"frame": "00 00 17 80 00 CD",
"listen": 2.00
},
{
"action": "send",
"label": "candidate_0017_low_clear_watch",
"frame": "00 00 17 00 00 4D",
"listen": 1.20
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_0018",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_0018",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_0018_high_watch",
"frame": "00 00 18 80 00 C2",
"listen": 2.00
},
{
"action": "send",
"label": "candidate_0018_low_clear_watch",
"frame": "00 00 18 00 00 42",
"listen": 1.20
},
{
"action": "power_cycle",
"off_seconds": 1.5
},
{
"action": "wait_ready",
"heartbeats": 2,
"timeout": 10.0,
"require": true
},
{
"action": "drain",
"seconds": 0.25
},
{
"action": "send",
"label": "selector_zero_ok_seed_1_for_001a",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "selector_zero_ok_seed_2_for_001a",
"frame": "00 00 00 80 00 DA",
"listen": 0.60
},
{
"action": "send",
"label": "candidate_001a_high_watch",
"frame": "00 00 1A 80 00 C0",
"listen": 2.00
},
{
"action": "send",
"label": "candidate_001a_low_clear_watch",
"frame": "00 00 1A 00 00 40",
"listen": 1.20
}
]
}