TITLE: OT-2 Media dispensing and culture inoculation protocol
AUTHORS: Ana Mariya Anhel, Lorea Alejaldre, Ángel Goñi-Moreno

[DESCRIPTION]
This protocol is meant to distribute reactive(s) into well plates with a single channel pipette, and then transfer culture samples from source plate(s) to these plates with a multi-channel pipette.

This protocol uses a python script for an Opentrons 2 robot and an excel file containing the required variables to set the number of samples, volumes of transfer, type of plates, etc... 

In our laboratory, this protocol has been used as part of the "High-throughput workflow for the genotypic characterization of transposon library variants" also available in protocols.io to prepare cultures plates to perform a subsequent counter-selection 

This protocol is a set of instructions or description of the LAP repository entry LAP-CellMediaInoculation-OT2-1.0.0


[BEFORE_START]
Note that the source and final 96-well plates will follow the same order (If the wells of a column of the source plates has empty wells the multichannel will aspirate in that well) but media will not be dispensed in those corrresponding final wells

[GUIDELINES]
This protocol was run in a python 3.7.1, OT App Software Version 6.3.1 and opentrons API level version 2.14 in a Linux 4.14.74 system (these are the OT-2 specifications). In the script several packages are used:  pandas (0.25.3), openpyxl (3.1.2), math, random

It has been tested with cultures from Pseudomonas putida KT2440 as part of the High-throughput workflow for the genotypic characterization of transposon library variants. LB and M9-citrate media with either kanamycin, gentamicin, streptomycin or ampicillin haven been successfully run.

The maximum number of 96-well final plates per run given 1 source plate, 2 different types of tip racks (with the replacement of the tip rack set as True) is 7 final plates (use 1 falcon tube rack and 2 tip racks)

[STEPS]
SECTION: Files Preparation
1. Preparing Customized Template

Preparing the template (a .xlsx) with the specific variables for each experiment and a .pdf that contains the instructions on how to fill the template 

Here we attach one Excel with several sheets:
GeneralVariables: variables related mainly to the labware that is going to be used
PipetteVariables: variables related to the pipettes that are going to be used
PerPlateVariables: variables associated with the specifications of each source plate

  
  
SECTION: After-Running
7. Retrieve labware from the OT
SECTION: Files Preparation
2. Transferring file to Robot

Transfer the VariablesPlateIncubation.xlsx to the directory /data/user_storage of the OT system that we will use to perform the protocol.

 

 


Here, we present a summary of how to transfer the files in 3 OS: Windows, MacOS and Linux.


MacOS/Linux
We will use the command line with scp to transfer the file VariablesPlateIncubation.xlsx to the OT system.

We need to perform the following command
 

 


Windows
There are several ways to send files from a Windows to a Linux (for example, with a virtual machine or Windows Powershell in the latest versions of Windows).

Here, we will use FileZilla (https://filezilla-project.org/download.php?type=client).

Go to File -> Site Manager -> New Site -> Change Protocol to SFTP. Then, introduce in Host the OT IP, change Logon Type to key file, change User to root and give the directory where the OT-key file is. The final window should look something like the following picture

 
Then press Connect, and we will have a connection between our computer and the robot.

After this connection, we should be able to transfer VariablesPlateIncubation.xlsx  (in our computer) to the directory /data/user_storage in the robot.

This method of transferring files can also be done in Linux and MacOS.

 


SECTION: Files Preparation
1.1. Fill the template with the corresponding values
SECTION: Files Preparation
1.2. Store it as VariablesPlateIncubation.xlsx

 

SECTION: Files Preparation
3. Adding the custom labware

There is only a need to do this step when the labware you are using is not OT official or included in the OT app.
SECTION: Files Preparation
3.1. Creation of .json file

The description file can be obtained by describing the labware dimensions at https://labware.opentrons.com/create/
SECTION: Files Preparation
3.2. Uploading files to the OT-app

In the OT app, we need to perform the following route: Labware -> Import -> Choose File -> Select file we have created in step 3.1

 

SECTION: Run Protocol
5. Load script in OT-App

Now that we have transferred the variable files to the robot, we can load the script and run it in the selected robot

 

 

SECTION: Example
8. We want to transfer samples from 2 source plates, with 96 and 50 samples, to different antibiotic plates, one per antibiotic and source plate.
The first one will be mixed with Ampicillin and Kanamycin. The second plate will be mixed with Ampicillin and Gentamycin.

We will use a computer with a Windows 10 system.
SECTION: Example
8.1. Excel template that we can find    filled with the name VariablesPlateIncubation.xlsx

  

SECTION: Example
8.7.  Turn the HEPA filter module
SECTION: Example
8.10. Start Run


 



SECTION: Example
8.11. Retrieve labwares from the OT
SECTION: Run Protocol
5.1. Load the script in the App

Protocols -> Import -> Drag Python script

 

 

 

0.36. Select Robot to Perform Script

Click in the protocol > Run Protocol > Choose the OT where the file VariablesPlateIncubation.xlsx is > Proceed To Setup

After clicking in Proceed to Setup you should obtain the positions of the labware, in the Labware Setup tab, and the reactives, with their correspondant volume, in the Liquid Setup tab.

In case that the protocol with the set variables is not possible to run, an error will occur during the run. A lot of errors are contemplated already and have a specific message that give a hint of what could have gone wrong.


 

 

 

 

SECTION: Run Protocol
6. Run Protocol in OT
SECTION: Run Protocol
5.2. Select Robot to Perform Script

Click in the protocol -> Start setup -> Choose the OT where the file VariablesPlateIncubation.xlsx is -> Proceed To Setup

After clicking on Proceed to Setup, you should obtain the labware positions in the Labware tab and the reagents, with their corresponding volume, in the Liquids tab.

In case the protocol with the set variables cannot run, an error will occur during the run. Many errors are contemplated already and have a specific message that hints at what could have gone wrong.

 



 

 

SECTION: Run Protocol
6.1. Make sure the needed calibrations are done

Pipettes, tip racks and tip length calibrations need to be done for the items used in this run.
SECTION: Run Protocol
6.2. Labware position check is performed (if needed)
SECTION: Run Protocol
6.3. Clean the surface of the robot with 70% ethanol to clean and disinfect the surfaces

 

SECTION: Run Protocol
6.4. Set the labware and reagents as shown in the OT-App
SECTION: Run Protocol
6.5. Start Run

The procedure that the robot is going to do is mainly divided into 2 parts:

Distribute each reactive to the final plate(s) with the single-channel pipette
Distribute samples to the final plate(s) with the multi-channel pipette

 

SECTION: Example
8.2. Upload custom labware to app

We are using a custom labware called vwrblueprintdepth105_96_wellplate_390ul that has been created with the labware creator that opentrons offers (https://labware.opentrons.com/create/)

  

Upload it to the labware and ensure it is loaded in the app.

 
SECTION: Example
8.4. Export the variable file to the /data/user_storage folder in the robot.

 
SECTION: Example
8.5. Import the script that we have downloPythonaded from    (I named it Example-PlateIncubation.py) to the OT-App

  

 
As we can see, we have an error, but that is programmed because the script is meant to work in the robot but not in your computer
SECTION: Example
8.6. Run the protocol in the robot that we have transferred the Excel file

Example-PlateIncubation.py -> Start setup -> Select the robot in which we are going to run the protocol

If we do not have any errors, the output should look like the following pictures.

 
 
SECTION: Example
8.8. Clean platform of the robot that we are going to perform the protocol
SECTION: Example
8.9. Prepare all reagents and labware in the places the App is showing and take into account the notes in step   
SECTION: Prepare Robot OS
4. Install needed packages

This script needs the package openpyxl, which is not installed by default in the OT-2 robots

 

SECTION: Prepare Robot OS
4.1. Connect to the robot

   to find the IP of the robot in which you want to run the script

To connect to the robot, you can do it via ssh with the following command
 
In Windows, you can do this command in Windows Powershell

 

SECTION: Prepare Robot OS
4.2. Install the package

Once inside the robot's system, you need to run the following command
 

 

SECTION: Files Preparation
3.3. Transfer labware files to the robot

If you are using the entry LAP-CellMediaInoculation-OT2-1.0.0 and custom labware, an additional step is needed, which is transferring a folder with the custom labware.

We need to create for our custom labware a folder with the API name containing the description file (.json) called 1.json and then transfer that folder to the robot's folder /data/labware/v2/custom_definitions/custom_beta in a similar way as in the Step 2 but with the difference that is a directory that needs to be transferred and not a file.
 

 

SECTION: Example
8.3. Because we are using version 1.0.0 of the script in this example, we will transfer the directory of the labware as well (here we have attached a zip, but it is the folder that must be transferred, not the zip)