UniteLabs
Reference

Observable Commands

Which Hamilton STAR commands report their execution status, and what that means for your workflows.
Observable commands are supported in Hamilton STAR connector versions >=0.8.0.

Every Hamilton STAR command that moves hardware or waits on the instrument is an observable Control. While such a command runs, you can follow its execution status. The connector also keeps the status after the command ends, so a client that reconnects with the command's execution ID can check whether it finished.

What This Means for You

  • Names, parameters, and results are unchanged. Awaiting a command through the UniteLabs SDK still returns its final result, and following the execution updates is optional, see UniteLabs SDK & REST API. What changed is concurrency, described below.
  • Progress is reported at start and completion only. The STAR firmware does not report intermediate timing, so progress moves from 0% to 100% when the instrument confirms the command, rather than estimating the time in between.
  • One execution per command at a time. A second call to a command that is still running, for example a second Aspirate, fails with an error instead of being queued. Workflows that start the same command twice concurrently, for example with asyncio.gather, need to await the first call before sending the second. Different commands can still run at the same time, and so can the same command on different services, such as Set Y Position on Pipette 1 and Pipette 2. Execute is the exception and queues its calls.
The connector does not support cancelling a single running command yet. To interrupt motion, call Stop on the Device Service, which stops all motion and puts the instrument into a safe state.

Observable Commands

ServiceCommands
Pipettes ServiceInitialize Channels, Set X Position, Set Unsafe X Position, Set Y Positions, Set Z Positions, Set Z Positions To Safety, Set Channel Positions, Spread Channels Evenly, Aspirate, Dispense, Multiple Dispense, Pick Up Tips, Pick Up Tips To Wash, Discard Tips, Wash Tips
Pipette n Service (one per channel)Set Y Position, Set Z Position, Clear Y Range, Initialize Squeezer Drive
Core 96 ServiceSet Initialization, Set Position, Set Z Position To Safety, Pick Up Tips, Discard Tips, Aspirate, Dispense, Initialize Squeezer Drive
ISWAP ServiceInitialize, Clear Y Range, Set Is Parked, Add X Offset, Add Y Offset, Add Z Offset, Open, Open Uninitialized, Close, Pick Up Plate, Put Down Plate, Move Plate, Collapse Gripper Arm, Read Barcode
Core Gripper ServiceGet Paddles, Discard Paddles, Open Gripper, Pick Up Plate, Put Down Plate, Move Plate, Read Barcode
Core Gripper Service (with a quad gripper)Get Quad Paddles, Discard Quad Paddles, Open Quad Gripper, Pick Up Plate With Quad, Put Down Plate With Quad, Move Plate With Quad
Autoload ServiceInitialize, Load Carrier, Unload Carrier, Unload Carrier Finally, Take Out Carrier, Push Out Carrier, Set X Position, Set Z Position To Safety, Get Carrier Barcode
Heater Shaker n Service (one per port)Set Initialization, Set Shaker Initialization, Open Plate Lock, Close Plate Lock, Start Timed Shaker, Wait For Shaker, Heat, Wait For Heater
Device ServiceExecute, Initialize, Set X Position Right Arm, Set Unsafe X Position Right Arm, Teach Rack With Channel, Search Teach Signal

Execute sends a raw firmware command, which may move hardware, so it is observable even when the command you send is a quick query. The quad gripper commands are only available when the connector is configured with a quad gripper.

Commands That Stay Unobservable

All other commands return as soon as the instrument answers, without execution updates. These include:

  • Start and stop pairs, such as Start Shaker and Stop Shaker, Start Heater and Stop Heater, Start Tadm and Stop Tadm, and Start Temperature Recording and Stop Temperature Recording. Starting returns immediately, and the process keeps running until you stop it.
  • Stop, Halt, and Resume, which have to take effect immediately.
  • Reset, configuration setters, and getters for stored data.

Last updated