Skip to content

DMX: reading back many wells

A plate of picked colonies tells you nothing until each well is named. DMX marks every well so that sequencing says which well a read came from, then calls each well a pass, a fail, or no verdict at all. One command chooses the plates, the reaction and the cycling for the route you name, and writes the bench protocol.

When to use it

  • You hold a plate of frozen clones and need to know which design is in each well.
  • The wells came from an assembly that is not clean every time, so identity must be read.
  • You are not running a pooled screen, which takes its identity from the screen itself.

The iGGA library reads its archived parts this way; here the same job stands on its own, over any frozen stock.

What you need

Two files and one plate of lab stock. The build names the route, the archive plate and the floor; the sheet lists the designs. A design here is a name and a fragment count, never a sequence, so any frozen stock a lab holds can be read back, whoever built it. Two columns anyone can type. The run below uses files that ship with the repo.

Input What it is
build.json the sheet, the plate it spots from, the drug that plate's vector carries, the route, the floor, and what this lab calls its own plate of barcoded primer pairs. Replace all of those before you run it
designs.tsv 72 designs, one a row: a name, and how many fragments it was built from

The package ships no barcode sequences. The kit is 96 plasmids in four groups of 24, chaining on AGGA, GTTC, CCTT, TCAG and TTCC, and its sequences are read from a copy your lab holds, named by LIULAB_SYNBIO_DMX_BARCODES. The DMX barcode kit gives its structure and the columns a copy must hold.

Run it

pixi run synbio dmx plan docs/examples/ap1-readback/build.json --out readback/
AP-1 cargo read-back: 32 of 72 designs read back on index PCR, 128 wells over 1 picked plate
readback/protocol.json
readback/protocol.html

The floor is a fragment count, and this build set it at 2: the 32 designs stitched from two pieces or more are read, and the 40 made in one are not. Set it to zero to read every design on the sheet. Four colonies a design is 128 wells, which fits one 384-well plate and fills two index plates.

Nothing here is designed, so the command writes the protocol and nothing else: no sequence file and no primer sheet. The run is one sitting, so it is one page rather than a folder.

What it wrote

File What it is
protocol.html the bench page: what is read, what to order, array and pick, mark every well, call every well
protocol.json the run as data, which mbio protocol render turns back into that page

Each name links to what that run wrote, published here unedited; the same two inputs always write the same bytes.

What the bench works through

Step What it does
Array and grow one spot a design on a BioAssay plate
Pick four colonies a design into a 384-well plate, a quarter of the plate at a time
Sample a quarter of the picked plate into each index plate
Mark amplify every well with the pair its own address names
Pool and sequence one pool a plate
Call a consensus a well, read against that well's design

A well's address is worked out from where the well is, not looked up in a file, so a demultiplexer can check an address instead of trusting one. One axis of it carries the plate, which is how two plates are told apart on one flow cell. The run above holds the bench 1 h 35 min across six steps.

Choosing a route

Barcode ligation Index PCR
What marks a well four kit barcodes, ligated into the construct in lysate one barcoded primer pair
What addresses what three groups the well, the fourth the plate 96 forward marks the well, 96 reverse the plate
Where it runs one 1536-well plate, compressed from four 384-well picked plates one 96-well plate for each quarter of a picked plate
Wells it reaches over 330,000 9,216, on 192 primers already held
Called above 150 reads 20 reads, and a well at 10 or more still carries a verdict, with a warning
What it asks of the bench one incubator one thermocycled reaction in every well

Do one, never both. Barcode ligation pays $695 of sequencing and five days whatever the library's size, so it costs less for each design the more designs share it: $19.52 a design over 100, and $3.38 over 2,000. Nobody has published the same table for index PCR, so none is stated here. How far each reaches does not decide it: both reach far more wells than most runs need. A reaction is one tube of a mix, so one amplification across a 96-well array is one reaction, not 96.

What counts as a pass

Two questions, in order.

Is the read deep enough to call? If not, the well has no verdict. It is read again or picked again, and that is not a failure. Reformatting compacts out the wells that failed and leaves a well with no verdict in place. A build may raise the depth it wants; it cannot lower the depth the route tolerates. The two routes' floors are not a strict and a lenient setting of one scale, so neither carries over to the other.

Does the call match the design exactly? Both entry overhangs, the fragment, the stuffer and the barcode. Anything less fails, a silent change included, because a barcode that no longer names its member cannot be put right later. A well with more than one consensus is mixed, and mixed fails.

Before you order

  • Read the way in and the bench page once, top to bottom.
  • Name one route and hold to it.
  • Check the prepared marking plate is on the shelf: a run calls for one and never builds it.
  • Set the fragment-count floor deliberately, since a design in more pieces needs more picks.
  • Spot from a copy of the archive plate, never the only one you hold.

Tips and troubleshooting

A well reads as the right protein and the wrong barcode. It fails. A barcode-kit member marks a well, where a barcode names a library part, and a barcode that no longer names its member cannot be put right by a later read.

A design comes back with no passing well. Pick it again from the same archive spot before re-synthesising it. Four colonies a design is the only measured anchor, and the chance of a clean one falls as a design is built from more pieces.

Nothing reads deeply enough. Those wells carry no verdict rather than a failure. Read or pick them again.

Where the numbers come from

Each depth floor, reaction and cycling program is the published route's own, and every number carries its source inside the protocol: the document, its edition, and the date it was read.

Two departures from the paper change what the bench does. The vector was rebuilt to carry kanamycin, because the last transfer moves cargo into a backbone carrying the other marker, so every plate, well and broth here takes your own vector's drug rather than the published one. And barcode ligation runs on a throwaway heat-lysed aliquot, so the culture in the well stays the stock.

Two things nothing published fills. The package holds no index marks: the annealing regions bind the vector as published, but which 192 sequences sit on their 5' ends is the plate your lab holds. And the route's second criterion, a mean error below 10%, is not judged here, because a well reaches this package as a read count and a call.

synbio dmx plan takes one option, --out. Everything else a run chooses is in the build file.

References

Source What it gives
Qian, Z. et al. (2026) Accelerating protein design by scaling experimental characterization. Nat. Commun. doi:10.1038/s41467-026-76740-9 The barcode kit, barcoding 1536 wells in lysate, and a consensus called above 150 reads
Long, Y., Mora, A., Li, F.-Z., Gürsoy, E., Johnston, K. E. and Arnold, F. H. (2025) LevSeq: rapid generation of sequence-function data for directed evolution and machine learning. ACS Synth. Biol. doi:10.1021/acssynbio.4c00625 Index PCR on one barcoded primer pair a well, its reaction and touchdown cycling, and twenty reads wanted with ten tolerated
Lund, S., Potapov, V., Johnson, S. R., Buss, J. and Tanner, N. A. (2024) Highly parallelized construction of DNA from low-cost oligonucleotide mixtures using Data-optimized Assembly Design and Golden Gate. ACS Synth. Biol. 13, 745-751 Four colonies giving a clean copy of 343 of 458 genes, and how that rate falls with the number of fragments
New England Biolabs, Product Specification: Taq DNA Polymerase with ThermoPol Buffer, PS-M0267S/L/X/E v2.0, effective 12 February 2020 The Taq stock concentration the index PCR is pipetted against, which the route's own paper never states