-
Notifications
You must be signed in to change notification settings - Fork 52
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
“ramifarawi”
committed
Jan 25, 2024
1 parent
3dec9d0
commit 2c525ad
Showing
2 changed files
with
2 additions
and
2 deletions.
There are no files selected for viewing
2 changes: 1 addition & 1 deletion
2
protoBuilds/kapa-amp-cleanup/kapa-amp-cleanup.ot2.apiv2.py.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
{ | ||
"content": "metadata = {\n 'protocolName': 'Kapa Bead Clean Up',\n 'author': 'Rami Farawi <[email protected]>',\n 'source': 'Custom Protocol Request',\n 'apiLevel': '2.13'\n}\n\n\ndef run(ctx):\n\n [num_col, bead_dry_time, m300_mount] = get_values( # noqa: F821\n \"num_col\", \"bead_dry_time\", \"m300_mount\")\n\n # num_col = 2\n # bead_dry_time = 3\n # m300_mount = 'left'\n\n # labware\n # mag_mod = ctx.load_module('magnetic module gen2', 1)\n mag_stand = ctx.load_labware('genericmagnet_96_wellplate_1500ul', 1)\n mag_plate = ctx.load_labware('generic_96_wellplate_1500ul', 4)\n # mag_plate = mag_mod.load_labware('nest_96_wellplate_100ul_pcr_full_skirt')\n reservoir = ctx.load_labware('nest_12_reservoir_15ml', 3)\n elute_plate = ctx.load_labware('agilent_96_wellplate_270ul', 2)\n tips = [ctx.load_labware('opentrons_96_filtertiprack_200ul', slot)\n for slot in [7, 8]]\n\n # pipettes\n m300 = ctx.load_instrument('p300_multi_gen2', m300_mount, tip_racks=tips)\n\n # mapping\n beads = reservoir['A1']\n ethanol = reservoir['A2']\n eb = reservoir['A3']\n trash = reservoir['A12'].top()\n\n sample_cols = mag_plate.rows()[0][:num_col]\n sample_cols_stand = mag_stand.rows()[0][:num_col]\n\n def slow_tip_withdrawal(pipette, well_location, to_center=False):\n if pipette.mount == 'right':\n axis = 'A'\n else:\n axis = 'Z'\n ctx.max_speeds[axis] = 10\n if to_center is False:\n pipette.move_to(well_location.top())\n else:\n pipette.move_to(well_location.center())\n ctx.max_speeds[axis] = None\n\n # protocol\n m300.pick_up_tip()\n m300.mix(20, 200, beads)\n ctx.comment('\\n---------------ADDING BEADS TO PLATE----------------\\n\\n')\n for col in sample_cols:\n if not m300.has_tip:\n m300.pick_up_tip()\n m300.aspirate(90, beads)\n slow_tip_withdrawal(m300, col)\n m300.dispense(90, col)\n m300.mix(10, 110, col)\n m300.drop_tip()\n\n ctx.delay(minutes=5)\n\n ctx.pause('Move plate to magnetic stand, then select resume')\n\n ctx.delay(minutes=3)\n\n ctx.comment('\\n---------------REMOVING SUPER----------------\\n\\n')\n for col in sample_cols_stand:\n m300.pick_up_tip()\n m300.aspirate(140, col, rate=0.1)\n m300.aspirate(20, col.bottom(z=0.6), rate=0.1)\n m300.dispense(160, trash)\n m300.drop_tip()\n\n ctx.comment('\\n---------------TWO ETHANOL WASHES----------------\\n\\n')\n for _ in range(2):\n\n m300.pick_up_tip()\n for col in sample_cols_stand:\n m300.aspirate(200, ethanol)\n slow_tip_withdrawal(m300, ethanol)\n m300.dispense(200, col.top())\n ctx.delay(seconds=2)\n m300.blow_out()\n\n ctx.delay(seconds=30)\n\n for col in sample_cols_stand:\n if not m300.has_tip:\n m300.pick_up_tip()\n m300.aspirate(180, col, rate=0.1)\n m300.aspirate(20, col.bottom(z=0.6), rate=0.1)\n m300.dispense(200, trash)\n ctx.delay(seconds=2)\n m300.blow_out()\n m300.drop_tip()\n\n ctx.delay(minutes=bead_dry_time)\n\n ctx.pause('Move magplate to slot 4, then select resume')\n\n ctx.comment('\\n---------------Resuspend----------------\\n\\n')\n for col in sample_cols:\n m300.pick_up_tip()\n m300.aspirate(23, eb)\n m300.dispense(23, col)\n m300.mix(15, 19, col.bottom(z=0.7))\n m300.drop_tip()\n\n ctx.pause('Move plate to magnetic stand, then select resume')\n ctx.delay(minutes=3)\n\n ctx.comment('\\n---------------Transfer Elute----------------\\n\\n')\n for s, d in zip(sample_cols, elute_plate.rows()[0]):\n m300.pick_up_tip()\n m300.aspirate(20, s.bottom(z=0.7), rate=0.1)\n m300.dispense(20, d)\n m300.blow_out(d.top())\n m300.touch_tip()\n m300.drop_tip()\n", | ||
"content": "metadata = {\n 'protocolName': 'Kapa Bead Clean Up',\n 'author': 'Rami Farawi <[email protected]>',\n 'source': 'Custom Protocol Request',\n 'apiLevel': '2.13'\n}\n\n\ndef run(ctx):\n\n [num_col, bead_dry_time, m300_mount] = get_values( # noqa: F821\n \"num_col\", \"bead_dry_time\", \"m300_mount\")\n\n # num_col = 2\n # bead_dry_time = 3\n # m300_mount = 'left'\n\n # labware\n # mag_mod = ctx.load_module('magnetic module gen2', 1)\n mag_stand = ctx.load_labware('genericmagnet_96_wellplate_1500ul', 1)\n mag_plate = ctx.load_labware('generic_96_wellplate_1500ul', 4)\n # mag_plate = mag_mod.load_labware('nest_wellplate_100ul_pcr_full_skirt')\n reservoir = ctx.load_labware('nest_12_reservoir_15ml', 3)\n elute_plate = ctx.load_labware('agilent_96_wellplate_270ul', 2)\n tips = [ctx.load_labware('opentrons_96_filtertiprack_200ul', slot)\n for slot in [7, 8]]\n\n # pipettes\n m300 = ctx.load_instrument('p300_multi_gen2', m300_mount, tip_racks=tips)\n\n # mapping\n beads = reservoir['A1']\n ethanol = reservoir['A2']\n eb = reservoir['A3']\n trash = reservoir['A12'].top()\n\n sample_cols = mag_plate.rows()[0][:num_col]\n sample_cols_stand = mag_stand.rows()[0][:num_col]\n\n def slow_tip_withdrawal(pipette, well_location, to_center=False):\n if pipette.mount == 'right':\n axis = 'A'\n else:\n axis = 'Z'\n ctx.max_speeds[axis] = 10\n if to_center is False:\n pipette.move_to(well_location.top())\n else:\n pipette.move_to(well_location.center())\n ctx.max_speeds[axis] = None\n\n # protocol\n m300.pick_up_tip()\n m300.mix(20, 200, beads)\n ctx.comment('\\n---------------ADDING BEADS TO PLATE----------------\\n\\n')\n for col in sample_cols:\n if not m300.has_tip:\n m300.pick_up_tip()\n m300.aspirate(90, beads)\n slow_tip_withdrawal(m300, col)\n m300.dispense(90, col)\n m300.mix(10, 110, col)\n m300.drop_tip()\n\n ctx.delay(minutes=5)\n\n ctx.pause('Move plate to magnetic stand, then select resume')\n\n ctx.delay(minutes=3)\n\n ctx.comment('\\n---------------REMOVING SUPER----------------\\n\\n')\n for col in sample_cols_stand:\n m300.pick_up_tip()\n m300.aspirate(140, col, rate=0.1)\n m300.aspirate(20, col.bottom(z=0.6), rate=0.1)\n m300.dispense(160, trash)\n m300.drop_tip()\n\n ctx.comment('\\n---------------TWO ETHANOL WASHES----------------\\n\\n')\n for _ in range(2):\n\n m300.pick_up_tip()\n for col in sample_cols_stand:\n m300.aspirate(200, ethanol)\n slow_tip_withdrawal(m300, ethanol)\n m300.dispense(200, col.top())\n ctx.delay(seconds=2)\n m300.blow_out()\n\n ctx.delay(seconds=30)\n\n for col in sample_cols_stand:\n if not m300.has_tip:\n m300.pick_up_tip()\n m300.aspirate(180, col, rate=0.1)\n m300.aspirate(20, col.bottom(z=0.6), rate=0.1)\n m300.dispense(200, trash)\n ctx.delay(seconds=2)\n m300.blow_out()\n m300.drop_tip()\n\n ctx.delay(minutes=bead_dry_time)\n\n ctx.pause('Move magplate to slot 4, then select resume')\n\n ctx.comment('\\n---------------Resuspend----------------\\n\\n')\n for col in sample_cols:\n m300.pick_up_tip()\n m300.aspirate(23, eb)\n m300.dispense(23, col)\n m300.mix(15, 19, col.bottom(z=0.7))\n m300.drop_tip()\n\n ctx.pause('Move plate to magnetic stand, then select resume')\n ctx.delay(minutes=3)\n\n ctx.comment('\\n---------------Transfer Elute----------------\\n\\n')\n for s, d in zip(sample_cols, elute_plate.rows()[0]):\n m300.pick_up_tip()\n m300.aspirate(20, s.bottom(z=0.7), rate=0.1)\n m300.dispense(20, d)\n m300.blow_out(d.top())\n m300.touch_tip()\n m300.drop_tip()\n", | ||
"custom_labware_defs": [ | ||
{ | ||
"brand": { | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters