ORTSEAM 0.1.0-alpha
Pre-releaseFirst public build of ORTSEAM — a gamma-spectroscopy workbench and MCA
emulation for ORTEC hardware, written in Rust.
This is an alpha. It has been exercised hard, and the hardware path is
validated against a real instrument, but it has not had a long shakedown across
many machines and detectors. Check anything that matters against something you
already trust.
What it does
A full spectroscopy workbench: acquisition against real hardware or a
physics-based simulator; PHA, list-mode and zero-dead-time modes; presets on
time, counts, uncertainty and MDA; two-view spectrum windows with markers,
regions, comparison traces and isotope markers; energy, peak-shape and
efficiency calibration; peak search, sum, smooth and strip; ROI and nuclide
reports; and the complete MAESTRO .JOB automation language.
Everything in the MAESTRO v7 (A65-B32) manual is implemented or deliberately
improved — docs/maestro-parity.md is the
section-by-section accounting.
Talking to real hardware
ORTSEAM reads a real ORTEC 926 over USB using none of ORTEC's user-mode
software — no Mcbcio32.dll, no mcbloc32.dll, no DpmUsbAddIn.dll. Only
the kernel driver for the DPM-USB adapter is needed.
Commands, clocks, configuration, gain, mode, integrals, the dual-port memory and
whole spectra all work. The readout was checked channel-for-channel against
ORTEC's own library on the same instrument: 8192 of 8192 channels identical,
clocks matching to the millisecond, and the totals agreeing with the
instrument's own arithmetic. A full spectrum takes about a sixteenth of a
second.
The wire format is written down in
docs/ortec-hardware.md, including the parts that took
the longest to find — that the spectrum lives in its own address space, four
bytes a channel, and that the top bit of each channel word is a region-of-
interest flag rather than counts.
File formats
.Chn, .Spc, .Spe, .Roi, N42, TRANSLT-style ASCII, a lossless native
JSON and a time-sliceable list-mode container. Files are recognised by their
contents when the name says nothing, and the readers survive arbitrary
corruption. ORTEC's binary .Lib nuclide libraries are read as GammaVision
writes them.
Validated against genuine MAESTRO Pro spectra and against the example files
ORTEC ships.
What is in the download
Windows, Linux and macOS archives, built by CI from this tag. Nothing needs
installing.
ortseam-gui.exe |
the desktop application; start here |
ortseam.exe |
the headless workbench, for scripts and servers |
ortseam-mcb.exe |
the bridge to ORTEC hardware (32-bit on purpose — ORTEC's libraries are 32-bit) |
Without hardware, everything that works on files still works.
Licence
PolyForm Noncommercial 1.0.0. Fork it, change it and build on it
freely for any noncommercial purpose, including at charities, schools,
universities, public research bodies and government institutions. Commercial use
needs a separate agreement. This is a source-available licence, not an
OSI-approved open-source one, precisely because it withholds commercial use.
Provenance
The initial version was vibe-coded — written largely by a language model working
from the MAESTRO manual under human direction. The behaviour is pinned by about
550 automated tests, the readers are checked against genuine ORTEC files, and
the hardware path is validated against a real 926; where something could not be
confirmed it is marked unverified in the documentation rather than quietly
assumed. Read the parts you intend to rely on.
ORTSEAM is an independent implementation. It is not affiliated with, endorsed
by, or derived from the source code of ORTEC or AMETEK. MAESTRO is their
trademark.