{ "name": "lamp-isolate-cam-call", "notes": [ "Isolate the two strongest known button/lamp selectors from the previous probe.", "Record whether 0x0007 high/low maps to CAM POWER and whether 0x0015 high/low maps to CALL.", "Each state is held long enough to see a visible lamp transition while staying below the usual inactive timeout." ], "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", "frame": "00 00 00 80 00 DA", "listen": 0.60 }, { "action": "send", "label": "selector_zero_ok_seed_2", "frame": "00 00 00 80 00 DA", "listen": 0.60 }, { "action": "repeat", "count": 3, "steps": [ { "action": "send", "label": "cam_candidate_0007_high", "frame": "00 00 07 80 00 DD", "listen": 1.15 }, { "action": "send", "label": "cam_candidate_0007_low", "frame": "00 00 07 00 00 5D", "listen": 0.85 } ] }, { "action": "send", "label": "selector_zero_ok_refresh_before_call", "frame": "00 00 00 80 00 DA", "listen": 0.50 }, { "action": "repeat", "count": 3, "steps": [ { "action": "send", "label": "call_candidate_0015_high", "frame": "00 00 15 80 00 CF", "listen": 1.15 }, { "action": "send", "label": "call_candidate_0015_low", "frame": "00 00 15 00 00 4F", "listen": 0.85 } ] }, { "action": "listen", "seconds": 0.80 } ] }