DiamondLightSource / mx-bluesky

Bluesky plans, plan stubs, and utilities for MX beamlines
https://diamondlightsource.github.io/mx-bluesky/
Apache License 2.0
0 stars 2 forks source link

Robot load fail when waiting for old pin to unload #658

Closed olliesilvester closed 1 week ago

olliesilvester commented 1 week ago

On 16/11, Hyperion errored when unloading the pin: https://graylog.diamond.ac.uk/messages/graylog-daq-mx-hyperion_21/b1720fc0-a3c2-11ef-bf7b-9ea325733517

We got stuck on the line await wait_for_value(self.gonio_pin_sensor, PinMounted.NO_PIN_MOUNTED, None) and the overall plan timed out. I couldn't find anything else obvious in the logs, It looks like the error code PV's aren't archived right now

Acceptance Criteria

DominicOram commented 1 week ago

We think that the issue was that:

  1. Robot does a dry and finishes
  2. Hyperion checks whether a program is running on the robot
  3. There is no program running as the dry has finished but we haven't yet started a soak
  4. The soak starts
  5. Hyperion does a load as it doesn't think there's a program running
  6. The load is ignored by the robot as it is soaking
  7. Hyperion waits for the pin to be loaded but it never is

@ndg63276 has changed the robot program to do a dry and soak in one go but this now takes ~95s so we should increase the timeout we have on waiting for a robot program to finish