mirror of
https://github.com/bec-project/ophyd_devices.git
synced 2026-02-04 06:08:42 +01:00
fix(epics-motor-user-vme): remove high/low limit check in wait_for_connection as it's not reliable. Tested at cSAXS
This commit is contained in:
@@ -232,13 +232,6 @@ class EpicsUserMotorVME(PSIDeviceBase, EpicsMotor):
|
|||||||
"""
|
"""
|
||||||
if self._ioc_enable.get(use_monitor=False) != "Enable":
|
if self._ioc_enable.get(use_monitor=False) != "Enable":
|
||||||
self._ioc_enable.put("Enable")
|
self._ioc_enable.put("Enable")
|
||||||
hl_switch = self.high_limit_switch.get(use_monitor=False)
|
|
||||||
ll_switch = self.low_limit_switch.get(use_monitor=False)
|
|
||||||
if hl_switch == 1 and ll_switch == 1:
|
|
||||||
raise RuntimeError(
|
|
||||||
f"Both limit switches are active for device {self.name}."
|
|
||||||
f"This often indicates that the motor is disconnected! Please double-check your hardware!"
|
|
||||||
)
|
|
||||||
return super().wait_for_connection(all_signals, timeout)
|
return super().wait_for_connection(all_signals, timeout)
|
||||||
|
|
||||||
def on_connected(self):
|
def on_connected(self):
|
||||||
|
|||||||
@@ -177,12 +177,6 @@ def test_epics_vme_user_motor(motor: EpicsUserMotorVME):
|
|||||||
motor.wait_for_connection(all_signals=True)
|
motor.wait_for_connection(all_signals=True)
|
||||||
assert motor._ioc_enable.get() == "Enable"
|
assert motor._ioc_enable.get() == "Enable"
|
||||||
|
|
||||||
# If high limit and low limit are both active, should raise error
|
|
||||||
motor.high_limit_switch._read_pv.mock_data = 1
|
|
||||||
motor.low_limit_switch._read_pv.mock_data = 1
|
|
||||||
with pytest.raises(RuntimeError):
|
|
||||||
motor.wait_for_connection(all_signals=True)
|
|
||||||
|
|
||||||
# Test subscription on _ioc_enable_changes
|
# Test subscription on _ioc_enable_changes
|
||||||
motor.device_manager = mock.MagicMock()
|
motor.device_manager = mock.MagicMock()
|
||||||
device_mock = mock.MagicMock()
|
device_mock = mock.MagicMock()
|
||||||
|
|||||||
Reference in New Issue
Block a user