TITLE: OT-2 PCR sample preparation protocol  
AUTHORS: Ana Mariya Anhel, Lorea Alejaldre, Manuel Gimenez, Ángel Goñi-Moreno

[DESCRIPTION]
This protocol is meant to perform samples preparation of PCR plates for 1 or more primer sets (defined number of primers per set established by the user) to the same samples, i.e, we will have for all the selected samples (we can set the initial well and number of samples) of all source plates the master mix with different primer sets (combination of primers, water and polymerase mix) in the final plates.

To run this protocol is needed a python script for an Opentrons 2 robot and an excel (.xlsx) file with several variables making the protocol modular to reactives, volumes of transfer, type of plates, number of primers per set, 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 PCR samples for sending to sequencing and for checking the correct introduction of the transposon in the bacterial genome.

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







[GUIDELINES]
This protocol was developed with python 3.7.1, OT App Software Version 6.3.1 and 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 and numpy (1.15.1)

It has been tested with cultures from Pseudomonas putida KT2440 and PCR products as part of the High-throughput workflow for the genotypic characterization of transposon library variants. 

The maximum number of primer sets that can be incubated with a full 96-well plate having a heater-shaker module set as True, the thermocycler set as False, the replace tip rack variable set as False is 3. In this scenario, 3 final plates will be created

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

Preparing the template (a .xlsx) with the specific variables for each experiment.

Here we attach one Excel with several sheets and a PDF file explaining each variable:

GeneralVariables: variables related mainly to the labware that is going to be used
SamplesPlateVariables: variables related to the specifications of each source plate
PipetteVariables: variables related to the pipette(s) that are going to be used
ReagentsPerReaction: variables that will determine the final mix of the wells
ModuleVariables: variables related to the modules used in the protocol, the thermocycler and the heater-shaker
TemperatureProfile (Optional): PCR program that will be performed in the thermocycler if set as True in the ModuleVariables sheet
Maps (Optional): sheet(s) with the names of the samples in the source plates and will be reflected in the final plate map(s) --> not included in the template but needed to be included if the variable Map IDs has a value.

  
  
SECTION: Running Protocol
None. Setting Labware
SECTION: After-running
7. Retrieve labware from the OT
SECTION: Example
9. We want to perform a PCR mix preparation of 94 colonies and 2 controls that are in 2 source plates(40 first colonies + 2 control samples in 1 plate and 54 colonies from the A4 well in the other plate) with 2 primer sets.
We are going to have a heater-shaker module available but not a thermocycler.
1 of the source plates will have a map of identities, but the other will not have it.

We will use a computer with a Windows 10 system
SECTION: Files Preparation
2. Transferring file to Robot

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

 


 


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


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

We need to perform the following command
 

 


Windows
There are several ways to pass 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 the Logon Type to Windowskey file, change the user name to root and give the directory where the OT key is. It should look something like this

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

After this connection, we should be able to move out VariablesPCR.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: Running Protocol
None. Load script in OT-App

Now that we have made sure that the protocol is going to work we import the python script in the OT-App.
 

SECTION: Running Protocol
None. Run Protocol in OT
SECTION: After-running
8. Importing map from robot


To retrieve the file we can   and reproduce it by transferring the files to the computer. 

They will be in the directory /data/user_storage. It will be a file with an extension .xlsx and have the name provided in the input variable file
 

 

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
None. In case that you want to see the instruction file before the next step, you can see the instruction file with cat
 

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: Files Preparation
1.1. Fill the template with the corresponding values

SECTION: Files Preparation
1.2. Store it with the name VariablesPCR.xlsx

 


SECTION: Running Protocol
None. Wipe the surface of the deck with 70% ethanol to clean and desinfect the surfaces
 

SECTION: Running Protocol
None. Set the respective labwares in the slots as the OT App and the instruction file set

 


SECTION: Running Protocol
None. Set the different reactives in their respective coldblock positions, as stated in the instruction file
 

SECTION: Example
9.1. Prepare variable file

Excel temple filled and saved with the name VariablesPCR.xlsx

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

 
SECTION: Example
9.5. Import the script that we have downloaded from the step    (I named it Example-ScriptPCR.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
9.6. Run the protocol in the robot that we have transferred the Excel file

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

If we do not have any errors, the output should look similar to the following pictures

 
 
SECTION: Example
9.7. Turn the HEPA filter module

SECTION: Example
9.8. Clean the platform of the robot that we are going to perform the protocol
 

SECTION: Example
9.10. Start run

 

SECTION: Example
9.11. Retrieve labwares from the OT
SECTION: Example
9.9. Prepare all reagents and labware in the places the App is showing and take into account the notes in step   
SECTION: Running Protocol
None. Load the script

Protocols > Import > Drag the python script
 

 



SECTION: Running Protocol
None. Select Robot to Perform Script

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

After clicking in Proceed to Setup you should obtain the setup of the labware as instructed in the Deck Labware Positions section of the instructions file.

The Labware Setup tab should look similar to the following image

 
 

None. 
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 Wsuccessfulindows, 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: Run protocol
5. Load script in OT-App

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


 

 

SECTION: Run protocol
6. Run Protocol in OT
SECTION: Run protocol
5.1. Load the script in the OT app

Protocols -> Import -> Drag Python script

 

 

 

SECTION: Run protocol
5.2. Select Robot to Perform Script

Click in the protocol -> Start setup -> Choose the OT where the file VariablesPCR.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.

 

 

 

 

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 6 parts:

Creation of mix(es) transferring primers, water and polymerase to new tube(s)
Mixing with either a pipette or heater-shaker
Distribute mix to all plates
Distribute samples to the corresponding wells (as many transferring of 1 sample as the number of primer sets)
Generate identity maps to be exported
(Optional) PCR program for thermocycler module

 

SECTION: Example
9.2. Upload custom labware to app

We are using a custom labware called vwrblueprintdepth105_96_wellplate_390ul and 3dprinted_opentrons_shaker_1.5mleppendorf that has been created with the labware creator that opentrons offer (https://labware.opentrons.com/create/)

  
  

Upload it to the labware and make sure it is loaded in the app

 
SECTION: Example
9.12. Retrieve the final maps that are going to be in the file. In this case, they will be called example-mapPCR-example.xlsx (name that is stated in the variable file in the variable Final Map Name)

 
  

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

  
  
 

 

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

If you are using the entry LAP-PCR-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.