Triggered NI-daqmx with multiplex.



The ni-daqmx-tmux daemon can be installed using the following package managers:



The ni-daqmx-tmux daemon is composed of the following traits:



The ni-daqmx-tmux daemon has been tested with the following hardware:



Example configuration files.

channels (map) default: {}

choppers (map) default: {}

device_name (string)
DAQmx name of device to address.

enable (boolean) default: True
Disable this daemon. The kind entry-point will not attempt to start this daemon.
from is-daemon

log_level ({'name': 'level', 'symbols': ['debug', 'info', 'notice', 'warning', 'error', 'critical', 'alert', 'emergency'], 'type': 'enum'}) default: info
Set daemon log-level.
from is-daemon

log_to_file (boolean) default: False
Optionally force logging to a file.
from is-daemon

loop_at_startup (boolean) default: False
If set to true, the daemon will begin to loop measure as soon as it starts.
from has-measure-trigger

make (['null', 'string']) default: None
from is-daemon

model (['null', 'string']) default: None
from is-daemon

nsamples (int) default: 900

port (int)
TCP port for daemon to occupy.
from is-daemon

rest_channel (string) default: ai0
Channel to occupy when not making an explicitly specified measurement.

serial (['null', 'string']) default: None
Serial number for the particular device represented by the daemon
from is-daemon

shots_processing_script (['null', 'string']) default: None
Path to script for shots processing.

timeout (float) default: 10.0
Timeout in seconds between each trigger edge.

trigger_source (string) default: ai0


The ni-daqmx-tmux daemon will provide the following state information:

ms_wait (int)

nshots (int)


The ni-daqmx-tmux daemon will expose the following public messages:

busy ➜ boolean
Returns true if daemon is currently busy.
from is-daemon

get_channel_names ➜ {'items': 'string', 'type': 'array'}
Get current channel names.
from is-sensor

get_channel_shapes ➜ {'type': 'map', 'values': {'items': 'int', 'type': 'array'}}
Get current channel shapes. If list is empty, channel is scalar.
from is-sensor

get_channel_units ➜ {'type': 'map', 'values': ['null', 'string']}
Get current channel units.
from is-sensor

get_config ➜ string
Full configuration for the individual daemon as defined in the TOML file. This includes defaults and shared settings not directly specified in the daemon-specific TOML table.
from is-daemon

get_config_filepath ➜ string
String representing the absolute filepath of the configuration file on the host machine.
from is-daemon

get_measured ➜ {'type': 'map', 'values': ['int', 'double', 'ndarray']}
Returns map of channel_name to measured_value. Always returns additional key measurement_id.
from is-sensor

get_measured_samples ➜ ndarray
Get an array of shape (sample, shot).

get_measured_shots ➜ ndarray

get_measurement_id ➜ {'type': 'int'}
Get current measurement_id. Clients are encouraged to watch for this to be updated before calling get_measured to get entire measurement.
from is-sensor

get_ms_wait ➜ int
Get the number of milliseconds to wait before acquiring.

get_nshots ➜ int
Get the currently planned number of shots.

get_sample_correspondances ➜ ndarray
Returns an array of integers of length nsamples. Zero indicates rest sample. Postive indicates channel. Negative indicates chopper.

get_state ➜ string
Get version of the running daemon
from is-daemon

id ➜ {'type': 'map', 'values': ['null', 'string']}
JSON object with information to identify the daemon, including name, kind, make, model, serial.
from is-daemon

measure ➜ int
Initiate a measurement. Returns integer, measurement ID.
from has-measure-trigger

loop (boolean) default: False

set_ms_wait ➜ null
Set the number of milliseconds to wait before acquiring.

ms_wait (int)

set_nshots ➜ null
Set the number of shots to acquire.

nshots (int)

shutdown ➜ null
Cleanly shutdown (or restart) daemon.
from is-daemon

restart (boolean) default: False

stop_looping ➜ null
Stop looping measurement.
from has-measure-trigger


The ni-daqmx-tmux daemon uses the following avro types:

processing_method (enum)
default: average
symbols: ['average', 'sum', 'min', 'max']

channel (record)

name (string)

range (string)

enabled (boolean) default: True

invert (boolean) default: False

signal_start (int)

signal_stop (int)

signal_presample (int) default: 0

signal_method (processing_method)

use_baseline (boolean) default: False

baseline_start (['null', 'int']) default: None

baseline_stop (['null', 'int']) default: None

baseline_presample (int) default: 0

baseline_method (processing_method)

chopper (record)

name (string)

enabled (boolean) default: True

invert (boolean) default: False

index (int)

built 2023-11-21 16:02:05                                      CC0: no copyright