diff --git a/src/calng/CalibrationManager.py b/src/calng/CalibrationManager.py index 82eb74cd6ff5ad09222b108a87a45597cacf3df6..359b89de42e3a4d95007ca18df3689cb095080a8 100644 --- a/src/calng/CalibrationManager.py +++ b/src/calng/CalibrationManager.py @@ -1354,6 +1354,14 @@ class CalibrationManager(DeviceClientBase, Device): config )) + # Perform instantation on correction devices first. + if not all(await gather(*awaitables)): + self._set_status('One or more correction devices failed to ' + 'instantiate') + return + + awaitables.clear() + # Instantiate group matchers with optional bridge enabled. for row in self.moduleGroups.value: group, server, with_bridge, bridge_port, bridge_pattern = row @@ -1402,9 +1410,10 @@ class CalibrationManager(DeviceClientBase, Device): config )) - # Perform instantation. + # Perform instantation on matcher-like devices second. if not all(await gather(*awaitables)): - self._set_status('One or more devices failed to instantiate') + self._set_status('One or more matcher devices failed to ' + 'instantiate') return # Force managed DAQ settings.