zigbee-herdsman
Version:
An open source ZigBee gateway solution with node.js.
1,090 lines • 276 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
/* eslint max-len: 0 */
const dataType_1 = __importDefault(require("./dataType"));
const buffaloZclDataType_1 = __importDefault(require("./buffaloZclDataType"));
const manufacturerCode_1 = __importDefault(require("./manufacturerCode"));
const Cluster = {
genBasic: {
ID: 0,
attributes: {
zclVersion: { ID: 0, type: dataType_1.default.uint8 },
appVersion: { ID: 1, type: dataType_1.default.uint8 },
stackVersion: { ID: 2, type: dataType_1.default.uint8 },
hwVersion: { ID: 3, type: dataType_1.default.uint8 },
manufacturerName: { ID: 4, type: dataType_1.default.charStr },
modelId: { ID: 5, type: dataType_1.default.charStr },
dateCode: { ID: 6, type: dataType_1.default.charStr },
powerSource: { ID: 7, type: dataType_1.default.enum8 },
appProfileVersion: { ID: 8, type: dataType_1.default.enum8 },
swBuildId: { ID: 16384, type: dataType_1.default.charStr },
locationDesc: { ID: 16, type: dataType_1.default.charStr },
physicalEnv: { ID: 17, type: dataType_1.default.enum8 },
deviceEnabled: { ID: 18, type: dataType_1.default.boolean },
alarmMask: { ID: 19, type: dataType_1.default.bitmap8 },
disableLocalConfig: { ID: 20, type: dataType_1.default.bitmap8 },
develcoPrimarySwVersion: { ID: 0x8000, type: dataType_1.default.octetStr, manufacturerCode: manufacturerCode_1.default.DEVELCO },
develcoPrimaryHwVersion: { ID: 0x8020, type: dataType_1.default.octetStr, manufacturerCode: manufacturerCode_1.default.DEVELCO },
develcoLedControl: { ID: 0x8100, type: dataType_1.default.bitmap8, manufacturerCode: manufacturerCode_1.default.DEVELCO },
schneiderMeterRadioPower: { ID: 0xE200, type: dataType_1.default.int8, manufacturerCode: manufacturerCode_1.default.SCHNEIDER_ELECTRIC },
},
commands: {
resetFactDefault: {
ID: 0,
parameters: [],
},
tuyaSetup: {
ID: 0xf0,
parameters: [],
},
},
commandsResponse: {},
},
genPowerCfg: {
ID: 1,
attributes: {
mainsVoltage: { ID: 0, type: dataType_1.default.uint16 },
mainsFrequency: { ID: 1, type: dataType_1.default.uint8 },
mainsAlarmMask: { ID: 16, type: dataType_1.default.bitmap8 },
mainsVoltMinThres: { ID: 17, type: dataType_1.default.uint16 },
mainsVoltMaxThres: { ID: 18, type: dataType_1.default.uint16 },
mainsVoltageDwellTripPoint: { ID: 19, type: dataType_1.default.uint16 },
batteryVoltage: { ID: 32, type: dataType_1.default.uint8 },
batteryPercentageRemaining: { ID: 33, type: dataType_1.default.uint8 },
batteryManufacturer: { ID: 48, type: dataType_1.default.charStr },
batterySize: { ID: 49, type: dataType_1.default.enum8 },
batteryAHrRating: { ID: 50, type: dataType_1.default.uint16 },
batteryQuantity: { ID: 51, type: dataType_1.default.uint8 },
batteryRatedVoltage: { ID: 52, type: dataType_1.default.uint8 },
batteryAlarmMask: { ID: 53, type: dataType_1.default.bitmap8 },
batteryVoltMinThres: { ID: 54, type: dataType_1.default.uint8 },
batteryVoltThres1: { ID: 55, type: dataType_1.default.uint8 },
batteryVoltThres2: { ID: 56, type: dataType_1.default.uint8 },
batteryVoltThres3: { ID: 57, type: dataType_1.default.uint8 },
batteryPercentMinThres: { ID: 58, type: dataType_1.default.uint8 },
batteryPercentThres1: { ID: 59, type: dataType_1.default.uint8 },
batteryPercentThres2: { ID: 60, type: dataType_1.default.uint8 },
batteryPercentThres3: { ID: 61, type: dataType_1.default.uint8 },
batteryAlarmState: { ID: 62, type: dataType_1.default.bitmap32 },
},
commands: {},
commandsResponse: {},
},
genDeviceTempCfg: {
ID: 2,
attributes: {
currentTemperature: { ID: 0, type: dataType_1.default.int16 },
minTempExperienced: { ID: 1, type: dataType_1.default.int16 },
maxTempExperienced: { ID: 2, type: dataType_1.default.int16 },
overTempTotalDwell: { ID: 3, type: dataType_1.default.uint16 },
devTempAlarmMask: { ID: 16, type: dataType_1.default.bitmap8 },
lowTempThres: { ID: 17, type: dataType_1.default.int16 },
highTempThres: { ID: 18, type: dataType_1.default.int16 },
lowTempDwellTripPoint: { ID: 19, type: dataType_1.default.uint24 },
highTempDwellTripPoint: { ID: 20, type: dataType_1.default.uint24 },
},
commands: {},
commandsResponse: {},
},
genIdentify: {
ID: 3,
attributes: {
identifyTime: { ID: 0, type: dataType_1.default.uint16 },
identifyCommissionState: { ID: 1, type: dataType_1.default.unknown },
},
commands: {
identify: {
ID: 0,
parameters: [
{ name: 'identifytime', type: dataType_1.default.uint16 },
],
},
identifyQuery: {
ID: 1,
parameters: [],
},
ezmodeInvoke: {
ID: 2,
parameters: [
{ name: 'action', type: dataType_1.default.uint8 },
],
},
updateCommissionState: {
ID: 3,
parameters: [
{ name: 'action', type: dataType_1.default.uint8 },
{ name: 'commstatemask', type: dataType_1.default.uint8 },
],
},
triggerEffect: {
ID: 64,
parameters: [
{ name: 'effectid', type: dataType_1.default.uint8 },
{ name: 'effectvariant', type: dataType_1.default.uint8 },
],
},
},
commandsResponse: {
identifyQueryRsp: {
ID: 0,
parameters: [
{ name: 'timeout', type: dataType_1.default.uint16 },
],
},
},
},
genGroups: {
ID: 4,
attributes: {
nameSupport: { ID: 0, type: dataType_1.default.bitmap8 },
},
commands: {
add: {
ID: 0,
response: 0,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'groupname', type: dataType_1.default.charStr },
],
},
view: {
ID: 1,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
],
},
getMembership: {
ID: 2,
response: 2,
parameters: [
{ name: 'groupcount', type: dataType_1.default.uint8 },
{ name: 'grouplist', type: buffaloZclDataType_1.default.LIST_UINT16 },
],
},
remove: {
ID: 3,
response: 3,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
],
},
removeAll: {
ID: 4,
parameters: [],
},
addIfIdentifying: {
ID: 5,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'groupname', type: dataType_1.default.charStr },
],
},
miboxerSetZones: {
ID: 0xf0,
parameters: [
{ name: 'zones', type: buffaloZclDataType_1.default.LIST_MIBOXER_ZONES },
],
}
},
commandsResponse: {
addRsp: {
ID: 0,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupid', type: dataType_1.default.uint16 },
],
},
viewRsp: {
ID: 1,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'groupname', type: dataType_1.default.charStr },
],
},
getMembershipRsp: {
ID: 2,
parameters: [
{ name: 'capacity', type: dataType_1.default.uint8 },
{ name: 'groupcount', type: dataType_1.default.uint8 },
{ name: 'grouplist', type: buffaloZclDataType_1.default.LIST_UINT16 },
],
},
removeRsp: {
ID: 3,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupid', type: dataType_1.default.uint16 },
],
},
},
},
genScenes: {
ID: 5,
attributes: {
count: { ID: 0, type: dataType_1.default.uint8 },
currentScene: { ID: 1, type: dataType_1.default.uint8 },
currentGroup: { ID: 2, type: dataType_1.default.uint16 },
sceneValid: { ID: 3, type: dataType_1.default.boolean },
nameSupport: { ID: 4, type: dataType_1.default.bitmap8 },
lastCfgBy: { ID: 5, type: dataType_1.default.ieeeAddr },
},
commands: {
add: {
ID: 0,
response: 0,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
{ name: 'transtime', type: dataType_1.default.uint16 },
{ name: 'scenename', type: dataType_1.default.charStr },
{ name: 'extensionfieldsets', type: buffaloZclDataType_1.default.EXTENSION_FIELD_SETS },
],
},
view: {
ID: 1,
response: 1,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
],
},
remove: {
ID: 2,
response: 2,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
],
},
removeAll: {
ID: 3,
response: 3,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
],
},
store: {
ID: 4,
response: 4,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
],
},
recall: {
ID: 5,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
],
},
getSceneMembership: {
ID: 6,
response: 6,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
],
},
enhancedAdd: {
ID: 64,
response: 64,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
{ name: 'transtime', type: dataType_1.default.uint16 },
{ name: 'scenename', type: dataType_1.default.charStr },
{ name: 'extensionfieldsets', type: buffaloZclDataType_1.default.EXTENSION_FIELD_SETS },
],
},
enhancedView: {
ID: 65,
response: 65,
parameters: [
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
],
},
copy: {
ID: 66,
response: 66,
parameters: [
{ name: 'mode', type: dataType_1.default.uint8 },
{ name: 'groupidfrom', type: dataType_1.default.uint16 },
{ name: 'sceneidfrom', type: dataType_1.default.uint8 },
{ name: 'groupidto', type: dataType_1.default.uint16 },
{ name: 'sceneidto', type: dataType_1.default.uint8 },
],
},
tradfriArrowSingle: {
ID: 7,
parameters: [
{ name: 'value', type: dataType_1.default.uint16 },
{ name: 'value2', type: dataType_1.default.uint16 },
],
},
tradfriArrowHold: {
ID: 8,
parameters: [
{ name: 'value', type: dataType_1.default.uint16 },
],
},
tradfriArrowRelease: {
ID: 9,
parameters: [
{ name: 'value', type: dataType_1.default.uint16 },
],
},
},
commandsResponse: {
addRsp: {
ID: 0,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupId', type: dataType_1.default.uint16 },
{ name: 'sceneId', type: dataType_1.default.uint8 },
],
},
viewRsp: {
ID: 1,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
{ name: 'transtime', type: dataType_1.default.uint16 },
{ name: 'scenename', type: dataType_1.default.charStr },
{ name: 'extensionfieldsets', type: buffaloZclDataType_1.default.EXTENSION_FIELD_SETS },
],
},
removeRsp: {
ID: 2,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
],
},
removeAllRsp: {
ID: 3,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupid', type: dataType_1.default.uint16 },
],
},
storeRsp: {
ID: 4,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
],
},
getSceneMembershipRsp: {
ID: 6,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'capacity', type: dataType_1.default.uint8 },
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'scenecount', type: dataType_1.default.uint8 },
{ name: 'scenelist', type: buffaloZclDataType_1.default.LIST_UINT8 },
],
},
enhancedAddRsp: {
ID: 64,
parameters: [],
},
enhancedViewRsp: {
ID: 65,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupid', type: dataType_1.default.uint16 },
{ name: 'sceneid', type: dataType_1.default.uint8 },
{ name: 'transtime', type: dataType_1.default.uint16 },
{ name: 'scenename', type: dataType_1.default.charStr },
{ name: 'extensionfieldsets', type: buffaloZclDataType_1.default.EXTENSION_FIELD_SETS },
],
},
copyRsp: {
ID: 66,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'groupidfrom', type: dataType_1.default.uint16 },
{ name: 'sceneidfrom', type: dataType_1.default.uint8 },
],
},
},
},
genOnOff: {
ID: 6,
attributes: {
onOff: { ID: 0, type: dataType_1.default.boolean },
globalSceneCtrl: { ID: 16384, type: dataType_1.default.boolean },
onTime: { ID: 16385, type: dataType_1.default.uint16 },
offWaitTime: { ID: 16386, type: dataType_1.default.uint16 },
startUpOnOff: { ID: 16387, type: dataType_1.default.enum8 },
tuyaBacklightSwitch: { ID: 0x5000, type: dataType_1.default.enum8 },
tuyaBacklightMode: { ID: 0x8001, type: dataType_1.default.enum8 },
moesStartUpOnOff: { ID: 0x8002, type: dataType_1.default.enum8 },
tuyaOperationMode: { ID: 0x8004, type: dataType_1.default.enum8 },
elkoPreWarningTime: { ID: 0xE000, type: dataType_1.default.uint16, manufacturerCode: manufacturerCode_1.default.ADEO },
elkoOnTimeReload: { ID: 0xE001, type: dataType_1.default.uint32, manufacturerCode: manufacturerCode_1.default.ADEO },
elkoOnTimeReloadOptions: { ID: 0xE002, type: dataType_1.default.bitmap8, manufacturerCode: manufacturerCode_1.default.ADEO },
nodonTransitionTime: { ID: 0x0001, type: dataType_1.default.uint16, manufacturerCode: manufacturerCode_1.default.NODON },
},
commands: {
off: {
ID: 0,
parameters: [],
},
on: {
ID: 1,
parameters: [],
},
toggle: {
ID: 2,
parameters: [],
},
offWithEffect: {
ID: 64,
parameters: [
{ name: 'effectid', type: dataType_1.default.uint8 },
{ name: 'effectvariant', type: dataType_1.default.uint8 },
],
},
onWithRecallGlobalScene: {
ID: 65,
parameters: [],
},
onWithTimedOff: {
ID: 66,
parameters: [
{ name: 'ctrlbits', type: dataType_1.default.uint8 },
{ name: 'ontime', type: dataType_1.default.uint16 },
{ name: 'offwaittime', type: dataType_1.default.uint16 },
],
},
tuyaAction: {
ID: 0xFD,
parameters: [
{ name: 'value', type: dataType_1.default.uint8 },
],
},
tuyaAction2: {
ID: 0xFC,
parameters: [
{ name: 'value', type: dataType_1.default.uint8 },
],
},
},
commandsResponse: {},
},
genOnOffSwitchCfg: {
ID: 7,
attributes: {
switchType: { ID: 0, type: dataType_1.default.enum8 },
switchMultiFunction: { ID: 2, type: dataType_1.default.unknown },
switchActions: { ID: 16, type: dataType_1.default.enum8 },
},
commands: {},
commandsResponse: {},
},
genLevelCtrl: {
ID: 8,
attributes: {
currentLevel: { ID: 0, type: dataType_1.default.uint8 },
remainingTime: { ID: 1, type: dataType_1.default.uint16 },
minLevel: { ID: 2, type: dataType_1.default.uint8 },
maxLevel: { ID: 3, type: dataType_1.default.uint8 },
options: { ID: 15, type: dataType_1.default.bitmap8 },
onOffTransitionTime: { ID: 16, type: dataType_1.default.uint16 },
onLevel: { ID: 17, type: dataType_1.default.uint8 },
onTransitionTime: { ID: 18, type: dataType_1.default.uint16 },
offTransitionTime: { ID: 19, type: dataType_1.default.uint16 },
defaultMoveRate: { ID: 20, type: dataType_1.default.uint16 },
startUpCurrentLevel: { ID: 16384, type: dataType_1.default.uint8 },
elkoStartUpCurrentLevel: { ID: 0x4000, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.ADEO },
ubisysMinimumOnLevel: { ID: 0x0000, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysValveType: { ID: 0x0001, type: dataType_1.default.bitmap8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysCyclePeriod: { ID: 0x0002, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysSeason: { ID: 0x0003, type: dataType_1.default.enum8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysBackupLevel: { ID: 0x0004, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysAlternateBackupLevel: { ID: 0x0005, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysLowerRange: { ID: 0x0006, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysUpperRange: { ID: 0x0007, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysPumpThresholdOn: { ID: 0x0008, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysPumpThresholdOff: { ID: 0x0009, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysHeatingDemandEnableThreshold: { ID: 0x000A, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysHeatingDemandDisableThreshold: { ID: 0x000B, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysCoolingDemandEnableThreshold: { ID: 0x000C, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
ubisysCoolingDemandDisableThreshold: { ID: 0x000D, type: dataType_1.default.uint8, manufacturerCode: manufacturerCode_1.default.UBISYS_TECHNOLOGIES_GMBH },
},
commands: {
moveToLevel: {
ID: 0,
parameters: [
{ name: 'level', type: dataType_1.default.uint8 },
{ name: 'transtime', type: dataType_1.default.uint16 },
],
},
move: {
ID: 1,
parameters: [
{ name: 'movemode', type: dataType_1.default.uint8 },
{ name: 'rate', type: dataType_1.default.uint8 },
],
},
step: {
ID: 2,
parameters: [
{ name: 'stepmode', type: dataType_1.default.uint8 },
{ name: 'stepsize', type: dataType_1.default.uint8 },
{ name: 'transtime', type: dataType_1.default.uint16 },
],
},
stop: {
ID: 3,
parameters: [],
},
moveToLevelWithOnOff: {
ID: 4,
parameters: [
{ name: 'level', type: dataType_1.default.uint8 },
{ name: 'transtime', type: dataType_1.default.uint16 },
],
},
moveWithOnOff: {
ID: 5,
parameters: [
{ name: 'movemode', type: dataType_1.default.uint8 },
{ name: 'rate', type: dataType_1.default.uint8 },
],
},
stepWithOnOff: {
ID: 6,
parameters: [
{ name: 'stepmode', type: dataType_1.default.uint8 },
{ name: 'stepsize', type: dataType_1.default.uint8 },
{ name: 'transtime', type: dataType_1.default.uint16 },
],
},
stopWithOnOff: {
ID: 7,
parameters: [],
},
moveToLevelTuya: {
ID: 240,
parameters: [
{ name: 'level', type: dataType_1.default.uint16 },
{ name: 'transtime', type: dataType_1.default.uint16 },
],
},
},
commandsResponse: {},
},
genAlarms: {
ID: 9,
attributes: {
alarmCount: { ID: 0, type: dataType_1.default.uint16 },
},
commands: {
reset: {
ID: 0,
parameters: [
{ name: 'alarmcode', type: dataType_1.default.uint8 },
{ name: 'clusterid', type: dataType_1.default.uint16 },
],
},
resetAll: {
ID: 1,
parameters: [],
},
getAlarm: {
ID: 2,
parameters: [],
},
resetLog: {
ID: 3,
parameters: [],
},
publishEventLog: {
ID: 4,
parameters: [],
},
},
commandsResponse: {
alarm: {
ID: 0,
parameters: [
{ name: 'alarmcode', type: dataType_1.default.uint8 },
{ name: 'clusterid', type: dataType_1.default.uint16 },
],
},
getRsp: {
ID: 1,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'alarmcode', type: dataType_1.default.uint8 },
{ name: 'clusterid', type: dataType_1.default.uint16 },
{ name: 'timestamp', type: dataType_1.default.uint32 },
],
},
getEventLog: {
ID: 2,
parameters: [],
},
},
},
genTime: {
ID: 10,
attributes: {
time: { ID: 0, type: dataType_1.default.utc },
timeStatus: { ID: 1, type: dataType_1.default.bitmap8 },
timeZone: { ID: 2, type: dataType_1.default.int32 },
dstStart: { ID: 3, type: dataType_1.default.uint32 },
dstEnd: { ID: 4, type: dataType_1.default.uint32 },
dstShift: { ID: 5, type: dataType_1.default.int32 },
standardTime: { ID: 6, type: dataType_1.default.uint32 },
localTime: { ID: 7, type: dataType_1.default.uint32 },
lastSetTime: { ID: 8, type: dataType_1.default.utc },
validUntilTime: { ID: 9, type: dataType_1.default.utc },
},
commands: {},
commandsResponse: {},
},
genRssiLocation: {
ID: 11,
attributes: {
type: { ID: 0, type: dataType_1.default.data8 },
method: { ID: 1, type: dataType_1.default.enum8 },
age: { ID: 2, type: dataType_1.default.uint16 },
qualityMeasure: { ID: 3, type: dataType_1.default.uint8 },
numOfDevices: { ID: 4, type: dataType_1.default.uint8 },
coordinate1: { ID: 16, type: dataType_1.default.int16 },
coordinate2: { ID: 17, type: dataType_1.default.int16 },
coordinate3: { ID: 18, type: dataType_1.default.int16 },
power: { ID: 19, type: dataType_1.default.int16 },
pathLossExponent: { ID: 20, type: dataType_1.default.uint16 },
reportingPeriod: { ID: 21, type: dataType_1.default.uint16 },
calcPeriod: { ID: 22, type: dataType_1.default.uint16 },
numRSSIMeasurements: { ID: 23, type: dataType_1.default.uint16 },
},
commands: {
setAbsolute: {
ID: 0,
parameters: [
{ name: 'coord1', type: dataType_1.default.int16 },
{ name: 'coord2', type: dataType_1.default.int16 },
{ name: 'coord3', type: dataType_1.default.int16 },
{ name: 'power', type: dataType_1.default.int16 },
{ name: 'pathlossexponent', type: dataType_1.default.uint16 },
],
},
setDevCfg: {
ID: 1,
parameters: [
{ name: 'power', type: dataType_1.default.int16 },
{ name: 'pathlossexponent', type: dataType_1.default.uint16 },
{ name: 'calperiod', type: dataType_1.default.uint16 },
{ name: 'numrssimeasurements', type: dataType_1.default.uint8 },
{ name: 'reportingperiod', type: dataType_1.default.uint16 },
],
},
getDevCfg: {
ID: 2,
parameters: [
{ name: 'targetaddr', type: dataType_1.default.ieeeAddr },
],
},
getData: {
ID: 3,
parameters: [
{ name: 'getdatainfo', type: dataType_1.default.uint8 },
{ name: 'numrsp', type: dataType_1.default.uint8 },
{ name: 'targetaddr', type: dataType_1.default.ieeeAddr },
],
},
},
commandsResponse: {
devCfgRsp: {
ID: 0,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'power', type: dataType_1.default.int16 },
{ name: 'pathlossexp', type: dataType_1.default.uint16 },
{ name: 'calperiod', type: dataType_1.default.uint16 },
{ name: 'numrssimeasurements', type: dataType_1.default.uint8 },
{ name: 'reportingperiod', type: dataType_1.default.uint16 },
],
},
dataRsp: {
ID: 1,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'locationtype', type: dataType_1.default.uint8 },
{ name: 'coord1', type: dataType_1.default.int16 },
{ name: 'coord2', type: dataType_1.default.int16 },
{ name: 'coord3', type: dataType_1.default.int16 },
{ name: 'power', type: dataType_1.default.int16 },
{ name: 'pathlossexp', type: dataType_1.default.uint16 },
{ name: 'locationmethod', type: dataType_1.default.uint8 },
{ name: 'qualitymeasure', type: dataType_1.default.uint8 },
{ name: 'locationage', type: dataType_1.default.uint16 },
],
},
dataNotif: {
ID: 2,
parameters: [
{ name: 'locationtype', type: dataType_1.default.uint8 },
{ name: 'coord1', type: dataType_1.default.int16 },
{ name: 'coord2', type: dataType_1.default.int16 },
{ name: 'coord3', type: dataType_1.default.int16 },
{ name: 'power', type: dataType_1.default.int16 },
{ name: 'pathlossexp', type: dataType_1.default.uint16 },
{ name: 'locationmethod', type: dataType_1.default.uint8 },
{ name: 'qualitymeasure', type: dataType_1.default.uint8 },
{ name: 'locationage', type: dataType_1.default.uint16 },
],
},
compactDataNotif: {
ID: 3,
parameters: [
{ name: 'locationtype', type: dataType_1.default.uint8 },
{ name: 'coord1', type: dataType_1.default.int16 },
{ name: 'coord2', type: dataType_1.default.int16 },
{ name: 'coord3', type: dataType_1.default.int16 },
{ name: 'qualitymeasure', type: dataType_1.default.uint8 },
{ name: 'locationage', type: dataType_1.default.uint16 },
],
},
rssiPing: {
ID: 4,
parameters: [
{ name: 'locationtype', type: dataType_1.default.uint8 },
],
},
},
},
genAnalogInput: {
ID: 12,
attributes: {
description: { ID: 28, type: dataType_1.default.charStr },
maxPresentValue: { ID: 65, type: dataType_1.default.singlePrec },
minPresentValue: { ID: 69, type: dataType_1.default.singlePrec },
outOfService: { ID: 81, type: dataType_1.default.boolean },
presentValue: { ID: 85, type: dataType_1.default.singlePrec },
reliability: { ID: 103, type: dataType_1.default.enum8 },
resolution: { ID: 106, type: dataType_1.default.singlePrec },
statusFlags: { ID: 111, type: dataType_1.default.bitmap8 },
engineeringUnits: { ID: 117, type: dataType_1.default.enum16 },
applicationType: { ID: 256, type: dataType_1.default.uint32 },
},
commands: {},
commandsResponse: {},
},
genAnalogOutput: {
ID: 13,
attributes: {
description: { ID: 28, type: dataType_1.default.charStr },
maxPresentValue: { ID: 65, type: dataType_1.default.singlePrec },
minPresentValue: { ID: 69, type: dataType_1.default.singlePrec },
outOfService: { ID: 81, type: dataType_1.default.boolean },
presentValue: { ID: 85, type: dataType_1.default.singlePrec },
priorityArray: { ID: 87, type: dataType_1.default.array },
reliability: { ID: 103, type: dataType_1.default.enum8 },
relinquishDefault: { ID: 104, type: dataType_1.default.singlePrec },
resolution: { ID: 106, type: dataType_1.default.singlePrec },
statusFlags: { ID: 111, type: dataType_1.default.bitmap8 },
engineeringUnits: { ID: 117, type: dataType_1.default.enum16 },
applicationType: { ID: 256, type: dataType_1.default.uint32 },
},
commands: {},
commandsResponse: {},
},
genAnalogValue: {
ID: 14,
attributes: {
description: { ID: 28, type: dataType_1.default.charStr },
outOfService: { ID: 81, type: dataType_1.default.boolean },
presentValue: { ID: 85, type: dataType_1.default.singlePrec },
priorityArray: { ID: 87, type: dataType_1.default.array },
reliability: { ID: 103, type: dataType_1.default.enum8 },
relinquishDefault: { ID: 104, type: dataType_1.default.singlePrec },
statusFlags: { ID: 111, type: dataType_1.default.bitmap8 },
engineeringUnits: { ID: 117, type: dataType_1.default.enum16 },
applicationType: { ID: 256, type: dataType_1.default.uint32 },
},
commands: {},
commandsResponse: {},
},
genBinaryInput: {
ID: 15,
attributes: {
activeText: { ID: 4, type: dataType_1.default.charStr },
description: { ID: 28, type: dataType_1.default.charStr },
inactiveText: { ID: 46, type: dataType_1.default.charStr },
outOfService: { ID: 81, type: dataType_1.default.boolean },
polarity: { ID: 84, type: dataType_1.default.enum8 },
presentValue: { ID: 85, type: dataType_1.default.boolean },
reliability: { ID: 103, type: dataType_1.default.enum8 },
statusFlags: { ID: 111, type: dataType_1.default.bitmap8 },
applicationType: { ID: 256, type: dataType_1.default.uint32 },
},
commands: {},
commandsResponse: {},
},
genBinaryOutput: {
ID: 16,
attributes: {
activeText: { ID: 4, type: dataType_1.default.charStr },
description: { ID: 28, type: dataType_1.default.charStr },
inactiveText: { ID: 46, type: dataType_1.default.charStr },
minimumOffTime: { ID: 66, type: dataType_1.default.uint32 },
minimumOnTime: { ID: 67, type: dataType_1.default.uint32 },
outOfService: { ID: 81, type: dataType_1.default.boolean },
polarity: { ID: 84, type: dataType_1.default.enum8 },
presentValue: { ID: 85, type: dataType_1.default.boolean },
priorityArray: { ID: 87, type: dataType_1.default.array },
reliability: { ID: 103, type: dataType_1.default.enum8 },
relinquishDefault: { ID: 104, type: dataType_1.default.boolean },
statusFlags: { ID: 111, type: dataType_1.default.bitmap8 },
applicationType: { ID: 256, type: dataType_1.default.uint32 },
},
commands: {},
commandsResponse: {},
},
genBinaryValue: {
ID: 17,
attributes: {
activeText: { ID: 4, type: dataType_1.default.charStr },
description: { ID: 28, type: dataType_1.default.charStr },
inactiveText: { ID: 46, type: dataType_1.default.charStr },
minimumOffTime: { ID: 66, type: dataType_1.default.uint32 },
minimumOnTime: { ID: 67, type: dataType_1.default.uint32 },
outOfService: { ID: 81, type: dataType_1.default.boolean },
presentValue: { ID: 85, type: dataType_1.default.boolean },
priorityArray: { ID: 87, type: dataType_1.default.array },
reliability: { ID: 103, type: dataType_1.default.enum8 },
relinquishDefault: { ID: 104, type: dataType_1.default.boolean },
statusFlags: { ID: 111, type: dataType_1.default.bitmap8 },
applicationType: { ID: 256, type: dataType_1.default.uint32 },
},
commands: {},
commandsResponse: {},
},
genMultistateInput: {
ID: 18,
attributes: {
stateText: { ID: 14, type: dataType_1.default.array },
description: { ID: 28, type: dataType_1.default.charStr },
numberOfStates: { ID: 74, type: dataType_1.default.uint16 },
outOfService: { ID: 81, type: dataType_1.default.boolean },
presentValue: { ID: 85, type: dataType_1.default.uint16 },
reliability: { ID: 103, type: dataType_1.default.enum8 },
statusFlags: { ID: 111, type: dataType_1.default.bitmap8 },
applicationType: { ID: 256, type: dataType_1.default.uint32 },
},
commands: {},
commandsResponse: {},
},
genMultistateOutput: {
ID: 19,
attributes: {
stateText: { ID: 14, type: dataType_1.default.array },
description: { ID: 28, type: dataType_1.default.charStr },
numberOfStates: { ID: 74, type: dataType_1.default.uint16 },
outOfService: { ID: 81, type: dataType_1.default.boolean },
presentValue: { ID: 85, type: dataType_1.default.uint16 },
priorityArray: { ID: 87, type: dataType_1.default.array },
reliability: { ID: 103, type: dataType_1.default.enum8 },
relinquishDefault: { ID: 104, type: dataType_1.default.uint16 },
statusFlags: { ID: 111, type: dataType_1.default.bitmap8 },
applicationType: { ID: 256, type: dataType_1.default.uint32 },
},
commands: {},
commandsResponse: {},
},
genMultistateValue: {
ID: 20,
attributes: {
stateText: { ID: 14, type: dataType_1.default.array },
description: { ID: 28, type: dataType_1.default.charStr },
numberOfStates: { ID: 74, type: dataType_1.default.uint16 },
outOfService: { ID: 81, type: dataType_1.default.boolean },
presentValue: { ID: 85, type: dataType_1.default.uint16 },
priorityArray: { ID: 87, type: dataType_1.default.array },
reliability: { ID: 103, type: dataType_1.default.enum8 },
relinquishDefault: { ID: 104, type: dataType_1.default.uint16 },
statusFlags: { ID: 111, type: dataType_1.default.bitmap8 },
applicationType: { ID: 256, type: dataType_1.default.uint32 },
},
commands: {},
commandsResponse: {},
},
genCommissioning: {
ID: 21,
attributes: {
shortress: { ID: 0, type: dataType_1.default.uint16 },
extendedPANId: { ID: 1, type: dataType_1.default.ieeeAddr },
panId: { ID: 2, type: dataType_1.default.uint16 },
channelmask: { ID: 3, type: dataType_1.default.bitmap32 },
protocolVersion: { ID: 4, type: dataType_1.default.uint8 },
stackProfile: { ID: 5, type: dataType_1.default.uint8 },
startupControl: { ID: 6, type: dataType_1.default.enum8 },
trustCenterress: { ID: 16, type: dataType_1.default.ieeeAddr },
trustCenterMasterKey: { ID: 17, type: dataType_1.default.secKey },
networkKey: { ID: 18, type: dataType_1.default.secKey },
useInsecureJoin: { ID: 19, type: dataType_1.default.boolean },
preconfiguredLinkKey: { ID: 20, type: dataType_1.default.secKey },
networkKeySeqNum: { ID: 21, type: dataType_1.default.uint8 },
networkKeyType: { ID: 22, type: dataType_1.default.enum8 },
networkManagerress: { ID: 23, type: dataType_1.default.uint16 },
scanAttempts: { ID: 32, type: dataType_1.default.uint8 },
timeBetweenScans: { ID: 33, type: dataType_1.default.uint16 },
rejoinInterval: { ID: 34, type: dataType_1.default.uint16 },
maxRejoinInterval: { ID: 35, type: dataType_1.default.uint16 },
indirectPollRate: { ID: 48, type: dataType_1.default.uint16 },
parentRetryThreshold: { ID: 49, type: dataType_1.default.uint8 },
concentratorFlag: { ID: 64, type: dataType_1.default.boolean },
concentratorRus: { ID: 65, type: dataType_1.default.uint8 },
concentratorDiscoveryTime: { ID: 66, type: dataType_1.default.uint8 },
},
commands: {
restartDevice: {
ID: 0,
parameters: [
{ name: 'options', type: dataType_1.default.uint8 },
{ name: 'delay', type: dataType_1.default.uint8 },
{ name: 'jitter', type: dataType_1.default.uint8 },
],
},
saveStartupParams: {
ID: 1,
parameters: [
{ name: 'options', type: dataType_1.default.uint8 },
{ name: 'index', type: dataType_1.default.uint8 },
],
},
restoreStartupParams: {
ID: 2,
parameters: [
{ name: 'options', type: dataType_1.default.uint8 },
{ name: 'index', type: dataType_1.default.uint8 },
],
},
resetStartupParams: {
ID: 3,
parameters: [
{ name: 'options', type: dataType_1.default.uint8 },
{ name: 'index', type: dataType_1.default.uint8 },
],
},
},
commandsResponse: {
restartDeviceRsp: {
ID: 0,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
],
},
saveStartupParamsRsp: {
ID: 1,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
],
},
restoreStartupParamsRsp: {
ID: 2,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
],
},
resetStartupParamsRsp: {
ID: 3,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
],
},
},
},
genOta: {
ID: 25,
attributes: {
upgradeServerId: { ID: 0, type: dataType_1.default.ieeeAddr },
fileOffset: { ID: 1, type: dataType_1.default.uint32 },
currentFileVersion: { ID: 2, type: dataType_1.default.uint32 },
currentZigbeeStackVersion: { ID: 3, type: dataType_1.default.uint16 },
downloadedFileVersion: { ID: 4, type: dataType_1.default.uint32 },
downloadedZigbeeStackVersion: { ID: 5, type: dataType_1.default.uint16 },
imageUpgradeStatus: { ID: 6, type: dataType_1.default.enum8 },
manufacturerId: { ID: 7, type: dataType_1.default.uint16 },
imageTypeId: { ID: 8, type: dataType_1.default.uint16 },
minimumBlockReqDelay: { ID: 9, type: dataType_1.default.uint16 },
imageStamp: { ID: 10, type: dataType_1.default.uint32 },
},
commands: {
queryNextImageRequest: {
ID: 1,
response: 2,
parameters: [
{ name: 'fieldControl', type: dataType_1.default.uint8 },
{ name: 'manufacturerCode', type: dataType_1.default.uint16 },
{ name: 'imageType', type: dataType_1.default.uint16 },
{ name: 'fileVersion', type: dataType_1.default.uint32 },
],
},
imageBlockRequest: {
ID: 3,
response: 5,
parameters: [
{ name: 'fieldControl', type: dataType_1.default.uint8 },
{ name: 'manufacturerCode', type: dataType_1.default.uint16 },
{ name: 'imageType', type: dataType_1.default.uint16 },
{ name: 'fileVersion', type: dataType_1.default.uint32 },
{ name: 'fileOffset', type: dataType_1.default.uint32 },
{ name: 'maximumDataSize', type: dataType_1.default.uint8 },
],
},
imagePageRequest: {
ID: 4,
response: 5,
parameters: [
{ name: 'fieldControl', type: dataType_1.default.uint8 },
{ name: 'manufacturerCode', type: dataType_1.default.uint16 },
{ name: 'imageType', type: dataType_1.default.uint16 },
{ name: 'fileVersion', type: dataType_1.default.uint32 },
{ name: 'fileOffset', type: dataType_1.default.uint32 },
{ name: 'maximumDataSize', type: dataType_1.default.uint8 },
{ name: 'pageSize', type: dataType_1.default.uint16 },
{ name: 'responseSpacing', type: dataType_1.default.uint16 },
],
},
upgradeEndRequest: {
ID: 6,
response: 7,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'manufacturerCode', type: dataType_1.default.uint16 },
{ name: 'imageType', type: dataType_1.default.uint16 },
{ name: 'fileVersion', type: dataType_1.default.uint32 },
],
}
},
commandsResponse: {
imageNotify: {
ID: 0,
parameters: [
{ name: 'payloadType', type: dataType_1.default.uint8 },
{ name: 'queryJitter', type: dataType_1.default.uint8 },
],
},
queryNextImageResponse: {
ID: 2,
parameters: [
{ name: 'status', type: dataType_1.default.uint8 },
{ name: 'manufacturerCode', type: dataType_1.default.uint16, conditions: [{ type: 'statusEquals', value: 0 }] },
{ name: 'imageType', type: dataType_1.default.uint16, conditions: [{ type: 'statusEquals', value: 0 }] },
{ name: 'fileVersion', type: dataType_1.default.uint32, conditions: [{ type: 'statusEquals', value: 0 }] },
{ name: 'imageSize', type: dataType_1.default.uint32, condit