From bd2448b74671abe417c35a119cbffcf8bc9e195f Mon Sep 17 00:00:00 2001 From: Mirko Holler Date: Tue, 27 Oct 2026 20:32:05 +0100 Subject: [PATCH] fix(omny): remove OMNYTemperatures._set_TEMP_default_setpoints - defaults only in the controllers The default setpoints are stored in the OMNY temperature controllers (EEPROM). The second copy here could overwrite them; the OMNY service tempcontrol.py (mpc3217) seeds the :SET PVs from the controllers and writes only real changes. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01M8zoDvfTY6VYunNtWse9VZ --- csaxs_bec/devices/omny/omny_temperatures.py | 64 ++------------------- csaxs_bec/devices/sim/sim_omny.py | 7 ++- 2 files changed, 8 insertions(+), 63 deletions(-) diff --git a/csaxs_bec/devices/omny/omny_temperatures.py b/csaxs_bec/devices/omny/omny_temperatures.py index 0d4ecc74..34bd6817 100644 --- a/csaxs_bec/devices/omny/omny_temperatures.py +++ b/csaxs_bec/devices/omny/omny_temperatures.py @@ -18,7 +18,6 @@ class OMNYTemperatures(Device): "set_setpoint", "show_all", "help", - "_set_TEMP_default_setpoints", "temperature_controller_TEMP_running", "temperature_controller_CRYO_running", ] @@ -96,65 +95,10 @@ class OMNYTemperatures(Device): raise OMNYTemperaturesError("invalid type") - def _set_TEMP_default_setpoints(self): - self.set_setpoint("TEMP",8,-199.9) - time.sleep(0.1) - self.set_setpoint("TEMP",9,23) - time.sleep(0.1) - self.set_setpoint("TEMP",10,73.2) - time.sleep(0.1) - self.set_setpoint("TEMP",16,-199.9) - time.sleep(0.1) - self.set_setpoint("TEMP",17,23) - time.sleep(0.1) - self.set_setpoint("TEMP",18,26) - time.sleep(0.1) - self.set_setpoint("TEMP",19,26) - time.sleep(0.1) - self.set_setpoint("TEMP",20,26) - time.sleep(0.1) - self.set_setpoint("TEMP",21,23) - time.sleep(0.1) - self.set_setpoint("TEMP",22,-199.9) - time.sleep(0.1) - self.set_setpoint("TEMP",23,-199.9) - time.sleep(0.1) - self.set_setpoint("TEMP",24,-199.9) - time.sleep(0.1) - self.set_setpoint("TEMP",25,25) - time.sleep(0.1) - self.set_setpoint("TEMP",27,25) - time.sleep(0.1) - self.set_setpoint("TEMP",28,73.2) - time.sleep(0.1) - self.set_setpoint("TEMP",29,73.2) - time.sleep(0.1) - self.set_setpoint("TEMP",30,73.2) - time.sleep(0.1) - self.set_setpoint("TEMP",31,73.2) - time.sleep(0.1) - self.set_setpoint("TEMP",35,25) - time.sleep(0.1) - self.set_setpoint("TEMP",36,25) - time.sleep(0.1) - self.set_setpoint("TEMP",37,25) - time.sleep(0.1) - self.set_setpoint("TEMP",38,73.2) - time.sleep(0.1) - self.set_setpoint("TEMP",39,73.2) - time.sleep(0.1) - self.set_setpoint("TEMP",41,30) - time.sleep(0.1) - self.set_setpoint("TEMP",42,25) - time.sleep(0.1) - self.set_setpoint("TEMP",44,25) - time.sleep(0.1) - self.set_setpoint("TEMP",45,-199.9) - time.sleep(0.1) - self.set_setpoint("TEMP",46,73.2) - time.sleep(0.1) - self.set_setpoint("TEMP",47,73.2) - time.sleep(0.1) + # The default setpoints are stored only in the temperature controllers (EEPROM); the + # former _set_TEMP_default_setpoints() kept a second copy here (removed 2026-10-27, + # decision Mirko). The OMNY service tempcontrol.py seeds the :SET PVs from the + # controllers and writes a setpoint only when a :SET value is changed (heated channels). def temperature_controller_TEMP_running(self): time_diff = np.fabs(float(self.temperature_update_time.get()) - time.time()) diff --git a/csaxs_bec/devices/sim/sim_omny.py b/csaxs_bec/devices/sim/sim_omny.py index 458d3f17..4f392eca 100644 --- a/csaxs_bec/devices/sim/sim_omny.py +++ b/csaxs_bec/devices/sim/sim_omny.py @@ -318,9 +318,10 @@ class SimOMNYDewar(OMNYDewar): # OMNY temperature-controller channels ("TEMP" bank, channels 1-48), sourced from the # real OMNY_tempcontroller/tempcontrol.py channel config (name, EGU, ChanHeat, ALARMLIM) -# cross-referenced against OMNYTemperatures._set_TEMP_default_setpoints()'s existing -# per-channel setpoints (already in this repo, confirmed to cover exactly the same 29 -# channels -- the setpoint value below is copied from that method, not re-derived). +# cross-referenced against the per-channel setpoints of the former +# OMNYTemperatures._set_TEMP_default_setpoints() (removed 2026-10-27: the defaults live +# only in the controllers; values checked against the controllers on mpc3217 the same +# day -- 73.2 K here vs. -199.9 degC = 73.25 K there). # Sentinel setpoints ("no active control": -199.9 degC / 73.2 K, matching # tempcontrol.py's configure_device()'s unused-channel convention) mark monitor-only # channels (ChanHeat=0); those get a plausible physical reading instead of the sentinel. -- 2.54.0