Skip to content

Commit

Permalink
adds seperate protocol for 96ch 200ul tip tests
Browse files Browse the repository at this point in the history
  • Loading branch information
andySigler committed Sep 14, 2023
1 parent f6223c5 commit 42ca4c5
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 7 deletions.
30 changes: 23 additions & 7 deletions hardware-testing/hardware_testing/gravimetric/__main__.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@
photometric_ot3_p50_multi,
photometric_ot3_p1000_single,
photometric_ot3_p1000_multi,
photometric_ot3_p1000_96,
photometric_ot3_p1000_96_50ul,
photometric_ot3_p1000_96_200ul,
)

from . import execute, helpers, workarounds, execute_photometric
Expand Down Expand Up @@ -92,13 +93,28 @@

PHOTOMETRIC_CFG = {
50: {
1: photometric_ot3_p50_single,
8: photometric_ot3_p50_multi,
1: {
50: photometric_ot3_p50_single,
},
8: {
50: photometric_ot3_p50_multi,
}
},
1000: {
1: photometric_ot3_p1000_single,
8: photometric_ot3_p1000_multi,
96: photometric_ot3_p1000_96,
1: {
50: photometric_ot3_p1000_single,
200: photometric_ot3_p1000_single,
1000: photometric_ot3_p1000_single,
},
8: {
50: photometric_ot3_p1000_multi,
200: photometric_ot3_p1000_multi,
1000: photometric_ot3_p1000_multi,
},
96: {
50: photometric_ot3_p1000_96_50ul,
200: photometric_ot3_p1000_96_200ul
}
},
}

Expand Down Expand Up @@ -260,7 +276,7 @@ def build_run_args(cls, args: argparse.Namespace) -> "RunArgs":
trials = args.trials

if args.photometric:
protocol_cfg = PHOTOMETRIC_CFG[args.pipette][args.channels]
protocol_cfg = PHOTOMETRIC_CFG[args.pipette][args.channels][args.tip]
name = protocol_cfg.metadata["protocolName"] # type: ignore[attr-defined]
report = execute_photometric.build_pm_report(
test_volumes=volumes_list,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
"""Photometric OT3 P1000."""
from opentrons.protocol_api import ProtocolContext

metadata = {"protocolName": "photometric-ot3-p1000-96-50ul-tip"}
requirements = {"robotType": "Flex", "apiLevel": "2.15"}

SLOTS_TIPRACK = {
200: [5, 6, 8, 9, 11],
}
SLOT_PLATE = 3
SLOT_RESERVOIR = 2

RESERVOIR_LABWARE = "nest_1_reservoir_195ml"
PHOTOPLATE_LABWARE = "corning_96_wellplate_360ul_flat"


def run(ctx: ProtocolContext) -> None:
"""Run."""
tipracks = [
# FIXME: use official tip-racks once available
ctx.load_labware(
f"opentrons_flex_96_tiprack_{size}uL_adp", slot, namespace="custom_beta"
)
for size, slots in SLOTS_TIPRACK.items()
for slot in slots
]
reservoir = ctx.load_labware(RESERVOIR_LABWARE, SLOT_RESERVOIR)
plate = ctx.load_labware(PHOTOPLATE_LABWARE, SLOT_PLATE)
pipette = ctx.load_instrument("p1000_96", "left")
for rack in tipracks:
pipette.pick_up_tip(rack["A1"])
pipette.aspirate(10, reservoir["A1"].top())
pipette.dispense(10, plate["A1"].top())
pipette.drop_tip(home_after=False)

0 comments on commit 42ca4c5

Please sign in to comment.