# messages

body:
  <EVENT type="echo_commune" from="solar-psyche" timestamp="2026-06-10T00:10:32-07:00" machine="HFENDULEAM" project="sauna" branch="main" head_sha="afd4a5cbcb35eb8438c7cb291c1d0eb1f3f31dc8" head_subject="Disambiguate the Beyond Tundra from other Watchman devices on the bus" note="Echo commune brief — auto-fired">&lt;live-context&gt;<br>M1 first light SHIPPED (API-level) — main @ e612142, pushed.<br><br>**Eyes-in eyeball check IN PROGRESS (remote, enlyzeam):**<br>- Discovered S1 hazard: HID enumeration grabs first 28DE:2300 MI_00 device, but enlyzeam site has stray Tundra tracker/dongle on desk running at ~250 Hz (idle state)<br>- Was reading tracker, not HMD IMU — gyro didn't respond to head shakes, power cycle made no difference<br>- **Solution: auto-pairing implemented** — port-chain match with MCU to disambiguate HMD from other 28DE:2300 devices<br>- Pairing works remotely: 2 devices found, selected `LHR-599F3B91`, rate 991 Hz (vs stray 250 Hz baseline)<br>- **Local blocker:** pairing fails on 4090 rig (0 paired despite Beyond MCU present) — USB hub topology differs, needs investigation<br>- Hazard documented in S1 findings; auto-pairing commit staged<br><br>New architecture tree seams:<br>- `src/device/tundra_imu.{h,cpp}` — native Win32 HID port of S1 reader: interrupt reads 28DE:2300 MI_00, 0x20 parse 3 samples/report, sliding-window dedupe by (timecode,seq), wrap-safe, background thread, stats counters. **Now includes auto-pairing logic to select correct device.**<br>- `src/present/present_backend.h` — backend seam (locked decision 2); `nvapi_d3d12.{h,cpp}` — presenter refactor of s2_nvapi encoding all S2 rules: mode by VALUE never index, forced DSC 1.1/4/8bpp, typed-RTV map fail-loud on unmapped typeless, waitable pacing, no NvAPI_Unload at teardown.<br>- **Free-run detection implemented** (the doff hazard): per-frame WORK-time EMA (pacing sleep excluded from measurement — avoids self-masking); &lt;0.5×period ×30 frames → flag + self-pace via Sleep at mode Hz; recovery when waitable blocks again ≥0.8×period ×10 frames. Keeps presenting so panels auto-resume. (Untested on actual vsync loss so far.)<br>- `src/app/first_light.cpp` — glue: IMU thread + presenter, S2 pattern + raw-gyro liveness needle per eye (±2000 LSB → half-eye deflection), 1 Hz status line, Ctrl+C clean shutdown. Exit codes 0/2/3.<br><br>Smoke PASS on local 4090 rig (Beyond LHR-1F8E25F1): 75.00 fps × 20 s, 0 present errors, 0 waitable timeouts, BUT reading wrong device (tracked once pairing discovered). Free-run never triggered doffed — vsync stayed alive on this rig.<br><br>M1 remaining:<br>1. ~~Eyes-in eyeball check~~ → **IN PROGRESS** (pairing works remotely, local pairing blocker must be resolved)<br>2. Cold-boot-from-power-on verification<br>3. Real free-run trigger test (prox-induced vsync loss — detection untested)<br>4. MCU prox read for proper doff handling (currently detection-only; auto-pairing partial step toward MCU integration)<br>&lt;/live-context&gt;<br>&lt;project-context&gt;<br>**M1 eyes-in eyeball check (remote):** Device enumeration hazard discovered &amp; fixed. Auto-pairing works at enlyzeam (LHR-599F3B91 @ 991 Hz), fails locally (0 paired, USB topology issue). Hazard + solution documented, commit staged.<br><br>**Local unblocked:** Pairing failure on 4090 rig due to USB hub topology — blocks validation of eyes-in data on local unit (LHR-1F8E25F1). Must diagnose hub chains before claiming M1 completion on this rig.<br>&lt;/project-context&gt;</EVENT>


from_id: solar
body:
  FIRE_ECHO_COMMUNE_NOW prior_session=569af5af-8ff6-4a65-8a18-4d0df9b309f2 forward_to_self=true source=clear


