Opentrons / opentrons

Software for writing protocols and running them on the Opentrons Flex and Opentrons OT-2
https://opentrons.com
Apache License 2.0
425 stars 179 forks source link

Epic: Centralize execution control #4869

Closed sfoster1 closed 2 years ago

sfoster1 commented 4 years ago

Pause and resume on the OT-2 are currently controlled by a threading.Event located in the smoothie driver and checked by that system before sending any move command. That means that pauses have no effect until the next smoothie driver move.

Cancel is implemented by setting the smoothie hard halt pin and waiting for an error to come back. That means cancelling has no effect until the next smoothie driver move.

Both those problems need to be fixed before we can cleanly, correctly, and consistently implement asynchronous semantics for module commands - being able to do other commands while waiting for your temperature module to heat.

This epic collects that work.

┆Issue is synchronized with this Wrike Task by Unito

mcous commented 2 years ago

No longer applicable