Make the pump-1 1 W clamp overridable up to the 8000 mA protocol max

Adds a Pump Limit Override: the pump-1 current command is clamped to a
soft 4000 mA ceiling (the 1 W diode rating) by default, liftable to the
8000 mA hard protocol max only while the new amp_pump_override switch is
ON. Fail-safe: the override defaults OFF on every boot, and switching it
OFF immediately re-clamps a running setpoint back down to 4000 mA so the
booster cannot stay parked above 1 W. The HA pump-1 number now spans
0..8000 mA; values above 4000 take effect only with the override on.

PUMP_CURRENT_MAX_MA is split into PUMP_CURRENT_SOFT_MAX_MA (4000) and
PUMP_CURRENT_HARD_MAX_MA (8000). README/BOM updated. Builds clean
(flash 59.3%); not yet flashed (ESP32 needs USB, no OTA).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
James Bateman (hp-laptop)
2026-10-02 14:21:56 +01:00
co-authored by Claude Opus 4.8
parent ffadf4b37b
commit ba1cd1ddcf
4 changed files with 50 additions and 11 deletions
+12 -4
View File
@@ -26,10 +26,18 @@
// HA number sliders are capped here. The hardware allows 8000 mA pump, but
// the lab notes report ~2500 mA pump-1 -> ~27 dBm (~515 mW). Keep a margin.
#define SEED_CURRENT_MAX_MA 300 // CTL200 ilmax default is 1000; seed DFB is low-power
// Pump-1 clamp = the 1 W rated operating point (~4000 mA, measured 2026-06-17).
// Raise deliberately only for supervised over-rating characterisation; it is a
// guardrail against accidental over-drive, not a safety interlock.
#define PUMP_CURRENT_MAX_MA 4000
// Pump-1 current clamp. Two ceilings:
// SOFT (default) = the 1 W rated operating point (~4000 mA, measured
// 2026-06-17). Guards against accidental over-drive. NOT a safety interlock.
// HARD = the Agiltron protocol / hardware maximum (8000 mA). Reachable only
// while the "Pump limit override" switch is ON (set/amp/pump_override), for
// supervised over-rating characterisation. Driving the 1 W-rated pump diode
// toward 8000 mA trades diode lifetime (and risks damage) for extra power.
// The HA number slider spans 0..HARD; a command above SOFT is clamped to SOFT
// unless the override is ON. Turning the override OFF re-clamps a running
// setpoint back down to SOFT immediately.
#define PUMP_CURRENT_SOFT_MAX_MA 4000
#define PUMP_CURRENT_HARD_MAX_MA 8000
// Seed thermistor setpoint (CTL200 `rtset`) clamp, in ohms. The CTL200 has no
// native °C setpoint; it regulates the seed TEC to hold the thermistor at this