Cascoda SDK
Cascoda SDK for building software to run with CA-821x transceivers
IEEE 802.15.4 definitions

Definitions used by the IEEE 802.15.4 Specification. More...

Collaboration diagram for IEEE 802.15.4 definitions:

Typedefs

typedef enum mac_status ca_mac_status
 MAC Status Codes (see 802.15.4 2006 spec table 78) More...
 

Enumerations

enum  mac_constants {
  aMaxPHYPacketSize = 127 , aMaxMACSafePayloadSize = 102 , aMaxMACPayloadSize = aMaxPHYPacketSize - 9 , aTurnaroundTime = 12 ,
  aSymbolPeriod_us = 16 , aNumSuperframeSlots = 16 , aBaseSlotDuration = 60 , aBaseSuperframeDuration = aBaseSlotDuration * aNumSuperframeSlots ,
  aMaxBeaconOverhead = 75 , aMaxBeaconPayloadLength = aMaxPHYPacketSize - aMaxBeaconOverhead , aUnitBackoffPeriod = 20 , MAX_ATTRIBUTE_SIZE = 250 ,
  MAX_DATA_SIZE = 114 , M_MinimumChannel = 11 , M_MaximumChannel = 26 , M_ValidChannels = 0x07FFF800 ,
  MAX_FRAME_DURATION = 266 , MAC_BROADCAST_ADDRESS = 0xFFFF
}
 
enum  mac_status {
  MAC_SUCCESS = 0x00 , MAC_ERROR = 0x01 , MAC_CANCELLED = 0x02 , MAC_READY_FOR_POLL = 0x03 ,
  MAC_COUNTER_ERROR = 0xDB , MAC_IMPROPER_KEY_TYPE = 0xDC , MAC_IMPROPER_SECURITY_LEVEL = 0xDD , MAC_UNSUPPORTED_LEGACY = 0xDE ,
  MAC_UNSUPPORTED_SECURITY = 0xDF , MAC_BEACON_LOST = 0xE0 , MAC_CHANNEL_ACCESS_FAILURE = 0xE1 , MAC_DENIED = 0xE2 ,
  MAC_DISABLE_TRX_FAILURE = 0xE3 , MAC_SECURITY_ERROR = 0xE4 , MAC_FRAME_TOO_LONG = 0xE5 , MAC_INVALID_GTS = 0xE6 ,
  MAC_INVALID_HANDLE = 0xE7 , MAC_INVALID_PARAMETER = 0xE8 , MAC_NO_ACK = 0xE9 , MAC_NO_BEACON = 0xEA ,
  MAC_NO_DATA = 0xEB , MAC_NO_SHORT_ADDRESS = 0xEC , MAC_OUT_OF_CAP = 0xED , MAC_PAN_ID_CONFLICT = 0xEE ,
  MAC_REALIGNMENT = 0xEF , MAC_TRANSACTION_EXPIRED = 0xF0 , MAC_TRANSACTION_OVERFLOW = 0xF1 , MAC_TX_ACTIVE = 0xF2 ,
  MAC_UNAVAILABLE_KEY = 0xF3 , MAC_UNSUPPORTED_ATTRIBUTE = 0xF4 , MAC_INVALID_ADDRESS = 0xF5 , MAC_ON_TIME_TOO_LONG = 0xF6 ,
  MAC_PAST_TIME = 0xF7 , MAC_TRACKING_OFF = 0xF8 , MAC_INVALID_INDEX = 0xF9 , MAC_LIMIT_REACHED = 0xFA ,
  MAC_READ_ONLY = 0xFB , MAC_SCAN_IN_PROGRESS = 0xFC , MAC_SUPERFRAME_OVERLAP = 0xFD , MAC_SYSTEM_ERROR = 0xFF
}
 MAC Status Codes (see 802.15.4 2006 spec table 78) More...
 
enum  mac_addr_mode { MAC_MODE_NO_ADDR = 0x00 , MAC_MODE_RESERVED = 0x01 , MAC_MODE_SHORT_ADDR = 0x02 , MAC_MODE_LONG_ADDR = 0x03 }
 MAC Address Mode Definitions. More...
 
enum  MAC_TXOPT {
  TXOPT_ACKREQ = 0x01 , TXOPT_GTS = 0x02 , TXOPT_INDIRECT = 0x04 , TXOPT_NS_SECURE_INDIRECT = 0x20 ,
  TXOPT_NS_FPEND = 0x40 , TXOPT_NS_THREADNONCE = 0x80
}
 Enumeration of different MAC TxOptions. More...
 
enum  mlme_scan_type { ENERGY_DETECT = 0x00 , ACTIVE_SCAN = 0x01 , PASSIVE_SCAN = 0x02 , ORPHAN_SCAN = 0x03 }
 MAC ScanType Parameter for MLME_SCAN Request and Confirm. More...
 
enum  ca821x_scan_durations {
  SCAN_DURATION_30MS = 0 , SCAN_DURATION_46MS = 1 , SCAN_DURATION_77MS = 2 , SCAN_DURATION_138MS = 3 ,
  SCAN_DURATION_261MS = 4 , SCAN_DURATION_507MS = 5 , SCAN_DURATION_998MS = 6 , SCAN_DURATION_2S = 7 ,
  SCAN_DURATION_4S = 8 , SCAN_DURATION_8S = 9 , SCAN_DURATION_16S = 10 , SCAN_DURATION_31S = 11 ,
  SCAN_DURATION_63S = 12 , SCAN_DURATION_126S = 13 , SCAN_DURATION_252S = 14
}
 Real time translations for MLME-SCAN ScanDuration (per channel) More...
 
enum  mac_frame_type { MAC_FRAME_TYPE_BEACON = 0 , MAC_FRAME_TYPE_DATA = 1 , MAC_FRAME_TYPE_ACK = 2 , MAC_FRAME_TYPE_COMMAND = 3 }
 Enumeration of different MAC Frame Types. More...
 
enum  mac_cmd_frame_id {
  CMD_ASSOCIATION_REQ = 1 , CMD_ASSOCIATION_RSP = 2 , CMD_DISASSOCIATION_NFY = 3 , CMD_DATA_REQ = 4 ,
  CMD_PANID_CONFLICT_NFY = 5 , CMD_ORPHAN_NFY = 6 , CMD_BEACON_REQ = 7 , CMD_COORD_REALIGN = 8 ,
  CMD_GTS_REQ = 9
}
 MAC Command Frame Identifiers. More...
 
enum  mac_association_status { ASSOC_STATUS_SUCCESS = 0x00 , ASSOC_STATUS_AT_CAPACITY = 0x01 , ASSOC_STATUS_ACCESS_DENIED = 0x02 }
 Association status (see 802.15.4-2006 Table 83) More...
 
enum  mac_disassociate_reason { DISASSOC_REASON_EVICT = 1 , DISASSOC_REASON_LEAVE = 2 }
 Reason for disassociation (see 802.15.4-2006 7.3.3.2) More...
 
enum  pib_attribute {
  phyCurrentChannel = 0x00 , phyChannelsSupport = 0x01 , phyTransmitPower = 0x02 , phyCCAMode = 0x03 ,
  phyCurrentPage = 0x04 , phyMaxFrameDuration = 0x05 , phySHRDuration = 0x06 , phySymbolsPerOctet = 0x07 ,
  phyPibFirst = phyCurrentChannel , phyPibLast = phySymbolsPerOctet , macAckWaitDuration = 0x40 , macAssociationPermit = 0x41 ,
  macAutoRequest = 0x42 , macBattLifeExt = 0x43 , macBattLifeExtPeriods = 0x44 , macBeaconPayload = 0x45 ,
  macBeaconPayloadLength = 0x46 , macBeaconOrder = 0x47 , macBeaconTxTime = 0x48 , macBSN = 0x49 ,
  macCoordExtendedAddress = 0x4a , macCoordShortAddress = 0x4b , macDSN = 0x4c , macGTSPermit = 0x4d ,
  macMaxCSMABackoffs = 0x4e , macMinBE = 0x4f , macPANId = 0x50 , macPromiscuousMode = 0x51 ,
  macRxOnWhenIdle = 0x52 , macShortAddress = 0x53 , macSuperframeOrder = 0x54 , macTransactionPersistenceTime = 0x55 ,
  macAssociatedPANCoord = 0x56 , macMaxBE = 0x57 , macMaxFrameTotalWaitTime = 0x58 , macMaxFrameRetries = 0x59 ,
  macResponseWaitTime = 0x5A , macSyncSymbolOffset = 0x5B , macTimestampSupported = 0x5C , macSecurityEnabled = 0x5D ,
  macPibFirst = macAckWaitDuration , macKeyTable = 0x71 , macKeyTableEntries = 0x72 , macDeviceTable = 0x73 ,
  macDeviceTableEntries = 0x74 , macSecurityLevelTable = 0x75 , macSecurityLevelTableEntries = 0x76 , macFrameCounter = 0x77 ,
  macAutoRequestSecurityLevel = 0x78 , macAutoRequestKeyIdMode = 0x79 , macAutoRequestKeySource = 0x7A , macAutoRequestKeyIndex = 0x7B ,
  macDefaultKeySource = 0x7C , macPANCoordExtendedAddress = 0x7D , macPANCoordShortAddress = 0x7E , macSecPibFirst = macKeyTable ,
  macSecPibLast = macPANCoordShortAddress , nsIEEEAddress = 0xFF
}
 PHY/MAC PIB Attribute Enumerations. More...
 

Detailed Description

Definitions used by the IEEE 802.15.4 Specification.

Typedef Documentation

◆ ca_mac_status

typedef enum mac_status ca_mac_status

MAC Status Codes (see 802.15.4 2006 spec table 78)

Enumeration Type Documentation

◆ ca821x_scan_durations

Real time translations for MLME-SCAN ScanDuration (per channel)

Enumerator
SCAN_DURATION_30MS 
SCAN_DURATION_46MS 
SCAN_DURATION_77MS 
SCAN_DURATION_138MS 
SCAN_DURATION_261MS 
SCAN_DURATION_507MS 
SCAN_DURATION_998MS 
SCAN_DURATION_2S 
SCAN_DURATION_4S 
SCAN_DURATION_8S 
SCAN_DURATION_16S 
SCAN_DURATION_31S 
SCAN_DURATION_63S 
SCAN_DURATION_126S 
SCAN_DURATION_252S 

◆ mac_addr_mode

MAC Address Mode Definitions.

Enumerator
MAC_MODE_NO_ADDR 

no address

MAC_MODE_RESERVED 

reserved

MAC_MODE_SHORT_ADDR 

16-bit short address

MAC_MODE_LONG_ADDR 

64-bit extended address

◆ mac_association_status

Association status (see 802.15.4-2006 Table 83)

Enumerator
ASSOC_STATUS_SUCCESS 
ASSOC_STATUS_AT_CAPACITY 
ASSOC_STATUS_ACCESS_DENIED 

◆ mac_cmd_frame_id

MAC Command Frame Identifiers.

Enumerator
CMD_ASSOCIATION_REQ 
CMD_ASSOCIATION_RSP 
CMD_DISASSOCIATION_NFY 
CMD_DATA_REQ 
CMD_PANID_CONFLICT_NFY 
CMD_ORPHAN_NFY 
CMD_BEACON_REQ 
CMD_COORD_REALIGN 
CMD_GTS_REQ 

◆ mac_constants

Enumerator
aMaxPHYPacketSize 
aMaxMACSafePayloadSize 
aMaxMACPayloadSize 
aTurnaroundTime 
aSymbolPeriod_us 
aNumSuperframeSlots 
aBaseSlotDuration 
aBaseSuperframeDuration 
aMaxBeaconOverhead 
aMaxBeaconPayloadLength 
aUnitBackoffPeriod 
MAX_ATTRIBUTE_SIZE 
MAX_DATA_SIZE 
M_MinimumChannel 
M_MaximumChannel 
M_ValidChannels 
MAX_FRAME_DURATION 
MAC_BROADCAST_ADDRESS 

◆ mac_disassociate_reason

Reason for disassociation (see 802.15.4-2006 7.3.3.2)

Enumerator
DISASSOC_REASON_EVICT 

The coordinator wishes the device to leave the PAN.

DISASSOC_REASON_LEAVE 

The device wishes to leave the PAN.

◆ mac_frame_type

Enumeration of different MAC Frame Types.

Enumerator
MAC_FRAME_TYPE_BEACON 
MAC_FRAME_TYPE_DATA 
MAC_FRAME_TYPE_ACK 
MAC_FRAME_TYPE_COMMAND 

◆ mac_status

enum mac_status

MAC Status Codes (see 802.15.4 2006 spec table 78)

Enumerator
MAC_SUCCESS 
MAC_ERROR 
MAC_CANCELLED 
MAC_READY_FOR_POLL 
MAC_COUNTER_ERROR 
MAC_IMPROPER_KEY_TYPE 
MAC_IMPROPER_SECURITY_LEVEL 
MAC_UNSUPPORTED_LEGACY 
MAC_UNSUPPORTED_SECURITY 
MAC_BEACON_LOST 
MAC_CHANNEL_ACCESS_FAILURE 
MAC_DENIED 
MAC_DISABLE_TRX_FAILURE 
MAC_SECURITY_ERROR 
MAC_FRAME_TOO_LONG 
MAC_INVALID_GTS 
MAC_INVALID_HANDLE 
MAC_INVALID_PARAMETER 
MAC_NO_ACK 
MAC_NO_BEACON 
MAC_NO_DATA 
MAC_NO_SHORT_ADDRESS 
MAC_OUT_OF_CAP 
MAC_PAN_ID_CONFLICT 
MAC_REALIGNMENT 
MAC_TRANSACTION_EXPIRED 
MAC_TRANSACTION_OVERFLOW 
MAC_TX_ACTIVE 
MAC_UNAVAILABLE_KEY 
MAC_UNSUPPORTED_ATTRIBUTE 
MAC_INVALID_ADDRESS 
MAC_ON_TIME_TOO_LONG 
MAC_PAST_TIME 
MAC_TRACKING_OFF 
MAC_INVALID_INDEX 
MAC_LIMIT_REACHED 
MAC_READ_ONLY 
MAC_SCAN_IN_PROGRESS 
MAC_SUPERFRAME_OVERLAP 
MAC_SYSTEM_ERROR 

◆ MAC_TXOPT

enum MAC_TXOPT

Enumeration of different MAC TxOptions.

Enumerator
TXOPT_ACKREQ 

Request acknowledgement from receiving node.

TXOPT_GTS 

Use guaranteed time slot (Not supported)

TXOPT_INDIRECT 

Transmit indirectly.

TXOPT_NS_SECURE_INDIRECT 

Nonstandard, only send the indirect message in reply to a secure poll.

TXOPT_NS_FPEND 

Nonstandard, set the frame pending bit on the outgoing frame.

TXOPT_NS_THREADNONCE 

Nonstandard, use Thread-specific nonce for mode2 frames.

◆ mlme_scan_type

MAC ScanType Parameter for MLME_SCAN Request and Confirm.

See 802.15.4 2006 spec sections 7.1.11.1 and 7.5.2.1

Enumerator
ENERGY_DETECT 
ACTIVE_SCAN 
PASSIVE_SCAN 
ORPHAN_SCAN 

◆ pib_attribute

PHY/MAC PIB Attribute Enumerations.

Enumerator
phyCurrentChannel 
phyChannelsSupport 
phyTransmitPower 
phyCCAMode 
phyCurrentPage 
phyMaxFrameDuration 
phySHRDuration 
phySymbolsPerOctet 
phyPibFirst 
phyPibLast 
macAckWaitDuration 
macAssociationPermit 
macAutoRequest 
macBattLifeExt 
macBattLifeExtPeriods 
macBeaconPayload 
macBeaconPayloadLength 
macBeaconOrder 
macBeaconTxTime 
macBSN 
macCoordExtendedAddress 
macCoordShortAddress 
macDSN 
macGTSPermit 
macMaxCSMABackoffs 
macMinBE 
macPANId 
macPromiscuousMode 
macRxOnWhenIdle 
macShortAddress 
macSuperframeOrder 
macTransactionPersistenceTime 
macAssociatedPANCoord 
macMaxBE 
macMaxFrameTotalWaitTime 
macMaxFrameRetries 
macResponseWaitTime 
macSyncSymbolOffset 
macTimestampSupported 
macSecurityEnabled 
macPibFirst 
macKeyTable 
macKeyTableEntries 
macDeviceTable 
macDeviceTableEntries 
macSecurityLevelTable 
macSecurityLevelTableEntries 
macFrameCounter 
macAutoRequestSecurityLevel 
macAutoRequestKeyIdMode 
macAutoRequestKeySource 
macAutoRequestKeyIndex 
macDefaultKeySource 
macPANCoordExtendedAddress 
macPANCoordShortAddress 
macSecPibFirst 
macSecPibLast 
nsIEEEAddress