{
  "name": "shutter-0093-gate-8000",
  "notes": [
    "Recover to CONNECT OK, read the shutter cluster, set primary selector 0x0093 to 0x8000, then read the cluster again.",
    "ROM trace shows E000[0x0093] gates adjacent shutter/clear-scan value lanes, but the exact bit meaning is not bench-confirmed.",
    "CONNECT NOT ACT can clear the panel, so a fresh selector-zero OK seed is sent immediately before the 0x0093 write.",
    "Record visual changes during the short post-write window, then use the second sweep for table evidence."
  ],
  "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_ok_seed",
      "frame": "00 00 00 80 00 DA",
      "listen": 0.25
    },
    {
      "action": "table_sweep",
      "selectors": [
        "0x08F",
        "0x093",
        "0x0A3",
        "0x0A4",
        "0x0A5",
        "0x0D8",
        "0x080",
        "0x0D9",
        "0x0A6",
        "0x0DA",
        "0x081"
      ],
      "gap": 0.10,
      "ack_on": {
        "enabled": false
      }
    },
    {
      "action": "send",
      "label": "selector_zero_connect_ok_seed_before_gate",
      "frame": "00 00 00 80 00 DA",
      "listen": 0.15
    },
    {
      "action": "send",
      "label": "e000_0093_gate_high_bit",
      "frame": "00 01 13 80 00 C8",
      "listen": 0.85
    },
    {
      "action": "table_sweep",
      "selectors": [
        "0x08F",
        "0x093",
        "0x0A3",
        "0x0A4",
        "0x0A5",
        "0x0D8",
        "0x080",
        "0x0D9",
        "0x0A6",
        "0x0DA",
        "0x081"
      ],
      "gap": 0.12,
      "ack_on": {
        "enabled": false
      }
    },
    {
      "action": "listen",
      "seconds": 0.75
    }
  ]
}
