Cathode heater can show OFF even when output remains energized
Location: power_supply_9104.py:177, cathode_heating.py:2243, cathode_heating.py:2933
What is wrong: Several cathode OFF/abort paths still call set_output("0"), but set_output() first reads preset voltage and validates OVP before sending SOUT0.
Exact scenario: Heater output is on, then OVP readback fails or stored voltage is invalid. The operator toggles output off; set_output("0") returns before sending SOUT0, but the UI still flips to off.
Why it matters: A heater can remain energized while the dashboard says it is off.
Recommended fix: Use disable_output() for every OFF/abort/shutdown path, or make set_output("0") bypass voltage validation. Do not update UI off state unless the OFF command succeeds or the state is explicitly unknown.
Cathode heater can show OFF even when output remains energized
Location:
power_supply_9104.py:177,cathode_heating.py:2243,cathode_heating.py:2933What is wrong: Several cathode OFF/abort paths still call
set_output("0"), butset_output()first reads preset voltage and validates OVP before sendingSOUT0.Exact scenario: Heater output is on, then OVP readback fails or stored voltage is invalid. The operator toggles output off;
set_output("0")returns before sendingSOUT0, but the UI still flips to off.Why it matters: A heater can remain energized while the dashboard says it is off.
Recommended fix: Use
disable_output()for every OFF/abort/shutdown path, or makeset_output("0")bypass voltage validation. Do not update UI off state unless the OFF command succeeds or the state is explicitly unknown.