Skip to main content

MsysControl

BoardSupported
Host SystemPartial
V4L2Partial
Clarity UHDPartial
Concord PoEPartial
GenTLPartial
GevIQPartial
GigE VisionPartial
IndioPartial
Iris GTXPartial
Radient eV-CLPartial
Rapixo CLPartial
Rapixo CoFPartial
Rapixo CXPPartial
USB3 VisionPartial

Control a system setting.

Syntax

void MsysControl(
AIL_ID SysId, //out
AIL_INT64 ControlType, //in
AIL_DOUBLE ControlValue //in
)

Description

This function allows you to control the specified system setting.

Note: Note that, when a control type has only one supported control value on a given system, it is not documented in this function because it cannot be changed to another value. Instead, it can only be inquired.

To inquire the current value of a particular system setting, use MsysInquire.

You can also interactively control and test most of the system settings in real-time, using Aurora Imaging Intellicam's Feature Browser.

Parameters

SysId (out, AIL_ID)

Specifies the system identifier. This parameter should be set to one of the following values:

For the system identifier

ValueDescription
M_DEFAULT_HOSTSpecifies the default Host system of the current Aurora Imaging Library application.
System identifierSpecifies a valid system identifier, previously allocated using MsysAlloc.

ControlType (in, AIL_INT64)

Specifies the type of setting to control.

ControlValue (in, AIL_DOUBLE)

Specifies the new value to assign to the system setting specified by the ControlType parameter.

Parameter Associations

For general system settings

The following control types allow you to control the general system settings.


M_ALLOCATION_OVERSCAN

Sets whether image buffers, allocated on the system, are allocated by default with an overscan region. Specify the size of the overscan region using M_ALLOCATION_OVERSCAN_SIZE. Note that you can override this setting when allocating a buffer using the M_ALLOCATION_OVERSCAN attribute.

ValueDescription
M_DEFAULT
M_DISABLESpecifies that image buffers allocated on the system will have no overscan region.
M_ENABLE (default)Specifies that image buffers are allocated on the system with an overscan region.

M_ALLOCATION_OVERSCAN_SIZE

Sets the size of the overscan region, added around all subsequently allocated image buffers (MbufAlloc...). The overscan settings previously allocated image buffers are not changed. For more information, see Buffer overscan region. To enable or disable the allocation of an overscan region, change the setting of M_ALLOCATION_OVERSCAN.

ValueDescription
M_DEFAULT (default)Specifies the default size of the overscan region.
ValueSpecifies the size of the overscan region, in pixels. For example, if you specify a size of 2, a 2-pixel overscan border is added around subsequently allocated image buffers.

M_DEBUG_LOG_INFO

Board availability: GevIQ, GigE Vision, Host System, Rapixo CL, Rapixo CXP, Rapixo CoF, USB3 Vision

Logs a user-defined event in Aurora Imaging Gecho Viewer. The event will appear in its thread's timeline. This control can be useful for debugging or monitoring specific sections of code or internal data for your application.

ValueDescription
ValueSpecifies the value that will be logged for the user-defined event.

M_DEFAULT_PITCH_BYTE_MULTIPLE

Sets the pitch (or stride) multiple (in bytes) for the buffers allocated on the system. The pitch is the number of bytes between the beginnings of any two adjacent rows of the buffer's data. The pitch multiple is the factor by which the pitch of a buffer must be divisible. When a buffer is allocated, if the specified width is not a multiple of this value, padding is added to the buffer so that the buffer's pitch meets this constraint. You would typically change this value when you need to reduce the padding of your buffer. Note that, allocating a buffer with an overscan region can also be a cause of buffer padding. For more information, refer to M_ALLOCATION_OVERSCAN and Accessing an Aurora Imaging Library buffer directly. When dealing with an on-board operation, changing the pitch multiple might force on-board operations to be performed off-board due to hardware limitations, thereby increasing the amount of time the operation might take.

ValueDescription
M_DEFAULTSpecifies the default value for the pitch multiple. The default value is highly Aurora Imaging Library system-dependent. Always inquire the current pitch multiple before setting it, using MsysInquire with M_DEFAULT_PITCH_BYTE_MULTIPLE.
ValueSpecifies the pitch multiple, in bytes.

M_DEVICE_NAME

Board availability: Concord PoE

Sets a user-defined name for the board. The user-defined name is written to the board, making it persistent, and allows the board to be allocated using this user-defined name in the future. The name is typically assigned and written to the board from a separate executable that allocates a system for the board with M_DEVn and then calls MsysControl with the control type (M_DEVICE_NAME). > Note: This control type is also available for the Zebra Concord PoE base model.

ValueDescription
"DeviceName"Specifies the name of the board. Note that this must be a unique name with a string that can be up to M_DEVICE_NAME_MAX_SIZE characters.

M_GC_FEATURE_BROWSER

Board availability: GenTL

Sets whether to open or close a dialog box that allows you to view and edit the GenTL SFNC-compliant system and interface configuration information interactively. This window is referred to as the Feature Browser.

ValueDescription
M_DEFAULT
M_CLOSECloses Feature Browser.
M_OPEN (default)Opens Feature Browser.

M_GC_FEATURE_EXECUTE_POLLING_MODE

Board availability: GenTL, GevIQ, GigE Vision, Rapixo CXP, Rapixo CoF

Sets whether the executable feature is executed synchronously or asynchronously.

ValueDescription
M_DEFAULT
M_AUTOMATICSpecifies that the specific executable camera feature is executed synchronously. When in automatic mode, the executable feature is executed synchronously. Aurora Imaging Library polls the feature to establish if the executable feature has completed, returning control only when the operation is complete. Get the polling interval using M...InquireFeature with M_FEATURE_POLLING_INTERVAL.
M_MANUAL (default)Specifies that the executable camera feature is executed asynchronously. When in manual mode, the executable feature is executed asynchronously, and control is returned once the executable operation begins. To determine whether the executable feature completed, use M...InquireFeature with M_FEATURE_EXECUTE_COMPLETED.

M_LED_USER

Board availability: Iris GTX

Sets the color of the user LED on your Zebra Iris GTX.

ValueDescription
M_DEFAULT
M_GREENSpecifies to turn the user LED green.
M_OFF (default)Specifies to turn the user LED off.
M_ORANGESpecifies to turn the user LED orange.
M_REDSpecifies to turn the user LED red.

M_MODIFIED_BUFFER_HOOK_MODE

Board availability: Clarity UHD, GenTL, GevIQ, GigE Vision, Radient eV-CL, Rapixo CL, Rapixo CXP, Rapixo CoF, USB3 Vision, V4L2

Sets whether to run user-defined functions hooked to a buffer modification on separate threads, up to the number of CPU cores present in the computer. This is particularly useful when functions are hooked using MdigProcess.

ValueDescription
M_DEFAULT
M_MULTI_THREADSpecifies to run user-defined functions hooked to a buffer modification on separate threads. The hooked functions are executed by any available CPU core. Aurora Imaging Library cannot guarantee the processing order of any image on such a computer, because they are executed concurrently. If required, use Microsoft Windows functions to synchronize the threads. > Note: Note that by default, this control value will allocate, as necessary, up to 16 threads, or the total number of CPU cores in the computer, whichever is least.
M_SINGLE_THREAD (default)Specifies that only one thread should be created and that all user-defined functions hooked to buffer modifications are run on the same thread.

M_POWER_OVER_CABLE

Board availability: Concord PoE, Host System, Rapixo CXP

Sets whether the board provides power to connected devices.

System specific

Board(s)Note
Host SystemFor a Host system, this sets whether PoE (Power over Ethernet) is enabled on the specified port. This constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
Concord PoEFor Zebra Concord PoE, this sets whether PoE (Power over Ethernet) is enabled on all ports. > Note: This control type is also available for the Zebra Concord PoE base model.
Rapixo CXPFor Zebra Rapixo CXP, this sets whether PoCXP (Power over CXP) is automatically enabled when a PoCXP-compliant camera is connected to the specified connector.
ValueDescription
M_DEFAULTSpecifies the default value.
M_AUTOMATICSpecifies to automatically enable or disable PoCXP on this CXP connector, depending on detected device support. [Rapixo CXP]
M_OFFSpecifies not to provide power to connected devices.
M_ONSpecifies to provide power to connected devices.
M_RESETSpecifies to reset an over- or under-current condition. To learn whether there is an over- or under-current condition, use MsysInquirewith M_POWER_OVER_CABLE_STATUS. > Note: Typically, to prevent the over- or under-current condition from immediately recurring, you should first restart PoCXP for this connector by setting this control type to M_OFF and then returning it to its previous setting (M_AUTOMATIC is recommended). If the condition persists, discontinue using PoCXP with your camera by leaving this control type set to M_OFF. [Rapixo CXP]

M_THREAD_MODE

Sets whether threads allocated on the system can execute in asynchronous mode. If you specify that threads on the system can execute in asynchronous mode, the MthrControl M_THREAD_MODE control type setting of each of its threads is taken into account; otherwise, their M_THREAD_MODE control type setting is ignored.

System specific

Board(s)Note
Concord PoE> Note: This inquire type is also available for the Zebra Concord PoE base model.
ValueDescription
M_DEFAULTSpecifies the default value.
M_ASYNCHRONOUSSpecifies that threads allocated on the system can execute in asynchronous mode. In asynchronous mode, control is returned to the Host immediately after an Aurora Imaging Library function is sent to the processor of the system (when the system and function allow an immediate return). [Clarity UHD, GenTL, GevIQ, GigE Vision, Iris GTX, Radient eV-CL, Rapixo CL, Rapixo CXP, Rapixo CoF, USB3 Vision, V4L2]
M_SYNCHRONOUSSpecifies that threads allocated on the system can only execute in synchronous mode. In synchronous mode, the execution of an Aurora Imaging Library function sent to the processor of a system must be completed (execution terminated) before returning control to the Host.

M_TIMEOUT

Board availability: Clarity UHD, Concord PoE, GenTL, GevIQ, GigE Vision, Iris GTX, Radient eV-CL, Rapixo CL, Rapixo CXP, Rapixo CoF, USB3 Vision, V4L2

Sets the maximum amount of time for the Host to wait for a synchronous function to return before generating a time-out error, in sec. Note that this value only works with functions that are performed on-board, such as MbufCopy when copying from (or to) on-board memory or functions using an on-board processing FPGA.

System specific

Board(s)Note
Concord PoE> Note: This inquire type is also available for the Zebra Concord PoE base model.
ValueDescription
M_DEFAULTSpecifies the default value.
M_INFINITEWaits indefinitely. [Iris GTX]
ValueSpecifies the time to wait, in sec.

Combination Constants — For specifying which connector or port to control

Essential.

Usage: You must add one of the following values to the above-mentioned values to specify which connector or port to control.

Board availability: Host System, Rapixo CXP

ValueDescription
M_ALLSpecifies to control all relevant connectors or ports on your board or industrial computer.
M_CONNECTIONnSpecifies to control connector_n_, where n corresponds to a physical connector or port on your board or industrial computer.

Combination Constants — For specifying which configuration information file to access

Optional.

Usage: You can add one of the following values to the above-mentioned values to specify which instance of the GenTL interface configuration file (XML file) is associated with the feature.

Board availability: GenTL

ValueDescription
M_GENTL_INTERFACE_NUMBERSpecifies which instance of the GenTL interface configuration file is associated with the feature.
M_GENTL_SYSTEMSpecifies to display the GenTL system configuration information.

Combination Constants — For specifying whether Feature Browser should be synchronous or asynchronous

Essential.

Usage: You must add one of the following values to the above-mentioned values to set whether the Feature Browser should be synchronous or asynchronous.

Board availability: GenTL

ValueDescription
M_ASYNCHRONOUSSpecifies that this function returns immediately once a Feature Browser window opens.
M_SYNCHRONOUS (default)Specifies that this function is blocked until a Feature Browser window closes.

Combination Constants — For specifying the number of hook threads

Optional.

Usage: You can add one of the following values to the above-mentioned values to set the number of hook threads to allocate.

Board availability: GenTL, GigE Vision, Radient eV-CL, Rapixo CL, Rapixo CXP, Rapixo CoF, USB3 Vision, V4L2

ValueDescription
Value >= 1Specifies the number of hook threads to allocate. Note that this value cannot exceed the number of CPU cores available.

For discovering connected devices

The following control type allows you to refresh the list of discovered devices.

Board availability: GenTL, GevIQ, GigE Vision, Rapixo CXP, Rapixo CoF, USB3 Vision, V4L2


M_DISCOVER_DEVICE

Refresh the list of discovered devices that can be accessed by the specified system (for example, all cameras connected to a frame grabber, or all GigE Vision devices accessible on the local subnet). After you have refreshed the list, you can inquire information about connected devices using MsysInquirewith settings fromDiscoverySettings. > Note: Note that this does not affect which devices are available for you to allocate using MdigAlloc; you do not need to discover a device before allocating it.

System specific

Board(s)Note
GevIQ, GigE Vision, USB3 VisionThis can trigger anM_CAMERA_PRESENT event.
ValueDescription
M_DEFAULTSpecifies the default mode of operation for M_DISCOVER_DEVICE.

For routing I/O signals and setting their mode

The following control types allow you to set the mode and the routing of your Zebra imaging board's I/O signals (such as, auxiliary signal). Once the routing and mode are determined for an I/O signal, the Aurora Imaging Library function that you should use to act upon an input signal or setup the source of an output signal depends on the functionality. For example, you can use MsysControl with M_USER_BIT... control types, MdigControl with M_GRAB_TRIGGER... control types, or MdigControl with M_TIMER... control types. Note that for other Zebra imaging boards that have auxiliary I/O signals, but are not supported with the constants below, see MdigControl. Each Zebra imaging board and Aurora Imaging Library driver has its own list of limitations regarding the signals you can control with this function. While general limitations are listed in the table below, for a complete list of the available signals and their limitations, see the Connectors and signal names section of the Aurora Imaging Library Hardware-specific Notes chapter for your Zebra imaging board or Aurora Imaging Library driver.

Board availability: Concord PoE, Host System, Indio, Iris GTX


M_IO_DEBOUNCE_TIME

Board availability: Concord PoE, Host System, Indio, Iris GTX

Sets the amount of time that the specified auxiliary input signal is debounced.

System specific

Board(s)Note
Host SystemWhen a signal is debounced on Zebra 4Sight EV6/EV7, after detecting a valid input signal edge any other transitions are considered noise and are suppressed for the specified time, to ignore any additional transitions caused by the contact bounce of mechanical switches.
Iris GTXWhen a signal is debounced on Zebra Iris GTX, after detecting a valid input signal edge any other transitions are considered noise and are suppressed for the specified time, to ignore any additional transitions caused by the contact bounce of mechanical switches. To remove problems occurring at the edge of a signal, use M_IO_GLITCH_FILTER_STATE.
ValueDescription
Value >= 0Specifies the minimum amount of time to ignore any additional signal transitions after accepting a signal transition, in nsec.

M_IO_GLITCH_FILTER_STATE

Board availability: Concord PoE, Host System, Indio, Iris GTX

Sets whether to enable a glitch filter on input signals. A glitch is an unexpected signal transition of a short duration. Enabling the glitch filter will eliminate glitches of less than 500 nsec on all input signals.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_DISABLE (default)Specifies not to use a glitch filter.
M_ENABLESpecifies to use a glitch filter.

M_IO_INTERRUPT_ACTIVATION

Sets the signal transition upon which to generate an interrupt, if interrupt generation has been enabled for the specified I/O signal. Use M_IO_INTERRUPT_STATE to enable interrupt generation. Note that this only applies to input signals. Note that this control type only has an effect when M_IO_INTERRUPT_STATE is enabled.

System specific

Board(s)Note
Iris GTXThis control type is only available with auxiliary I/O signals 3-6.
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_ANY_EDGESpecifies to generate an interrupt upon both a low-to-high and a high-to-low signal transition. [Host System, Indio, Iris GTX]
M_EDGE_FALLINGSpecifies that an interrupt will be generated upon a high-to-low signal transition.
M_EDGE_RISING (default)Specifies that an interrupt will be generated upon a low-to-high signal transition.

M_IO_INTERRUPT_STATE

Sets whether to generate an interrupt upon the specified transition of the I/O signal. Use M_IO_INTERRUPT_ACTIVATION to specify the transition.

System specific

Board(s)Note
Iris GTXThis control type is only available with auxiliary I/O signals 3-6.
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_DISABLE (default)Specifies not to generate an interrupt.
M_ENABLESpecifies to generate an interrupt.

M_IO_INVERTER

Board availability: Concord PoE, Host System, Indio, Iris GTX

Sets whether the specified I/O signal should be inverted. This causes the low portion of the signal (the delay period) to be high and the high portion of the signal (the active portion) to be low.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_DISABLE (default)Specifies not to invert the specified I/O signal.
M_ENABLESpecifies to invert the specified I/O signal.

M_IO_SOURCE

Board availability: Concord PoE, Host System, Indio, Iris GTX

Sets the type of signal to route to an output signal, or a bidirectional signal set to output mode.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_EXPOSURESpecifies to route the exposure signal of the camera. [Iris GTX]
M_GRAB_TRIGGER_READYSpecifies to route the internal grab trigger ready signal. [Iris GTX]
M_IO_COMMAND_LISTnSpecifies to route a bit of the I/O command register of I/O command list n, where n is the number of the I/O command list. [Concord PoE, Host System, Indio, Iris GTX]
M_ROTARY_ENCODERnSpecifies to route the output of rotary encoder n, where n is the number of rotary encoders available.
M_TIMER_STROBESpecifies to route the internal timer strobe signal. [Iris GTX]
M_TIMERnSpecifies to route the output of timer n, where n is the number of timers available.
M_USER_BITn (default)Specifies to route the state of bit n of the main static-user-output register, where n is the bit number.

Combination Constants — For specifying the type and number of the I/O signal to affect

Essential, cannot be used alone.

Usage: You must add one of the following values to the above-mentioned values to set the type and number of the I/O signal to affect.

Board availability: Concord PoE, Host System, Indio, Iris GTX

ValueDescription
M_AUX_IOnSpecifies to affect auxiliary signal n, where n is the signal number. For a list of the available auxiliary I/O signals, see the Connectors and signal names section of the Aurora Imaging Library Hardware-specific Notes chapter for your Zebra imaging board.

For resetting CXP connection error counts

The following is used to reset CXP errors.

Board availability: Rapixo CXP, Rapixo CoF


M_TL_ERROR_CORRECTED_COUNT

Board availability: Rapixo CXP, Rapixo CoF

Resets the count of corrected duplicate character errors in the CXP control words.

ValueDescription
Value = 0Specifies to reset the count of corrected duplicate character errors in the CXP control words. > Note: Note that if a non-zero value is specified, an error is generated.

M_TL_ERROR_COUNT

Board availability: Rapixo CXP, Rapixo CoF

Resets the count of all errors encountered.

ValueDescription
Value = 0Specifies to reset the count of all errors encountered. > Note: Note that if a non-zero value is specified, an error is generated.

M_TL_ERROR_CTRL_CRC_COUNT

Board availability: Rapixo CXP, Rapixo CoF

Resets the count of CRC errors detected in a control packet.

ValueDescription
Value = 0Specifies to reset the count of CRC errors detected in a control packet. > Note: Note that if a non-zero value is specified, an error is generated.

M_TL_ERROR_DATA_CRC_COUNT

Board availability: Rapixo CXP, Rapixo CoF

Resets the count of CRC errors detected in a data packet.

ValueDescription
Value = 0Specifies to reset the count of CRC errors detected in a data packet. > Note: Note that if a non-zero value is specified, an error is generated.

M_TL_ERROR_ENCODING_COUNT

Board availability: Rapixo CXP, Rapixo CoF

Resets the count of protocol encoding errors detected.

ValueDescription
Value = 0Specifies to reset the count of protocol encoding errors detected. > Note: Note that if a non-zero value is specified, an error is generated.

M_TL_ERROR_EVENT_CRC_COUNT

Board availability: Rapixo CXP, Rapixo CoF

Resets the count of CRC errors detected in an event packet.

ValueDescription
Value = 0Specifies to reset the count of CRC errors detected in an event packet. > Note: Note that if a non-zero value is specified, an error is generated.

M_TL_ERROR_LOCK_LOSS_COUNT

Board availability: Rapixo CXP, Rapixo CoF

Resets the count of lock losses encountered.

ValueDescription
Value = 0Specifies to reset the count of lock losses encountered. > Note: Note that if a non-zero value is specified, an error is generated.

M_TL_ERROR_UNCORRECTED_COUNT

Board availability: Rapixo CXP, Rapixo CoF

Resets the count of uncorrected duplicate character errors in the CXP control words.

ValueDescription
Value = 0Specifies to reset the count of uncorrected duplicate character errors in the CXP control words. > Note: Note that if a non-zero value is specified, an error is generated.

Combination Constants — For specifying the CXP input connector

Essential.

Usage: You must add one of the following values to the above-mentioned values to specify the CXP input connector.

Board availability: Rapixo CXP, Rapixo CoF

ValueDescription
M_ALLSpecifies all CXP input connectors.
M_CONNECTIONnSpecifies the connection made at CXP input connector n, where n is the CXP input connector number from 0 to 3.

For setting the state of specified user-bits in a static-user-output register

The following control types and control values allow you to set the bits in a static-user-output register. You can route the bits to output signals or I/O signals set to output; to do so use M_IO_SOURCE with M_USER_BIT...). To establish which user-bits can be routed to a specific signal, see the connectors and signal names section of the Aurora Imaging Library Hardware-specific Notes chapter for your Zebra imaging board. > Note: Note that for other Zebra imaging boards that have user-bits, but are not supported with the constants below, see MdigControl.

Board availability: Concord PoE, Host System, Indio, Iris GTX


M_USER_BIT_STATE

Sets the state of the specified bit of a static-user-output register.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_OFFSpecifies that the specified bit is set to off.
M_ONSpecifies that the specified bit is set to on.

M_USER_BIT_STATE_ALL

Sets the state of all the bits in the main static-user-output register.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
ValueSpecifies a bit-encoded value that establishes the value of all the bits of the specified static-user-output register. It is recommended to specify the value in hexadecimal notation (0x), so that it is more legible to what you are setting each bit of the register.

Combination Constants — For specifying the bit in a static-user-output register to affect

Essential, cannot be used alone.

Usage: You must add one of the following values to the above-mentioned values to specify the bit in a static-user-output register to affect.

Board availability: Concord PoE, Host System, Indio, Iris GTX

ValueDescription
M_USER_BITnSpecifies to affect bit n of the main static-user-output register.

For controlling the settings of a timer

The following control types and control values specify the settings for controlling timers and the signals generated from a timer (timer output signals). For more information, see Timers and coordinating events.

Board availability: Concord PoE, Host System, Indio, Iris GTX


M_TIMER_ARM

Sets whether to enable the timer arming mechanism. If timer arming is enabled, then the timer will ignore its trigger signal (M_TIMER_TRIGGER_SOURCE) until a signal transition specified using M_TIMER_ARM_ACTIVATION occurs on the signal specified using M_TIMER_ARM_SOURCE.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_DISABLE (default)Specifies that timer arming is disabled.
M_ENABLESpecifies that timer arming is enabled.

M_TIMER_ARM_ACTIVATION

Sets the signal transition upon which to arm the timer, if timer arming is enabled. Use M_TIMER_ARM to enable timer arming. Use M_TIMER_ARM_SOURCE to set which input signal will arm the timer.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_ANY_EDGESpecifies that the timer will be armed by both a high-to-low and a low-to-high signal transition.
M_EDGE_FALLINGSpecifies that the timer will be armed upon a high-to-low signal transition.
M_EDGE_RISING (default)Specifies that the timer will be armed upon a low-to-high signal transition.
M_LEVEL_HIGHSpecifies that a timer is continuously armed during a high signal polarity.
M_LEVEL_LOWSpecifies that a timer is continuously armed during a low signal polarity.

M_TIMER_ARM_SOFTWARE

Issues a software trigger to arm the timer. To use this setting, the timer's arm source must be set to software (M_TIMER_ARM_SOURCE set to M_SOFTWARE).

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_ACTIVATESpecifies the default behavior.

M_TIMER_ARM_SOURCE

Sets which input signal will arm the timer, if timer arming is enabled. Use M_TIMER_ARM to enable timer arming.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_AUX_IOnSpecifies to use auxiliary input signal n as the source signal used to arm the specified timer, where n is the number of the auxiliary signal.
M_EXPOSURESpecifies to use the exposure signal as the trigger source. [Iris GTX]
M_GRAB_TRIGGER_READYSpecifies to route the internal grab trigger ready signal to the specified signal. [Iris GTX]
M_SOFTWARESpecifies to use software to arm the specified timer.
M_TIMER_STROBESpecifies to route the strobe's timer signal to the specified signal. [Iris GTX]
M_TIMERnSpecifies to use the output signal of the specified timer as the source signal to arm the timer, where n is the timer number.

M_TIMER_CLOCK_ACTIVATION

Sets the edge of the signal that will increment the clock used to control the active portion of the timer's output signal.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_ANY_EDGESpecifies that the clock will be incremented by both a high-to-low and a low-to-high signal transition.
M_EDGE_FALLINGSpecifies that the clock will be incremented by a high-to-low signal transition.
M_EDGE_RISING (default)Specifies that the clock will be incremented by a low-to-high signal transition.

M_TIMER_CLOCK_FREQUENCY

Sets the frequency of the clock source signal for the active portion of the timer's output signal (M_TIMER_CLOCK_SOURCE). Note that if M_TIMER_CLOCK_SOURCE is set to M_AUX_IOn or M_ROTARY_ENCODERn, and no clock source frequency is specified, the values that are normally specified or returned in units of time will be in number of ticks (clock signal transitions on the clock source). > Note: If M_TIMER_CLOCK_SOURCE is set to M_SYSCLK, changing the frequency to any value different than the system clock's frequency will cause an error.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_UNKNOWNSpecifies that the signal is not periodic or the frequency is unknown.
0 < Value <= Frequency of M_SYSCLKSpecifies the frequency, in Hz.

M_TIMER_CLOCK_SOURCE

Sets the source of the clock that drives the active portion of the specified timer's output signal. > Note: The clock source used for the delay can be different from the clock source used for the active portion of the timer's output signal. This is useful, for example, if you want to specify the delay in signal transitions and the active portion in nsec.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_AUX_IOnSpecifies to use auxiliary input signal n as the clock source, where n is the number of the auxiliary signal. If the signal is periodic, specify its frequency using M_TIMER_CLOCK_FREQUENCY.
M_ROTARY_ENCODERnSpecifies to use rotary decoder n as the clock source, where n is the number of the rotary decoder. If the signal is periodic, specify its frequency using M_TIMER_CLOCK_FREQUENCY.
M_SYSCLK (default)Specifies to use the allocated system's clock source.

M_TIMER_DELAY

Sets the delay between the timer trigger and the active portion of the timer's output signal. Note, an error is generated if the specified delay cannot be respected. > Note: The clock source used for the delay can be different from the clock source used for the active portion of the timer's output signal. This is useful, for example, if you want to specify the delay in signal transitions and the active portion in nsec.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
0 <= Value <= Max. valueSpecifies the delay. If M_TIMER_DELAY_CLOCK_SOURCE is set to M_SYSCLK or a frequency is specified using M_TIMER_DELAY_CLOCK_FREQUENCY, this value is specified in nsec. Otherwise, it is specified in number of clock ticks (signal transitions on the clock source). Use MsysInquire to determine the maximum possible value.

M_TIMER_DELAY_CLOCK_ACTIVATION

Sets the signal transition that will increment the clock used to control the delay between the timer's trigger and the active portion of the timer's output signal. > Note: If M_TIMER_DELAY_CLOCK_SOURCE is set to M_FOLLOW_TIMER_CLOCK, changing this setting to a value different than the value of M_TIMER_CLOCK_ACTIVATION will cause an error.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_ANY_EDGESpecifies that the clock will be incremented by both a high-to-low and a low-to-high signal transition.
M_EDGE_FALLINGSpecifies that the clock will be incremented by a high-to-low signal transition.
M_EDGE_RISING (default)Specifies that the clock will be incremented by a low-to-high signal transition.

M_TIMER_DELAY_CLOCK_FREQUENCY

Sets the frequency of the clock source signal for the delay between the timer's trigger and the active portion of the timer's output signal (M_TIMER_DELAY_CLOCK_SOURCE). Note that if M_TIMER_DELAY_CLOCK_SOURCE is set to M_AUX_IOn or M_ROTARY_ENCODERn, and no clock source frequency is specified, the values that are normally specified or returned in units of time will be in number of ticks. > Note: If M_TIMER_DELAY_CLOCK_SOURCE is set to M_SYSCLK, changing the frequency to any value different than system clock's frequency will cause an error. If M_TIMER_DELAY_CLOCK_SOURCE is set to M_FOLLOW_TIMER_CLOCK, changing the frequency to a value different than the value of M_TIMER_CLOCK_FREQUENCY will cause an error.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_UNKNOWNSpecifies that the signal is not periodic or the frequency is unknown.
0 < Value <= Frequency of M_SYSCLKSpecifies the frequency, in Hz.

M_TIMER_DELAY_CLOCK_SOURCE

Sets the source of the clock that drives the delay between the timer's trigger and the active portion of the specified timer's output signal. > Note: The clock source used for the delay can be different from the clock source used for the active portion of the timer's output signal. This is useful, for example, if you want to specify the delay in signal transitions and the active portion in nsec.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_AUX_IOnSpecifies to use auxiliary input signal n as the clock source, where n is the number of the auxiliary signal.
M_FOLLOW_TIMER_CLOCK (default)Specifies to use the clock source specified by M_TIMER_CLOCK_SOURCE. If the clock source is set to this value and M_TIMER_CLOCK_SOURCE is changed, this clock source changes as well. Additionally, any changes to M_TIMER_CLOCK_ACTIVATION and M_TIMER_CLOCK_FREQUENCY will also be reflected in M_TIMER_DELAY_CLOCK_ACTIVATION and M_TIMER_DELAY_CLOCK_FREQUENCY.
M_ROTARY_ENCODERnSpecifies to use rotary decoder n as the clock source, where n is the number of the rotary decoder.
M_SYSCLKSpecifies to use the allocated system's clock source.

M_TIMER_DURATION

Sets the duration for the active portion of the timer's output signal. Note, an error is generated if the specified duration cannot be respected. > Note: The clock source used for the delay can be different from the clock source used for the active portion of the timer's output signal. This is useful, for example, if you want to specify the delay in signal transitions and the active portion in nsec.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
0 <= Value <= Max. valueSpecifies the duration of the active portion of the timer output signal. If M_TIMER_CLOCK_SOURCE is set to M_SYSCLK or a frequency is specified using M_TIMER_CLOCK_FREQUENCY, this value is specified in nsec. Otherwise, it is specified in number of clock ticks (signal transitions on the clock source). Use MsysInquire to determine the maximum possible value.

M_TIMER_OUTPUT_INVERTER

Sets whether the output of the timer should be inverted. This causes the low portion of the signal (the delay period) to be high and the high portion of the signal (the active portion) to be low.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_DISABLE (default)Specifies not to invert the output of the timer.
M_ENABLESpecifies to invert the output of the timer.

M_TIMER_STATE

Sets the state of the specified timer. When a timer is enabled, the timer waits for a trigger to be received. To set the source of the trigger, use M_TIMER_TRIGGER_SOURCE. Once the trigger is received, the timer starts by outputting a low signal. This lasts for the duration of the delay period (set using M_TIMER_DELAY). The timer then changes to output a high signal for the duration of the active period (set using M_TIMER_DURATION). To invert this signal, use M_TIMER_OUTPUT_INVERTER.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_DISABLE (default)Specifies that the timer is disabled.
M_ENABLESpecifies that the timer is enabled.

M_TIMER_TRIGGER_ACTIVATION

Sets the signal variation upon which to generate a timer trigger. The timer will be triggered when the specified signal transition occurs on the source signal specified by M_TIMER_TRIGGER_SOURCE.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_ANY_EDGESpecifies that a timer trigger will be generated both upon a high-to-low and a low-to-high signal transition.
M_EDGE_FALLINGSpecifies that a timer trigger will be generated upon a high-to-low signal transition.
M_EDGE_RISING (default)Specifies that a timer trigger will be generated upon a low-to-high signal transition.
M_LEVEL_HIGHSpecifies that a timer trigger is continuously issued during a high signal polarity.
M_LEVEL_LOWSpecifies that a timer trigger is continuously issued during a low signal polarity.

M_TIMER_TRIGGER_OVERLAP

Sets how to deal with a new trigger that occurs while the associated timer has not yet expired (both its delay and duration).

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_LATCHSpecifies that a trigger received, while the associated timer has not expired, will be latched (stored). As soon as the current timer expires, a new trigger is issued by software.
M_OFF (default)Specifies that a new trigger is ignored.
M_RESETSpecifies that a new trigger automatically resets the timer (regardless of whether it is in its delay or active period) and then restarts the timer. This process will repeat for each new trigger received.

M_TIMER_TRIGGER_SOFTWARE

Issues a software trigger for the specified timer. To use this setting, the timer's trigger source must be set to software (M_TIMER_TRIGGER_SOURCE set to M_SOFTWARE).

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_ACTIVATESpecifies the default behavior.

M_TIMER_TRIGGER_SOURCE

Sets the trigger source for the specified timer. The timer will be triggered when the signal transition specified using M_TIMER_TRIGGER_ACTIVATION occurs on the selected source.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_AUX_IOnSpecifies to use auxiliary input signal n as the trigger source for the specified timer, where n is the number of the auxiliary signal.
M_CONTINUOUSSpecifies to run the specified timer in periodic mode; no actual trigger signal is used. The timer is automatically reset after the timer's duration expires. The timer loops between a delay and an active period.
M_EXPOSURESpecifies to use the exposure signal as the trigger source. [Iris GTX]
M_GRAB_TRIGGER_READYSpecifies to route the internal grab trigger ready signal to the specified signal. [Iris GTX]
M_IO_COMMAND_LISTnSpecifies to use a bit of the I/O command register of I/O command list n, where n is the number of the I/O command list.
M_ROTARY_ENCODERnSpecifies to use rotary decoder n as the trigger source, where n is the number of the rotary decoder.
M_SOFTWARESpecifies to use a software trigger as the trigger source. Use M_TIMER_TRIGGER_SOFTWARE to issue the trigger.
M_TIMER_STROBESpecifies to route the strobe's timer signal to the specified signal. [Iris GTX]
M_TIMERnSpecifies to use the output signal of the specified timer as the trigger source, where n is the timer number.

M_TIMER_USAGE

Sets the purpose of the timer.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_PULSE_GENERATION (default)Specifies the normal use of the timer, as described in Timers and coordinating events.
M_PULSE_MEASUREMENTSpecifies to use the timer to measure the duration of the pulse that occurs on the timer's trigger source. Note that when in this mode, the values set using M_TIMER_DELAY_CLOCK_SOURCE, M_TIMER_DELAY, and M_TIMER_DURATION are ignored. When a timer is set in this mode, the duration of pulses that occur on the timer's trigger source (M_TIMER_TRIGGER_SOURCE) are measured with respect to the timer's clock source (M_TIMER_CLOCK_SOURCE). To measure active-high pulses, set M_TIMER_TRIGGER_ACTIVATION to M_LEVEL_HIGH; to measure active-low pulses, set M_TIMER_TRIGGER_ACTIVATION to M_LEVEL_LOW. The duration of the pulse can be inquired using MsysInquire with M_TIMER_VALUE. Between pulses, you can reset the timer value using MsysControl with M_TIMER_VALUE.

M_TIMER_VALUE

Resets the timer value.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
0Specifies to reset the timer value to 0.

Combination Constants — For specifying which on-board timer to control

Essential.

Usage: You must add one of the following values to the above-mentioned values to specify which on-board timer to control.

Board availability: Concord PoE, Host System, Indio, Iris GTX

ValueDescription
M_TIMERnSpecifies on-board timer n, where n is the number of the timer. > Note: To set the exposure and strobe timers, use MdigControlwith M_EXPOSURE_TIMEor M_TIMER_STROBE, respectively.

For controlling the settings of a rotary decoder

The following control types allow you to control the settings of a quadrature decoder with inputs from a rotary or linear encoder.

Board availability: Concord PoE, Host System, Indio, Iris GTX


M_ROTARY_ENCODER_BIT0_SOURCE

Sets the auxiliary input signal on which to receive bit 0 of the 2-bit Gray code.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_AUX_IOnSpecifies to use auxiliary input signal n as the signal on which to receive bit 0 of the 2-bit Gray code, where n is the number of the auxiliary signal.

M_ROTARY_ENCODER_BIT1_SOURCE

Sets the auxiliary input signal on which to receive bit 1 of the 2-bit Gray code.

System specific

Board(s)Note
Concord PoE, Host System, IndioThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_AUX_IOnSpecifies to use auxiliary input signal n as the signal on which to receive bit 1 of the 2-bit Gray code, where n is the number of the auxiliary signal.

M_ROTARY_ENCODER_OUTPUT_MODE

Sets the rotary decoder's counter value and/or the direction of movement upon which the rotary decoder should output a pulse. The pulse can be used to trigger a timer. To trigger a timer, set M_TIMER_TRIGGER_SOURCE to M_ROTARY_ENCODERn. To decimate (subsample) the rotary decoder output signal before sending it to a timer or a grab controller, set this control type to M_POSITION_TRIGGER and set M_ROTARY_ENCODER_POSITION_TRIGGER to the required decimation value. For more information, refer to Pixel aspect ratio.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_POSITION_TRIGGERSpecifies to output a pulse upon the trigger generated by M_ROTARY_ENCODER_POSITION_TRIGGER.
M_STEP_ANYSpecifies to output a pulse upon any change in the rotary decoder's counter value (position change in any direction).
M_STEP_BACKWARDSpecifies to output a pulse upon a rotary decoder counter decrement only.
M_STEP_FORWARDSpecifies to output a pulse upon a rotary decoder counter increment only.
M_STEP_FORWARD_NEW_POSITIVESpecifies to output a pulse upon a rotary decoder counter increment of a new value that has not been reached before. For example, if the counter value is at 10, and is decremented down to 7, the rotary decoder will only output a pulse when the counter is incremented up to 11.

M_ROTARY_ENCODER_POSITION

Resets the rotary decoder's counter to 0 immediately. To reset the counter to 0 upon a signal, use M_ROTARY_ENCODER_RESET_SOURCE. Note that a call to MsysInquire with M_ROTARY_ENCODER_POSITION inquires the current value of the rotary decoder counter.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
Value = 0Implements the default behavior. Note that, if a non-zero value is specified, an error is generated.

M_ROTARY_ENCODER_POSITION_TRIGGER

Sets the value of the rotary decoder's counter upon which a trigger is generated. You can output this trigger to a timer or a grab controller using M_ROTARY_ENCODER_OUTPUT_MODE set to M_POSITION_TRIGGER.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
0 <= Value <= 0xFFFFFFFFSpecifies the value of the counter upon which a trigger is generated. If a value beyond the supported range is specified, an error is generated. If you are treating the counter values as a signed range of values (for example, forcing the counter to reset to 0 at 0x80000000) and you want to generate a trigger upon a negative value, specify the equivalent value in the range of 0x80000000 to 0xFFFFFFFF.

M_ROTARY_ENCODER_RESET_ACTIVATION

Sets the signal transition upon which to reset the rotary decoder's counter to 0. The rotary decoder will reset the counter to 0 when the signal transition occurs on the source signal specified by M_ROTARY_ENCODER_RESET_SOURCE.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_EDGE_FALLINGSpecifies to reset the rotary decoder upon a high-to-low signal transition.
M_EDGE_RISING (default)Specifies to reset the rotary decoder upon a low-to-high signal transition.

M_ROTARY_ENCODER_RESET_SOURCE

Sets the source signal to use to reset the rotary decoder's counter to 0. The rotary decoder will reset the counter to 0 when the signal transition specified using M_ROTARY_ENCODER_RESET_ACTIVATION occurs on the selected source.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_NULLSpecifies not to reset using a hardware signal source.
M_AUX_IOnSpecifies to use auxiliary input signal n as the trigger source for the specified timer, where n is the number of the auxiliary signal.
M_POSITION_TRIGGERSpecifies to use the trigger signal generated by the rotary decoder when the counter reaches the value specified with M_ROTARY_ENCODER_POSITION_TRIGGER.

M_ROTARY_ENCODER_STATE

Sets whether to enable the rotary decoder.

System specific

Board(s)Note
Host SystemThis constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.
ValueDescription
M_DEFAULT
M_DISABLE (default)Specifies that the rotary decoder is disabled.
M_ENABLESpecifies that the rotary decoder is enabled.

Combination Constants — For specifying which rotary decoder to set

Essential, cannot be used alone.

Usage: You must add one of the following values to the above-mentioned values to specify which rotary decoder to set.

Board availability: Concord PoE, Host System, Indio, Iris GTX

ValueDescription
M_ROTARY_ENCODERnSpecifies rotary decoder n, where n is the number of the rotary decoder.

For controlling the settings of a data latch associated with rotary encoders

The following control types allow you to control the settings of a data latch associated with the rotary decoders of your system.

Board availability: Host System


M_SYS_DATA_LATCH_STATE

Sets the state of the specified data latch.

ValueDescription
M_DEFAULT
M_DISABLE (default)Specifies that the data latch is disabled.
M_ENABLESpecifies that the data latch is enabled. The data latch will store the position couner value of the rotary encoder when its associated event (specified using M_SYS_DATA_LATCH_TRIGGER_ACTIVATION) occurs.

M_SYS_DATA_LATCH_TRIGGER_ACTIVATION

Sets the trigger signal transition upon which to store the specified information to the specified data latch. To set the signal with which to trigger the data latch, use M_SYS_DATA_LATCH_TRIGGER_SOURCE.

ValueDescription
M_DEFAULT
M_ANY_EDGESpecifies that the specified information is stored in the data latch both upon a high-to-low and a low-to-high signal transition.
M_EDGE_FALLINGSpecifies that the specified information is stored in the data latch upon a high-to-low signal transition.
M_EDGE_RISING (default)Specifies that the specified information is stored in the data latch upon a low-to-high signal transition.

M_SYS_DATA_LATCH_TRIGGER_SOURCE

Sets what triggers storing the specified information to the specified data latch.

ValueDescription
M_AUX_IOnSpecifies to use auxiliary input signal n as the trigger source, where n is the number of the auxiliary signal. > Note: In this case, n can be a value from 8 to 15. To specify the signal transition, use M_SYS_DATA_LATCH_TRIGGER_ACTIVATION.
M_TIMERnSpecifies to use the output signal of timer n as the trigger source, where n is the number of the timer. > Note: In this case, n can be a value from 1 to 16.

M_SYS_DATA_LATCH_TYPE

Sets which rotary decoder the specified data latch will store the position counter value of when the data latch is triggered. > Note: You can access the stored rotary decoder position within a hook function that was triggered by an auxiliary input or a timer, using MsysGetHookInfowithM_SYS_DATA_LATCH_VALUE.

ValueDescription
M_ROTARY_ENCODERnSpecifies to store the value of the counter of rotary decoder n, where n is a number between 1 and 2. To configure the rotary decoder, use the M_ROTARY_ENCODER... control types.

Combination Constants — For specifying which data latch to set

Essential, cannot be used alone.

Usage: You must add one of the following values to the above-mentioned values to specify which data latch to affect.

Board availability: Host System

ValueDescription
M_LATCHnSpecifies which data latch to affect, where_n_ is 1 or 2.

For UART settings

The following control types and control values specify the settings for UARTs. To specify a particular UART, see the Uart combination value below. > Note: Note that for other Zebra imaging boards that have a UART, but are not supported with the constants below, see MdigControl.

Board availability: Radient eV-CL, Rapixo CL


M_UART_DATA_SIZE

Sets the number of data bits per character that are sent or received by the UART.

ValueDescription
M_DEFAULT
7Specifies that the data length is 7 bits.
8 (default)Specifies that the data length is 8 bits.

M_UART_FREE

Stops all Aurora Imaging Library UART operations and frees all UART resources used by Aurora Imaging Library.

ValueDescription
M_DEFAULTSpecifies the default behavior.

M_UART_PARITY

Sets whether character data is sent or received with a parity bit and how the parity bit is set. The parity bit is an extra data bit (0 or 1) that is added to each character for error checking purposes.

ValueDescription
M_DEFAULT
M_DISABLE (default)Specifies that no extra bit is added (no parity).
M_EVENSpecifies that the number of 1's will be even.
M_ODDSpecifies that the number of 1's will be odd.

M_UART_READ_CHAR

Reads one character from the UART input buffer. If the input buffer is empty, the function will wait for the amount of time specified by M_UART_TIMEOUT. If a time-out occurs, the '?' character will be returned.

ValueDescription
ValueSpecifies the address of the variable in which to save the character read from the UART.

M_UART_READ_STRING

Reads a string of incoming data from the UART. The number of characters to read can be specified with M_UART_READ_STRING_SIZE or M_UART_STRING_DELIMITER. M_UART_TIMEOUT specifies the maximum time to wait between each byte when reading incoming data. Use MsysInquire with M_UART_BYTES_READ to wait for the read operation to complete and retrieve the actual number of bytes read.

ValueDescription
ValueSpecifies the address of the character array in which to save the string read from the UART. The size of this array must be set to the same value as the M_UART_READ_STRING_MAXIMUM_SIZE control type.

M_UART_READ_STRING_MAXIMUM_SIZE

Sets the maximum length of the string to read. This prevents global protection faults from happening when using the M_UART_READ_STRING control type.

ValueDescription
ValueSpecifies the maximum length of the string, in bytes.

M_UART_READ_STRING_SIZE

Sets the length of the string to read using M_UART_READ_STRING.

ValueDescription
M_DEFAULTSpecifies the use of M_UART_STRING_DELIMITER to delineate the end of the string to read.
ValueSpecifies the string length, in bytes.

M_UART_SPEED

Sets the baud rate of the UART.

ValueDescription
M_DEFAULT
300;600;1200;1800;2400;4800;7200;9600;14400;19200;38400;57600;115200 (default)Specifies the baud rate of the UART. Note that the maximum baud rate is highly dependent on the amount of computer resources available.

M_UART_STOP_BITS

Sets the number of extra data bit(s) (1 or 2) that are added to each character to indicate the end of the character.

ValueDescription
M_DEFAULT
1 (default)Specifies that there is 1 stop bit.
2Specifies that there are 2 stop bits.

M_UART_STRING_DELIMITER

Sets the character used to terminate strings of incoming or outgoing data. The delimiter is used but not sent when writing data with M_UART_WRITE_STRING; it is read for incoming data with M_UART_READ_STRING.

ValueDescription
M_DEFAULT
Value (default)Specifies the character used to terminate strings.

M_UART_TIMEOUT

Sets the maximum time to wait between each byte when reading incoming data.

ValueDescription
M_DEFAULT
M_INFINITE (default)Waits indefinitely.
ValueSpecifies the time to wait, in msec.

M_UART_WRITE_CHAR

Sends one character to the UART for transmission.

ValueDescription
ValueSpecifies the character to send.

M_UART_WRITE_STRING

Sends a string of data through the UART for transmission. The number of characters to send can be specified with M_UART_WRITE_STRING_SIZE or M_UART_STRING_DELIMITER. Use MsysInquire with M_UART_BYTES_WRITTEN to wait for the write operation to complete and retrieve the actual number of bytes written.

ValueDescription
ValueSpecifies the character array.

M_UART_WRITE_STRING_SIZE

Sets the length of the string to be sent to the UART for transmission.

ValueDescription
M_DEFAULT (default)Specifies the use of M_UART_STRING_DELIMITER to end the string. The delimiter will not be sent through the UART.
ValueSpecifies the string length, in bytes.

Combination Constants — For specifying which UART to control

Optional.

Usage: You can add one of the following values to the above-mentioned values to set which UART to control.

Board availability: Radient eV-CL, Rapixo CL

ValueDescription
M_UART_NBSpecifies which UART to control. Use MsysInquire with M_UART_PRESENT to determine the number of UARTS on the system.

For configuring and sending an action command to a GigE Vision camera

The following control types and control values allow you to configure an action command and send it to one or more GigE Vision cameras. Action commands require both an Aurora Imaging Library-side and a camera-side configuration. The following control types and control values configure the Aurora Imaging Library-side of the action command. To configure the camera-side, use MdigControlFeature with the appropriate feature values. For more information, refer to Triggering simultaneous actions in multiple GigE Vision cameras. > Note: To configure features of the camera, use MdigControlFeaturewith a digitizer allocated for the camera on an Aurora Imaging Library GigE system.

Board availability: Concord PoE, GevIQ, GigE Vision


M_GC_ACTION_ACKNOWLEDGE_NUMBER

Board availability: GevIQ, GigE Vision

Sets the number of acknowledgments that Aurora Imaging Library should expect to receive when the action command is issued. There should be one per target camera performing the action. By default, this number is equal to the number of Aurora Imaging Library digitizers added to the action command. If the number of Aurora Imaging Library digitizers added to the action command does not equal the number of Aurora Imaging Library digitizers that will perform the action, Aurora Imaging Library will return an error (for example, if you set M_GC_ACTION_GROUP_MASK to mask out one or more cameras). To avoid this error, use this control type to set the number of acknowledgments that Aurora Imaging Library should expect.

ValueDescription
M_DEFAULTSpecifies the number of cameras added to the action command, using M_GC_ACTION_ADD_DEVICE.
ValueSpecifies the number of acknowledgments expected.

M_GC_ACTION_ADD_DEVICE

Board availability: GevIQ, GigE Vision

Adds a GigE Vision camera to the list of cameras associated with the action command.

ValueDescription
Digitizer identifierSpecifies the digitizer identifier allocated for the GigE Vision camera to add. Note that the digitizer should be allocated on an Aurora Imaging Library GigE Vision system using MdigAlloc.

M_GC_ACTION_CLEAR_DEVICES

Board availability: GevIQ, GigE Vision

Removes all cameras from the list of cameras associated with the action command.

ValueDescription
M_DEFAULTSpecifies the default behavior.

M_GC_ACTION_DEVICE_KEY

Sets the action device key for the action command. The action device key identifies the cameras on which the action should be performed. For the camera to accept and perform the action, the device key on your camera and the device key of the action command must match. If they do not match, the camera ignores the action command. To configure the device key on your camera, use MdigControlFeature with the appropriate GenICam SFNC feature (for example, ActionDeviceKey).

System specific

Board(s)Note
Concord PoE> Note: To configure features of the camera, use MdigControlFeaturewith a digitizer allocated for the camera on an Aurora Imaging Library GigE system. > Note: If using an Aurora Imaging Library Concord PoE system, this control type is only available for Zebra Concord PoE with ToE. To configure an action command for the Zebra Concord PoE base model, use an Aurora Imaging Library GigE system with this control type.
ValueDescription
ValueSpecifies the action device key.

M_GC_ACTION_EXECUTE

Board availability: GevIQ, GigE Vision

Issues the action command.

ValueDescription
M_DEFAULTSpecifies the default behavior.

M_GC_ACTION_GROUP_KEY

Sets the action group key for the action command. The action group key identifies the action you want to perform on the camera. For the camera to know which action signal to generate, the group key of the action command must match the group key on your camera. If they do not match, the camera ignores the action command. To configure the group key of the action command on your camera, use MdigControlFeature with the appropriate GenICam SFNC feature (for example, ActionGroupKey).

System specific

Board(s)Note
Concord PoE> Note: To configure features of the camera, use MdigControlFeaturewith a digitizer allocated for the camera on an Aurora Imaging Library GigE system. > Note: If using an Aurora Imaging Library Concord PoE system, this control type is only available for Zebra Concord PoE with ToE. To configure an action command for the Zebra Concord PoE base model, use an Aurora Imaging Library GigE system with this control type.
ValueDescription
ValueSpecifies the action group key.

M_GC_ACTION_GROUP_MASK

Sets the action group mask for the action command. In the case where you need one (or more) cameras to temporarily ignore an action command, you can mask out the action command for the camera by changing the action group mask. For the camera to know if it generates an action signal upon receiving the command, the action group mask of the action command, and the action group mask of the camera, when combined in a bitwise AND operation, must result in a non-zero value. If the result is a zero, the camera ignores the action command. Note that, if you are masking out the action command for the camera, you must change the number of action acknowledgment packets Aurora Imaging Library should expect; otherwise, Aurora Imaging Library will generate an error. To set the number of action acknowledgment packets, use M_GC_ACTION_ACKNOWLEDGE_NUMBER.

System specific

Board(s)Note
Concord PoE> Note: To configure features of the camera, use MdigControlFeaturewith a digitizer allocated for the camera on an Aurora Imaging Library GigE system. > Note: If using an Aurora Imaging Library Concord PoE system, this control type is only available for Zebra Concord PoE with ToE. To configure an action command for the Zebra Concord PoE base model, use an Aurora Imaging Library GigE system with this control type.
ValueDescription
ValueSpecifies the action group mask.

M_GC_ACTION_REMOVE_DEVICE

Board availability: GevIQ, GigE Vision

Removes an Aurora Imaging Library GigE Vision camera from the list of cameras associated with the action command.

ValueDescription
Digitizer identifierSpecifies the digitizer identifier for the GigE Vision camera to remove. > Note: Note that the digitizer should be allocated on an Aurora Imaging Library GigE Vision system using MdigAlloc.

M_GC_ACTION_TIME

Board availability: GevIQ, GigE Vision

Sets the time at which the action command should execute. Note that, for scheduled action commands to function, your camera must be capable of using IEEE 1588, and the appropriate feature must be enabled (for example, GevIEEE1588). To verify the availability of these features on your camera, useMdigInquire with M_GC_CONTROL_PROTOCOL_CAPABILITY. It should return M_GC_SCHEDULED_ACTION_SUPPORT or M_GC_IEEE_1588_SUPPORT. Note that, you must enable 1588 on each GigE Vision camera that will receive this action command, using MdigControlFeature, or Feature Browser (accessible through MsysControlwith M_GC_FEATURE_BROWSER) and the appropriate SFNC feature (for example,GevIEEE1588).

ValueDescription
ValueSpecifies the time at which to execute the action command on your camera, relative to the time at which the action command was sent, in sec.

For specifying a Trigger-over-Ethernet packet (action command or GigE Vision software trigger) for transmission using a ToE module

The following control types and control values allow you to configure a Trigger-over-Ethernet packet for transmission using a ToE module. The Trigger-over-Ethernet packet can be sent as an action command or a GigE Vision software trigger. Action commands and GigE Vision software triggers require both an Aurora Imaging Library-side and a camera-side configuration. The following control types and control values configure the Aurora Imaging Library-side of the action command or GigE Vision software trigger. To configure the camera-side, you need to use a digitizer allocated for the camera on an Aurora Imaging Library GigE system (MsysAlloc with M_SYSTEM_GIGE_VISION) and use MdigControlFeature with the appropriate feature values. For more information, refer to Triggering simultaneous actions in multiple GigE Vision cameras.

Board availability: Concord PoE


M_ADD_DESTINATION

Adds a GigE Vision camera to the list of cameras associated with the specified action command or GigE Vision software trigger.

ValueDescription
Digitizer identifierSpecifies the digitizer identifier allocated for the GigE Vision camera to add. Note that the digitizer should be allocated on a GigE Vision system using MdigAlloc.

M_CLEAR_DESTINATIONS

Removes all cameras from the list of cameras associated with the specified action command or GigE Vision software trigger.

ValueDescription
M_DEFAULTSpecifies the default behavior.

M_GC_TRIGGER_SELECTOR

Sets the type of GigE Vision software trigger that should take place on the camera upon receiving the ToE packet (for example, FrameStart). For the camera to know what should be triggered upon receiving the packet, this control type must match the trigger selector on your camera. To configure the trigger selector on your camera, use MdigControlFeature with the appropriate GenICam SFNC feature (for example, TriggerSelector).

ValueDescription
"FeatureName"Specifies the type of trigger; see your GigE Vision camera's documentation for a list of available types.

M_REMOVE_DESTINATION

Removes a GigE Vision camera from the list of cameras associated with the specifies action command or GigE Vision software trigger.

ValueDescription
Digitizer identifierSpecifies the digitizer identifier allocated for the GigE Vision camera to remove. Note that the digitizer should be allocated on a GigE Vision system using MdigAlloc.

M_TRIGGER_COMMAND

Issues a software trigger event to prompt the transmission of the specified action command or GigE Vision software trigger from the ToE module. To use this control type, M_TRIGGER_SOURCE must be set to M_SOFTWAREn. > Note: Note that this will trigger any action command or GigE Vision software trigger that uses the same software signal (M_SOFTWAREn) as the specified action command/GigE Vision software trigger. For example, if you specify M_TRIGGER_COMMAND + M_GC_ACTION1 and the trigger source of M_GC_ACTION1 is M_SOFTWARE1, all ToE packets that use M_SOFTWARE1 are triggered.

ValueDescription
M_ACTIVATESpecifies the default behavior.

M_TRIGGER_SOURCE

Sets the event that will cause the ToE module to send the specified action command or GigE Vision software trigger as a ToE packet.

ValueDescription
M_AUX_IOnSpecifies to use auxiliary input signal n as the trigger source, where n is the number of the auxiliary signal. > Note: In this case, n can be a value from 0 to 5.
M_IO_COMMAND_LISTnSpecifies to use the I/O command list n, where n is the number of the I/O command list. > Note: In this case, n can be a value from 0 to 1.
M_ROTARY_ENCODERnSpecifies to use rotary decoder n as the trigger source, where n is the number of the rotary decoder. > Note: In this case, n can be a value from 1 to 2.
M_SOFTWAREnSpecifies to use software as a trigger source to trigger the ToE module, where n is the number of the software trigger; n can be a value between 1 and 4. Use M_TRIGGER_COMMAND to issue the software trigger event. > Note: In this case, n can be a value from 1 to 4.
M_TIMERnSpecifies to use the output signal of the specified timer as the trigger source, where n is the number of the timer. > Note: In this case, n can be a value from 1 to 16.

M_TRIGGER_STATE

Sets the state of the specified action command or GigE Vision software trigger in the ToE module.

ValueDescription
M_DISABLESpecifies the ToE packet is disabled.
M_ENABLESpecifies the ToE packet is enabled, and will be transmitted when its associated event (specified using M_TRIGGER_SOURCE) occurs.

Combination Constants — For specifying which action command to control

Essential.

Usage: You must add one of the following values to the above-mentioned values to set which action command to control.

Board availability: Concord PoE, GevIQ, GigE Vision

ValueDescription
M_GC_ACTIONnSpecifies to control action command n, where n is a value from 0 to 31.

Combination Constants — For specifying which GigE Vision software trigger to control

Essential.

Usage: You must add one of the following values to the above-mentioned values to set which GigE Vision software trigger to control.

Board availability: Concord PoE

ValueDescription
M_GC_TRIGGER_SOFTWAREnSpecifies to control a GigE Vision software trigger n, where n is a value from 0 to 31. This combination value cannot be used withM_GC_ACTION_DEVICE_KEY, M_GC_ACTION_GROUP_KEY, or M_GC_ACTION_GROUP_MASK.

Combination Constants — For specifying which I/O command register bit to use

Essential.

Usage: You must add one of the following values to the above-mentioned values to specify which I/O command register bit to use.

Board availability: Concord PoE, Host System, Indio, Iris GTX

ValueDescription
M_IO_COMMAND_BITnSpecifies I/O command register bit n, where n represents the bit number.

This constant is only available on a Host system if the Host system was previously allocated on a Zebra 4Sight EV6/EV7. It is not available on Zebra 4Sight XV6/XV7.

For Zebra 4Sight EV6/EV7, n can be a value from 8 to 15.

For Zebra 4Sight EV6/EV7, n can be either 1 or 2.

For Zebra 4Sight EV6/EV7, n is a number from 1 to 4.

For Zebra 4Sight EV6/EV7, n can be a value from 1 to 16.

For Zebra 4Sight EV6/EV7, n can be a value from 0 to 7.

Copyright © 2026 Zebra Technologies.