Skip to content

Commit

Permalink
fix
Browse files Browse the repository at this point in the history
  • Loading branch information
“ramifarawi” committed Feb 12, 2024
1 parent 8311f08 commit 7a6c783
Show file tree
Hide file tree
Showing 4 changed files with 30 additions and 15 deletions.
2 changes: 1 addition & 1 deletion data/data/fields.csv
Original file line number Diff line number Diff line change
Expand Up @@ -1005,7 +1005,7 @@ p2num,1
p300_gen,1
p300_mixing_height,1
p300_mnt,3
p300_mount,157
p300_mount,158
p300_mount_1,1
p300_multi_mount,7
p300_rate,1
Expand Down
20 changes: 8 additions & 12 deletions protoBuilds/spotsee/README.json
Original file line number Diff line number Diff line change
@@ -1,32 +1,28 @@
{
"author": "Opentrons",
"categories": {
"Broad Category": [
"Specific Category"
"Sample Prep": [
"Plate Filling"
]
},
"deck-setup": "",
"description": "This protocol does stuff!",
"description": "This protocol will add a specified amount of liquid to determined wells in a custom 80 well plate. If the volume is less than 20, the pipette selected will be a P20 single-channel pipette, otherwise, if the volume is greater than 20ul, then the pipette selected will be a P300 single-channel pipette. Please match the correct pipette with the tips loaded. ",
"internal": "spotsee",
"labware": "\n80 Well Plate\nNEST 1 Well Reservoir 195 mL #360103\nOpentrons 96 Filter Tip Rack 20 \u00b5L\n",
"labware": "\nCustom 80 Well Plate\nNEST 1 Well Reservoir 195 mL #360103\nOpentrons 96 Filter Tip Rack 20 \u00b5L\n",
"markdown": {
"author": "[Opentrons](https://opentrons.com/)\n\n\n",
"categories": "* Broad Category\n\t* Specific Category\n\n\n",
"deck-setup": "![deck](https://opentrons-protocol-library-website.s3.amazonaws.com/custom-README-images/spotsee/deck.png)\n\n\n",
"description": "This protocol does stuff!\n\n\n",
"categories": "* Sample Prep\n\t* Plate Filling\n\n\n",
"deck-setup": "![deck](https://opentrons-protocol-library-website.s3.amazonaws.com/custom-README-images/spotsee/Screen+Shot+2024-02-09+at+1.06.24+PM.png)\n\n\n\n",
"description": "This protocol will add a specified amount of liquid to determined wells in a custom 80 well plate. If the volume is less than 20, the pipette selected will be a P20 single-channel pipette, otherwise, if the volume is greater than 20ul, then the pipette selected will be a P300 single-channel pipette. Please match the correct pipette with the tips loaded. \n\n\n",
"internal": "spotsee\n",
"labware": "* 80 Well Plate\n* [NEST 1 Well Reservoir 195 mL #360103](http://www.cell-nest.com/page94?_l=en&product_id=102)\n* Opentrons 96 Filter Tip Rack 20 \u00b5L\n\n\n",
"labware": "* Custom 80 Well Plate\n* [NEST 1 Well Reservoir 195 mL #360103](http://www.cell-nest.com/page94?_l=en&product_id=102)\n* Opentrons 96 Filter Tip Rack 20 \u00b5L\n\n\n",
"notes": "If you have any questions about this protocol, please contact the Protocol Development Team by filling out the [Troubleshooting Survey](https://protocol-troubleshooting.paperform.co/).\n\n\n",
"pipettes": "* [Opentrons P20 Single Channel Electronic Pipette (GEN2)](https://shop.opentrons.com/single-channel-electronic-pipette-p20/)\n\n\n",
"process": "1. Input your protocol parameters above.\n2. Download your protocol and unzip if needed.\n3. Upload your custom labware to the [OT App](https://opentrons.com/ot-app) by navigating to `More` > `Custom Labware` > `Add Labware`, and selecting your labware files (.json extensions) if needed.\n4. Upload your protocol file (.py extension) to the [OT App](https://opentrons.com/ot-app) in the `Protocol` tab.\n5. Set up your deck according to the deck map.\n6. Calibrate your labware, tiprack and pipette using the OT App. For calibration tips, check out our [support articles](https://support.opentrons.com/en/collections/1559720-guide-for-getting-started-with-the-ot-2).\n7. Hit \"Run\".\n\n\n",
"protocol-steps": "1. Step 1...\n\n\n",
"reagent-setup": "![reagents](https://opentrons-protocol-library-website.s3.amazonaws.com/custom-README-images/spotsee/reagents.png)\n\n\n",
"title": "Spotsee Well Distribution Protocol"
},
"notes": "If you have any questions about this protocol, please contact the Protocol Development Team by filling out the Troubleshooting Survey.",
"pipettes": "\nOpentrons P20 Single Channel Electronic Pipette (GEN2)\n",
"process": "\nInput your protocol parameters above.\nDownload your protocol and unzip if needed.\nUpload your custom labware to the OT App by navigating to More > Custom Labware > Add Labware, and selecting your labware files (.json extensions) if needed.\nUpload your protocol file (.py extension) to the OT App in the Protocol tab.\nSet up your deck according to the deck map.\nCalibrate your labware, tiprack and pipette using the OT App. For calibration tips, check out our support articles.\nHit \"Run\".\n",
"protocol-steps": "\nStep 1...\n",
"reagent-setup": "",
"title": "Spotsee Well Distribution Protocol"
}
21 changes: 20 additions & 1 deletion protoBuilds/spotsee/spotsee.ot2.apiv2.py.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"content": "metadata = {\n 'protocolName': 'Spotsee Well Distribution Protocol',\n 'author': 'Rami Farawi <[email protected]>',\n 'source': 'Custom Protocol Request',\n 'apiLevel': '2.13'\n}\n\n\ndef run(ctx):\n\n [vol, p20_mount] = get_values( # noqa: F821\n \"vol\", \"p20_mount\")\n\n # p20_mount = 'left'\n # vol = 15\n\n # labware\n reservoir = ctx.load_labware('nest_1_reservoir_195ml', 10)\n plate = ctx.load_labware('80_well_plate', 1)\n tips = [ctx.load_labware('opentrons_96_filtertiprack_20ul', slot)\n for slot in [11]]\n\n red_wells = [\n 'J1', 'I1', 'H1', 'G1', 'F1', 'E1', 'D1', 'C1', 'B1', 'A1',\n 'A2', 'B2', 'C2', 'D2', 'E2', 'F2', 'G2', 'H2', 'I2', 'J2',\n 'J3', 'I3', 'H3', 'G3', 'F3', 'E3', 'D3', 'C3', 'B3', 'A3',\n 'A4', 'B4', 'C4', 'D4', 'E4', 'F4', 'G4', 'H4', 'I4', 'J4',\n 'J5', 'I5', 'H5', 'G5', 'F5', 'E5', 'D5', 'C5', 'B5', 'A5',\n 'A6', 'B6', 'C6', 'D6', 'E6', 'F6', 'G6', 'H6', 'I6', 'J6',\n 'J7', 'I7', 'H7', 'G7', 'F7', 'E7', 'D7', 'C7', 'B7', 'A7',\n 'A8', 'B8', 'C8', 'D8', 'E8', 'F8', 'G8', 'H8', 'I8', 'J8'\n ]\n\n # pipettes\n p20 = ctx.load_instrument('p20_single_gen2', p20_mount, tip_racks=tips)\n\n # mapping\n buffer = reservoir.wells()[0]\n\n # protocol\n ctx.comment('\\n---------------ADDING BUFFER TO PLATE----------------\\n\\n')\n\n p20.pick_up_tip()\n for well in red_wells:\n p20.aspirate(vol, buffer)\n p20.dispense(vol, plate.wells_by_name()[well])\n p20.drop_tip()\n",
"content": "metadata = {\n 'protocolName': 'Spotsee Well Distribution Protocol',\n 'author': 'Rami Farawi <[email protected]>',\n 'source': 'Custom Protocol Request',\n 'apiLevel': '2.13'\n}\n\n\ndef run(ctx):\n\n [vol, p20_mount, p300_mount] = get_values( # noqa: F821\n \"vol\", \"p20_mount\", \"p300_mount\")\n\n # p20_mount = 'left'\n # vol = 25\n # p300_mount = 'right'\n\n # labware\n\n reservoir = ctx.load_labware('nest_1_reservoir_195ml', 10)\n plate = ctx.load_labware('80_well_plate', 1)\n tips = [ctx.load_labware('opentrons_96_filtertiprack_20ul' if vol < 20 else 'opentrons_96_tiprack_300ul', slot) # noqa: E501\n for slot in [11]]\n\n red_wells = [\n 'J1', 'I1', 'H1', 'G1', 'F1', 'E1', 'D1', 'C1', 'B1', 'A1',\n 'A2', 'B2', 'C2', 'D2', 'E2', 'F2', 'G2', 'H2', 'I2', 'J2',\n 'J3', 'I3', 'H3', 'G3', 'F3', 'E3', 'D3', 'C3', 'B3', 'A3',\n 'A4', 'B4', 'C4', 'D4', 'E4', 'F4', 'G4', 'H4', 'I4', 'J4',\n 'J5', 'I5', 'H5', 'G5', 'F5', 'E5', 'D5', 'C5', 'B5', 'A5',\n 'A6', 'B6', 'C6', 'D6', 'E6', 'F6', 'G6', 'H6', 'I6', 'J6',\n 'J7', 'I7', 'H7', 'G7', 'F7', 'E7', 'D7', 'C7', 'B7', 'A7',\n 'A8', 'B8', 'C8', 'D8', 'E8', 'F8', 'G8', 'H8', 'I8', 'J8'\n ]\n\n # pipettes\n p20 = ctx.load_instrument('p20_single_gen2', p20_mount, tip_racks=tips)\n p300 = ctx.load_instrument('p300_single_gen2', p300_mount, tip_racks=tips)\n pip = p20 if vol < 20 else p300\n\n # mapping\n buffer = reservoir.wells()[0]\n\n # protocol\n ctx.comment('\\n---------------ADDING BUFFER TO PLATE----------------\\n\\n')\n num_asp = pip.max_volume // vol\n chunks = [red_wells[i:i+num_asp] for i in range(0, len(red_wells),\n num_asp)]\n\n pip.pick_up_tip()\n for chunk in chunks:\n pip.aspirate(num_asp*vol, buffer)\n for well in chunk:\n pip.dispense(vol, plate.wells_by_name()[well])\n pip.drop_tip()\n",
"custom_labware_defs": [
{
"brand": {
Expand Down Expand Up @@ -1057,12 +1057,31 @@
}
],
"type": "dropDown"
},
{
"label": "P300 Single-Channel Mount",
"name": "p300_mount",
"options": [
{
"label": "Right",
"value": "right"
},
{
"label": "Left",
"value": "left"
}
],
"type": "dropDown"
}
],
"instruments": [
{
"mount": "left",
"name": "p20_single_gen2"
},
{
"mount": "right",
"name": "p300_single_gen2"
}
],
"labware": [
Expand Down
2 changes: 1 addition & 1 deletion protocols/spotsee/spotsee.ot2.apiv2.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

def run(ctx):

[vol, pip, p20_mount, p300_mount] = get_values( # noqa: F821
[vol, p20_mount, p300_mount] = get_values( # noqa: F821
"vol", "p20_mount", "p300_mount")

# p20_mount = 'left'
Expand Down

0 comments on commit 7a6c783

Please sign in to comment.