3.2.38 MAC_Pib_t Struct

C

typedef struct mac_pib_tag {
    /** Holds the 64 bit address of the coordinator with which the
    * device is associated. */
    uint64_t mac_CoordExtendedAddress;
#if (MAC_INDIRECT_DATA_FFD == 1)

    /** Holds the maximum time (in superframe periods) that a indirect
    * transaction is stored by a PAN coordinator. */
    uint16_t mac_TransactionPersistenceTime;
#endif
    
    /** Holds the 16 bit short address of 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. */
    uint16_t mac_CoordShortAddress;

#if (MAC_INDIRECT_DATA_BASIC == 1)
    /** 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.
    * Maximum values:
    * O-QPSK (2.4 GHz and 900 MHz for Channel page 2): 25766
    * BPSK (900 MHz for Channel page 0): 26564
    * Both values are valid for
    * macMinBE = 8
    * macMaxBE = 8
    * macMaxCSMABackoffs = 5
    * This PIB attribute is only used if basic indirect data transmission
    * is used or if beacon enabled network is enabled. */
    uint16_t mac_MaxFrameTotalWaitTime;
#endif
    
    /** The maximum time, in multiples of aBaseSuperframeDuration, a device
    * shall wait for a response command frame to be available following a
    * request command frame. */
    uint16_t mac_ResponseWaitTime;
#if (MAC_ASSOCIATION_INDICATION_RESPONSE == 1)

    /** Holds the value which states whether a coordinator is currently
    * allowing association. A value of true indicates that association
    * is permitted. */
    uint8_t mac_AssociationPermit;
#endif

#if (MAC_START_REQUEST_CONFIRM == 1)

    /** Holds the length, in octets, of the beacon payload. */
    uint8_t mac_BeaconPayloadLength;
    
    /** Holds the sequence number added to the transmitted beacon frame. */
    uint8_t mac_BSN;
#endif

#if (MAC_ASSOCIATION_REQUEST_CONFIRM == 1)

    /** Indication of whether the device is associated to the PAN through the
    * PANncoordinator. A value of TRUE indicates the device has associated
    * through the PAN coordinator. Otherwise, the value is set to FALSE. */
    uint8_t mac_AssociatedPANCoord;
#endif
    
    /** Holds the value which states 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. */
    uint8_t mac_AutoRequest;
    
    /** Holds the value which states 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. */
    uint8_t mac_BattLifeExtPeriods;
    
    /* Holds the sequence number of the transmitted data or command frame. */
    uint8_t mac_DSN;
    
    /** Holds the value which states whether the MAC sublayer is to enable
    * its receiver during idle periods. */
    bool mac_RxOnWhenIdle;
    
    /** 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. */
    bool mac_SecurityEnabled;
    
    /** Private MAC PIB variables, only valid for testing purposes */
#ifdef TEST_HARNESS
    
    /** Holds the private MAC PIB attribute to generate a frame with an
    * illegale frame type. */
    uint8_t privateIllegalFrameType;
    
    /** Holds the private MAC PIB attribute which suppresses the initiation
    * of a data request frame after association request. */
    uint8_t privateNoDataAfterAssocReq;
    
    /** Holds the private MAC PIB attribute to pretend virtual Beacon-enabled
    * PANs. */
    uint8_t privateVirtualPANs;
#endif
} MAC_Pib_t;

Summary

Structure implementing the MAC PIBs

Description

None

Remarks

None