Skip to content

Instrument data pipelines

FlaskTrack instrument data pipelines connect laboratory instruments and result files to controlled FlaskTrack records.

A data pipeline can receive a file or vendor run, preserve the original source artifact, parse the result into structured data, associate instrument positions with FlaskTrack records, and move the resulting run through review.

What the instrument pipeline does

A typical pipeline follows this path:

Instrument or instrument workstation
FlaskTrack Instrument Agent
Instrument ingestion
Parser profile
Instrument run
Positions and observations
Mapping
Review

For cloud-hosted FlaskTrack deployments, the FlaskTrack server does not need direct access to a laboratory filesystem or private instrument network. The Instrument Agent runs inside the laboratory network and makes outbound connections to FlaskTrack.

Main parts of the system

Instruments

An Instrument represents the physical laboratory device. Examples include plate readers, liquid handlers, qPCR systems, spectrophotometers, balances, sequencers, chromatography systems, mass spectrometers, flow cytometers, and other laboratory equipment.

An instrument record can include its manufacturer, model, serial number, asset tag, storage or laboratory location, and current connection status.

Instrument Agents

An Instrument Agent is a small FlaskTrack process that runs on a computer inside the laboratory network. It can:

  • monitor local folders;
  • monitor mounted network shares;
  • connect to supported vendor-local APIs such as an Opentrons Robot Server;
  • retrieve its assigned connector configuration from FlaskTrack;
  • upload artifacts over outbound HTTPS;
  • retain pending work locally when FlaskTrack or the internet is temporarily unavailable.

See Install and run the Instrument Agent.

Connectors

A Connector describes how FlaskTrack obtains data from an instrument. For agent-backed deployments, the connector is assigned to the Instrument Agent that can reach the local file path or device.

Common examples:

  • File watcher — watch a local directory for result files.
  • Network share — watch a directory mounted from SMB, NFS, or another laboratory share.
  • Opentrons — poll an Opentrons Robot Server available on the laboratory network.

See Configure connectors.

Parser profiles

A Parser Profile tells FlaskTrack how to interpret an incoming artifact. A parser converts a result file or vendor payload into a structured run with positions and observations.

See Parser profiles.

Ingestions

An Ingestion is the controlled record of a source artifact entering FlaskTrack. It keeps the source file, checksum, parser information, processing attempts, and resulting instrument run together.

See Ingestions and processing.

Runs and mappings

An Instrument Run is the parsed scientific result. Depending on the instrument, a run may contain plate wells, tube positions, samples, channels, measurements, timestamps, or other observations.

When FlaskTrack cannot safely determine what a source position represents, the run enters Mapping required. An operator can then map the position to a FlaskTrack Sample, Batch, Inventory Lot, protocol step run, batch step run, molecular sequence, or another supported target.

See Runs, mapping, and review.

For an instrument that exports CSV files, the typical first deployment is:

  1. Add the physical instrument to FlaskTrack.
  2. Create an Instrument Agent and copy its one-time key.
  3. Install the agent on a laboratory workstation or server that can access the instrument output folder.
  4. Initialize the agent with your FlaskTrack URL and the key.
  5. Create a File watcher connector and assign it to that agent.
  6. Select or create the appropriate parser profile.
  7. Run flasktrack-agent doctor to verify the local path and FlaskTrack connection.
  8. Allow the instrument to export a result file.
  9. Confirm the ingestion appears in FlaskTrack.
  10. Review any required position mappings and submit the run for review.

For a complete walkthrough, see Getting started.

Connection status

Instrument connection states can include:

Status Meaning
Unconfigured The instrument does not yet have an active usable connection.
Offline The configured connection has not recently been reachable.
Online The connection is operating normally.
Degraded The connection is available but requires attention.
Error The connector or agent reported an error.
Disabled The instrument or its connection is disabled.

Permissions

Instrument and connector configuration is intended for organization administrators. Review and signature requirements depend on the run state and your organization's configured access controls.