1 Synthesis model
Three things decide what comes out of the machine: the sequence, the cartridge, and the chip. You set all three when you queue an oligo.
1.1 One oligo is one queue entry
There is no batch object and no notion of an assay. Six primers are six entries that you
happened to submit together. If they belong together in your system, say so in their
title, which is the one label you control that survives.
1.2 Cartridges carry the chemistry
The cartridge holds the reagents, so it decides what can be added to the growing strand — including any 5' modification, which is the last thing attached.
cartridgeType |
Cartridge | Bases | Per base | Use within, once activated |
|---|---|---|---|---|
2 |
Standard | 150 | 75 | 14 days |
2-XL |
XL Standard | 300 | 150 | 14 days |
2-QC |
QC | 100 | 75 | 14 days |
3 |
6-FAM | 100 | 75 | 7 days |
4-P |
Phosphorylation | 100 | 75 | 7 days |
4-amino |
Amino Modifier C6 | 100 | 75 | 7 days |
4-biotin |
Biotin | 100 | 75 | 7 days |
4-hexynyl |
Hexynyl | 100 | 75 | 7 days |
4-dS |
dS-XNA | 100 | 75 | 14 days |
4-dB |
dB-XNA | 100 | 75 | 14 days |
5-F-RNA |
2'-F-RNA | 150 | 75 | 14 days |
5-MOE-RNA |
2'-MOE-RNA | 150 | 75 | 14 days |
5-OMe-RNA |
2'-OMe-RNA | 150 | 75 | 14 days |
Bases is the total the cartridge can synthesize across every oligo run from it; per base is the separate allowance for each of A, C, G and T. Both apply, so a set of sequences skewed towards one base can exhaust it before the total runs out.
The last column is the period the Kilobaser will keep using a cartridge after it has been
activated, which is what expiryPeriod and expiresAt report. It is not the same as
the storage shelf life quoted in
Consumables, which is how long an unopened cartridge keeps
in the fridge.
Not every device stocks every cartridge, and the list grows between releases. Read the
current catalogue from ccSettings.cartridges in GET /api/init rather than hardcoding
this table.
The cartridges and chips themselves — what they contain, how they are stored and handled, and how they are disposed of — are described in Consumables in the Kilobaser manual.
1.3 Chips carry the solid support
The chip is where the strand is built, so it decides the 3' end — a quencher, a phosphate, a biotin. It is single-use: every oligo consumes one, whatever else happens.
chipKind |
Chip | Gives you |
|---|---|---|
2 |
Standard | plain 3' end |
2-nocap |
No Capping Standard | plain, capping step skipped |
3-BHQ1 |
6-FAM plus BHQ-1 | 3' BHQ-1, with 5' 6-FAM from the cartridge |
3-single-label |
6-FAM | plain 3' end, with 5' 6-FAM from the cartridge |
4-P |
Phosphorylation | 3' phosphate |
4-amino |
Amino Modifier C6 | 3' amino C6 |
4-biotin |
Biotin | 3' biotin |
4-hexynyl |
Hexynyl | 3' hexynyl |
Note that both values are strings, and not all of them are numbers: 3-BHQ1 and
2-XL are ordinary identifiers that happen to contain digits. Do not parse them.
The names in these two tables are what the API returns. The Kilobaser manual and the
webshop name the same parts a little more fully — the 2 chip is the Standard chip,
4-biotin is the Biotin label chip, and the 2 cartridge is the Standard DNA
cartridge. Use the API names in code and the shop's names when ordering; see
Consumables.
1.4 Which combinations work
A cartridge and a chip have to be compatible, and the valid pairs are device data. They
are in ccSettings.operations, where a pair exists exactly when it can be run:
| Cartridge | Usable chips |
|---|---|
2 Standard |
2, 2-nocap |
2-XL XL Standard |
2, 2-nocap |
3 6-FAM |
2, 3-BHQ1, 3-single-label |
4-P Phosphorylation |
2, 4-P |
4-biotin Biotin |
2, 4-biotin |
4-amino Amino Modifier C6 |
2, 4-amino |
4-hexynyl Hexynyl |
2, 4-hexynyl |
5-OMe-RNA and the other RNA cartridges |
2 |
Two patterns are worth reading off that table.
A modification cartridge can also make plain oligos. Every one of them lists 2
among its chips. If a 6-FAM cartridge is already installed, unmodified oligos can be run
on it without changing anything.
A standard cartridge can never make a 3' modification. It offers only 2 and
2-nocap. A quencher, a phosphate or a biotin needs the matching cartridge as well as
the matching chip, even though the modification itself comes from the chip.
So the example assay's probe — 5' 6-FAM, 3' BHQ-1 — is cartridge 3 with chip 3-BHQ1.
Both labels come from that one pairing; there is no way to ask for them separately, and
no combination gives a 3' BHQ-1 without a 5' label.
Check before you submit. An impossible pair is rejected with 2-11-20, whose message
reads "provided processType is invalid" and will send you looking at the wrong field:
NOT_ORDERABLE = {"1", "1000"} # placeholder and used-chip states
operations = kb.init()["ccSettings"]["operations"]
usable = set(operations.get(cartridge, {})) - NOT_ORDERABLE
if chip not in usable:
raise ValueError(f"{chip} cannot run on {cartridge}")
Every cartridge lists 1 and 1000 among its chips. Those are the placeholder chip and
the used-chip state, not chips you can order, so exclude them before validating.
1.5 What the machine adds around your oligo
You queue oligos; the machine queues everything else. Inserting a chip, activating a
cartridge, initialising the system, cleaning after a fluorophore — all of it is planned
automatically and appears in processTypes on the queue entry.
That means the true cost of a submission depends on what came before it, and it is why a mixed batch is worth ordering deliberately. See plan a batch.
1.6 Yield and concentration
GET /api/settingsUser/oligoYield holds the assumptions the device uses to report
concentrations:
{ "resuspensionVolume": 20, "oligoYield": 300 }
Volume in microliters, yield in picomoles. They are the defaults the manual gives for resuspending the product: the collection vial comes out dried, and adding 20 µL of water or TE buffer to a nominal 300 pmol yield gives 15 pmol/µL. Changing them changes the reported concentration of finished runs, not the chemistry. See Synthesized oligo in Operation. Any account may read or write them, which also means another user can change them under you — read rather than assume.