MX Foundation 4
ASYNC Attributes

The following attributes are the general attributes common to all MAX Technologies devices supporting ASYNC interface.



Electrical Interface

The KMXF_ASYNCEH_ELECTRICAL_INTERFACE defines the physical ports electrical interface used.
Available on Tx channel only except on IO-FLEXSMP where also available on Rx channel as read-only.
On IO-FLEXSMP, this attribute value affects the Tx/Rx channel pair and can only be changes with the Tx channel handle.

The supported values are:

Constant Value
VMXF_ASYNCEH_ELECTRICAL_INTERFACE_RS422 Select RS-422
VMXF_ASYNCEH_ELECTRICAL_INTERFACE_RS485 Select RS-485 (default)
VMXF_ASYNCEH_ELECTRICAL_INTERFACE_RS232 Select RS-232 (IPM-MULTI and IO-FLEXSMP modules only)


Speed

The KMXF_ASYNCEH_SPEED attribute holds the actual port speed (bit rate), in bits per second.

The supported range is:

Module Range (bps) Default (bps) Formula
MXF_MODULE_ASYNC_EH 200 - 10000000 12500 108 / n with 10 ≤ n ≤ 500000
MXF_MODULE_MULTI_EH 200 - 4000000 12500 108 / n with 25 ≤ n ≤ 500000
MXF_MODULE_MULTI 245 - 4000000 12500 32000000 / n with 8 ≤ n ≤ 130612
MXF_MODULE_ASYNC 305 - 4000000 12500 20000000 / n with 5 ≤ n ≤ 65535
MXF_MODULE_FLEXSMP (RS-422/485) 200 - 10000000 12500 100000000 / n with 10 ≤ n ≤ 500000
MXF_MODULE_FLEXSMP (RS-232) 200 - 250000 12500 100000000 / n with 10 ≤ n ≤ 400


Parity

The KMXF_ASYNCEH_PARITY holds the parity settings. For a transmitter channel, it represents the parity bit to be generated (if any).
For a receiver channel, it is the expected received word parity.

The supported values are:

Constant Value
VMXF_ASYNCEH_PARITY_EVEN Channel has even parity
VMXF_ASYNCEH_PARITY_ODD Channel has odd parity (default)
VMXF_ASYNCEH_PARITY_NONE Channel does not have parity. Not available when the word size is set to 9 bits.


Stop Bit Size

The KMXF_ASYNCEH_STOPBITSIZE attribute holds the number of bits used as stop bits.

The supported range is:

Constant Value
(bits)
Minimum 1 (default)
Maximum 2


Word Size

The KMXF_ASYNCEH_WORDSIZE attribute holds the ASYNC word size in number of bits.
The supported range is:

Model Range (bits) Default (bits) Note
MXF_MODULE_ASYNC 7 - 9 8 For 9-bit data, MXF version 4.6.2 minimum is needed and the parity must be set to either VMXF_ASYNCEH_PARITY_EVEN or VMXF_ASYNCEH_PARITY_ODD before.
FlexMulti 429 5 - 9 8 For 9-bit data, package 1.1.17 and MXF version 4.6.4 minimum is needed
FlexMulti 629 5 - 9 8 For 9-bit data, package 1.1.14 and MXF version 4.6.3 minimum is needed
FlexMulti 664 5 - 9 8 For 9-bit data, package 1.1.17 and MXF version 4.6.4 minimum is needed
FlexMulti 1553 5 - 9 8 For 9-bit data, package 1.1.15 and MXF version 4.6.4 minimum is needed
MXF_MODULE_FLEXSMP 5 - 9 8
Others 5 - 8 8


RX Word mode enable

The KMXF_ASYNCEH_RX_WORD_MODE_ENABLE attribute holds the word mode enabled state for a receiver channel. In word mode, each byte received will be returned in a data record with its associated time tag (if enabled). By default, the receiver is in string mode. The string will be returned after the gap is reached or 256 bytes are received.

On IO-ASYNC-EH and IO-MULTI-EH, the gap length is controlled by KMXF_ASYNCEH_RX_STRING_GAP.
On other modules, the gap length is fixed at 2 bit-time (min 2 usec).

The supported values are:

Constant Value
VMXF_ENABLE Enable word mode
VMXF_DISABLE Disable word mode (default)


RX String Gap

The KMXF_ASYNCEH_RX_STRING_GAP attribute holds the receiver maximum gap between bytes in a string. When this gap is reached, the current string is returned.
Supported on IO-ASYNC-EH and IO-MULTI-EH only.
On other modules, the gap length is fixed at 2 bit-time (min 2 usec).

The supported range is:

Range Value
(1/4 bit)
Minimum 0
Maximum 255

Default value: 8 (2 bits).

Loopback Mode

The KMXF_ASYNCEH_TX_RX_TEST_LB attribute holds the TX-to-RX loopback state for the receiver channel. When the loopback mode is enabled, the received data will come from the corresponding internal transmitter instead of the default configuration where the received data come from the RX line circuit. This feature is intended for demo applications or for test purposes. When enabled, the module's first RX channel receives data transmitted by the first TX channel, the second RX channel receives data from the second TX channel, and so on.

The supported values are:

Constant Value
VMXF_ENABLE Enable loopback
VMXF_DISABLE Disable loopback (default)


RX Timetag Enable

The KMXF_ASYNCEH_MODULE_RX_TIMETAG_ENABLE and KMXF_ASYNCEH_RX_TIMETAG_ENABLE (MXF_MODULE_ASYNC) attributes define if the time tag is returned in the record.
Not available on MXF_MODULE_FLEXSMP, timetag always enabled.

Constant Value
VMXF_ENABLE Enable time tag (default)
VMXF_DISABLE Disable time tag


RX FIFO Aging Timeout

The KMXF_ASYNCEH_MODULE_RX_FIFO_AGING and KMXF_ASYNCEH_RX_FIFO_AGING (MXF_MODULE_ASYNC) attributes define the FIFO aging timeout value for a receiver channel. It defines the longest delay that a received word can wait in the hardware FIFO before a receive interrupt is generated. The attribute value resolution is based on the timebase resolution. A RX FIFO Aging Timeout value of 0 disables the aging timeout.

The supported range is:

Module Range (microsecond) Default (microsecond) Note
MXF_MODULE_ASYNC_EH 0 - 16256 8192 Value is rounded down to step of 128 microseconds
MXF_MODULE_MULTI_EH 0 - 32640 8192 Value is rounded down to step of 128 microseconds
MXF_MODULE_MULTI 0 - 32640 8192 Value is rounded down to step of 128 microseconds
MXF_MODULE_ASYNC 0 - 16320 8192 Value is rounded down to step of 64 microseconds
MXF_MODULE_FLEXSMP 0 - 25000 8000 Value is rounded down to step of 100 microseconds
Note
MX Foundation takes care of initializing this attribute using the optimal value. It is not recommended to change to this attribute unless told to do so by a MAX Technologies support engineer.


RX FIFO Almost Full Threshold

The KMXF_ASYNCEH_MODULE_RX_FIFO_AF and KMXF_ASYNCEH_RX_FIFO_AF (MXF_MODULE_ASYNC) attributes hold the almost full threshold for a receiver channel. This attribute value determines the number of received words that must be accumulated in the receive hardware FIFO before an interrupt is generated.

The supported range is:

Module Range Default
MXF_MODULE_ASYNC_EH 1 - 255 (16-bit word) 32
MXF_MODULE_MULTI_EH 1 - 255 (16-bit word) 32
MXF_MODULE_MULTI 1 - 255 (16-bit word) 16
MXF_MODULE_ASYNC 1 - 127 (16-bit word) 16
MXF_MODULE_FLEXSMP 1 - 511 (64-bit word) 128
Note
MX Foundation takes care of initializing this attribute using the optimal value. It is not recommended to change to this attribute unless told to do so by a MAX Technologies support engineer.


TX FIFO Almost Full Threshold

The KMXF_ASYNCEH_TX_FIFO_AF and KMXF_ASYNCEH_TX_FIFO_AF (MXF_MODULE_ASYNC) attributes hold the almost full threshold for a transmitter channel. This attribute value determines the number of transmit words that are to be queued in the transmit hardware FIFO. The transmit interrupt will be cleared automatically once this threshold is reached.

The supported range is:

Module Range Default
MXF_MODULE_ASYNC_EH 2 - 255 (16-bit word) 64
MXF_MODULE_MULTI_EH 2 - 255 (16-bit word) 128
MXF_MODULE_MULTI 2 - 255 (16-bit word) 128
MXF_MODULE_ASYNC 2 - 255 (16-bit word) 32
MXF_MODULE_FLEXSMP 2 - 256 (64-bit word) 256
Note
MX Foundation takes care of initializing this attribute using the optimal value. It is not recommended to change to this attribute unless told to do so by a MAX Technologies support engineer.


TX FIFO Almost Empty Threshold

The KMXF_ASYNCEH_MODULE_TX_FIFO_AE and KMXF_ASYNCEH_TX_FIFO_AE (MXF_MODULE_ASYNC) attributes hold the almost empty threshold for a transmitter channel. The transmit interrupt will be generated whenever the number of words remaining in the transmit hardware FIFO is less or equal to the value specified by this attribute. The software embedded process will then be able to react and fill in the transmit FIFO.

The supported range is:

Module Range Default
MXF_MODULE_ASYNC_EH 1 - 254 (16-bit word) 32
MXF_MODULE_MULTI_EH 1 - 254 (16-bit word) 64
MXF_MODULE_MULTI 1 - 254 (16-bit word) 64
MXF_MODULE_ASYNC 1 - 254 (16-bit word) 16
MXF_MODULE_FLEXSMP 1 - 255 (64-bit word) 64
Note
MX Foundation takes care of initializing this attribute using the optimal value. It is not recommended to change to this attribute unless told to do so by a MAX Technologies support engineer.


TX String Gap

The KMXF_ASYNCEH_TX_STRING_GAP attribute holds the transmitter minimum gap between two strings. When this gap is reached, the second string can be transmitted.
Supported on IO-ASYNC-EH and IO-MULTI-EH only.
The supported range is:

Range Value
(1/4 bit)
Minimum 0
Maximum 255

Default value: 16 (4 bits).


TX Port Enable

The KMXF_ASYNCEH_TX_PORT_ENABLE attribute holds the transmitter enable state. mxfChannelTxPortEnableSet() function can also be used to perform the same task once the library is loaded. This attribute is also an initialization attribute that can be set from the initialization attribute handler (see mxfSystemInitAttributeUint64CallbackHandler()).
Supported on IO-ASYNC-EH and IO-MULTI-EH only.
The supported values are:

Constant Value
VMXF_ENABLE Enable port (default)
VMXF_DISABLE Disable port


TX Self Reception Enable

The KMXF_ASYNCEH_TX_SELF_RECEPTION_ENABLE attribute holds the transmitter self reception enable state. When enable, the receiver will saved in its RX FIFO the bytes sent by its corresponding transmitter (TX0 with RX0, TX1 with RX1 and so on). When disable, the receiver will not saved in its RX FIFO what it is transmitted by its corresponding transmitter. This feature is useful for ASYNC protocol using RS-485 electrical interface when TX and RX are connected on the same multidrop bus. This attribute is only available when both TX and corresponding RX are set to ASYNC protocol and RS-485 electrical interface.
Not supported on MXF_MODULE_ASYNC.

The supported values are:

Constant Value
VMXF_ENABLE Enable self reception (default)
VMXF_DISABLE Disable self reception


Termination Resistor

The KMXF_ASYNCEH_TERMINATION attribute holds the actual channel termination resistor state.
Only supported on MXF_MODULE_FLEXSMP.

Constant Value
VMXF_ASYNCEH_TERMINATION_NONE No termination resistor (default)
VMXF_ASYNCEH_TERMINATION_120OHM 120 ohm termination resistor enabled


Updated 10/23/2023