{ "name": "shutter-onoff-report-ack-c0-recover-ok-0096-prompt", "notes": [ "Second-pass SHUTTER ON/OFF report test based on the latest captures.", "Bench evidence: after command-5 selector 0x0096, the RCP emits repeated 01 00 02 00 00 59 frames. This scenario ACKs that stream before trying to recover CONNECT OK.", "When prompted, press SHUTTER ON/OFF during the active refresh/ACK loop. Desired report candidates are 00 01 0F 80 00 D4 or 00 01 0F 20 00 74." ], "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_connect_seed", "frame": "00 00 00 80 00 DA", "listen": 0.60 }, { "action": "send", "label": "cmd5_latch_clear_0096", "frame": "05 01 16 00 00 48", "listen": 0.05 }, { "action": "listen_ack", "seconds": 1.80, "frames": [ "01 00 02 00 00 59", "02 00 02 00 00 5A" ], "ack_frame": "05 00 02 00 00 5D", "ack_guard": 0.015, "post_ack_read": 0.120, "poll_interval": 0.005, "max_acks": 8, "abort_on_limit": false }, { "action": "drain", "seconds": 0.10 }, { "action": "send", "label": "recover_connect_ok_seed_1", "frame": "00 00 00 80 00 DA", "listen": 0.70 }, { "action": "send", "label": "recover_connect_ok_seed_2", "frame": "00 00 00 80 00 DA", "listen": 0.70 }, { "action": "send", "label": "quiet_active_refresh_0093_9020", "frame": "00 01 13 90 20 F8", "listen": 0.35 }, { "action": "prompt", "message": "Press Enter, then press SHUTTER ON/OFF during the next refresh/ACK loop. Note LCD state and time." }, { "action": "drain", "seconds": 0.05 }, { "action": "repeat", "count": 12, "steps": [ { "action": "send", "label": "maintain_ok_0093_9020", "frame": "00 01 13 90 20 F8", "listen": 0.15 }, { "action": "listen_ack", "seconds": 0.30, "frames": [ "01 00 02 00 00 59", "02 00 02 00 00 5A" ], "ack_frame": "05 00 02 00 00 5D", "ack_guard": 0.010, "post_ack_read": 0.060, "poll_interval": 0.005, "max_acks": 1, "abort_on_limit": false } ] }, { "action": "send", "label": "repeat_last_for_hidden_report_check", "frame": "07 00 00 00 00 5D", "listen": 0.80 }, { "action": "listen", "seconds": 1.50 } ] }