Skill Tracer
Skills › Scientific Agent Skills › opentrons-integration › ot2_basic_protocol_template.py

ot2_basic_protocol_template.py

63 lines · skills/opentrons-integration/scripts/ot2_basic_protocol_template.py at 5f2bc03

1"""Minimal Opentrons OT-2 protocol template.
2
3The OT-2 maximum at this skill's 2026-10-01 baseline is Protocol API 2.28.
4Simulate and analyze this file in the OT-2 App before physical execution.
5"""
6
7from opentrons import protocol_api
8
9metadata = {
10 "protocolName": "OT-2 Basic Transfer Template",
11 "author": "Customize before use",
12 "description": "Transfer buffer from a reservoir into one plate well.",
15requirements = {
16 "robotType": "OT-2",
17 "apiLevel": "2.28",
21def run(protocol: protocol_api.ProtocolContext) -> None:
22 """Load a minimal OT-2 deck and perform one 100 µL transfer."""
23 tips = protocol.load_labware(
24 load_name="opentrons_96_tiprack_300ul",
25 location="1",
26 label="300 µL Tips",
27 )
28 reservoir = protocol.load_labware(
29 load_name="nest_12_reservoir_15ml",
30 location="2",
31 label="Buffer Reservoir",
32 )
33 destination_plate = protocol.load_labware(
34 load_name="nest_96_wellplate_200ul_flat",
35 location="3",
36 label="Destination Plate",
37 )
39 # OT-2 has fixed trash in slot 12; do not call load_trash_bin().
40 pipette = protocol.load_instrument(
41 instrument_name="p300_single_gen2",
42 mount="left",
43 tip_racks=[tips],
44 )
46 buffer = protocol.define_liquid(
47 name="Buffer",
48 description="Nonhazardous example buffer",
49 display_color="#1F77B4",
50 )
51 reservoir.load_liquid(
52 wells=["A1"],
53 volume=1_000,
54 liquid=buffer,
55 )
57 pipette.transfer(
58 volume=100,
59 source=reservoir["A1"],
60 dest=destination_plate["A1"],
61 new_tip="always",
62 )
63 protocol.comment("Transfer complete.")