docs: laser-milestone specs for low-temp gates/warm-up and TEC handling

Low side: factory floors (CM* window minimums ~1-4 C, the ~16 C
'warming up' operating floor) and the planned cool_temp_min /
cool_temp_start keys with a heater-driven warm-up phase. TEC:
presence is undetectable (tec_on is write-only, Pro-only hardware on
a common board) so tec_present becomes a user setting, with
hysteresis control toward the factory ~18 C setpoints when enabled.
This commit is contained in:
ScottW514
2026-08-08 12:11:57 -04:00
parent 3fdb0c1636
commit 63dffdc596
+41
View File
@@ -759,6 +759,47 @@ chooses otherwise).
profiles restored on stand-down. TEC control remains for the profiles restored on stand-down. TEC control remains for the
laser milestone; these warnings/holds become hard fire gates laser milestone; these warnings/holds become hard fire gates
there. there.
- **Low-temperature gates + warm-up: PLANNED (laser-milestone
scope, operator-directed 2026-08-08).** The factory has a low
side we do not implement yet, on two layers: the firmware
coolant-window FLOORS (this machine's settings dump: CMrn/CMwn
1017 mdeg ≈ 1.0 °C, CMin 4008 ≈ 4.0 °C — freeze/hardware
protection) and the user-facing ~16 °C / 60 °F operating floor,
enforced as the factory's "warming up" pause: the machine holds
the job and warms the coolant with the loop heater until in
range (the cloud CF* heater-PID keys are that mechanism —
setpoint/Kp/Ki, zeroed on this unit; the OpenGlow stack uses a
static 10 %). Plan: two more keys in the Cooling card —
`cool_temp_min` (hard floor, default ~5 °C; becomes a fire gate)
and `cool_temp_start` (warm-up gate, default ~16 °C): a job
starting below the gate holds in a factory-style warm-up phase
(loop heater on, senders see the Hold + a warming message) and
releases above it; below the floor nothing fires at all.
Rationale: cold-tube thermal shock, condensation when the TEC
pulls below the dew point, frozen coolant. Sequencing with the
flow check: warm-up first, flow check after (a warm-up that
raises the bulk temperature is itself circulation evidence).
Measured physics for the phase (this bench): 50 % duty warms the
bulk ~0.5-0.8 °C/min and plateaus ~8-9 °C above ambient — the
same unaided limit the factory has (a cold garage may never
reach the gate; that is honest, not a bug).
- **TEC handling: PLANNED (laser-milestone scope,
operator-directed 2026-08-08).** The control board is common to
Basic/Plus/Pro but the TEC itself is populated on Pro only, and
`thermal/tec_on` is a bare on/off output with NO readback —
presence cannot be detected, so it is a user setting:
`tec_present` (Machine tab, default off; ForgeFIRM never drives
tec_on unless set — on the bench Basic/Plus the line lands on an
unpopulated position). Operation when present: the factory
regulates coolant toward its ~18 °C setpoints (CMet/CMdt
18134/18364 mdeg — the same WTub/WTvb raw-754/751 pair that
proved the thermistor curve); plan is a simple hysteresis while
a job runs — TEC on above `cool_tec_on_c`, off below
`cool_tec_off_c`, defaults from the factory setpoints, off at
idle (factory init state) — with `cool_temp_min` as the chill
floor so the TEC can never drive the loop toward condensation/
freeze territory. Exact policy (and whether the /status panel
shows TEC as absent vs off) lands with the implementation.
- **Interlock readback semantics cross-check: OPEN** (see - **Interlock readback semantics cross-check: OPEN** (see
factory-laser-safety-readbacks notes). factory-laser-safety-readbacks notes).
- **Head-IRQ source validation — beam-emission hypothesis: OPEN - **Head-IRQ source validation — beam-emission hypothesis: OPEN