Configures if there is a frame type in your frame and the lengths of each frame.

The number of bits set in the mask determines the number of elements in frameLen. A maximum of 8 different frame types may be specified.

Public Attributes#

uint16_t *

A pointer to an array of frame byte lengths for each frame type.

uint8_t

Zero-indexed byte offset location of the byte containing the frame type field.

uint8_t

A bitmask of the frame type field, which determines a number of frames expected based on the number of bits set.

uint8_t

A bitmask that marks if each frame is valid or should be filtered.

uint8_t

A bitmask that marks if each frame should have the address filter applied.

Public Attribute Documentation#

frameLen#

uint16_t* RAIL_FrameType_t::frameLen

A pointer to an array of frame byte lengths for each frame type.

The number of elements in this array should be equal to the number of frame types. The memory to which frameLen points should not change location or be modified.


Definition at line 1969 of file common/rail_types.h

offset#

uint8_t RAIL_FrameType_t::offset

Zero-indexed byte offset location of the byte containing the frame type field.


Definition at line 1973 of file common/rail_types.h

mask#

uint8_t RAIL_FrameType_t::mask

A bitmask of the frame type field, which determines a number of frames expected based on the number of bits set.

No more than 3 bits can be set in the mask and they must be contiguous ones. For example, if the highest three bits of the byte specified by offset constitute the frame type, then mask should be 0xE0, which has 3 bits set, indicating 8 possible frame types.


Definition at line 1981 of file common/rail_types.h

isValid#

uint8_t RAIL_FrameType_t::isValid

A bitmask that marks if each frame is valid or should be filtered.

Frame type 0 corresponds to the lowest bit in isValid. If the frame is filtered, a RAIL_EVENT_RX_PACKET_ABORTED will be raised.


Definition at line 1987 of file common/rail_types.h

addressFilter#

uint8_t RAIL_FrameType_t::addressFilter

A bitmask that marks if each frame should have the address filter applied.

Frame type 0 corresponds to the least significant bit in addressFilter.


Definition at line 1992 of file common/rail_types.h