Instruments #

URLs: /instruments (list), /instruments/new, /instruments/{id} (detail), /instruments/{id}/edit

The Instruments page has two tabs: Catalog (instrument types — the templates that describe what an instrument can do) and Inventory (physical assets — individual units with serial numbers, calibration dates, manufacturer / model).

List — /instruments #

Catalog tab (default) #

A table with one row per instrument type defined in the catalog.

ColumnWhat it shows
TypeCatalog type id (e.g. keysight_e3631a)
NameHuman-readable name
DescriptionDescription, when set
CapabilitiesCount of capability entries (function + direction pairs the instrument supports)

Click a row to open /instruments/{type} — the catalog-type detail view with the full capability list. When the catalog is empty, the table is replaced with a card offering a Create Instrument button.

Inventory tab #

A table with one row per physical instrument asset file.

ColumnWhat it shows
IDAsset identifier
DriverDriver identifier from the asset YAML (often blank on auto-discovered assets)
Manufacturer / ModelIdentity stamp from the asset YAML
SerialHardware serial number
Cal DueCalibration due date, ISO 8601
Cal LabCalibration lab name

When no asset files exist, the tab shows a blue hint card pointing at litmus station init to discover instruments and create asset files.

Detail — /instruments/{id} #

The same URL resolves either a catalog type OR a physical asset depending on what {id} matches; the page picks the right shape automatically:

  • Catalog type — info card followed by a tab strip with three tabs:

    TabContent
    CapabilitiesThe full capability list — function, direction, signals, specs, and parameters per entry
    SCPI CommandsThe instrument's SCPI command vocabulary (when set)
    SimulationSimulation-mode response definitions (when set)
  • Asset — info card followed by stacked cards (no tabs): Calibration card (last cal date, due date, lab) and Linked Stations card (the stations whose YAML references this asset).

Edit — /instruments/{id}/edit #

Only resolves for catalog types; assets are edited by hand-editing the instruments/<id>.yaml file directly.

A tab strip with four tabs:

TabContent
InfoName, description, manufacturer / model
CapabilitiesAdd / edit / delete capability entries
SCPI CommandsEdit the SCPI command vocabulary
SimulationEdit simulation-mode responses

New — /instruments/new #

A form for creating a new catalog type. Sets type id, name, description, and an initial capability list. After creation, the page redirects to /instruments/{id} so further capability / SCPI / simulation editing happens via the four-tab edit surface.

Underlying data #

  • Catalog types come from the project's catalog/ directory plus the bundled generic catalog (litmus.catalog.generic)
  • Inventory assets come from instruments/*.yaml

For the YAML schemas, see Catalog schema for catalog types and Models → InstrumentAssetFile for asset files.

Common tasks #

  • Add a new instrument type to the project's catalog — open /instruments/new, fill the type form.
  • Discover instruments on the bench — run litmus station init from the project root; it walks the VISA bus and writes one asset YAML per found device.
  • Check calibration status — the Inventory tab's Cal Due column, sorted ascending, surfaces what's about to expire.

See also #