Microchip® Advanced Software Framework

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
IEEE Constants

Includes IEEE Constant Definitions.

Macros

#define aBaseSlotDuration   (60)
 The number of symbols forming a superframe slot when the superframe order is equal to 0. More...
 
#define aBaseSuperframeDuration
 The number of symbols forming a superframe when the superframe order is equal to 0. More...
 
#define ACK_PAYLOAD_LEN   (0x03)
 Length (in octets) of ACK payload. More...
 
#define aGTSDescPersistenceTime   (4)
 The number of superframes in which a GTS descriptor exists in the beacon frame of a PAN coordinator. More...
 
#define aMaxBeaconOverhead   (75)
 The maximum number of octets added by the MAC sublayer to the payload of its beacon frame. More...
 
#define aMaxBeaconPayloadLength   (aMaxPHYPacketSize - aMaxBeaconOverhead)
 The maximum size, in octets, of a beacon payload. More...
 
#define aMaxLostBeacons   (4)
 The number of consecutive lost beacons that will cause the MAC sublayer of a receiving device to declare a loss of synchronization. More...
 
#define aMaxMACPayloadSize   (aMaxPHYPacketSize - aMinMPDUOverhead)
 The maximum number of octets that can be transmitted in the MAC Payload field. More...
 
#define aMaxMACSafePayloadSize
 The maximum number of octets that can be transmitted in the MAC Payload field of an unsecured MAC frame that will be guaranteed not to exceed aMaxPHYPacketSize. More...
 
#define aMaxMPDUUnsecuredOverhead   (25)
 The maximum number of octets added by the MAC sublayer to the PSDU without security. More...
 
#define aMaxPHYPacketSize   (127)
 Maximum size of PHY packet. More...
 
#define aMaxSIFSFrameSize   (18)
 The maximum size of an MPDU, in octets, that can be followed by a SIFS period. More...
 
#define aMinCAPLength   (440)
 The minimum number of symbols forming the CAP. More...
 
#define aMinMPDUOverhead   (9)
 The minimum number of octets added by the MAC sublayer to the PSDU. More...
 
#define aNumSuperframeSlots   (16)
 The number of slots contained in any superframe. More...
 
#define ASSOC_PERMIT_BIT_POS   (15)
 Association permit bit position. More...
 
#define ASSOCIATION_RESERVED   (3)
 Association status code value (see wpan_mlme_associate_resp()). More...
 
#define ASSOCIATION_SUCCESSFUL   (0)
 Association status code value (see wpan_mlme_associate_resp()). More...
 
#define aTurnaroundTime   (12)
 Maximum turnaround Time of the radio to switch from Rx to Tx or Tx to Rx in symbols. More...
 
#define aUnitBackoffPeriod   (20)
 The number of symbols forming the basic time period used by the CSMA-CA algorithm. More...
 
#define BATT_LIFE_EXT_BIT_POS   (12)
 Battery life extention bit position. More...
 
#define BROADCAST   (0xFFFF)
 Generic 16 bit broadcast address. More...
 
#define CLEAR_ADDR_64   (0ULL)
 Unused EUI-64 address. More...
 
#define CONV_DBM_TO_phyTransmitPower(dbm_value)
 Converts a dBm value to a phyTransmitPower value. More...
 
#define CONV_phyTransmitPower_TO_DBM(phyTransmitPower_value)
 Converts a phyTransmitPower value to a dBm value. More...
 
#define ED_VAL_LEN   (1)
 Length of the ED value parameter number field. More...
 
#define EXT_ADDR_LEN   (8)
 Length (in octets) of extended address. More...
 
#define FCF1_FV_2003   (0)
 The mask for a IEEE 802.15.4-2003 compatible frame in the frame version subfield fcf1. More...
 
#define FCF1_FV_2006   (1)
 The mask for a IEEE 802.15.4-2006 compatible frame in the frame version subfield fcf1. More...
 
#define FCF1_FV_2012   (2)
 The mask for a IEEE 802.15.4e-2012 compatible frame in the frame version subfield fcf1. More...
 
#define FCF1_FV_MASK   (3 << FCF1_FV_SHIFT)
 The mask for the frame version subfield fcf1. More...
 
#define FCF1_FV_SHIFT   (4)
 Shift value for the frame version subfield fcf1. More...
 
#define FCF_2_DEST_ADDR_OFFSET   (2)
 Offset of Destination Addressing Mode of octet two of MHR. More...
 
#define FCF_2_SOURCE_ADDR_OFFSET   (6)
 Offset of Source Addressing Mode of octet two of MHR. More...
 
#define FCF_ACK_REQUEST   (1 << 5)
 The mask for the ACK request bit of the FCF. More...
 
#define FCF_DEST_ADDR_OFFSET   (10)
 Defines the offset of the destination address. More...
 
#define FCF_FRAME_PENDING   (1 << 4)
 The mask for the frame pending bit of the FCF. More...
 
#define FCF_FRAME_VERSION_2003   (0 << 12)
 The mask for a IEEE 802.15.4-2003 compatible frame in the frame version subfield. More...
 
#define FCF_FRAME_VERSION_2006   (1 << 12)
 The mask for a IEEE 802.15.4-2006 compatible frame in the frame version subfield. More...
 
#define FCF_FRAME_VERSION_2012   (2 << 12)
 The mask for a IEEE 802.15.4e-2012 compatible frame in the frame version subfield. More...
 
#define FCF_FRAMETYPE_ACK   (0x02)
 Define the ACK frame type. More...
 
#define FCF_FRAMETYPE_BEACON   (0x00)
 Defines the beacon frame type. More...
 
#define FCF_FRAMETYPE_DATA   (0x01)
 Define the data frame type. More...
 
#define FCF_FRAMETYPE_LLDN   (0x04)
 Define the LLDN frame type. More...
 
#define FCF_FRAMETYPE_MAC_CMD   (0x03)
 Define the command frame type. More...
 
#define FCF_FRAMETYPE_MASK   (0x07)
 Defines a mask for the frame type. More...
 
#define FCF_FRAMETYPE_MP   (0x05)
 Define the multipurpose frame type. More...
 
#define FCF_GET_FRAMETYPE(x)   ((x) & FCF_FRAMETYPE_MASK)
 Macro to get the frame type. More...
 
#define FCF_LEN   (2)
 Length (in octets) of FCF. More...
 
#define FCF_LONG_ADDR   (0x03)
 Address Mode: LONG. More...
 
#define FCF_NO_ADDR   (0x00)
 Address Mode: NO ADDRESS. More...
 
#define FCF_PAN_ID_COMPRESSION   (1 << 6)
 The mask for the PAN ID compression bit of the FCF. More...
 
#define FCF_RESERVED_ADDR   (0x01)
 Address Mode: RESERVED. More...
 
#define FCF_SECURITY_ENABLED   (1 << 3)
 The mask for the security enable bit of the FCF. More...
 
#define FCF_SET_DEST_ADDR_MODE(x)
 Macro to set the destination address mode. More...
 
#define FCF_SET_FRAMETYPE(x)   (x)
 A macro to set the frame type. More...
 
#define FCF_SET_SOURCE_ADDR_MODE(x)
 Macro to set the source address mode. More...
 
#define FCF_SHORT_ADDR   (0x02)
 Address Mode: SHORT. More...
 
#define FCF_SOURCE_ADDR_OFFSET   (14)
 Defines the offset of the source address. More...
 
#define FCS_LEN   (2)
 Length (in octets) of FCS. More...
 
#define GTS_ALLOCATE   (1)
 
#define GTS_DEALLOCATE   (0)
 
#define GTS_RX_SLOT   (1)
 
#define GTS_SLOT_LENGTH_1   (0x01)
 
#define GTS_SLOT_LENGTH_10   (0x0A)
 
#define GTS_SLOT_LENGTH_11   (0x0B)
 
#define GTS_SLOT_LENGTH_12   (0x0C)
 
#define GTS_SLOT_LENGTH_13   (0x0D)
 
#define GTS_SLOT_LENGTH_14   (0x0E)
 
#define GTS_SLOT_LENGTH_15   (0x0F)
 
#define GTS_SLOT_LENGTH_2   (0x02)
 
#define GTS_SLOT_LENGTH_3   (0x03)
 
#define GTS_SLOT_LENGTH_4   (0x04)
 
#define GTS_SLOT_LENGTH_5   (0x05)
 
#define GTS_SLOT_LENGTH_6   (0x06)
 
#define GTS_SLOT_LENGTH_7   (0x07)
 
#define GTS_SLOT_LENGTH_8   (0x08)
 
#define GTS_SLOT_LENGTH_9   (0x09)
 
#define GTS_TX_SLOT   (0)
 
#define INVALID_SHORT_ADDRESS   (0xFFFF)
 Invalid short address. More...
 
#define INVERSE_CHANNEL_MASK   (~VALID_CHANNEL_MASK)
 Inverse channel masks for scanning. More...
 
#define LENGTH_FIELD_LEN   (1)
 Size of the length parameter. More...
 
#define LQI_LEN   (1)
 Length of the LQI number field. More...
 
#define MAC_NO_SHORT_ADDR_VALUE   (0xFFFE)
 MAC is using long address (by now). More...
 
#define macAckWaitDuration   (0x40)
 The maximum number of symbols to wait for an acknowledgment frame to arrive following a transmitted data frame. More...
 
#define macAssociatedPANCoord   (0x56)
 Indication of whether the device is associated to the PAN through the PAN coordinator. More...
 
#define macAssociatedPANCoord_def   (false)
 Default value for PIB macAssociatedPANCoord. More...
 
#define macAssociationPermit   (0x41)
 Indication of whether a coordinator is currently allowing association. More...
 
#define macAssociationPermit_def   (false)
 Default value for PIB macAssociationPermit. More...
 
#define macAutoRequest   (0x42)
 Indication of whether a device automatically sends a data request command if its address is listed in the beacon frame. More...
 
#define macAutoRequest_def   (true)
 Default value for PIB macAutoRequest. More...
 
#define macBattLifeExt   (0x43)
 Indication of whether battery life extension, by reduction of coordinator receiver operation time during the CAP, is enabled. More...
 
#define macBattLifeExt_def   (false)
 Default value for PIB macBattLifeExt. More...
 
#define macBattLifeExtPeriods   (0x44)
 The number of backoff periods during which the receiver is enabled following a beacon in battery life extension mode. More...
 
#define macBattLifeExtPeriods_def   (6)
 Default value for PIB macBattLifeExtPeriods. More...
 
#define macBeaconOrder   (0x47)
 Specification of how often the coordinator transmits a beacon. More...
 
#define macBeaconOrder_def   (15)
 Default value for PIB macBeaconOrder. More...
 
#define macBeaconPayload   (0x45)
 The contents of the beacon payload. More...
 
#define macBeaconPayloadLength   (0x46)
 The length, in octets, of the beacon payload. More...
 
#define macBeaconPayloadLength_def   (0)
 Default value for PIB macBeaconPayloadLength. More...
 
#define macBeaconTxTime   (0x48)
 The time that the device transmitted its last beacon frame, in symbol periods. More...
 
#define macBeaconTxTime_def   (0x000000)
 Default value for PIB macBeaconTxTime. More...
 
#define macBSN   (0x49)
 The sequence number added to the transmitted beacon frame. More...
 
#define macCoordExtendedAddress   (0x4A)
 The 64 bit address of the coordinator with which the device is associated. More...
 
#define macCoordShortAddress   (0x4B)
 The 16 bit short address assigned to the coordinator with which the device is associated. More...
 
#define macCoordShortAddress_def   (0xFFFF)
 Default value for PIB macCoordShortAddress. More...
 
#define macDSN   (0x4C)
 The sequence number added to the transmitted data or MAC command frame. More...
 
#define macGTSPermit   (0x4D)
 macGTSPermit is true if the PAN coordinator is to accept GTS requests, false otherwise. More...
 
#define macGTSPermit_def   (true)
 Default value for PIB macGTSPermit. More...
 
#define macIeeeAddress   (0xF0)
 Private MAC PIB attribute to allow setting the MAC address in test mode. More...
 
#define macMaxBE   (0x57)
 The maximum value of the backoff exponent, BE, in the CSMA-CA algorithm. More...
 
#define macMaxCSMABackoffs   (0x4E)
 The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure. More...
 
#define macMaxCSMABackoffs_def   (4)
 Default value for PIB macMaxCSMABackoffs. More...
 
#define macMaxFrameRetries   (0x59)
 The maximum number of retries allowed after a transmission failure. More...
 
#define macMaxFrameTotalWaitTime   (0x58)
 The maximum number of CAP symbols in a beaconenabled PAN, or symbols in a nonbeacon-enabled PAN, to wait either for a frame intended as a response to a data request frame or for a broadcast frame following a beacon with the Frame Pending subfield set to one. More...
 
#define macMaxNumRxFramesDuringBackoff   (0x7F)
 Private MAC PIB attribute to control the CSMA algorithm. More...
 
#define macMinBE   (0x4F)
 The minimum value of the backoff exponent in the CSMA-CA algorithm. More...
 
#define macMinLIFSPeriod   (0x5E)
 The minimum number of symbols forming a LIFS period. More...
 
#define macMinLIFSPeriod_def   (40)
 Default value for PIB macMinLIFSPeriod. More...
 
#define macMinSIFSPeriod   (0x5F)
 The minimum number of symbols forming a SIFS period. More...
 
#define macMinSIFSPeriod_def   (12)
 Default value for PIB macMinSIFSPeriod. More...
 
#define macPANCoordExtendedAddress   (0x7D)
 The 64-bit address of the PAN coordinator. More...
 
#define macPANCoordShortAddress   (0x7E)
 The 16-bit short address assinged to the PAN coordinator. More...
 
#define macPANId   (0x50)
 The 16 bit identifier of the PAN on which the device is operating. More...
 
#define macPANId_def   (0xFFFF)
 Default value for PIB macPANId. More...
 
#define macPromiscuousMode   (0x51)
 This indicates whether the MAC sublayer is in a promiscuous (receive all) mode. More...
 
#define macResponseWaitTime   (0x5A)
 The maximum time, in multiples of aBaseSuperframeDuration, a device shall wait for a response command frame to be available following a request command frame. More...
 
#define macResponseWaitTime_def   (32 * aBaseSuperframeDuration)
 Default value for PIB macResponseWaitTime. More...
 
#define macRxOnWhenIdle   (0x52)
 This indicates whether the MAC sublayer is to enable its receiver during idle periods. More...
 
#define macRxOnWhenIdle_def   (false)
 Default value for PIB macRxOnWhenIdle. More...
 
#define macSecurityEnabled   (0x5D)
 Indication of whether the MAC sublayer has security enabled. More...
 
#define macSecurityEnabled_def   (false)
 Default value for PIB macSecurityEnabled. More...
 
#define macShortAddress   (0x53)
 The 16 bit address that the device uses to communicate in the PAN. More...
 
#define macShortAddress_def   (0xFFFF)
 Default value for PIB macShortAddress. More...
 
#define macSuperframeOrder   (0x54)
 This specifies the length of the active portion of the superframe, including the beacon frame. More...
 
#define macSuperframeOrder_def   (15)
 Default value for PIB macSuperframeOrder. More...
 
#define macSyncSymbolOffset   (0x5B)
 The offset, measured in symbols, between the symbol boundary at which the MLME captures the timestamp of each transmitted or received frame, and the onset of the first symbol past the SFD, namely, the first symbol of the Length field. More...
 
#define macTimestampSupported   (0x5C)
 Indication of whether the MAC sublayer supports the optional timestamping feature for incoming and outgoing data frames. More...
 
#define macTransactionPersistenceTime   (0x55)
 The maximum time (in superframe periods) that a transaction is stored by a coordinator and indicated in its beacon. More...
 
#define macTransactionPersistenceTime_def   (0x01F4)
 Default value for PIB macTransactionPersistenceTime. More...
 
#define MAX_KEY_ID_FIELD_LEN   (9)
 Maximum length of the key id field. More...
 
#define MAX_MGMT_FRAME_LENGTH   (30)
 Maximum size of the management frame(Association Response frame) More...
 
#define MIN_FRAME_LENGTH   (8)
 Minimum size of a valid frame other than an Ack frame. More...
 
#define MLME_SCAN_TYPE_ACTIVE   (0x01)
 Active scan (see wpan_mlme_scan_req()) More...
 
#define MLME_SCAN_TYPE_ED   (0x00)
 Energy scan (see wpan_mlme_scan_req()) More...
 
#define MLME_SCAN_TYPE_ORPHAN   (0x03)
 Orphan scan (see wpan_mlme_scan_req()) More...
 
#define MLME_SCAN_TYPE_PASSIVE   (0x02)
 Passive scan (see wpan_mlme_scan_req()) More...
 
#define NO_PIB_INDEX   (0)
 
#define NON_BEACON_NWK   (0x0F)
 BO value for nonbeacon-enabled network. More...
 
#define NUM_LONG_PEND_ADDR(x)   (((x) & 0x70) >> 4)
 Mask for the number of long addresses pending. More...
 
#define NUM_SHORT_PEND_ADDR(x)   ((x) & 0x07)
 Mask for the number of short addresses pending. More...
 
#define PAN_ACCESS_DENIED   (2)
 Association status code value (see wpan_mlme_associate_resp()). More...
 
#define PAN_AT_CAPACITY   (1)
 Association status code value (see wpan_mlme_associate_resp()). More...
 
#define PAN_COORD_BIT_POS   (14)
 PAN coordinator bit position. More...
 
#define PAN_ID_LEN   (2)
 Length (in octets) of PAN ID. More...
 
#define PL_POS_DST_ADDR_START   (6)
 Octet start position of Destination Address field within payload array of frame_info_t. More...
 
#define PL_POS_DST_PAN_ID_START   (4)
 Octet start position of Destination PAN-Id field within payload array of frame_info_t. More...
 
#define PL_POS_FCF_1   (1)
 Octet position of FCF octet one within payload array of frame_info_t. More...
 
#define PL_POS_FCF_2   (2)
 Octet position of FCF octet two within payload array of frame_info_t. More...
 
#define PL_POS_SEQ_NUM   (3)
 Octet position of Sequence Number octet within payload array of frame_info_t. More...
 
#define SEQ_NUM_LEN   (1)
 Length of the sequence number field. More...
 
#define SHORT_ADDR_LEN   (2)
 Length (in octets) of short address. More...
 
#define WPAN_TXOPT_ACK   (0x01)
 Value for TxOptions parameter in wpan_mcps_data_req(). More...
 
#define WPAN_TXOPT_GTS   (0x02)
 Value for TxOptions parameter in wpan_mcps_data_req(). More...
 
#define WPAN_TXOPT_GTS_ACK   (0x03)
 Value for TxOptions parameter in wpan_mcps_data_req(). More...
 
#define WPAN_TXOPT_INDIRECT   (0x04)
 Value for TxOptions parameter in wpan_mcps_data_req(). More...
 
#define WPAN_TXOPT_INDIRECT_ACK   (0x05)
 Value for TxOptions parameter in wpan_mcps_data_req(). More...
 
#define WPAN_TXOPT_OFF   (0x00)
 Value for TxOptions parameter in wpan_mcps_data_req(). More...
 

Typedefs

typedef enum cca_mode_tag cca_mode_t
 CCA mode enumeration. More...
 
typedef enum ch_pg_tag ch_pg_t
 
typedef enum trx_cca_mode_tag trx_cca_mode_t
 CCA Modes of the transceiver. More...
 

Enumerations

enum  cca_mode_tag {
  CCA_MODE_0_CS_OR_ED = 0,
  CCA_MODE_1_ED = 1,
  CCA_MODE_2_CS,
  CCA_MODE_3_CS_ED,
  CCA_MODE_4_ALOHA
}
 CCA mode enumeration. More...
 
enum  ch_pg_tag {
  CH_PG_2003 = 0,
  CH_PG_2006 = 2,
  CH_PG_CHINA = 5,
  CH_PG_JAPAN = 6,
  CH_PG_MSK = 7,
  CH_PG_LRP_UWB = 8,
  CH_PG_SUN = 9,
  CH_PG_GENERIC_PHY = 10,
  CH_PG_16 = 16,
  CH_PG_18 = 18,
  CH_PG_INVALID = 0xFF
}
 
enum  trx_cca_mode_tag {
  TRX_CCA_MODE0 = 0,
  TRX_CCA_MODE1 = 1,
  TRX_CCA_MODE2 = 2,
  TRX_CCA_MODE3 = 3
}
 
#define phyCurrentChannel   (0x00)
 The RF channel to use for all following transmissions and receptions. More...
 
#define phyChannelsSupported   (0x01)
 The 5 most significant bits (MSBs) (b27, ..., b31) of phyChannelsSupported shall be reserved and set to 0, and the 27 LSBs (b0, b1, ..., b26) shall indicate the status (1 = available, 0 = unavailable) for each of the 27 valid channels (bk shall indicate the status of channel k). More...
 
#define phyTransmitPower   (0x02)
 The 2 MSBs represent the tolerance on the transmit power: 00 = 1 dB 01 = 3 dB 10 = 6 dB The 6 LSBs represent a signed integer in twos-complement format, corresponding to the nominal transmit power of the device in decibels relative to 1 mW. More...
 
#define phyCCAMode   (0x03)
 The CCA mode. More...
 
#define phyCurrentPage   (0x04)
 This is the current PHY channel page. More...
 
#define phyMaxFrameDuration   (0x05)
 The maximum number of symbols in a frame: = phySHRDuration + ceiling([aMaxPHYPacketSize + 1] x phySymbolsPerOctet) More...
 
#define phySHRDuration   (0x06)
 The duration of the synchronization header (SHR) in symbols for the current PHY. More...
 
#define phySymbolsPerOctet   (0x07)
 The number of symbols per octet for the current PHY. More...
 
#define PHY_OVERHEAD   (5)
 Number of octets added by the PHY: 4 sync octets + SFD octet. More...
 
enum  phy_enum_tag {
  PHY_BUSY = (0x00),
  PHY_BUSY_RX = (0x01),
  PHY_BUSY_TX = (0x02),
  PHY_FORCE_TRX_OFF = (0x03),
  PHY_IDLE = (0x04),
  PHY_INVALID_PARAMETER = (0x05),
  PHY_RX_ON = (0x06),
  PHY_SUCCESS = (0x07),
  PHY_TRX_OFF = (0x08),
  PHY_TX_ON = (0x09),
  PHY_UNSUPPORTED_ATTRIBUTE = (0x0A),
  PHY_READ_ONLY = (0x0B)
}
 
typedef enum phy_enum_tag phy_enum_t
 
#define PHY_SUCCESS_DATA_PENDING   (0x10)
 PHY_SUCCESS in phyAutoCSMACA when received ACK frame had the pending bit set. More...
 
#define ED_SAMPLE_DURATION_SYM   (8)
 ED scan/sampling duration. More...
 

#define aBaseSlotDuration   (60)

The number of symbols forming a superframe slot when the superframe order is equal to 0.

#define aBaseSuperframeDuration
Value:
#define aBaseSlotDuration
The number of symbols forming a superframe slot when the superframe order is equal to 0...
Definition: ieee_const.h:97
#define aNumSuperframeSlots
The number of slots contained in any superframe.
Definition: ieee_const.h:184

The number of symbols forming a superframe when the superframe order is equal to 0.

#define ACK_PAYLOAD_LEN   (0x03)

Length (in octets) of ACK payload.

Referenced by tx_done_handling().

#define aGTSDescPersistenceTime   (4)

The number of superframes in which a GTS descriptor exists in the beacon frame of a PAN coordinator.

Referenced by mac_gts_allocate(), mac_gts_deallocate(), and mlme_gts_request().

#define aMaxBeaconOverhead   (75)

The maximum number of octets added by the MAC sublayer to the payload of its beacon frame.

#define aMaxBeaconPayloadLength   (aMaxPHYPacketSize - aMaxBeaconOverhead)

The maximum size, in octets, of a beacon payload.

Referenced by mlme_set().

#define aMaxLostBeacons   (4)

The number of consecutive lost beacons that will cause the MAC sublayer of a receiving device to declare a loss of synchronization.

Referenced by check_beacon_reception(), mac_start_missed_beacon_timer(), and start_beacon_loss_timer().

#define aMaxMACPayloadSize   (aMaxPHYPacketSize - aMinMPDUOverhead)

The maximum number of octets that can be transmitted in the MAC Payload field.

Referenced by parse_mpdu(), and wpan_mcps_data_req().

#define aMaxMACSafePayloadSize
Value:
#define aMaxPHYPacketSize
Maximum size of PHY packet.
Definition: ieee_const.h:81
#define aMaxMPDUUnsecuredOverhead
The maximum number of octets added by the MAC sublayer to the PSDU without security.
Definition: ieee_const.h:155

The maximum number of octets that can be transmitted in the MAC Payload field of an unsecured MAC frame that will be guaranteed not to exceed aMaxPHYPacketSize.

Referenced by build_data_frame().

#define aMaxMPDUUnsecuredOverhead   (25)

The maximum number of octets added by the MAC sublayer to the PSDU without security.

#define aMaxPHYPacketSize   (127)

Maximum size of PHY packet.

Referenced by build_data_frame(), and stb_ccm_secure().

#define aMaxSIFSFrameSize   (18)

The maximum size of an MPDU, in octets, that can be followed by a SIFS period.

Referenced by calc_frame_transmit_duration(), calculate_transaction_duration(), mac_process_beacon_frame(), and send_frame().

#define aMinCAPLength   (440)

The minimum number of symbols forming the CAP.

This ensures that MAC commands can still be transferred to devices when GTSs are being used. An exception to this minimum shall be allowed for the accommodation of the temporary increase in the beacon frame length needed to perform GTS maintenance (see 7.2.2.1.3).

#define aMinMPDUOverhead   (9)

The minimum number of octets added by the MAC sublayer to the PSDU.

#define aNumSuperframeSlots   (16)

The number of slots contained in any superframe.

#define ASSOC_PERMIT_BIT_POS   (15)

Association permit bit position.

Referenced by mac_build_and_tx_beacon().

#define ASSOCIATION_RESERVED   (3)

Association status code value (see wpan_mlme_associate_resp()).

#define ASSOCIATION_SUCCESSFUL   (0)

Association status code value (see wpan_mlme_associate_resp()).

Referenced by mac_process_associate_response().

#define aTurnaroundTime   (12)

Maximum turnaround Time of the radio to switch from Rx to Tx or Tx to Rx in symbols.

Referenced by calc_frame_transmit_duration(), calculate_transaction_duration(), and tx_done_handling().

#define aUnitBackoffPeriod   (20)
#define BATT_LIFE_EXT_BIT_POS   (12)

Battery life extention bit position.

Referenced by mac_build_and_tx_beacon().

#define CLEAR_ADDR_64   (0ULL)

Unused EUI-64 address.

#define CONV_DBM_TO_phyTransmitPower (   dbm_value)
Value:
( \
dbm_value < -32 ? \
0x20 : \
( \
dbm_value > 31 ? \
0x1F : \
( \
dbm_value < 0 ? \
(((~(((uint8_t)((-1) * \
dbm_value)) - 1)) & 0x1F) | 0x20) : \
(uint8_t)dbm_value \
) \
) \
)

Converts a dBm value to a phyTransmitPower value.

Parameters
dbm_valuedBm value
Returns
phyTransmitPower_value using IEEE-defined format

Referenced by limit_tx_pwr(), and tal_set_tx_pwr().

#define CONV_phyTransmitPower_TO_DBM (   phyTransmitPower_value)
Value:
( \
((phyTransmitPower_value & 0x20) == 0x00) ? \
((int8_t)(phyTransmitPower_value & 0x3F)) : \
((-1) * \
(int8_t)((~((phyTransmitPower_value & \
0x1F) - 1)) & 0x1F)) \
)

Converts a phyTransmitPower value to a dBm value.

Parameters
phyTransmitPower_valuephyTransmitPower value
Returns
dBm using signed integer format

Referenced by convert_phyTransmitPower_to_reg_value(), and limit_tx_pwr().

#define ED_SAMPLE_DURATION_SYM   (8)

ED scan/sampling duration.

Referenced by tal_ed_start().

#define ED_VAL_LEN   (1)

Length of the ED value parameter number field.

Referenced by handle_received_frame_irq().

#define EXT_ADDR_LEN   (8)

Length (in octets) of extended address.

Referenced by mac_extract_mhr_addr_info().

#define FCF1_FV_2003   (0)

The mask for a IEEE 802.15.4-2003 compatible frame in the frame version subfield fcf1.

#define FCF1_FV_2006   (1)

The mask for a IEEE 802.15.4-2006 compatible frame in the frame version subfield fcf1.

#define FCF1_FV_2012   (2)

The mask for a IEEE 802.15.4e-2012 compatible frame in the frame version subfield fcf1.

#define FCF1_FV_MASK   (3 << FCF1_FV_SHIFT)

The mask for the frame version subfield fcf1.

#define FCF1_FV_SHIFT   (4)

Shift value for the frame version subfield fcf1.

#define FCF_2_DEST_ADDR_OFFSET   (2)

Offset of Destination Addressing Mode of octet two of MHR.

Referenced by add_pending_extended_address_cb(), add_pending_short_address_cb(), find_long_buffer(), find_short_buffer(), and mac_prep_disassoc_conf().

#define FCF_2_SOURCE_ADDR_OFFSET   (6)

Offset of Source Addressing Mode of octet two of MHR.

#define FCF_DEST_ADDR_OFFSET   (10)

Defines the offset of the destination address.

Referenced by mac_extract_mhr_addr_info().

#define FCF_FRAME_PENDING   (1 << 4)

The mask for the frame pending bit of the FCF.

Referenced by mac_build_and_tx_beacon(), mac_process_beacon_frame(), mac_process_data_frame(), and mac_process_data_request().

#define FCF_FRAME_VERSION_2003   (0 << 12)

The mask for a IEEE 802.15.4-2003 compatible frame in the frame version subfield.

#define FCF_FRAME_VERSION_2006   (1 << 12)

The mask for a IEEE 802.15.4-2006 compatible frame in the frame version subfield.

Referenced by build_data_frame(), mac_build_and_tx_beacon(), mac_process_coord_realign(), mac_process_orphan_realign(), mac_tx_coord_realignment_command(), and parse_mpdu().

#define FCF_FRAME_VERSION_2012   (2 << 12)

The mask for a IEEE 802.15.4e-2012 compatible frame in the frame version subfield.

#define FCF_FRAMETYPE_ACK   (0x02)

Define the ACK frame type.

(Table 65 IEEE 802.15.4 Specification)

#define FCF_FRAMETYPE_BEACON   (0x00)

Defines the beacon frame type.

(Table 65 IEEE 802.15.4 Specification)

Referenced by mac_build_and_tx_beacon(), mac_process_data_response(), parse_mpdu(), process_data_ind_not_transient(), process_data_ind_scanning(), and process_incoming_frame().

#define FCF_FRAMETYPE_DATA   (0x01)

Define the data frame type.

(Table 65 IEEE 802.15.4 Specification)

Referenced by build_data_frame(), build_null_data_frame(), mac_process_data_response(), mac_process_tal_data_ind(), parse_mpdu(), and process_data_ind_not_transient().

#define FCF_FRAMETYPE_LLDN   (0x04)

Define the LLDN frame type.

See 802.15.4e-2012

#define FCF_FRAMETYPE_MASK   (0x07)

Defines a mask for the frame type.

(Table 65 IEEE 802.15.4 Specification)

Referenced by process_incoming_frame().

#define FCF_FRAMETYPE_MP   (0x05)

Define the multipurpose frame type.

See 802.15.4e-2012

#define FCF_GET_FRAMETYPE (   x)    ((x) & FCF_FRAMETYPE_MASK)

Macro to get the frame type.

Referenced by parse_mpdu().

#define FCF_LEN   (2)

Length (in octets) of FCF.

Referenced by mac_extract_mhr_addr_info().

#define FCF_NO_ADDR   (0x00)

Address Mode: NO ADDRESS.

Referenced by build_data_frame(), mac_build_and_tx_data_req(), mcps_data_request(), and send_scan_cmd().

#define FCF_RESERVED_ADDR   (0x01)

Address Mode: RESERVED.

Referenced by mcps_data_request().

#define FCF_SECURITY_ENABLED   (1 << 3)

The mask for the security enable bit of the FCF.

Referenced by build_data_frame(), mac_build_and_tx_beacon(), mac_process_data_request(), mac_tx_gts_data(), mcps_data_request(), and parse_mpdu().

#define FCF_SET_DEST_ADDR_MODE (   x)
Value:
((unsigned int)((x) << \
#define FCF_DEST_ADDR_OFFSET
Defines the offset of the destination address.
Definition: ieee_const.h:1159

Macro to set the destination address mode.

Referenced by build_data_frame(), build_null_data_frame(), mac_build_and_tx_data_req(), mac_tx_coord_realignment_command(), mlme_associate_request(), mlme_associate_response(), mlme_disassociate_request(), mlme_gts_request(), send_scan_cmd(), and tx_pan_id_conf_notif().

#define FCF_SET_SOURCE_ADDR_MODE (   x)
Value:
((unsigned int)((x) << \
#define FCF_SOURCE_ADDR_OFFSET
Defines the offset of the source address.
Definition: ieee_const.h:1164

Macro to set the source address mode.

Referenced by build_data_frame(), build_null_data_frame(), mac_build_and_tx_beacon(), mac_build_and_tx_data_req(), mac_tx_coord_realignment_command(), mlme_associate_request(), mlme_associate_response(), mlme_disassociate_request(), mlme_gts_request(), send_scan_cmd(), and tx_pan_id_conf_notif().

#define FCF_SOURCE_ADDR_OFFSET   (14)

Defines the offset of the source address.

Referenced by mac_extract_mhr_addr_info().

#define FCS_LEN   (2)

Length (in octets) of FCS.

Referenced by mac_extract_mhr_addr_info(), tx_done_handling(), and wpan_mcps_data_req().

#define GTS_DEALLOCATE   (0)
#define GTS_RX_SLOT   (1)
#define GTS_SLOT_LENGTH_1   (0x01)
#define GTS_SLOT_LENGTH_10   (0x0A)
#define GTS_SLOT_LENGTH_11   (0x0B)
#define GTS_SLOT_LENGTH_12   (0x0C)
#define GTS_SLOT_LENGTH_13   (0x0D)
#define GTS_SLOT_LENGTH_14   (0x0E)
#define GTS_SLOT_LENGTH_15   (0x0F)
#define GTS_SLOT_LENGTH_2   (0x02)
#define GTS_SLOT_LENGTH_3   (0x03)
#define GTS_SLOT_LENGTH_4   (0x04)
#define GTS_SLOT_LENGTH_5   (0x05)
#define GTS_SLOT_LENGTH_6   (0x06)
#define GTS_SLOT_LENGTH_7   (0x07)
#define GTS_SLOT_LENGTH_8   (0x08)
#define GTS_SLOT_LENGTH_9   (0x09)
#define GTS_TX_SLOT   (0)

Referenced by mac_process_data_frame().

#define INVALID_SHORT_ADDRESS   (0xFFFF)
#define INVERSE_CHANNEL_MASK   (~VALID_CHANNEL_MASK)

Inverse channel masks for scanning.

Referenced by mlme_scan_request().

#define LENGTH_FIELD_LEN   (1)

Size of the length parameter.

Referenced by handle_received_frame_irq(), and tx_done_handling().

#define LQI_LEN   (1)

Length of the LQI number field.

Referenced by handle_received_frame_irq(), mac_process_tal_data_ind(), and process_incoming_frame().

#define MAC_NO_SHORT_ADDR_VALUE   (0xFFFE)
#define macAckWaitDuration   (0x40)

The maximum number of symbols to wait for an acknowledgment frame to arrive following a transmitted data frame.

This value is dependent on the currently selected logical channel. For 0 <= phyCurrentChannel <= 10, this value is equal to 120. For 11 <= phyCurrentChannel <= 26, this value is equal to 54.

  • Type: Integer
  • Range: 54 or 120
  • Default: 54

Referenced by mlme_set(), and tal_pib_set().

#define macAssociatedPANCoord   (0x56)

Indication of whether the device is associated to the PAN through the PAN coordinator.

A value of TRUE indicates the device has associated through the PAN coordinator. Otherwise, the value is set to FALSE.

  • Type: Boolean
  • Range: true or false
  • Default: false

Referenced by mlme_get(), and mlme_set().

#define macAssociatedPANCoord_def   (false)

Default value for PIB macAssociatedPANCoord.

Referenced by do_init_pib().

#define macAssociationPermit   (0x41)

Indication of whether a coordinator is currently allowing association.

A value of true indicates that association is permitted.

  • Type: Boolean
  • Range: true or false
  • Default: false

Referenced by mlme_get(), and mlme_set().

#define macAssociationPermit_def   (false)

Default value for PIB macAssociationPermit.

Referenced by do_init_pib().

#define macAutoRequest   (0x42)

Indication of whether a device automatically sends a data request command if its address is listed in the beacon frame.

A value of true indicates that the data request command is automatically sent.

  • Type: Boolean
  • Range: true or false
  • Default: true

Referenced by mlme_get(), and mlme_set().

#define macAutoRequest_def   (true)

Default value for PIB macAutoRequest.

Referenced by do_init_pib().

#define macBattLifeExt   (0x43)

Indication of whether battery life extension, by reduction of coordinator receiver operation time during the CAP, is enabled.

A value of true indicates that it is enabled.

  • Type: Boolean
  • Range: true or false
  • Default: false

Referenced by mac_coord_realignment_command_tx_success(), mlme_get(), mlme_set(), mlme_start_request(), and tal_pib_set().

#define macBattLifeExt_def   (false)

Default value for PIB macBattLifeExt.

#define macBattLifeExtPeriods   (0x44)

The number of backoff periods during which the receiver is enabled following a beacon in battery life extension mode.

This value is dependent on the currently selected logical channel. For 0 <= * phyCurrentChannel <= 10, this value is equal to 8. For 11 <= * phyCurrentChannel <= 26, this value is equal to 6.

  • Type: Integer
  • Range: 6 or 8
  • Default: 6

Referenced by mlme_get(), and mlme_set().

#define macBattLifeExtPeriods_def   (6)

Default value for PIB macBattLifeExtPeriods.

Referenced by do_init_pib().

#define macBeaconOrder   (0x47)

Specification of how often the coordinator transmits a beacon.

The macBeaconOrder, BO, and the beacon interval, BI, are related as follows: for 0 <= BO <= 14, BI = aBaseSuperframeDuration * 2^BO symbols. If BO = 15, the coordinator will not transmit a beacon.

  • Type: Integer
  • Range: 0 - 15
  • Default: 15

Referenced by mac_coord_realignment_command_tx_success(), mac_process_beacon_frame(), mlme_get(), mlme_set(), mlme_start_request(), and tal_pib_set().

#define macBeaconOrder_def   (15)

Default value for PIB macBeaconOrder.

#define macBeaconPayload   (0x45)

The contents of the beacon payload.

  • Type: Set of octets
  • Range:
  • Default: NULL

Referenced by mac_get_pib_attribute_size(), mlme_get(), and mlme_set().

#define macBeaconPayloadLength   (0x46)

The length, in octets, of the beacon payload.

  • Type: Integer
  • Range: 0 - aMaxBeaconPayloadLength
  • Default: 0

Referenced by mlme_get(), and mlme_set().

#define macBeaconPayloadLength_def   (0)

Default value for PIB macBeaconPayloadLength.

Referenced by do_init_pib().

#define macBeaconTxTime   (0x48)

The time that the device transmitted its last beacon frame, in symbol periods.

The measurement shall be taken at the same symbol boundary within every transmitted beacon frame, the location of which is implementation specific. The precision of this value shall be a minimum of 20 bits, with the lowest four bits being the least significant.

  • Type: Integer
  • Range: 0x000000 - 0xffffff
  • Default: 0x000000

Referenced by mac_start_beacon_timer(), mac_t_beacon_cb(), mlme_get(), process_data_ind_not_transient(), tal_pib_set(), usr_mlme_get_conf(), and wpan_mlme_set_req().

#define macBeaconTxTime_def   (0x000000)

Default value for PIB macBeaconTxTime.

#define macBSN   (0x49)

The sequence number added to the transmitted beacon frame.

  • Type: Integer
  • Range: 0x00 - 0xFF
  • Default: Random value from within the range.

Referenced by mlme_get(), and mlme_set().

#define macCoordExtendedAddress   (0x4A)

The 64 bit address of the coordinator with which the device is associated.

  • Type: IEEE address
  • Range: An extended 64bit IEEE address
  • Default: -

Referenced by mlme_get(), and mlme_set().

#define macCoordShortAddress   (0x4B)

The 16 bit short address assigned to the coordinator with which the device is associated.

A value of 0xfffe indicates that the coordinator is only using its 64 bit extended address. A value of 0xffff indicates that this value is unknown.

  • Type: Integer
  • Range: 0x0000 - 0xffff
  • Default: 0xffff

Referenced by mlme_disassociate_request(), mlme_get(), and mlme_set().

#define macCoordShortAddress_def   (0xFFFF)

Default value for PIB macCoordShortAddress.

Referenced by do_init_pib(), mac_process_associate_response(), and mac_t_assocresponsetime_cb().

#define macDSN   (0x4C)

The sequence number added to the transmitted data or MAC command frame.

  • Type: Integer
  • Range: 0x00 - 0xFF
  • Default: Random value from within the range.

Referenced by mlme_get(), and mlme_set().

#define macGTSPermit   (0x4D)

macGTSPermit is true if the PAN coordinator is to accept GTS requests, false otherwise.

  • Type: Boolean
  • Range: true or false
  • Default: true

Referenced by mlme_set().

#define macGTSPermit_def   (true)

Default value for PIB macGTSPermit.

Referenced by do_init_pib().

#define macIeeeAddress   (0xF0)

Private MAC PIB attribute to allow setting the MAC address in test mode.

Todo:
numbering needs to alligned with other special speer attributes

Referenced by mlme_get(), mlme_set(), and tal_pib_set().

#define macMaxBE   (0x57)

The maximum value of the backoff exponent, BE, in the CSMA-CA algorithm.

See 7.5.1.4 for a detailed explanation of the backoff exponent.

  • Type: Integer
  • Range: 3 - 8
  • Default: 5

Referenced by mlme_get(), mlme_set(), and tal_pib_set().

#define macMaxCSMABackoffs   (0x4E)

The maximum number of backoffs the CSMA-CA algorithm will attempt before declaring a channel access failure.

  • Type: Integer
  • Range: 0 - 5
  • Default: 4

Referenced by mlme_get(), mlme_set(), slotted_csma_state_handling(), and tal_pib_set().

#define macMaxCSMABackoffs_def   (4)

Default value for PIB macMaxCSMABackoffs.

#define macMaxFrameRetries   (0x59)

The maximum number of retries allowed after a transmission failure.

  • Type: Integer
  • Range: 0 - 7
  • Default: 3

Referenced by mlme_get(), mlme_set(), and tal_pib_set().

#define macMaxFrameTotalWaitTime   (0x58)

The maximum number of CAP symbols in a beaconenabled PAN, or symbols in a nonbeacon-enabled PAN, to wait either for a frame intended as a response to a data request frame or for a broadcast frame following a beacon with the Frame Pending subfield set to one.

This attribute, which shall only be set by the next higher layer, is dependent upon macMinBE, macMaxBE, macMaxCSMABackoffs and the number of symbols per octet. See 7.4.2 for the formula relating the attributes.

  • Type: Integer
  • Range: See equation (14)
  • Default: Dependent on currently selected PHY, indicated by phyCurrentPage

Referenced by mlme_get(), mlme_set(), usr_mlme_get_conf(), and wpan_mlme_set_req().

#define macMaxNumRxFramesDuringBackoff   (0x7F)

Private MAC PIB attribute to control the CSMA algorithm.

Maximum number of frames that are allowed to be received during CSMA backoff periods for a tx transaction.

#define macMinBE   (0x4F)

The minimum value of the backoff exponent in the CSMA-CA algorithm.

Note that if this value is set to 0, collision avoidance is disabled during the first iteration of the algorithm. Also note that for the slotted version of the CSMACA algorithm with the battery life extension enabled, the minimum value of the backoff exponent will be the lesser of 2 and the value of macMinBE.

  • Type: Integer
  • Range: 0 - 3
  • Default: 3

Referenced by mlme_get(), mlme_set(), and tal_pib_set().

#define macMinLIFSPeriod   (0x5E)

The minimum number of symbols forming a LIFS period.

  • Type: Integer
  • Range: See Table 3 in Clause 6 (40 symbols)
  • Default: Dependent on currently selected PHY, indicated by phyCurrentPage
#define macMinLIFSPeriod_def   (40)

Default value for PIB macMinLIFSPeriod.

Referenced by calc_frame_transmit_duration(), calculate_transaction_duration(), mac_process_beacon_frame(), and send_frame().

#define macMinSIFSPeriod   (0x5F)

The minimum number of symbols forming a SIFS period.

  • Type: Integer
  • Range: See Table 3 in Clause 6 (12 symbols)
  • Default: Dependent on currently selected PHY, indicated by phyCurrentPage
#define macMinSIFSPeriod_def   (12)

Default value for PIB macMinSIFSPeriod.

Referenced by calc_frame_transmit_duration(), calculate_transaction_duration(), mac_process_beacon_frame(), and send_frame().

#define macPANCoordExtendedAddress   (0x7D)

The 64-bit address of the PAN coordinator.

  • Type: IEEE address
  • Range: 0x0000000000000000 - 0xFFFFFFFFFFFFFFFF
  • Default: -

Referenced by mlme_set().

#define macPANCoordShortAddress   (0x7E)

The 16-bit short address assinged to the PAN coordinator.

  • Type: Integer
  • Range: 0x0000 - 0xFFFF
  • Default: 0x0000

Referenced by mlme_set().

#define macPANId   (0x50)

The 16 bit identifier of the PAN on which the device is operating.

If this value is 0xffff, the device is not associated.

  • Type: Integer
  • Range: 0x0000 - 0xffff
  • Default: 0xffff

Referenced by mac_awake_scan(), mac_coord_realignment_command_tx_success(), mac_idle_trans(), mac_process_associate_response(), mac_process_coord_realign(), mac_process_orphan_realign(), mac_t_assocresponsetime_cb(), mlme_associate_request(), mlme_get(), mlme_set(), mlme_start_request(), scan_proceed(), and tal_pib_set().

#define macPANId_def   (0xFFFF)

Default value for PIB macPANId.

Referenced by mac_idle_trans(), mac_process_associate_response(), and mac_t_assocresponsetime_cb().

#define macPromiscuousMode   (0x51)

This indicates whether the MAC sublayer is in a promiscuous (receive all) mode.

A value of true indicates that the MAC sublayer accepts all frames received from the PHY.

  • Type: Boolean
  • Range: true or false
  • Default: false

Referenced by mlme_get(), mlme_set(), and tal_pib_set().

#define macResponseWaitTime   (0x5A)

The maximum time, in multiples of aBaseSuperframeDuration, a device shall wait for a response command frame to be available following a request command frame.

  • Type: Integer
  • Range: 2 - 64
  • Default: 32

Referenced by mlme_get(), mlme_set(), usr_mlme_get_conf(), and wpan_mlme_set_req().

#define macResponseWaitTime_def   (32 * aBaseSuperframeDuration)

Default value for PIB macResponseWaitTime.

Referenced by do_init_pib().

#define macRxOnWhenIdle   (0x52)

This indicates whether the MAC sublayer is to enable its receiver during idle periods.

  • Type: Boolean
  • Range: true or false
  • Default: false

Referenced by mlme_get(), and mlme_set().

#define macRxOnWhenIdle_def   (false)

Default value for PIB macRxOnWhenIdle.

Referenced by do_init_pib().

#define macSecurityEnabled   (0x5D)

Indication of whether the MAC sublayer has security enabled.

A value of TRUE indicates that security is enabled, while a value of FALSE indicates that security is disabled.

  • Type: Boolean
  • Range: true or false
  • Default: false

Referenced by mlme_get(), and mlme_set().

#define macSecurityEnabled_def   (false)

Default value for PIB macSecurityEnabled.

Referenced by do_init_pib().

#define macShortAddress   (0x53)

The 16 bit address that the device uses to communicate in the PAN.

If the device is a PAN coordinator, this value shall be chosen before a PAN is started. Otherwise, the address is allocated by a coordinator during association. A value of 0xfffe indicates that the device has associated but has not been allocated an address. A value of 0xffff indicates that the device does not have a short address.

  • Type: Integer
  • Range: 0x0000 - 0xffff
  • Default: 0xffff

Referenced by mac_idle_trans(), mac_process_associate_response(), mac_process_coord_realign(), mac_process_orphan_realign(), mlme_get(), mlme_set(), and tal_pib_set().

#define macShortAddress_def   (0xFFFF)

Default value for PIB macShortAddress.

Referenced by mac_idle_trans().

#define macSuperframeOrder   (0x54)

This specifies the length of the active portion of the superframe, including the beacon frame.

The macSuperframeOrder, SO, and the superframe duration, SD, are related as follows: for 0 <= SO <= BO <= 14, SD = aBaseSuperframeDuration * 2SO symbols. If SO = 15, the superframe will not be active following the beacon.

  • Type: Integer
  • Range: 0 - 15
  • Default: 15

Referenced by mac_coord_realignment_command_tx_success(), mac_process_beacon_frame(), mlme_get(), mlme_set(), mlme_start_request(), and tal_pib_set().

#define macSuperframeOrder_def   (15)

Default value for PIB macSuperframeOrder.

#define macSyncSymbolOffset   (0x5B)

The offset, measured in symbols, between the symbol boundary at which the MLME captures the timestamp of each transmitted or received frame, and the onset of the first symbol past the SFD, namely, the first symbol of the Length field.

  • Type: Integer
  • Range: 0x000-0x100 for the 2.4 GHz PHY 0x000-0x400 for the 868/915 MHz PHY
  • Default: Implementation specific
#define macTimestampSupported   (0x5C)

Indication of whether the MAC sublayer supports the optional timestamping feature for incoming and outgoing data frames.

  • Type: Boolean
  • Range: true or false
  • Default: false
#define macTransactionPersistenceTime   (0x55)

The maximum time (in superframe periods) that a transaction is stored by a coordinator and indicated in its beacon.

  • Type: Integer
  • Range: 0x0000 - 0xffff
  • Default: 0x01f4

Referenced by mlme_get(), mlme_set(), usr_mlme_get_conf(), and wpan_mlme_set_req().

#define macTransactionPersistenceTime_def   (0x01F4)

Default value for PIB macTransactionPersistenceTime.

Referenced by do_init_pib().

#define MAX_KEY_ID_FIELD_LEN   (9)

Maximum length of the key id field.

#define MAX_MGMT_FRAME_LENGTH   (30)

Maximum size of the management frame(Association Response frame)

#define MIN_FRAME_LENGTH   (8)

Minimum size of a valid frame other than an Ack frame.

#define MLME_SCAN_TYPE_ACTIVE   (0x01)
#define MLME_SCAN_TYPE_ED   (0x00)
#define MLME_SCAN_TYPE_ORPHAN   (0x03)
#define MLME_SCAN_TYPE_PASSIVE   (0x02)
#define NO_PIB_INDEX   (0)
#define NUM_LONG_PEND_ADDR (   x)    (((x) & 0x70) >> 4)

Mask for the number of long addresses pending.

Referenced by mac_process_beacon_frame(), and parse_mpdu().

#define NUM_SHORT_PEND_ADDR (   x)    ((x) & 0x07)

Mask for the number of short addresses pending.

Referenced by mac_process_beacon_frame(), and parse_mpdu().

#define PAN_ACCESS_DENIED   (2)

Association status code value (see wpan_mlme_associate_resp()).

#define PAN_AT_CAPACITY   (1)

Association status code value (see wpan_mlme_associate_resp()).

#define PAN_COORD_BIT_POS   (14)

PAN coordinator bit position.

Referenced by mac_build_and_tx_beacon().

#define PAN_ID_LEN   (2)

Length (in octets) of PAN ID.

Referenced by mac_extract_mhr_addr_info().

#define PHY_OVERHEAD   (5)

Number of octets added by the PHY: 4 sync octets + SFD octet.

Referenced by calc_frame_transmit_duration(), calculate_transaction_duration(), mac_process_beacon_frame(), and tx_done_handling().

#define PHY_SUCCESS_DATA_PENDING   (0x10)

PHY_SUCCESS in phyAutoCSMACA when received ACK frame had the pending bit set.

#define phyCCAMode   (0x03)

The CCA mode.

  • CCA Mode 1: Energy above threshold. CCA shall report a busy medium upon detecting any energy above the ED threshold.
  • CCA Mode 2: Carrier sense only. CCA shall report a busy medium only upon the detection of a signal with the modulation and spreading characteristics of IEEE 802.15.4. This signal may be above or below the ED threshold.
  • CCA Mode 3: Carrier sense with energy above threshold. CCA shall report a busy medium only upon the detection of a signal with the modulation and spreading characteristics of IEEE 802.15.4 with energy above the ED threshold.

Referenced by mlme_get(), mlme_set(), and tal_pib_set().

#define phyChannelsSupported   (0x01)

The 5 most significant bits (MSBs) (b27, ..., b31) of phyChannelsSupported shall be reserved and set to 0, and the 27 LSBs (b0, b1, ..., b26) shall indicate the status (1 = available, 0 = unavailable) for each of the 27 valid channels (bk shall indicate the status of channel k).

Referenced by mlme_get().

#define phyCurrentChannel   (0x00)
#define phyCurrentPage   (0x04)

This is the current PHY channel page.

This is used in conjunction with phyCurrentChannel to uniquely identify the channel currently being used.

Referenced by mac_coord_realignment_command_tx_success(), mac_process_coord_realign(), mac_process_orphan_realign(), mlme_associate_request(), mlme_get(), mlme_set(), mlme_start_request(), mlme_sync_request(), scan_clean_up(), scan_proceed(), and tal_pib_set().

#define phyMaxFrameDuration   (0x05)

The maximum number of symbols in a frame: = phySHRDuration + ceiling([aMaxPHYPacketSize + 1] x phySymbolsPerOctet)

Referenced by mlme_get().

#define phySHRDuration   (0x06)

The duration of the synchronization header (SHR) in symbols for the current PHY.

Referenced by mlme_get().

#define phySymbolsPerOctet   (0x07)

The number of symbols per octet for the current PHY.

Referenced by mlme_get().

#define phyTransmitPower   (0x02)

The 2 MSBs represent the tolerance on the transmit power: 00 = 1 dB 01 = 3 dB 10 = 6 dB The 6 LSBs represent a signed integer in twos-complement format, corresponding to the nominal transmit power of the device in decibels relative to 1 mW.

The lowest value of phyTransmitPower shall be interpreted as less than or equal to 32 dBm.

Referenced by mlme_get(), mlme_set(), tal_pib_set(), and tal_set_tx_pwr().

#define PL_POS_DST_ADDR_START   (6)

Octet start position of Destination Address field within payload array of frame_info_t.

Referenced by add_pending_extended_address_cb(), add_pending_short_address_cb(), find_long_buffer(), find_short_buffer(), mac_mlme_comm_status(), and mac_prep_disassoc_conf().

#define PL_POS_DST_PAN_ID_START   (4)

Octet start position of Destination PAN-Id field within payload array of frame_info_t.

Referenced by mac_process_data_request().

#define PL_POS_FCF_1   (1)

Octet position of FCF octet one within payload array of frame_info_t.

Referenced by calc_frame_transmit_duration(), calculate_transaction_duration(), mac_process_data_request(), process_incoming_frame(), and tx_done_handling().

#define PL_POS_FCF_2   (2)

Octet position of FCF octet two within payload array of frame_info_t.

Referenced by add_pending_extended_address_cb(), add_pending_short_address_cb(), find_long_buffer(), find_short_buffer(), and mac_prep_disassoc_conf().

#define PL_POS_SEQ_NUM   (3)

Octet position of Sequence Number octet within payload array of frame_info_t.

#define SEQ_NUM_LEN   (1)

Length of the sequence number field.

Referenced by mac_extract_mhr_addr_info().

#define SHORT_ADDR_LEN   (2)

Length (in octets) of short address.

Referenced by mac_extract_mhr_addr_info().

#define WPAN_TXOPT_ACK   (0x01)

Value for TxOptions parameter in wpan_mcps_data_req().

Referenced by build_data_frame(), and mcps_data_request().

#define WPAN_TXOPT_GTS   (0x02)

Value for TxOptions parameter in wpan_mcps_data_req().

Referenced by mcps_data_request().

#define WPAN_TXOPT_GTS_ACK   (0x03)

Value for TxOptions parameter in wpan_mcps_data_req().

#define WPAN_TXOPT_INDIRECT   (0x04)

Value for TxOptions parameter in wpan_mcps_data_req().

Referenced by mcps_data_request().

#define WPAN_TXOPT_INDIRECT_ACK   (0x05)

Value for TxOptions parameter in wpan_mcps_data_req().

#define WPAN_TXOPT_OFF   (0x00)

Value for TxOptions parameter in wpan_mcps_data_req().

typedef enum cca_mode_tag cca_mode_t

CCA mode enumeration.

typedef enum ch_pg_tag ch_pg_t
typedef enum phy_enum_tag phy_enum_t

CCA Modes of the transceiver.

CCA mode enumeration.

Enumerator
CCA_MODE_0_CS_OR_ED 
CCA_MODE_1_ED 
CCA_MODE_2_CS 
CCA_MODE_3_CS_ED 
CCA_MODE_4_ALOHA 
enum ch_pg_tag
Enumerator
CH_PG_2003 
CH_PG_2006 
CH_PG_CHINA 
CH_PG_JAPAN 
CH_PG_MSK 
CH_PG_LRP_UWB 
CH_PG_SUN 
CH_PG_GENERIC_PHY 
CH_PG_16 
CH_PG_18 
CH_PG_INVALID 
Enumerator
PHY_BUSY 

The CCA attempt has detected a busy channel.

PHY_BUSY_RX 

The transceiver is asked to change its state while receiving.

PHY_BUSY_TX 

The transceiver is asked to change its state while transmitting.

PHY_FORCE_TRX_OFF 

The transceiver is to be switched off.

PHY_IDLE 

The CCA attempt has detected an idle channel.

PHY_INVALID_PARAMETER 

A SET/GET request was issued with a parameter in the primitive that is out of the valid range.

PHY_RX_ON 

The transceiver is in or is to be configured into the receiver enabled state.

PHY_SUCCESS 

A SET/GET, an ED operation, or a transceiver state change was successful.

PHY_TRX_OFF 

The transceiver is in or is to be configured into the transceiver disabled state.

PHY_TX_ON 

The transceiver is in or is to be configured into the transmitter enabled state.

PHY_UNSUPPORTED_ATTRIBUTE 

A SET/GET request was issued with the identifier of an attribute that is not supported.

PHY_READ_ONLY 

A SET/GET request was issued with the identifier of an attribute that is read-only.

Enumerator
TRX_CCA_MODE0 
TRX_CCA_MODE1 
TRX_CCA_MODE2 
TRX_CCA_MODE3