fix(omny): remove OMNYTemperatures._set_TEMP_default_setpoints - defaults only in the controllers
CI for csaxs_bec / test (pull_request) Successful in 3m28s
Read the Docs Deploy Trigger / trigger-rtd-webhook (push) Successful in 2s
CI for csaxs_bec / test (push) Successful in 3m19s

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 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01M8zoDvfTY6VYunNtWse9VZ
This commit was merged in pull request #345.
This commit is contained in:
Mirko HollerandClaude Opus 5.5 committed 2026-10-27 20:32:05 +01:00
1 parent 6e0ffa3b74
commit bd2448b746
2 files changed
+8 -63

No files matched your search

+4 -60
View File
@@ -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())
+4 -3
View File
@@ -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.