MasterMixMaker: Workflow Editor Tutorial

This tutorial is aimed at intermediate level users who have explored the use of Antha via the beginners protocol card method, but, wish to advance their use of Antha to provide more flexibility and functionality to their workflows.

About this tutorial

This tutorial will cover how to use the MasterMixMaker element within the Workflow Editor. Specifically it will cover in greater detail the user defined parameters for this element and how the Workflow Editor can be used to wire together upstream or downstream elements.

Things you'll need

Before you begin this tutorial it will help you if you take a look at the following UI reference documentation, although it isn't a necessity:

What you'll learn

In this tutorial you will learn:

  • How to search for and use an element in the Workflow Editor
  • What parameters do in an element and how to set them
  • What the configuration section does in an elements and how to use it
  • How to simulate the MasterMixMaker element against your chosen parameter and configuration set
  • How to view your simulated results in the graph view
  • How to wire your MasterMixMaker element to upstream or downstream elements

How to find, add, and delete an element in the Workflow Editor

In the Workflow Editor you will need to load the MasterMixMaker element into the workflow window. In order to do this you can access The MasterMixMaker element from your Element Library on the left hand side of the Workflow Editor.

This can be accessed by one of two ways:

  1. You can manually scroll down through your Element Library
  2. You can use the Search elements field and search by name, in this instance MasterMixMaker.

To load the MasterMixMaker element, click on its name once from within the Element Library. After having done so you will see that it has loaded into the workflow window.

If you hover your mouse over the top of the element card you will see several extra pieces of information:

  1. Above the element name, in this case MasterMixMaker, you will also see the element name again with a unique code appended. This unique code identifies this specific instance of this element, such that if you have multiple MasterMixMaker elements running in parallel each one has a unique identifier to match that instance of the element to its specific set of parameter values.
  2. You will also be presented with all the parameters that are inputs into your element and the resulting outputs from this element.

  3. You will notice that the different Input parameters are colour coded to the "type" of parameter. The Antha programming language (like its parent language Go) is heavily type based in that a parameter must be declared by the type of data it deals with, e.g. Integers, Volumes, Concentrations, etc. We will cover this in more detail later and explain why it is important. If you can't remember what the colours are you can click on the INPUTS info tab to display a key.

What do the parameters mean?

Let's take a look at the parameters for the MasterMixMaker element and see what they mean. At the top of the MasterMixMaker card in the workflow space there is an info icon.

Clicking on this icon will provide a pop up window with three tabs.

  1. Description
  2. Inputs
  3. Outputs

The Description tab will provide a description of what the MasterMixMaker element does. This same description can also be seen below the element name in the Element Library sidebar to the left of the Workflow Space.

The Inputs and Outputs tabs provide the colour coded representation of the Input/Output parameters, their names, types and a description of what that parameter is for.

Simple Workflow

The simplest way to use MasterMixMaker is as a workflow on its own. In its default state, MasterMixMaker will create a mixture of 10xCutsmartBuffer, 10xATP, SapI, and T4Ligase in a 2:1:1:1 ratio.

Editing the parameters

In order to set the specific values for these parameters you can access the parameters editor for this instance of MasterMixMaker in the Parameters tab of the Workflow Properties sidebar on the right hand side of the Workflow Editor.

The MasterMixMaker name with unique code identifier in the parameters section is a collapsable menu that will reveal the parameters with a single click on that name.

You can see that the element is already set up with default parameters, which you can alter as you need to. For example, in this element you make 5 ul of Master Mix by default, but you may want to make a large batch of Master Mix and aliquot it out by hand into smaller portions. To do this you could edit the ComponentVolumesperReaction parameter based on a 2:1:1:1 ratio.

What the configuration section does in an elements and how to use it

Most of the time, each element that you might want to use is pre-set with a default configuration that will take care of all your laboratory needs. Sometimes, however, you may want to manually specify some characteristics about your job, such as plate types, riser types, device type, or similar.

To do this you can click on the configuration tab which is next to the parameters tab.

For MasterMixMaker, there are 5 different types of configuration options to choose from

  • Preferences
  • Input Plate Types
  • Output Plate Types
  • Devices
  • Plates

Preferences

The preferences configuration settings let the user define how to prioritise different positions of a deck in a specific device when calculating the deck layout. You might want to specify this if you know that a certain position, like that for a non-movable on-deck incubator, for example, needs to be reserved. For more details, check out this article.

Input Plate Types

The Input Plate Types configuration settings let the user define which plate type to use for the input plate(s). To select a new plate type, simply select a new plate type.

When a new plate type is selected, you can choose one or more adapters to accompany the plate in the new yellow window which appears after selecting a new plate type.

These configuration options are identical for the Output Plate Types configuration settings.

To see how changing the input plate type will change the workflow execution, click the simulate button to simulate the workflow in the console, and then click the open dashboard in a new tab button and then the setup button to see your new plate type on the liquid handling deck.

Output Plate Types

The Output Plate Types configuration settings let the user define which plate type to use for the input plate(s). To select a new plate type, simply select a new plate type.

When a new plate type is selected, you can choose one or more adapters to accompany the plate in the new yellow window which appears after selecting a new plate type.

These configuration options are identical for the Input Plate Types configuration settings.

To see how changing the output plate type will change the workflow execution, click the simulate button to simulate the workflow in the console, and then click the open dashboard in a new tab button and then the setup button to see your new plate type on the liquid handling deck.

If your deck layout isn't showing the appropriate plate, it may be due to a parameters setting overriding your configuration. In this case you will need to update the parameters outplate type instead to match the plate from your configuration.

Devices

The Devices configuration settings let the user define which liquid handler he/she would like to use. If you have many devices, you may wish to sort them by name or by ID.

Plates

Along with being able to specify Input Plate Types and Output Plate Types, you can specify a specific plate with contents pre-filled by using the Plates configuration settings.

To learn more about custom plate templates, click here

Simulation output

Once you have set your parameters and configuration you are ready to simulate this element in silico against a selected automation platform to test there are no errors in your parameters and for Antha to calculate all the low level liquid handling steps required to run this element.

To do this, click on the blue Simulate button.

Clicking on the Simulate button will open up a console window showing you the progress of the simulation. In this example you will notice that the simulation has failed. The error message in the console is telling us that there is not enough Cutsmartbuffer for this protocol to run..

This is because the code driving the MasterMixMaker element has internal checks in place to make sure that that there is enough of each constituent part of MasterMix in order to make the mixture. Two fix this error, enter 2ul in the missing section of the ComponentVolumesperReaction parameter

Upon simulating this time you should have success and you will be presented with a few different options of what to do next.

A couple of other things to point out is that an estimated time for how long it will take for your automation platform to run will be presented in the top left hand window of the Workflow Editor.

Scrolling down in the console window will reveal blue clickable options offering different tools.

In this tutorial we will primarily focus on the graph view of our simulated results. To learn more about the other options take a look at the About Dashboard, About Plate Prep or About Deck Layout reference documentation.

Graph view

i.e. output from the graph view (image)