Skip to content

Thermocycler

ThermocyclerContext

An object representing a connected Thermocycler Module.

It should not be instantiated directly; instead, it should be created through load_module().

New in version 2.0

block_target_temperature property v2.0

block_target_temperature

The target temperature of the well block in °C.

block_temperature property v2.0

block_temperature

The current temperature of the well block in °C.

block_temperature_status property v2.0

block_temperature_status

One of five possible temperature statuses:

  • holding at target: The block has reached its target temperature and is actively maintaining that temperature.
  • cooling: The block is cooling to a target temperature.
  • heating: The block is heating to a target temperature.
  • idle: The block is not currently heating or cooling.
  • error: The temperature status can't be determined.

close_lid v2.0

close_lid()

Close the lid.

deactivate v2.0

deactivate()

Turn off both the well block temperature controller and the lid heater.

deactivate_block v2.0

deactivate_block()

Turn off the well block temperature controller.

deactivate_lid v2.0

deactivate_lid()

Turn off the lid heater.

execute_profile v2.0

execute_profile(steps, repetitions, block_max_volume=None)

Execute a Thermocycler profile, defined as a cycle of steps, for a given number of repetitions.

Parameters:

  • steps (List[ThermocyclerStep]) –

    List of steps that make up a single cycle. Each list item should be a dictionary that maps to the parameters of the set_block_temperature() method. The dictionary's keys must be temperature and one or both of hold_time_seconds and hold_time_minutes.

  • repetitions (int) –

    The number of times to repeat the cycled steps.

  • block_max_volume (Optional[float], default: None ) –

    The greatest volume of liquid contained in any individual well of the loaded labware, in µL. If not specified, the default is 25 µL.

Changed in version 2.21: Fixed run log listing number of steps instead of number of repetitions.

labware property v2.0

labware

The labware (if any) present on this module.

lid_position property v2.0

lid_position

One of these possible lid statuses:

  • closed: The lid is closed.
  • in_between: The lid is neither open nor closed.
  • open: The lid is open.
  • unknown: The lid position can't be determined.

lid_target_temperature property v2.0

lid_target_temperature

The target temperature of the lid in °C.

lid_temperature property v2.0

lid_temperature

The current temperature of the lid in °C.

lid_temperature_status property v2.0

lid_temperature_status

One of five possible temperature statuses:

  • holding at target: The lid has reached its target temperature and is actively maintaining that temperature.
  • cooling: The lid has previously heated and is now passively cooling. The Thermocycler lid does not have active cooling.
  • heating: The lid is heating to a target temperature.
  • idle: The lid has not heated since the beginning of the protocol.
  • error: The temperature status can't be determined.

load_adapter v2.15

load_adapter(name, namespace=None, version=None)

Load an adapter onto the module using its load parameters.

The parameters of this function behave like those of load_adapter() (which loads adapters directly onto the deck). Note that the parameter name here corresponds to load_name on the ProtocolContext function.

Returns:

  • Labware

    The initialized and loaded adapter object.

load_adapter_from_definition v2.15

load_adapter_from_definition(definition)

Load an adapter onto the module using an inline definition.

Parameters:

  • definition (LabwareDefinition) –

    The labware definition.

Returns:

  • Labware

    The initialized and loaded labware object.

load_labware

load_labware(name, label=None, namespace=None, version=None, adapter=None, lid=None, *, adapter_namespace=None, adapter_version=None, lid_namespace=None, lid_version=None)

Load a labware onto the module using its load parameters.

The parameters of this function behave like those of load_labware() (which loads labware directly onto the deck). Note that the parameter name here corresponds to load_name on the ProtocolContext function.

Returns:

  • Labware

    The initialized and loaded labware object.

New in version 2.1: The label, namespace, and version parameters.

New in version 2.26: The adapter_namespace, adapter_version, lid_namespace, and lid_version parameters.

load_labware_by_name v2.1

load_labware_by_name(name, label=None, namespace=None, version=None)

Deprecated in version 2.0: Use load_labware instead.

load_labware_from_definition v2.0

load_labware_from_definition(definition, label=None)

Load a labware onto the module using an inline definition.

Parameters:

  • definition (LabwareDefinition) –

    The labware definition.

  • label (str, default: None ) –

    An optional special name to give the labware. If specified, this is the name the labware will appear as in the run log and the calibration view in the Opentrons app.

Returns:

  • Labware

    The initialized and loaded labware object.

model property v2.14

model

Get the module's model identifier.

open_lid v2.0

open_lid()

Open the lid.

parent property v2.14

parent

The name of the slot the module is on.

On a Flex, this will be like "D1". On an OT-2, this will be like "1". See Deck Slots.

serial_number property v2.14

serial_number

Get the module's unique hardware serial number.

set_block_temperature v2.0

set_block_temperature(temperature, hold_time_seconds=None, hold_time_minutes=None, ramp_rate=None, block_max_volume=None)

Set the target temperature for the well block, in °C.

Parameters:

  • temperature (float) –

    A value between 4 and 99, representing the target temperature in °C.

  • hold_time_minutes (Optional[float], default: None ) –

    The number of minutes to hold, after reaching temperature, before proceeding to the next command. If hold_time_seconds is also specified, the times are added together.

  • hold_time_seconds (Optional[float], default: None ) –

    The number of seconds to hold, after reaching temperature, before proceeding to the next command. If hold_time_minutes is also specified, the times are added together.

  • block_max_volume (Optional[float], default: None ) –

    The greatest volume of liquid contained in any individual well of the loaded labware, in µL. If not specified, the default is 25 µL.

    Changed in version 2.27: After API version 2.27 it will attempt to use the liquid tracking of the labware first and then fall back to the 25 if there is no probed or loaded liquid.

Note

If hold_time_minutes and hold_time_seconds are not specified, the Thermocycler will proceed to the next command immediately after temperature is reached.

set_lid_temperature v2.0

set_lid_temperature(temperature)

Set the target temperature for the heated lid, in °C.

Returns a task object that represents concurrent preheating. Pass the task object to ProtocolContext.wait_for_tasks() to wait for the preheat to complete.

Parameters:

  • temperature (float) –

    A value between 37 and 110, representing the target temperature in °C.

Note

The Thermocycler will proceed to the next command immediately after temperature is reached.

start_execute_profile v2.27

start_execute_profile(steps, repetitions, block_max_volume=None)

Start a Thermocycler profile and return a Task representing its execution. Profile is defined as a cycle of steps, for a given number of repetitions.

Returns a task object that represents concurrent execution of the profile. Pass the task object to ProtocolContext.wait_for_tasks() to wait for the preheat to complete.

Parameters:

  • steps (List[ThermocyclerStep]) –

    List of steps that make up a single cycle. Each list item should be a dictionary that maps to the parameters of the set_block_temperature() method. The dictionary's keys must be temperature and one or both of hold_time_seconds and hold_time_minutes.

  • repetitions (int) –

    The number of times to repeat the cycled steps.

  • block_max_volume (Optional[float], default: None ) –

    The greatest volume of liquid contained in any individual well of the loaded labware, in µL. If not specified, the default is 25 µL.

start_set_block_temperature v2.27

start_set_block_temperature(temperature, ramp_rate=None, block_max_volume=None)

Starts to set the target temperature for the well block, in °C.

Returns a task object that represents concurrent preheating. Pass the task object to ProtocolContext.wait_for_tasks() to wait for the preheat to complete.

Parameters:

  • temperature (float) –

    A value between 4 and 99, representing the target temperature in °C.

  • block_max_volume (Optional[float], default: None ) –

    The greatest volume of liquid contained in any individual well of the loaded labware, in µL. If not specified, the default is 25 µL.

    Changed in version 2.27: After API version 2.27 it will attempt to use the liquid tracking of the labware first and then fall back to the 25 if there is no probed or loaded liquid.

start_set_lid_temperature v2.27

start_set_lid_temperature(temperature)

Set the target temperature for the heated lid, in °C.

Returns a task object that represents concurrent preheating. Pass the task object to wait_for_tasks() to wait for the preheat to complete.

Parameters:

  • temperature (float) –

    A value between 37 and 110, representing the target temperature in °C.

Note

The Thermocycler will proceed to the next command immediately after temperature is reached.

type property v2.14

type

Get the module's general type identifier.