I found the following comment in the p802__15__4sscs.cc file in the WPAN folder:
/* The following primitives are availabe from MAC sublayer. You can call these primitives from SSCS or other upper layer 00686 * void MCPS_DATA_request(UINT_8 SrcAddrMode,UINT_16 SrcPANId,IE3ADDR SrcAddr, 00687 * UINT_8 DstAddrMode,UINT_16 DstPANId,IE3ADDR DstAddr, 00688 * UINT_8 msduLength,Packet *msdu,UINT_8 msduHandle,UINT_8 TxOptions); 00689 * void MCPS_DATA_indication(UINT_8 SrcAddrMode,UINT_16 SrcPANId,IE3ADDR SrcAddr, 00690 * UINT_8 DstAddrMode,UINT_16 DstPANId,IE3ADDR DstAddr, 00691 * UINT_8 msduLength,Packet *msdu,UINT_8 mpduLinkQuality, 00692 * bool SecurityUse,UINT_8 ACLEntry); 00693 * void MCPS_PURGE_request(UINT_8 msduHandle); 00694 * void MLME_ASSOCIATE_request(UINT_8 LogicalChannel,UINT_8 CoordAddrMode,UINT_16 CoordPANId,IE3ADDR CoordAddress, 00695 * UINT_8 CapabilityInformation,bool SecurityEnable); 00696 * void MLME_ASSOCIATE_response(IE3ADDR DeviceAddress,UINT_16 AssocShortAddress,MACenum status,bool SecurityEnable); 00697 * void MLME_DISASSOCIATE_request(IE3ADDR DeviceAddress,UINT_8 DisassociateReason,bool SecurityEnable); 00698 * void MLME_DISASSOCIATE_indication(IE3ADDR DeviceAddress,UINT_8 DisassociateReason,bool SecurityUse,UINT_8 ACLEntry); 00699 * void MLME_DISASSOCIATE_confirm(MACenum status); 00700 * void MLME_GET_request(MPIBAenum PIBAttribute); 00701 * void MLME_GTS_request(UINT_8 GTSCharacteristics,bool SecurityEnable); 00702 * void MLME_GTS_confirm(UINT_8 GTSCharacteristics,MACenum status); 00703 * void MLME_GTS_indication(UINT_16 DevAddress,UINT_8 GTSCharacteristics, 00704 * bool SecurityUse, UINT_8 ACLEntry); 00705 * void MLME_ORPHAN_indication(IE3ADDR OrphanAddress,bool SecurityUse,UINT_8 ACLEntry); 00706 * void MLME_ORPHAN_response(IE3ADDR OrphanAddress,UINT_16 ShortAddress,bool AssociatedMember,bool SecurityEnable); 00707 * void MLME_RESET_request(bool SetDefaultPIB); 00708 * void MLME_RX_ENABLE_request(bool DeferPermit,UINT_32 RxOnTime,UINT_32 RxOnDuration); 00709 * void MLME_RX_ENABLE_confirm(MACenum status); 00710 * void MLME_SCAN_request(UINT_8 ScanType,UINT_32 ScanChannels,UINT_8 ScanDuration); 00711 * void MLME_SET_request(MPIBAenum PIBAttribute,MAC_PIB *PIBAttributeValue); 00712 * void MLME_SET_confirm(MACenum status,MPIBAenum PIBAttribute); 00713 * void MLME_START_request(UINT_16 PANId,UINT_8 LogicalChannel,UINT_8 BeaconOrder, 00714 * UINT_8 SuperframeOrder,bool PANCoordinator,bool BatteryLifeExtension, 00715 * bool CoordRealignment,bool SecurityEnable); 00716 * void MLME_SYNC_request(UINT_8 LogicalChannel, bool TrackBeacon); 00717 * void MLME_SYNC_LOSS_indication(MACenum LossReason); 00718 * void MLME_POLL_request(UINT_8 CoordAddrMode,UINT_16 CoordPANId,IE3ADDR CoordAddress,bool SecurityEnable); 00719 * void MLME_POLL_confirm(MACenum status); 00720 * However, when i look up in the p802_15_4mac.cc, i see that the function is available but there is no definition: void Mac802_15_4::MLME_GTS_request(UINT_8 GTSCharacteristics,bool SecurityEnable) { } void Mac802_15_4::MLME_GTS_confirm(UINT_8 GTSCharacteristics,MACenum status) { } void Mac802_15_4::MLME_GTS_indication(UINT_16 DevAddress,UINT_8 GTSCharacteristics, bool SecurityUse, UINT_8 ACLEntry) { } Also, the following comment was found in the header file: /*TBD*/ void MLME_GTS_request(UINT_8 GTSCharacteristics,bool SecurityEnable); /*TBD*/ void MLME_GTS_confirm(UINT_8 GTSCharacteristics,MACenum status); /*TBD*/ void MLME_GTS_indication(UINT_16 DevAddress,UINT_8 GTSCharacteristics, bool SecurityUse, UINT_8 ACLEntry); I would like to implement GTS for 802.15.4 MAC and would like to know if anybody has an implementation available or a suggestion as how or where it is available? Thank you. Sincerely, Ravit.