zigbee-herdsman
Version:
An open source ZigBee gateway solution with node.js.
1,139 lines (1,137 loc) • 115 kB
text/typescript
import {ClusterId as ZdoClusterId} from "../../../zspec/zdo";
import {Type as CommandType, Subsystem} from "../unpi/constants";
import ParameterType from "./parameterType";
import type {MtCmd} from "./tstype";
const Definition: {
[Subsystem.SYS]: MtCmd[];
[Subsystem.MAC]: MtCmd[];
[Subsystem.AF]: MtCmd[];
[Subsystem.ZDO]: MtCmd[];
[Subsystem.SAPI]: MtCmd[];
[Subsystem.UTIL]: MtCmd[];
[Subsystem.DEBUG]: MtCmd[];
[Subsystem.APP]: MtCmd[];
[Subsystem.APP_CNF]: MtCmd[];
[Subsystem.GREENPOWER]: MtCmd[];
[Subsystem.RESERVED]: MtCmd[];
[Subsystem.NWK]: MtCmd[];
} = {
[Subsystem.SYS]: [
{
name: "resetReq",
ID: 0,
type: CommandType.AREQ,
request: [{name: "type", parameterType: ParameterType.UINT8}],
},
{
name: "ping",
ID: 1,
type: CommandType.SREQ,
request: [],
response: [{name: "capabilities", parameterType: ParameterType.UINT16}],
},
{
name: "version",
ID: 2,
type: CommandType.SREQ,
request: [],
response: [
{name: "transportrev", parameterType: ParameterType.UINT8},
{name: "product", parameterType: ParameterType.UINT8},
{name: "majorrel", parameterType: ParameterType.UINT8},
{name: "minorrel", parameterType: ParameterType.UINT8},
{name: "maintrel", parameterType: ParameterType.UINT8},
{name: "revision", parameterType: ParameterType.UINT32},
],
},
{
name: "setExtAddr",
ID: 3,
type: CommandType.SREQ,
request: [{name: "extaddress", parameterType: ParameterType.IEEEADDR}],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "getExtAddr",
ID: 4,
type: CommandType.SREQ,
request: [],
response: [{name: "extaddress", parameterType: ParameterType.IEEEADDR}],
},
{
name: "ramRead",
ID: 5,
type: CommandType.SREQ,
request: [
{name: "address", parameterType: ParameterType.UINT16},
{name: "len", parameterType: ParameterType.UINT8},
],
response: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "len", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.BUFFER},
],
},
{
name: "ramWrite",
ID: 6,
type: CommandType.SREQ,
request: [
{name: "address", parameterType: ParameterType.UINT16},
{name: "len", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "osalNvItemInit",
ID: 7,
type: CommandType.SREQ,
request: [
{name: "id", parameterType: ParameterType.UINT16},
{name: "len", parameterType: ParameterType.UINT16},
{name: "initlen", parameterType: ParameterType.UINT8},
{name: "initvalue", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "osalNvRead",
ID: 8,
type: CommandType.SREQ,
request: [
{name: "id", parameterType: ParameterType.UINT16},
{name: "offset", parameterType: ParameterType.UINT8},
],
response: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "len", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.BUFFER},
],
},
{
name: "osalNvWrite",
ID: 9,
type: CommandType.SREQ,
request: [
{name: "id", parameterType: ParameterType.UINT16},
{name: "offset", parameterType: ParameterType.UINT8},
{name: "len", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "osalStartTimer",
ID: 10,
type: CommandType.SREQ,
request: [
{name: "id", parameterType: ParameterType.UINT8},
{name: "timeout", parameterType: ParameterType.UINT16},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "osalStopTimer",
ID: 11,
type: CommandType.SREQ,
request: [{name: "id", parameterType: ParameterType.UINT8}],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "random",
ID: 12,
type: CommandType.SREQ,
request: [],
response: [{name: "value", parameterType: ParameterType.UINT16}],
},
{
name: "adcRead",
ID: 13,
type: CommandType.SREQ,
request: [
{name: "channel", parameterType: ParameterType.UINT8},
{name: "resolution", parameterType: ParameterType.UINT8},
],
response: [{name: "value", parameterType: ParameterType.UINT16}],
},
{
name: "gpio",
ID: 14,
type: CommandType.SREQ,
request: [
{name: "operation", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.UINT8},
],
response: [{name: "value", parameterType: ParameterType.UINT8}],
},
{
name: "stackTune",
ID: 15,
type: CommandType.SREQ,
request: [
{name: "operation", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.INT8},
],
response: [{name: "value", parameterType: ParameterType.UINT8}],
},
{
name: "setTime",
ID: 16,
type: CommandType.SREQ,
request: [
{name: "utc", parameterType: ParameterType.UINT32},
{name: "hour", parameterType: ParameterType.UINT8},
{name: "minute", parameterType: ParameterType.UINT8},
{name: "second", parameterType: ParameterType.UINT8},
{name: "month", parameterType: ParameterType.UINT8},
{name: "day", parameterType: ParameterType.UINT8},
{name: "year", parameterType: ParameterType.UINT16},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "getTime",
ID: 17,
type: CommandType.SREQ,
request: [],
response: [
{name: "utc", parameterType: ParameterType.UINT32},
{name: "hour", parameterType: ParameterType.UINT8},
{name: "minute", parameterType: ParameterType.UINT8},
{name: "second", parameterType: ParameterType.UINT8},
{name: "month", parameterType: ParameterType.UINT8},
{name: "day", parameterType: ParameterType.UINT8},
{name: "year", parameterType: ParameterType.UINT16},
],
},
{
name: "osalNvDelete",
ID: 18,
type: CommandType.SREQ,
request: [
{name: "id", parameterType: ParameterType.UINT16},
{name: "len", parameterType: ParameterType.UINT16},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "osalNvLength",
ID: 19,
type: CommandType.SREQ,
request: [{name: "id", parameterType: ParameterType.UINT16}],
response: [{name: "length", parameterType: ParameterType.UINT16}],
},
{
name: "setTxPower",
ID: 20,
type: CommandType.SREQ,
request: [{name: "level", parameterType: ParameterType.UINT8}],
response: [{name: "txpower", parameterType: ParameterType.UINT8}],
},
{
name: "jammerParameters",
ID: 21,
type: CommandType.SREQ,
request: [
{name: "jmrcntievents", parameterType: ParameterType.UINT16},
{name: "jmrhinoiselvl", parameterType: ParameterType.UINT8},
{name: "jmrdetectperiod", parameterType: ParameterType.UINT32},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "snifferParameters",
ID: 22,
type: CommandType.SREQ,
request: [{name: "param", parameterType: ParameterType.UINT8}],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "zdiagsInitStats",
ID: 23,
type: CommandType.SREQ,
request: [],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "zdiagsClearStats",
ID: 24,
type: CommandType.SREQ,
request: [{name: "clearnv", parameterType: ParameterType.UINT8}],
response: [{name: "sysclock", parameterType: ParameterType.UINT32}],
},
{
name: "zdiagsGetStats",
ID: 25,
type: CommandType.SREQ,
request: [{name: "attributeid", parameterType: ParameterType.UINT16}],
response: [{name: "attributevalue", parameterType: ParameterType.UINT32}],
},
{
name: "zdiagsRestoreStatsNv",
ID: 26,
type: CommandType.SREQ,
request: [],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "zdiagsSaveStatsToNv",
ID: 27,
type: CommandType.SREQ,
request: [],
response: [{name: "sysclock", parameterType: ParameterType.UINT32}],
},
{
name: "osalNvReadExt",
ID: 28,
type: CommandType.SREQ,
request: [
{name: "id", parameterType: ParameterType.UINT16},
{name: "offset", parameterType: ParameterType.UINT16},
],
response: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "len", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.BUFFER},
],
},
{
name: "osalNvWriteExt",
ID: 29,
type: CommandType.SREQ,
request: [
{name: "id", parameterType: ParameterType.UINT16},
{name: "offset", parameterType: ParameterType.UINT16},
{name: "len", parameterType: ParameterType.UINT16},
{name: "value", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "nvCreate",
ID: 48,
type: CommandType.SREQ,
request: [
{name: "sysid", parameterType: ParameterType.UINT8},
{name: "itemid", parameterType: ParameterType.UINT16},
{name: "subid", parameterType: ParameterType.UINT16},
{name: "len", parameterType: ParameterType.UINT32},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "nvDelete",
ID: 49,
type: CommandType.SREQ,
request: [
{name: "sysid", parameterType: ParameterType.UINT8},
{name: "itemid", parameterType: ParameterType.UINT16},
{name: "subid", parameterType: ParameterType.UINT16},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "nvLength",
ID: 50,
type: CommandType.SREQ,
request: [
{name: "sysid", parameterType: ParameterType.UINT8},
{name: "itemid", parameterType: ParameterType.UINT16},
{name: "subid", parameterType: ParameterType.UINT16},
],
response: [{name: "len", parameterType: ParameterType.UINT8}],
},
{
name: "nvRead",
ID: 51,
type: CommandType.SREQ,
request: [
{name: "sysid", parameterType: ParameterType.UINT8},
{name: "itemid", parameterType: ParameterType.UINT16},
{name: "subid", parameterType: ParameterType.UINT16},
{name: "offset", parameterType: ParameterType.UINT16},
{name: "len", parameterType: ParameterType.UINT8},
],
response: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "len", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.BUFFER},
],
},
{
name: "nvWrite",
ID: 52,
type: CommandType.SREQ,
request: [
{name: "sysid", parameterType: ParameterType.UINT8},
{name: "itemid", parameterType: ParameterType.UINT16},
{name: "subid", parameterType: ParameterType.UINT16},
{name: "offset", parameterType: ParameterType.UINT16},
{name: "len", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "nvUpdate",
ID: 53,
type: CommandType.SREQ,
request: [
{name: "sysid", parameterType: ParameterType.UINT8},
{name: "itemid", parameterType: ParameterType.UINT16},
{name: "subid", parameterType: ParameterType.UINT16},
{name: "len", parameterType: ParameterType.UINT8},
{name: "value", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "nvCompact",
ID: 54,
type: CommandType.SREQ,
request: [{name: "threshold", parameterType: ParameterType.UINT16}],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "resetInd",
ID: 128,
type: CommandType.AREQ,
request: [
{name: "reason", parameterType: ParameterType.UINT8},
{name: "transportrev", parameterType: ParameterType.UINT8},
{name: "productid", parameterType: ParameterType.UINT8},
{name: "majorrel", parameterType: ParameterType.UINT8},
{name: "minorrel", parameterType: ParameterType.UINT8},
{name: "hwrev", parameterType: ParameterType.UINT8},
],
},
{
name: "osalTimerExpired",
ID: 129,
type: CommandType.AREQ,
request: [{name: "id", parameterType: ParameterType.UINT8}],
},
{
name: "jammerInd",
ID: 130,
type: CommandType.AREQ,
request: [{name: "jammerind", parameterType: ParameterType.UINT8}],
},
],
[Subsystem.MAC]: [
{
name: "resetReq",
ID: 1,
type: CommandType.SREQ,
request: [{name: "setdefault", parameterType: ParameterType.UINT8}],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "init",
ID: 2,
type: CommandType.SREQ,
request: [],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "startReq",
ID: 3,
type: CommandType.SREQ,
request: [
{name: "starttime", parameterType: ParameterType.UINT32},
{name: "panid", parameterType: ParameterType.UINT16},
{name: "logicalchannel", parameterType: ParameterType.UINT8},
{name: "channelpage", parameterType: ParameterType.UINT8},
{name: "beaconorder", parameterType: ParameterType.UINT8},
{name: "superframeorder", parameterType: ParameterType.UINT8},
{name: "pancoordinator", parameterType: ParameterType.UINT8},
{name: "batterylifeext", parameterType: ParameterType.UINT8},
{name: "coordrealignment", parameterType: ParameterType.UINT8},
{name: "realignkeysource", parameterType: ParameterType.BUFFER},
{name: "realignsecuritylevel", parameterType: ParameterType.UINT8},
{name: "realignkeyidmode", parameterType: ParameterType.UINT8},
{name: "realignkeyindex", parameterType: ParameterType.UINT8},
{name: "beaconkeysource", parameterType: ParameterType.BUFFER},
{name: "beaconsecuritylevel", parameterType: ParameterType.UINT8},
{name: "beaconkeyidmode", parameterType: ParameterType.UINT8},
{name: "beaconkeyindex", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "syncReq",
ID: 4,
type: CommandType.SREQ,
request: [
{name: "logicalchannel", parameterType: ParameterType.UINT8},
{name: "channelpage", parameterType: ParameterType.UINT8},
{name: "trackbeacon", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "dataReq",
ID: 5,
type: CommandType.SREQ,
request: [
{name: "destaddressmode", parameterType: ParameterType.UINT8},
{name: "destaddress", parameterType: ParameterType.IEEEADDR},
{name: "destpanid", parameterType: ParameterType.UINT16},
{name: "srcaddressmode", parameterType: ParameterType.UINT8},
{name: "handle", parameterType: ParameterType.UINT8},
{name: "txoption", parameterType: ParameterType.UINT8},
{name: "logicalchannel", parameterType: ParameterType.UINT8},
{name: "power", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
{name: "msdulength", parameterType: ParameterType.UINT8},
{name: "msdu", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "associateReq",
ID: 6,
type: CommandType.SREQ,
request: [
{name: "logicalchannel", parameterType: ParameterType.UINT8},
{name: "channelpage", parameterType: ParameterType.UINT8},
{name: "coordaddressmode", parameterType: ParameterType.UINT8},
{name: "coordaddress", parameterType: ParameterType.IEEEADDR},
{name: "coordpanid", parameterType: ParameterType.UINT16},
{name: "capabilityinformation", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "disassociateReq",
ID: 7,
type: CommandType.SREQ,
request: [
{name: "deviceaddressmode", parameterType: ParameterType.UINT8},
{name: "deviceaddress", parameterType: ParameterType.IEEEADDR},
{name: "devicepanid", parameterType: ParameterType.UINT16},
{name: "disassociatereason", parameterType: ParameterType.UINT8},
{name: "txindirect", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "getReq",
ID: 8,
type: CommandType.SREQ,
request: [{name: "attribute", parameterType: ParameterType.UINT8}],
response: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "data", parameterType: ParameterType.BUFFER16},
],
},
{
name: "setReq",
ID: 9,
type: CommandType.SREQ,
request: [
{name: "attribute", parameterType: ParameterType.UINT8},
{name: "attributevalue", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "scanReq",
ID: 12,
type: CommandType.SREQ,
request: [
{name: "scanchannels", parameterType: ParameterType.UINT32},
{name: "scantype", parameterType: ParameterType.UINT8},
{name: "scanduration", parameterType: ParameterType.UINT8},
{name: "channelpage", parameterType: ParameterType.UINT8},
{name: "maxresults", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "pollReq",
ID: 13,
type: CommandType.SREQ,
request: [
{name: "coordaddressmode", parameterType: ParameterType.UINT8},
{name: "coordaddress", parameterType: ParameterType.IEEEADDR},
{name: "coordpanid", parameterType: ParameterType.UINT16},
{name: "keysource", parameterType: ParameterType.BUFFER},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "purgeReq",
ID: 14,
type: CommandType.SREQ,
request: [{name: "msduhandle", parameterType: ParameterType.UINT8}],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "setRxGainReq",
ID: 15,
type: CommandType.SREQ,
request: [{name: "mode", parameterType: ParameterType.UINT8}],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "securityGetReq",
ID: 48,
type: CommandType.SREQ,
request: [
{name: "attribute", parameterType: ParameterType.UINT8},
{name: "index1", parameterType: ParameterType.UINT8},
{name: "index2", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "securitySetReq",
ID: 49,
type: CommandType.SREQ,
request: [
{name: "attribute", parameterType: ParameterType.UINT8},
{name: "attributevalue", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "associateRsp",
ID: 80,
type: CommandType.SREQ,
request: [
{name: "extaddr", parameterType: ParameterType.IEEEADDR},
{name: "assocshortaddress", parameterType: ParameterType.UINT16},
{name: "assocstatus", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "orphanRsp",
ID: 81,
type: CommandType.SREQ,
request: [
{name: "extaddr", parameterType: ParameterType.IEEEADDR},
{name: "assocshortaddress", parameterType: ParameterType.UINT16},
{name: "associatedmember", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "syncLossInd",
ID: 128,
type: CommandType.AREQ,
request: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "panid", parameterType: ParameterType.UINT16},
{name: "logicalchannel", parameterType: ParameterType.UINT8},
{name: "channelpage", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER8},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
},
{
name: "associateInd",
ID: 129,
type: CommandType.AREQ,
request: [
{name: "deviceextendedaddress", parameterType: ParameterType.IEEEADDR},
{name: "capabilities", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER8},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
},
{
name: "associateCnf",
ID: 130,
type: CommandType.AREQ,
request: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "deviceshortaddress", parameterType: ParameterType.UINT16},
{name: "keysource", parameterType: ParameterType.BUFFER8},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
},
{
name: "beaconNotifyInd",
ID: 131,
type: CommandType.AREQ,
request: [
{name: "bsn", parameterType: ParameterType.UINT8},
{name: "timestamp", parameterType: ParameterType.UINT32},
{name: "coordinatoraddressmode", parameterType: ParameterType.UINT8},
{name: "coordinatorextendedaddress", parameterType: ParameterType.IEEEADDR},
{name: "panid", parameterType: ParameterType.UINT16},
{name: "superframespec", parameterType: ParameterType.UINT16},
{name: "logicalchannel", parameterType: ParameterType.UINT8},
{name: "gtspermit", parameterType: ParameterType.UINT8},
{name: "linkquality", parameterType: ParameterType.UINT8},
{name: "securityfailure", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER8},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
{name: "pendingaddrspec", parameterType: ParameterType.UINT8},
{name: "addresslist", parameterType: ParameterType.BUFFER32},
{name: "sdulength", parameterType: ParameterType.UINT8},
{name: "nsdu", parameterType: ParameterType.BUFFER},
],
},
{
name: "dataCnf",
ID: 132,
type: CommandType.AREQ,
request: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "handle", parameterType: ParameterType.UINT8},
{name: "timestamp", parameterType: ParameterType.UINT32},
{name: "timestamp2", parameterType: ParameterType.UINT16},
],
},
{
name: "dataInd",
ID: 133,
type: CommandType.AREQ,
request: [
{name: "srcaddrmode", parameterType: ParameterType.UINT8},
{name: "srcaddr", parameterType: ParameterType.IEEEADDR},
{name: "dstaddrmode", parameterType: ParameterType.UINT8},
{name: "dstaddr", parameterType: ParameterType.IEEEADDR},
{name: "timestamp", parameterType: ParameterType.UINT32},
{name: "timestamp2", parameterType: ParameterType.UINT16},
{name: "srcpanid", parameterType: ParameterType.UINT16},
{name: "dstpanid", parameterType: ParameterType.UINT16},
{name: "linkquality", parameterType: ParameterType.UINT8},
{name: "correlation", parameterType: ParameterType.UINT8},
{name: "rssi", parameterType: ParameterType.UINT8},
{name: "dsn", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER8},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
{name: "length", parameterType: ParameterType.UINT8},
{name: "data", parameterType: ParameterType.BUFFER},
],
},
{
name: "disassociateInd",
ID: 134,
type: CommandType.AREQ,
request: [
{name: "extendedaddress", parameterType: ParameterType.IEEEADDR},
{name: "disassociatereason", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER8},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
},
{
name: "disassociateCnf",
ID: 135,
type: CommandType.AREQ,
request: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "deviceaddrmode", parameterType: ParameterType.UINT8},
{name: "deviceaddr", parameterType: ParameterType.IEEEADDR},
{name: "devicepanid", parameterType: ParameterType.UINT16},
],
},
{
name: "orphanInd",
ID: 138,
type: CommandType.AREQ,
request: [
{name: "extendedaddr", parameterType: ParameterType.IEEEADDR},
{name: "keysource", parameterType: ParameterType.BUFFER8},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
},
{
name: "pollCnf",
ID: 139,
type: CommandType.AREQ,
request: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "scanCnf",
ID: 140,
type: CommandType.AREQ,
request: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "ed", parameterType: ParameterType.UINT8},
{name: "scantype", parameterType: ParameterType.UINT8},
{name: "channelpage", parameterType: ParameterType.UINT8},
{name: "unscannedchannellist", parameterType: ParameterType.UINT32},
{name: "resultlistcount", parameterType: ParameterType.UINT8},
{name: "resultlistmaxlength", parameterType: ParameterType.UINT8},
{name: "resultlist", parameterType: ParameterType.BUFFER},
],
},
{
name: "commStatusInd",
ID: 141,
type: CommandType.AREQ,
request: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "srcaddrmode", parameterType: ParameterType.UINT8},
{name: "srcaddr", parameterType: ParameterType.IEEEADDR},
{name: "dstaddrmode", parameterType: ParameterType.UINT8},
{name: "dstaddr", parameterType: ParameterType.IEEEADDR},
{name: "devicepanid", parameterType: ParameterType.UINT16},
{name: "reason", parameterType: ParameterType.UINT8},
{name: "keysource", parameterType: ParameterType.BUFFER8},
{name: "securitylevel", parameterType: ParameterType.UINT8},
{name: "keyidmode", parameterType: ParameterType.UINT8},
{name: "keyindex", parameterType: ParameterType.UINT8},
],
},
{
name: "startCnf",
ID: 142,
type: CommandType.AREQ,
request: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "rxEnableCnf",
ID: 143,
type: CommandType.AREQ,
request: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "purgeCnf",
ID: 144,
type: CommandType.AREQ,
request: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "handle", parameterType: ParameterType.UINT8},
],
},
],
[Subsystem.AF]: [
{
name: "register",
ID: 0,
type: CommandType.SREQ,
request: [
{name: "endpoint", parameterType: ParameterType.UINT8},
{name: "appprofid", parameterType: ParameterType.UINT16},
{name: "appdeviceid", parameterType: ParameterType.UINT16},
{name: "appdevver", parameterType: ParameterType.UINT8},
{name: "latencyreq", parameterType: ParameterType.UINT8},
{name: "appnuminclusters", parameterType: ParameterType.UINT8},
{name: "appinclusterlist", parameterType: ParameterType.LIST_UINT16},
{name: "appnumoutclusters", parameterType: ParameterType.UINT8},
{name: "appoutclusterlist", parameterType: ParameterType.LIST_UINT16},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "dataRequest",
ID: 1,
type: CommandType.SREQ,
request: [
{name: "dstaddr", parameterType: ParameterType.UINT16},
{name: "destendpoint", parameterType: ParameterType.UINT8},
{name: "srcendpoint", parameterType: ParameterType.UINT8},
{name: "clusterid", parameterType: ParameterType.UINT16},
{name: "transid", parameterType: ParameterType.UINT8},
{name: "options", parameterType: ParameterType.UINT8},
{name: "radius", parameterType: ParameterType.UINT8},
{name: "len", parameterType: ParameterType.UINT8},
{name: "data", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "dataRequestExt",
ID: 2,
type: CommandType.SREQ,
request: [
{name: "dstaddrmode", parameterType: ParameterType.UINT8},
{name: "dstaddr", parameterType: ParameterType.IEEEADDR},
{name: "destendpoint", parameterType: ParameterType.UINT8},
{name: "dstpanid", parameterType: ParameterType.UINT16},
{name: "srcendpoint", parameterType: ParameterType.UINT8},
{name: "clusterid", parameterType: ParameterType.UINT16},
{name: "transid", parameterType: ParameterType.UINT8},
{name: "options", parameterType: ParameterType.UINT8},
{name: "radius", parameterType: ParameterType.UINT8},
{name: "len", parameterType: ParameterType.UINT16},
{name: "data", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "dataRequestSrcRtg",
ID: 3,
type: CommandType.SREQ,
request: [
{name: "dstaddr", parameterType: ParameterType.UINT16},
{name: "destendpoint", parameterType: ParameterType.UINT8},
{name: "srcendpoint", parameterType: ParameterType.UINT8},
{name: "clusterid", parameterType: ParameterType.UINT16},
{name: "transid", parameterType: ParameterType.UINT8},
{name: "options", parameterType: ParameterType.UINT8},
{name: "radius", parameterType: ParameterType.UINT8},
{name: "relaycount", parameterType: ParameterType.UINT8},
{name: "relaylist", parameterType: ParameterType.LIST_UINT16},
{name: "len", parameterType: ParameterType.UINT8},
{name: "data", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "delete",
ID: 4,
type: CommandType.SREQ,
request: [{name: "endpoint", parameterType: ParameterType.UINT8}],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "interPanCtl",
ID: 16,
type: CommandType.SREQ,
request: [
{name: "cmd", parameterType: ParameterType.UINT8},
{name: "data", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "dataStore",
ID: 17,
type: CommandType.SREQ,
request: [
{name: "index", parameterType: ParameterType.UINT16},
{name: "length", parameterType: ParameterType.UINT8},
{name: "data", parameterType: ParameterType.BUFFER},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "dataRetrieve",
ID: 18,
type: CommandType.SREQ,
request: [
{name: "timestamp", parameterType: ParameterType.UINT32},
{name: "index", parameterType: ParameterType.UINT16},
{name: "length", parameterType: ParameterType.UINT8},
],
response: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "length", parameterType: ParameterType.UINT8},
{name: "data", parameterType: ParameterType.BUFFER},
],
},
{
name: "apsfConfigSet",
ID: 19,
type: CommandType.SREQ,
request: [
{name: "endpoint", parameterType: ParameterType.UINT8},
{name: "framedelay", parameterType: ParameterType.UINT8},
{name: "windowsize", parameterType: ParameterType.UINT8},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "apsfConfigGet",
ID: 20,
type: CommandType.SREQ,
request: [{name: "endpoint", parameterType: ParameterType.UINT8}],
response: [
{name: "framedelay", parameterType: ParameterType.UINT8},
{name: "windowsize", parameterType: ParameterType.UINT8},
{name: "nomean", parameterType: ParameterType.UINT8},
],
},
{
name: "dataConfirm",
ID: 128,
type: CommandType.AREQ,
request: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "endpoint", parameterType: ParameterType.UINT8},
{name: "transid", parameterType: ParameterType.UINT8},
],
},
{
name: "incomingMsg",
ID: 129,
type: CommandType.AREQ,
request: [
{name: "groupid", parameterType: ParameterType.UINT16},
{name: "clusterid", parameterType: ParameterType.UINT16},
{name: "srcaddr", parameterType: ParameterType.UINT16},
{name: "srcendpoint", parameterType: ParameterType.UINT8},
{name: "dstendpoint", parameterType: ParameterType.UINT8},
{name: "wasbroadcast", parameterType: ParameterType.UINT8},
{name: "linkquality", parameterType: ParameterType.UINT8},
{name: "securityuse", parameterType: ParameterType.UINT8},
{name: "timestamp", parameterType: ParameterType.UINT32},
{name: "transseqnumber", parameterType: ParameterType.UINT8},
{name: "len", parameterType: ParameterType.UINT8},
{name: "data", parameterType: ParameterType.BUFFER},
],
},
{
name: "incomingMsgExt",
ID: 130,
type: CommandType.AREQ,
request: [
{name: "groupid", parameterType: ParameterType.UINT16},
{name: "clusterid", parameterType: ParameterType.UINT16},
{name: "srcaddrmode", parameterType: ParameterType.UINT8},
{name: "srcaddr", parameterType: ParameterType.IEEEADDR},
{name: "srcendpoint", parameterType: ParameterType.UINT8},
{name: "srcpanid", parameterType: ParameterType.UINT16},
{name: "dstendpoint", parameterType: ParameterType.UINT8},
{name: "wasbroadcast", parameterType: ParameterType.UINT8},
{name: "linkquality", parameterType: ParameterType.UINT8},
{name: "securityuse", parameterType: ParameterType.UINT8},
{name: "timestamp", parameterType: ParameterType.UINT32},
{name: "transseqnumber", parameterType: ParameterType.UINT8},
{name: "len", parameterType: ParameterType.UINT16},
{name: "data", parameterType: ParameterType.BUFFER},
],
},
{
name: "reflectError",
ID: 131,
type: CommandType.AREQ,
request: [
{name: "status", parameterType: ParameterType.UINT8},
{name: "endpoint", parameterType: ParameterType.UINT8},
{name: "transid", parameterType: ParameterType.UINT8},
{name: "dstaddrmode", parameterType: ParameterType.UINT8},
{name: "dstaddr", parameterType: ParameterType.UINT16},
],
},
],
[Subsystem.ZDO]: [
{
name: "nwkAddrReq",
ID: 0,
type: CommandType.SREQ,
zdoClusterId: ZdoClusterId.NETWORK_ADDRESS_REQUEST,
// request: [
// {name: 'ieeeaddr', parameterType: ParameterType.IEEEADDR},
// {name: 'reqtype', parameterType: ParameterType.UINT8},
// {name: 'startindex', parameterType: ParameterType.UINT8},
// ],
// response: [{name: 'status', parameterType: ParameterType.UINT8}],
},
{
name: "ieeeAddrReq",
ID: 1,
type: CommandType.SREQ,
zdoClusterId: ZdoClusterId.IEEE_ADDRESS_REQUEST,
// request: [
// {name: 'shortaddr', parameterType: ParameterType.UINT16},
// {name: 'reqtype', parameterType: ParameterType.UINT8},
// {name: 'startindex', parameterType: ParameterType.UINT8},
// ],
// response: [{name: 'status', parameterType: ParameterType.UINT8}],
},
{
name: "nodeDescReq",
ID: 2,
type: CommandType.SREQ,
zdoClusterId: ZdoClusterId.NODE_DESCRIPTOR_REQUEST,
// request: [
// {name: 'dstaddr', parameterType: ParameterType.UINT16},
// {name: 'nwkaddrofinterest', parameterType: ParameterType.UINT16},
// ],
// response: [{name: 'status', parameterType: ParameterType.UINT8}],
},
{
name: "powerDescReq",
ID: 3,
type: CommandType.SREQ,
zdoClusterId: ZdoClusterId.POWER_DESCRIPTOR_REQUEST,
// request: [
// {name: 'dstaddr', parameterType: ParameterType.UINT16},
// {name: 'nwkaddrofinterest', parameterType: ParameterType.UINT16},
// ],
// response: [{name: 'status', parameterType: ParameterType.UINT8}],
},
{
name: "simpleDescReq",
ID: 4,
type: CommandType.SREQ,
zdoClusterId: ZdoClusterId.SIMPLE_DESCRIPTOR_REQUEST,
// request: [
// {name: 'dstaddr', parameterType: ParameterType.UINT16},
// {name: 'nwkaddrofinterest', parameterType: ParameterType.UINT16},
// {name: 'endpoint', parameterType: ParameterType.UINT8},
// ],
// response: [{name: 'status', parameterType: ParameterType.UINT8}],
},
{
name: "activeEpReq",
ID: 5,
type: CommandType.SREQ,
zdoClusterId: ZdoClusterId.ACTIVE_ENDPOINTS_REQUEST,
// request: [
// {name: 'dstaddr', parameterType: ParameterType.UINT16},
// {name: 'nwkaddrofinterest', parameterType: ParameterType.UINT16},
// ],
// response: [{name: 'status', parameterType: ParameterType.UINT8}],
},
{
name: "matchDescReq",
ID: 6,
type: CommandType.SREQ,
zdoClusterId: ZdoClusterId.MATCH_DESCRIPTORS_REQUEST,
// request: [
// {name: 'dstaddr', parameterType: ParameterType.UINT16},
// {name: 'nwkaddrofinterest', parameterType: ParameterType.UINT16},
// {name: 'profileid', parameterType: ParameterType.UINT16},
// {name: 'numinclusters', parameterType: ParameterType.UINT8},
// {name: 'inclusterlist', parameterType: ParameterType.LIST_UINT16},
// {name: 'numoutclusters', parameterType: ParameterType.UINT8},
// {name: 'outclusterlist', parameterType: ParameterType.LIST_UINT16},
// ],
// response: [{name: 'status', parameterType: ParameterType.UINT8}],
},
{
name: "complexDescReq",
ID: 7,
type: CommandType.SREQ,
request: [
{name: "dstaddr", parameterType: ParameterType.UINT16},
{name: "nwkaddrofinterest", parameterType: ParameterType.UINT16},
],
response: [{name: "status", parameterType: ParameterType.UINT8}],
},
{
name: "userDescReq",
ID: 8,