Appendix
Spectral output format
Spektralwerk Core supports four different spectral output formats in order to reduce the required bandwidth.
| Format | Description | Size of spectrum (256 Pixels) in bytes |
|---|---|---|
human |
human readable float values | 2560 |
base64_float |
base64 encoded float values | 1372 |
base64_int16 |
base64 encoded integer values | 686 |
cobs_int16 |
cobs encoded integer values | 515 |
(base64_*)[https://en.wikipedia.org/wiki/Base64] are widely used to reduce the transferred data size, to achieve the highest possible sample rate, (cobs-int16)[https://en.wikipedia.org/wiki/Consistent_Overhead_Byte_Stuffing] should be used because it transmits the fewest bytes.
Processing steps
Spektralwerk Core can return already processed values. For each channel, MEASure:SPECtrum:REQuest (in-band) or CONTrol:INPut|MANual:EMITter (out-of-band), the respective :CONFig:PROCessing endpoint can be used to select a set of processing steps:
average-- Several spectra are collected and the rolling average of the spectra is returned. The number of spectra used for averaging can be adjusted withMEASure:SPECtrum:AVERage:NUMBer. Ifaverageis not applied, each spectrum is returned individually. Each spectrum is also returned individually ifMEASure:SPECtrum:AVERage:NUMBeris set to1while is setaveragetotrue, because a rolling average of size 1 is equivalent to the individual spectrum.reference_dark-- The dark reference spectrum (MEASure:SPECtrum:REFerence:DARK) is subtracted from the spectrum. If no dark reference is stored, adding thereference_darkflag does not alter the outgoing spectrum. Thereference_darkflag can be used to subtract noise from the signal.reference_light-- The spectrum is subtracted from the light reference spectrum (MEASure:SPECtrum:REFerence:LIGHt). If no light reference is stored, adding thereference_lightflag does not alter the outgoing spectrum.scale-- A user-defined scaling (MEASure:SPECtrum:SCALe) is applied to the outgoing spectra. The default scaling spectrum represents the sensitivity curve of the spectrometer (DEVice:SPECtrometer:PIXels:SENSitivity).
Emitter status
Requesting the current emitter status (CONTrol:INPut|MANual:EMITter:STATus) will return a brief status information:
busy- The out-of-band emission of spectral data is runningidle- The out-of-band emission of spectral data is waiting for a start signal
Trigger edges
The spectral sampling can be triggered by external signals (see SYSTem:INPut for more details). Spektralwerk Core will trigger a spectral sample depending on the detected edge. Possible values for the edges are:
rising-- A spectrum emission is triggered when a rising edge is detected on the input line (default).falling-- A spectrum emission is triggered when a falling edge is detected on the input line.any-- A spectrum emission is triggered everytime an edge is detected on the input line.none-- A spectral emission is never triggered.
Trigger output source
manual-- Allows the manual control of the output line via SCPI commands.sampling-- The output line remains active throughout the sampling process, making this mode ideal for controlling a shutter.
Indicator status
The behavior of the status indicator LED can be changed by passing one of the following keywords to CONTrol:INDicators:STATus. Changes on the LED will not be kept upon rebooting.
on-- The status LED is switched on.off-- The status LED is switched off and not status information will be provided by the LED.auto-- The status LED is switched on and status information are provided by color and blinking frequency (default).