From 94f7c23ade0d554a11e4749775d181ab2b97e8df Mon Sep 17 00:00:00 2001 From: ScottW514 Date: Mon, 31 Aug 2026 15:32:33 -0400 Subject: [PATCH] Item 3: the failed-head-capture negative is proven; the fault note drops A busy capture node made the real head-image path fail with the measure laser armed; the laser ended at 0 and the camera engine recovered (CAMPAIGN-LOG has the drill). The STATE_FAULT-recovery note leaves the item by operator decision. What remains is the K-11 case, one bench slot. --- docs/BRINGUP.md | 9 ++++----- docs/CAMPAIGN-LOG.md | 15 +++++++++++++++ 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/docs/BRINGUP.md b/docs/BRINGUP.md index 0d7c8db..8454884 100644 --- a/docs/BRINGUP.md +++ b/docs/BRINGUP.md @@ -1115,11 +1115,10 @@ Open items only. Anything closed is in `CAMPAIGN-LOG.md`. reachable-mode reasoning and the factory fallback configuration are in the headers of kernel patches 0011-0013 (`meta-glowforge-bsp`, `recipes-kernel/linux/`). -3. **Physical-evidence negatives still open.** A present head answering I²C - badly (the K-11 runtime case) and a failed head capture leaving the measure - laser off — both need the head connected and a fault injected. Opportunistic: - `STATE_FAULT` recovery via `enable` the next time a DRV8825 fault line - actually trips. +3. **Physical-evidence negative still open.** A present head answering I²C + badly (the K-11 runtime case) needs the head connected and the fault + injected: flood the head's bus from userspace while the driver talks, one + bench slot. 4. **Debug-kernel checks.** Module load/unload under `CONFIG_DEBUG_MUTEXES` and a forced `-EPROBE_DEFER` unwind still need a debug kernel build. Both drills cycle what the rail policy avoids: a module unload powers the 40 V diff --git a/docs/CAMPAIGN-LOG.md b/docs/CAMPAIGN-LOG.md index 997a8c3..88d7281 100644 --- a/docs/CAMPAIGN-LOG.md +++ b/docs/CAMPAIGN-LOG.md @@ -4940,6 +4940,21 @@ the directed set - panel-serves, snapshot, sensor-profile, h264-stream, frame-health, lid-privacy - green on the capped server with the bounded setup children. +## 2026-08-31: a failed head capture leaves the measure laser off + +The physical-evidence negative, proven on the bench with the head +connected. The injection: a `v4l2-ctl` streamer held the shared +`ipu1_csi0` capture node busy, then the real `machine._head_image` path +ran with `HCil` arming the measure laser (verified lit at 1023 on the +real sysfs first). The busy pipeline refused the link change, the +capture raised, and the path's finally left `head/measure_laser` at 0. +forgectrl's camera engine recovered on its next request (snapshot 200, +engine running). The `STATE_FAULT`-recovery note is dropped from the +item by operator decision: the fault line has never tripped and the +recovery lever is documented in the UAPI; nothing is held open for it. +What remains of the item is the K-11 runtime case, one bench slot with +the head's bus flooded from userspace. + ## Superseded status notes ### Shared machine services — remaining polish, as listed 2026-08-13