-
Notifications
You must be signed in to change notification settings - Fork 4
Home
simen edited this page Dec 21, 2016
·
2 revisions
zstack-constants exports all constants used in TI's zigbee z-stack.
$ npm install zstack-constants --save
To use a constant, just access it within the correct layer, namespace, and the property name. Here is a quick example to access the constant ACK_REQUEST of AF options:
var ZSC = require('zstack-constants');
// Access properties under root space
console.log(ZSC.BEACON_MAX_DEPTH); // 15
console.log(ZSC.DEF_NWK_RADIUS); // 30
console.log(ZSC.AF_DEFAULT_RADIUS); // 30
// Access constants in config and cmdStatus namespaces
console.log(ZSC.config.NWK_MAX_DEVICES); // 21
console.log(ZSC.cmdStatus.BUFFER_FULL); // 17
// Access constants in options and interpanCtl namespaces under AF layer
console.log(ZSC.AF.options.ACK_REQUEST); // 16
console.log(ZSC.AF.interpanCtl.SET); // 1
// Access constants in adcResolution and gpioOperation namespaces under SYS layer
console.log(ZSC.SYS.adcResolution.BIT_10); // 1
console.log(ZSC.SYS.gpioOperation.TOGGLE); // 4
// Access constants in stackProfileId and deviceLogicalType namespaces under ZDO layer
console.log(ZSC.ZDO.stackProfileId.ZIGBEEPRO_PROFILE); // 2
console.log(ZSC.ZDO.deviceLogicalType.ROUTER); // 1
zstack-constants provides you with an API getStatus()
to get the defintion of a status code. This may help in showing error message when a bad status code coming back.
Get the definition of a status code. This method accepts an input code in string or in number, and it will return an object like { key: 'BUFFER_FULL', value: 17 }
to tell the status definition. This method will return undefined
if the given status code is not found.
Arguments:
-
code
(Number | String): Status code in string or in number.
Returns:
- (Object): Status definition
Examples:
var ZSC = require('zstack-constants');
ZSC.getStatus(16); // { key: 'MEM_ERROR', value: 16 }
ZSC.getStatus(183); // { key: 'APS_NO_ACK', value: 183 }
ZSC.getStatus('APS_NO_ACK'); // { key: 'APS_NO_ACK', value: 183 }
- The following table lists the layers and namespaces that zstack-constants exports. (The namespaces given with a link are those collected in common.json)
Layer | Namespace |
---|---|
- | Root space, acces constants with ZSC.fooNamespace or ZSC.barProperty . The exported properties include BEACON_MAX_DEPTH , DEF_NWK_RADIUS , and AF_DEFAULT_RADIUS . The exported namespaces include cmdStatus and config . |
AF | The exported namespaces of AF layer include cmdStatus , addressMode , interpanCtl , networkLatencyReq , and options . |
MAC | The exported namespaces of MAC layer include cmdStatus , capabInfoMask , logicalChannels , channelMask , securityLevel , addressMode , scanDuration , assocStatus , channelPage , txOpt , commReason , disassocReason , keyIdMode , beaconOrder , scanType , frontEndMode , and pidAttr . |
SYS | The exported namespaces of SYS layer include cmdStatus , nvItemIds , resetType , capabilities , osalTimerEvent , adcChannels , adcResolution , gpioOperation , sysStkTune , resetReason , nvItemInitStatus , and nvItemDeleteStatus . |
UTIL | The exported namespaces of UTIL layer include cmdStatus , devStates , channelMask , securityLevel , addressMode , getNvStatus , subsystemId , deviceType , keyEvent , keyValue , ledMode , ledNum , subsAction , ackPendingOption , and nodeRelation . |
ZDO | The exported namespaces of ZDO layer include cmdStatus , capabInfoMask , devStates , logicalChannels , channelMask , scanDuration , status , initDev , serverCapability , appDevVer , stackProfileId , deviceLogicalType , addrReqType , leaveAndRemoveChild , leaveIndRequest , leaveIndRemove , leaveIndRejoin , and descCapability . |
SAPI | The exported namespaces of SAPI layer include cmdStatus , nvItemIds , zbDeviceInfo , bindAction , searchType , txOptAck , and nvItemIdsUint8 . |
DBG | The exported namespaces of DBG layer include debugThreshold and componentId . |
- Common Properties
- config
{ 'ZDO_MGMT_MAX_NWKDISC_ITEMS': 5, 'ZDO_MGMT_MAX_RTG_ITEMS': 10, 'ZDO_MGMT_MAX_BIND_ITEMS': 3, 'ZDO_MGMT_MAX_LQI_ITEMS': 2, 'ZDO_MGMT_MAX_LQI_FRAG_NOSECURE_ITEMS': 3, 'NWK_MAX_DEVICE_LIST': 20, 'NWK_MAX_DEVICES': 21 }
- cmdStatus
{ "SUCCESS": 0, "FAILURE": 1, "INVALID_PARAM": 2, "MEM_ERROR": 16, "BUFFER_FULL": 17, "UNSUPPORTED_MODE": 18, "MAC_MEM_ERROR": 19, "MAC_UNSUPPORTED_NOT_SPOORT": 24, "MAC_BAD_STATE": 25, "MAC_NO_RESOURCES": 26, "MAC_ACK_PENDING": 27, "MAC_NO_TIME": 28, "MAC_TX_ABORTED": 29, "SAPI_IN_PROGRESS": 32, "SAPI_TIMEOUT": 33, "SAPI_INIT": 34, "NOT_AUTHORIZED": 126, "MALFORMED_CMD": 128, // please see common.json for more information }
- AF Layer Namespace and Properties: af.json
- MAC Layer Namespace and Properties: mac.json
- SYS Layer Namespace and Properties: sys.json
- UTIL Layer Namespace and Properties: util.json
- ZDO Layer Namespace and Properties: zdo.json
- SAPI Layer Namespace and Properties: sapi.json
- DBG Layer Namespace and Properties: dbg.json