pylabrobot.liquid_handling.backends.hamilton.base.HamiltonLiquidHandler.send_command#

async HamiltonLiquidHandler.send_command(module: str, command: str, auto_id=True, tip_pattern: List[bool] | None = None, write_timeout: int | None = None, read_timeout: int | None = None, wait=True, fmt: Any | None = None, **kwargs)#

Send a firmware command to the Hamilton machine.

Parameters:
  • module (str) – 2 character module identifier (C0 for master, …)

  • command (str) – 2 character command identifier (QM for request status)

  • auto_id – auto generate id if True, otherwise use the id in kwargs (or None if not present)

  • write_timeout (int | None) – write timeout in seconds. If None, self.write_timeout is used.

  • read_timeout (int | None) – read timeout in seconds. If None, self.read_timeout is used.

  • wait – If True, wait for a response. If False, return None immediately after sending the command.

  • fmt (Any | None) – A format to use for the response. If None, the response is not parsed.

  • kwargs – any named parameters. The parameter name should also be 2 characters long. The value can be of any size.

  • tip_pattern (List[bool] | None)

Returns:

A dictionary containing the parsed response, or None if no response was read within timeout.