Table Of Contents

CompactRIO Timing Engines

Last Modified: July 16, 2019

CompactRIO [1] and CompactRIO Single-Board [2] controllers provide eight timing engines for input and a separate eight timing engines for output. The eight input timing engines are shared between analog input, digital input, and NI 9361 tasks. Multiple input timing engines allow those chassis to run up to eight analog input, digital input, or NI 9361 tasks simultaneously, each using independent timing and triggering configurations.

The eight output timing engines are shared between analog output and digital output. Multiple output timing engines allow those chassis to run up to eight analog output or digital output tasks simultaneously, each using independent timing and triggering configurations.

By default, NI-DAQmx automatically selects an available timing engine when reserving the task. Use the DAQmx Timing attribute/property SampTimingEngine to specify the timing engine to use or to determine which timing engine NI-DAQmx automatically selected.

spd-note-note
Note

You must reserve the task before querying the timing engine unless you explicitly specified the timing engine.

The SampTimingEngine attribute/property is an integer value corresponding to one of the eight timing engines available on the chassis:

SampTimingEngine Value Analog Input, Digital Input, and NI 9361 Timing Engine Used Analog Output and Digital Output Timing Engine Used
0 it0 ot0
1 it1 ot1
2 it2 ot2
3 it3 ot3
4 it4 ot4
5 it5 ot5
6 it6 ot6
7 it7 ot7

On the CompactRIO and CompactRIO Single-Board controllers, the Sample Clock and Sample Clock Timebase, as well as the Start, Reference (for analog input, digital input, and NI 9361 tasks only), and Pause triggers, exist on each timing engine. Therefore, the names of the output terminals for those signals include the associated timing engine. If NI-DAQmx automatically selects the timing engine for a task, the timing engine, thus the output terminals for those signals, are undefined until you reserve the task. To reference one of those terminals, such as to share a Start Trigger across multiple tasks, use the Terminal attribute/property associated with each signal to determine the terminal name.

spd-note-note
Note

You must reserve the task before querying the terminal name unless you explicitly specify the timing engine.

  • 1 cRIO-9040, 9041, 9042, 9043, 9045, 9046, 9047, 9048, 9049, 9053, 9054, 9055, 9056, 9057, and 9058.
  • 2 sbRIO-9603, 9608, 9609, 9628, 9629, and 9638.

Recently Viewed Topics