diff --git a/examples/lighting-app/efr32/src/ZclCallbacks.cpp b/examples/lighting-app/efr32/src/ZclCallbacks.cpp index cba694ed5140eb..5201c463445d6b 100644 --- a/examples/lighting-app/efr32/src/ZclCallbacks.cpp +++ b/examples/lighting-app/efr32/src/ZclCallbacks.cpp @@ -56,23 +56,22 @@ void emberAfPostAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId } } -/** @brief Cluster Init +/** @brief OnOff Cluster Init * * This function is called when a specific cluster is initialized. It gives the * application an opportunity to take care of cluster initialization procedures. * It is called exactly once for each endpoint where cluster is present. * * @param endpoint Ver.: always - * @param clusterId Ver.: always * * TODO Issue #3841 - * emberAfClusterInitCallback happens before the stack initialize the cluster + * emberAfOnOffClusterInitCallback happens before the stack initialize the cluster * attributes to the default value. * The logic here expects something similar to the deprecated Plugins callback * emberAfPluginOnOffClusterServerPostInitCallback. * */ -void emberAfClusterInitCallback(EndpointId endpoint, ClusterId clusterId) +void emberAfOnOffClusterInitCallback(EndpointId endpoint) { // TODO: implement any additional Cluster Server init actions } diff --git a/examples/lighting-app/lighting-common/gen/af-structs.h b/examples/lighting-app/lighting-common/gen/af-structs.h index 2da280e55e80f4..e8395a4b4fb5af 100644 --- a/examples/lighting-app/lighting-common/gen/af-structs.h +++ b/examples/lighting-app/lighting-common/gen/af-structs.h @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,47 +15,45 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_EMBER_AF_STRUCTS -#define SILABS_EMBER_AF_STRUCTS +// Prevent multiple inclusion +#pragma once #include "basic-types.h" +#include "enums.h" +#include -// Generated structs from the metadata -// Struct for IasAceZoneStatusResult -typedef struct _IasAceZoneStatusResult +// Struct for BlockThreshold +typedef struct _BlockThreshold { - uint8_t zoneId; - uint16_t zoneStatus; -} IasAceZoneStatusResult; + uint8_t blockThreshold; + uint8_t priceControl; + uint32_t blockPeriodStartTime; + uint32_t blockPeriodDurationMinutes; + uint8_t fuelType; + uint32_t standingCharge; +} EmberAfBlockThreshold; -// Struct for ReadAttributeStatusRecord -typedef struct _ReadAttributeStatusRecord +// Struct for BlockThresholdSubPayload +typedef struct _BlockThresholdSubPayload { - chip::AttributeId attributeId; - uint8_t status; - uint8_t attributeType; - uint8_t * attributeLocation; -} ReadAttributeStatusRecord; + uint8_t tierNumberOfBlockThresholds; + uint8_t * blockThreshold; +} EmberAfBlockThresholdSubPayload; -// Struct for WriteAttributeRecord -typedef struct _WriteAttributeRecord +// Struct for ChatParticipant +typedef struct _ChatParticipant { - chip::AttributeId attributeId; - uint8_t attributeType; - uint8_t * attributeLocation; -} WriteAttributeRecord; + uint16_t uid; + uint8_t * nickname; +} EmberAfChatParticipant; -// Struct for WriteAttributeStatusRecord -typedef struct _WriteAttributeStatusRecord +// Struct for ChatRoom +typedef struct _ChatRoom { - uint8_t status; - chip::AttributeId attributeId; -} WriteAttributeStatusRecord; + uint16_t cid; + uint8_t * name; +} EmberAfChatRoom; // Struct for ConfigureReportingRecord typedef struct _ConfigureReportingRecord @@ -83,7 +65,7 @@ typedef struct _ConfigureReportingRecord uint16_t maximumReportingInterval; uint8_t * reportableChangeLocation; uint16_t timeoutPeriod; -} ConfigureReportingRecord; +} EmberAfConfigureReportingRecord; // Struct for ConfigureReportingStatusRecord typedef struct _ConfigureReportingStatusRecord @@ -91,110 +73,113 @@ typedef struct _ConfigureReportingStatusRecord uint8_t status; uint8_t direction; chip::AttributeId attributeId; -} ConfigureReportingStatusRecord; - -// Struct for ReadReportingConfigurationRecord -typedef struct _ReadReportingConfigurationRecord -{ - uint8_t status; - uint8_t direction; - chip::AttributeId attributeId; - uint8_t attributeType; - uint16_t minimumReportingInterval; - uint16_t maximumReportingInterval; - uint8_t * reportableChangeLocation; - uint16_t timeoutPeriod; -} ReadReportingConfigurationRecord; +} EmberAfConfigureReportingStatusRecord; -// Struct for ReadReportingConfigurationAttributeRecord -typedef struct _ReadReportingConfigurationAttributeRecord +// Struct for DebtPayload +typedef struct _DebtPayload { - uint8_t direction; - chip::AttributeId attributeId; -} ReadReportingConfigurationAttributeRecord; + uint32_t collectionTime; + uint32_t amountCollected; + EmberAfRepaymentDebtType debtType; + uint32_t outstandingDebt; +} EmberAfDebtPayload; -// Struct for ReportAttributeRecord -typedef struct _ReportAttributeRecord +// Struct for DeviceInformationRecord +typedef struct _DeviceInformationRecord { - chip::AttributeId attributeId; - uint8_t attributeType; - uint8_t * attributeLocation; -} ReportAttributeRecord; + uint8_t * ieeeAddress; + chip::EndpointId endpointId; + uint16_t profileId; + uint16_t deviceId; + uint8_t version; + uint8_t groupIdCount; + EmberAfDeviceInformationRecordSort sort; +} EmberAfDeviceInformationRecord; // Struct for DiscoverAttributesInfoRecord typedef struct _DiscoverAttributesInfoRecord { chip::AttributeId attributeId; uint8_t attributeType; -} DiscoverAttributesInfoRecord; +} EmberAfDiscoverAttributesInfoRecord; -// Struct for ExtendedDiscoverAttributesInfoRecord -typedef struct _ExtendedDiscoverAttributesInfoRecord +// Struct for EndpointInformationRecord +typedef struct _EndpointInformationRecord { - chip::AttributeId attributeId; - uint8_t attributeType; - uint8_t attributeAccessControl; -} ExtendedDiscoverAttributesInfoRecord; + uint16_t networkAddress; + chip::EndpointId endpointId; + uint16_t profileId; + uint16_t deviceId; + uint8_t version; +} EmberAfEndpointInformationRecord; -// Struct for ReadStructuredAttributeRecord -typedef struct _ReadStructuredAttributeRecord +// Struct for EphemeralData +typedef struct _EphemeralData { - chip::AttributeId attributeId; - uint8_t indicator; - uint16_t indicies; -} ReadStructuredAttributeRecord; +} EmberAfEphemeralData; -// Struct for WriteStructuredAttributeRecord -typedef struct _WriteStructuredAttributeRecord +// Struct for EventConfigurationPayload +typedef struct _EventConfigurationPayload +{ + uint16_t eventId; + uint8_t eventConfiguration; +} EmberAfEventConfigurationPayload; + +// Struct for EventLogPayload +typedef struct _EventLogPayload +{ + EmberAfEventLogId logId; + uint16_t eventId; + uint32_t eventTime; + uint8_t * eventData; +} EmberAfEventLogPayload; + +// Struct for ExtendedDiscoverAttributesInfoRecord +typedef struct _ExtendedDiscoverAttributesInfoRecord { chip::AttributeId attributeId; - uint8_t indicator; - uint16_t indicies; uint8_t attributeType; - uint8_t * attributeLocation; -} WriteStructuredAttributeRecord; + uint8_t attributeAccessControl; +} EmberAfExtendedDiscoverAttributesInfoRecord; -// Struct for WriteStructuredAttributeStatusRecord -typedef struct _WriteStructuredAttributeStatusRecord +// Struct for GpPairingConfigurationGroupList +typedef struct _GpPairingConfigurationGroupList { - uint8_t status; - chip::AttributeId attributeId; - uint8_t indicator; - uint16_t indicies; -} WriteStructuredAttributeStatusRecord; + uint16_t SinkGroup; + uint16_t Alias; +} EmberAfGpPairingConfigurationGroupList; -// Struct for SceneExtensionAttributeInfo -typedef struct _SceneExtensionAttributeInfo +// Struct for GpTranslationTableUpdateTranslation +typedef struct _GpTranslationTableUpdateTranslation { - uint8_t attributeType; - uint8_t * attributeLocation; -} SceneExtensionAttributeInfo; + uint8_t index; + uint8_t gpdCommandId; + chip::EndpointId endpoint; + uint16_t profile; + uint16_t cluster; + uint8_t zigbeeCommandId; + uint8_t * zigbeeCommandPayload; + uint8_t * additionalInfoBlock; +} EmberAfGpTranslationTableUpdateTranslation; -// Struct for SceneExtensionFieldSet -typedef struct _SceneExtensionFieldSet +// Struct for GroupInformationRecord +typedef struct _GroupInformationRecord { - uint16_t clusterId; - uint8_t length; - uint8_t value; -} SceneExtensionFieldSet; + chip::GroupId groupId; + uint8_t groupType; +} EmberAfGroupInformationRecord; -// Struct for BlockThreshold -typedef struct _BlockThreshold +// Struct for IasAceZoneStatusResult +typedef struct _IasAceZoneStatusResult { - uint8_t blockThreshold; - uint8_t priceControl; - uint32_t blockPeriodStartTime; - uint32_t blockPeriodDurationMinutes; - uint8_t fuelType; - uint32_t standingCharge; -} BlockThreshold; + uint8_t zoneId; + uint16_t zoneStatus; +} EmberAfIasAceZoneStatusResult; -// Struct for Notification -typedef struct _Notification +// Struct for Identity +typedef struct _Identity { - uint16_t contentId; - uint8_t statusFeedback; -} Notification; +} EmberAfIdentity; // Struct for NeighborInfo typedef struct _NeighborInfo @@ -205,48 +190,23 @@ typedef struct _NeighborInfo int16_t z; int8_t rssi; uint8_t numberRssiMeasurements; -} NeighborInfo; - -// Struct for ChatParticipant -typedef struct _ChatParticipant -{ - uint16_t uid; - uint8_t * nickname; -} ChatParticipant; - -// Struct for ChatRoom -typedef struct _ChatRoom -{ - uint16_t cid; - uint8_t * name; -} ChatRoom; +} EmberAfNeighborInfo; // Struct for NodeInformation typedef struct _NodeInformation { uint16_t uid; uint16_t address; - uint8_t endpoint; + chip::EndpointId endpoint; uint8_t * nickname; -} NodeInformation; +} EmberAfNodeInformation; -// Struct for ScheduledPhase -typedef struct _ScheduledPhase -{ - uint8_t energyPhaseId; - uint16_t scheduledTime; -} ScheduledPhase; - -// Struct for TransferredPhase -typedef struct _TransferredPhase +// Struct for Notification +typedef struct _Notification { - uint8_t energyPhaseId; - uint8_t macroPhaseId; - uint16_t expectedDuration; - uint16_t peakPower; - uint16_t energy; - uint16_t maxActivationDelay; -} TransferredPhase; + uint16_t contentId; + uint8_t statusFeedback; +} EmberAfNotification; // Struct for PowerProfileRecord typedef struct _PowerProfileRecord @@ -255,189 +215,217 @@ typedef struct _PowerProfileRecord uint8_t energyPhaseId; uint8_t powerProfileRemoteControl; uint8_t powerProfileState; -} PowerProfileRecord; +} EmberAfPowerProfileRecord; // Struct for PriceMatrixSubPayload typedef struct _PriceMatrixSubPayload { uint8_t tierBlockId; uint32_t price; -} PriceMatrixSubPayload; +} EmberAfPriceMatrixSubPayload; -// Struct for BlockThresholdSubPayload -typedef struct _BlockThresholdSubPayload +// Struct for Protocol +typedef struct _Protocol { - uint8_t tierNumberOfBlockThresholds; - uint8_t * blockThreshold; -} BlockThresholdSubPayload; + uint16_t manufacturerCode; + uint8_t protocolId; +} EmberAfProtocol; -// Struct for TierLabelsPayload -typedef struct _TierLabelsPayload +// Struct for ReadAttributeStatusRecord +typedef struct _ReadAttributeStatusRecord { - uint8_t tierId; - uint8_t * tierLabel; -} TierLabelsPayload; + chip::AttributeId attributeId; + uint8_t status; + uint8_t attributeType; + uint8_t * attributeLocation; +} EmberAfReadAttributeStatusRecord; -// Void typedef for Signature which is empty. -// this will result in all the references to the data being as uint8_t* -typedef uint8_t Signature; +// Struct for ReadReportingConfigurationAttributeRecord +typedef struct _ReadReportingConfigurationAttributeRecord +{ + uint8_t direction; + chip::AttributeId attributeId; +} EmberAfReadReportingConfigurationAttributeRecord; -// Struct for SnapshotResponsePayload -typedef struct _SnapshotResponsePayload +// Struct for ReadReportingConfigurationRecord +typedef struct _ReadReportingConfigurationRecord { - uint8_t snapshotScheduleId; - uint8_t snapshotScheduleConfirmation; -} SnapshotResponsePayload; + uint8_t status; + uint8_t direction; + chip::AttributeId attributeId; + uint8_t attributeType; + uint16_t minimumReportingInterval; + uint16_t maximumReportingInterval; + uint8_t * reportableChangeLocation; + uint16_t timeoutPeriod; +} EmberAfReadReportingConfigurationRecord; -// Struct for SnapshotSchedulePayload -typedef struct _SnapshotSchedulePayload +// Struct for ReadStructuredAttributeRecord +typedef struct _ReadStructuredAttributeRecord { - uint8_t snapshotScheduleId; - uint32_t snapshotStartTime; - uint32_t snapshotSchedule; - uint8_t snapshotPayloadType; - uint32_t snapshotCause; -} SnapshotSchedulePayload; + chip::AttributeId attributeId; + uint8_t indicator; + uint16_t indicies; +} EmberAfReadStructuredAttributeRecord; -// Struct for Protocol -typedef struct _Protocol +// Struct for ReportAttributeRecord +typedef struct _ReportAttributeRecord { - uint16_t manufacturerCode; - uint8_t protocolId; -} Protocol; + chip::AttributeId attributeId; + uint8_t attributeType; + uint8_t * attributeLocation; +} EmberAfReportAttributeRecord; -// Struct for TopUpPayload -typedef struct _TopUpPayload +// Struct for SceneExtensionAttributeInfo +typedef struct _SceneExtensionAttributeInfo { - uint8_t * topUpCode; - int32_t topUpAmount; - uint32_t topUpTime; -} TopUpPayload; + uint8_t attributeType; + uint8_t * attributeLocation; +} EmberAfSceneExtensionAttributeInfo; -// Struct for DebtPayload -typedef struct _DebtPayload +// Struct for SceneExtensionFieldSet +typedef struct _SceneExtensionFieldSet { - uint32_t collectionTime; - uint32_t amountCollected; - uint8_t debtType; - uint32_t outstandingDebt; -} DebtPayload; + chip::ClusterId clusterId; + uint8_t length; + uint8_t value; +} EmberAfSceneExtensionFieldSet; // Struct for ScheduleEntry typedef struct _ScheduleEntry { uint16_t startTime; uint8_t activePriceTierOrFriendlyCreditEnable; -} ScheduleEntry; +} EmberAfScheduleEntry; -// Struct for ScheduleEntryRateSwitchTimes -typedef struct _ScheduleEntryRateSwitchTimes +// Struct for ScheduleEntryAuxilliaryLoadSwitchTimes +typedef struct _ScheduleEntryAuxilliaryLoadSwitchTimes { uint16_t startTime; - uint8_t priceTier; -} ScheduleEntryRateSwitchTimes; + uint8_t auxiliaryLoadSwitchState; +} EmberAfScheduleEntryAuxilliaryLoadSwitchTimes; // Struct for ScheduleEntryFriendlyCreditSwitchTimes typedef struct _ScheduleEntryFriendlyCreditSwitchTimes { uint16_t startTime; uint8_t friendlyCreditEnable; -} ScheduleEntryFriendlyCreditSwitchTimes; +} EmberAfScheduleEntryFriendlyCreditSwitchTimes; -// Struct for ScheduleEntryAuxilliaryLoadSwitchTimes -typedef struct _ScheduleEntryAuxilliaryLoadSwitchTimes +// Struct for ScheduleEntryRateSwitchTimes +typedef struct _ScheduleEntryRateSwitchTimes { uint16_t startTime; - uint8_t auxiliaryLoadSwitchState; -} ScheduleEntryAuxilliaryLoadSwitchTimes; + EmberAfPriceTier priceTier; +} EmberAfScheduleEntryRateSwitchTimes; + +// Struct for ScheduledPhase +typedef struct _ScheduledPhase +{ + uint8_t energyPhaseId; + uint16_t scheduledTime; +} EmberAfScheduledPhase; // Struct for SeasonEntry typedef struct _SeasonEntry { uint32_t seasonStartDate; uint8_t weekIdRef; -} SeasonEntry; +} EmberAfSeasonEntry; + +// Struct for Signature +typedef struct _Signature +{ +} EmberAfSignature; + +// Struct for Smac +typedef struct _Smac +{ +} EmberAfSmac; + +// Struct for SnapshotResponsePayload +typedef struct _SnapshotResponsePayload +{ + uint8_t snapshotScheduleId; + EmberAfSnapshotScheduleConfirmation snapshotScheduleConfirmation; +} EmberAfSnapshotResponsePayload; + +// Struct for SnapshotSchedulePayload +typedef struct _SnapshotSchedulePayload +{ + uint8_t snapshotScheduleId; + uint32_t snapshotStartTime; + uint32_t snapshotSchedule; + EmberAfSnapshotPayloadType snapshotPayloadType; + uint32_t snapshotCause; +} EmberAfSnapshotSchedulePayload; // Struct for SpecialDay typedef struct _SpecialDay { uint32_t specialDayDate; uint8_t dayIdRef; -} SpecialDay; +} EmberAfSpecialDay; -// Struct for EventConfigurationPayload -typedef struct _EventConfigurationPayload +// Struct for TierLabelsPayload +typedef struct _TierLabelsPayload { - uint16_t eventId; - uint8_t eventConfiguration; -} EventConfigurationPayload; + uint8_t tierId; + uint8_t * tierLabel; +} EmberAfTierLabelsPayload; -// Struct for EventLogPayload -typedef struct _EventLogPayload +// Struct for TopUpPayload +typedef struct _TopUpPayload { - uint8_t logId; - uint16_t eventId; - uint32_t eventTime; - uint8_t * eventData; -} EventLogPayload; - -// Void typedef for Identity which is empty. -// this will result in all the references to the data being as uint8_t* -typedef uint8_t Identity; - -// Void typedef for EphemeralData which is empty. -// this will result in all the references to the data being as uint8_t* -typedef uint8_t EphemeralData; - -// Void typedef for Smac which is empty. -// this will result in all the references to the data being as uint8_t* -typedef uint8_t Smac; + uint8_t * topUpCode; + int32_t topUpAmount; + uint32_t topUpTime; +} EmberAfTopUpPayload; -// Struct for DeviceInformationRecord -typedef struct _DeviceInformationRecord +// Struct for TransferredPhase +typedef struct _TransferredPhase { - uint8_t * ieeeAddress; - uint8_t endpointId; - uint16_t deviceId; - uint8_t version; - uint8_t groupIdCount; - uint8_t sort; -} DeviceInformationRecord; + uint8_t energyPhaseId; + uint8_t macroPhaseId; + uint16_t expectedDuration; + uint16_t peakPower; + uint16_t energy; + uint16_t maxActivationDelay; +} EmberAfTransferredPhase; -// Struct for GroupInformationRecord -typedef struct _GroupInformationRecord +// Struct for WriteAttributeRecord +typedef struct _WriteAttributeRecord { - chip::GroupId groupId; - uint8_t groupType; -} GroupInformationRecord; + chip::AttributeId attributeId; + uint8_t attributeType; + uint8_t * attributeLocation; +} EmberAfWriteAttributeRecord; -// Struct for EndpointInformationRecord -typedef struct _EndpointInformationRecord +// Struct for WriteAttributeStatusRecord +typedef struct _WriteAttributeStatusRecord { - uint16_t networkAddress; - uint8_t endpointId; - uint16_t deviceId; - uint8_t version; -} EndpointInformationRecord; + uint8_t status; + chip::AttributeId attributeId; +} EmberAfWriteAttributeStatusRecord; -// Struct for GpTranslationTableUpdateTranslation -typedef struct _GpTranslationTableUpdateTranslation +// Struct for WriteStructuredAttributeRecord +typedef struct _WriteStructuredAttributeRecord { - uint8_t index; - uint8_t gpdCommandId; - uint8_t endpoint; - uint16_t cluster; - uint8_t zigbeeCommandId; - uint8_t * zigbeeCommandPayload; - uint8_t * additionalInfoBlock; -} GpTranslationTableUpdateTranslation; + chip::AttributeId attributeId; + uint8_t indicator; + uint16_t indicies; + uint8_t attributeType; + uint8_t * attributeLocation; +} EmberAfWriteStructuredAttributeRecord; -// Struct for GpPairingConfigurationGroupList -typedef struct _GpPairingConfigurationGroupList +// Struct for WriteStructuredAttributeStatusRecord +typedef struct _WriteStructuredAttributeStatusRecord { - uint16_t SinkGroup; - uint16_t Alias; -} GpPairingConfigurationGroupList; + uint8_t status; + chip::AttributeId attributeId; + uint8_t indicator; + uint16_t indicies; +} EmberAfWriteStructuredAttributeStatusRecord; // Struct for WwahBeaconSurvey typedef struct _WwahBeaconSurvey @@ -445,13 +433,11 @@ typedef struct _WwahBeaconSurvey uint16_t deviceShort; uint8_t rssi; uint8_t classificationMask; -} WwahBeaconSurvey; +} EmberAfWwahBeaconSurvey; // Struct for WwahClusterStatusToUseTC typedef struct _WwahClusterStatusToUseTC { - uint16_t clusterId; + chip::ClusterId clusterId; uint8_t status; -} WwahClusterStatusToUseTC; - -#endif // SILABS_EMBER_AF_STRUCTS +} EmberAfWwahClusterStatusToUseTC; diff --git a/examples/lighting-app/lighting-common/gen/att-storage.h b/examples/lighting-app/lighting-common/gen/att-storage.h index 40a1a0088b4872..7572c8cbc338fb 100644 --- a/examples/lighting-app/lighting-common/gen/att-storage.h +++ b/examples/lighting-app/lighting-common/gen/att-storage.h @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,15 +15,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_ATTRIBUTE_STORAGE_GEN -#define SILABS_ATTRIBUTE_STORAGE_GEN +// Prevent multiple inclusion +#pragma once // Attribute masks modify how attributes are used by the framework +// // Attribute that has this mask is NOT read-only #define ATTRIBUTE_MASK_WRITABLE (0x01) // Attribute that has this mask is saved to a token @@ -56,6 +37,7 @@ #define ATTRIBUTE_MASK_CLIENT (0x40) // Cluster masks modify how clusters are used by the framework +// // Does this cluster have init function? #define CLUSTER_MASK_INIT_FUNCTION (0x01) // Does this cluster have attribute changed function? @@ -64,7 +46,7 @@ #define CLUSTER_MASK_DEFAULT_RESPONSE_FUNCTION (0x04) // Does this cluster have message sent function? #define CLUSTER_MASK_MESSAGE_SENT_FUNCTION (0x08) -// Does this cluster have manufacturer specific attribute changed funciton? +// Does this cluster have manufacturer specific attribute changed function? #define CLUSTER_MASK_MANUFACTURER_SPECIFIC_ATTRIBUTE_CHANGED_FUNCTION (0x10) // Does this cluster have pre-attribute changed function? #define CLUSTER_MASK_PRE_ATTRIBUTE_CHANGED_FUNCTION (0x20) @@ -74,6 +56,7 @@ #define CLUSTER_MASK_CLIENT (0x80) // Command masks modify meanings of commands +// // Is sending of this client command supported #define COMMAND_MASK_OUTGOING_CLIENT (0x01) // Is sending of this server command supported @@ -84,4 +67,3 @@ #define COMMAND_MASK_INCOMING_SERVER (0x08) // Is this command manufacturer specific? #define COMMAND_MASK_MANUFACTURER_SPECIFIC (0x10) -#endif // SILABS_ATTRIBUTE_STORAGE_GEN diff --git a/examples/lighting-app/lighting-common/gen/attribute-id.h b/examples/lighting-app/lighting-common/gen/attribute-id.h index 442f72e97e2232..648809ca67cd83 100644 --- a/examples/lighting-app/lighting-common/gen/attribute-id.h +++ b/examples/lighting-app/lighting-common/gen/attribute-id.h @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,4756 +15,4530 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_EMBER_AF_ATTRIBUTE_ID -#define SILABS_EMBER_AF_ATTRIBUTE_ID +// Prevent multiple inclusion +#pragma once -// Attribute types for cluster: Basic -// Cluster specification level: zcl-7.0-07-5123-07 +// Attribute ids for cluster: Basic // Client attributes -#define ZCL_BASIC_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BASIC_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_VERSION_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_APPLICATION_VERSION_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_STACK_VERSION_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_HW_VERSION_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_MANUFACTURER_NAME_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_MODEL_IDENTIFIER_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_DATE_CODE_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_POWER_SOURCE_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_GENERIC_DEVICE_CLASS_ATTRIBUTE_ID 0x0008 // Ver.: since l&o-1.0-15-0014-04 -#define ZCL_GENERIC_DEVICE_TYPE_ATTRIBUTE_ID 0x0009 // Ver.: since l&o-1.0-15-0014-04 -#define ZCL_PRODUCT_CODE_ATTRIBUTE_ID 0x000A // Ver.: since l&o-1.0-15-0014-04 -#define ZCL_PRODUCT_URL_ATTRIBUTE_ID 0x000B // Ver.: since l&o-1.0-15-0014-04 -#define ZCL_LOCATION_DESCRIPTION_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_PHYSICAL_ENVIRONMENT_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_DEVICE_ENABLED_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_ALARM_MASK_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_DISABLE_LOCAL_CONFIG_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_CURRENT_LOCALE_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_SW_BUILD_ID_ATTRIBUTE_ID 0x4000 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_BASIC_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BASIC_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Power Configuration -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_VERSION_ATTRIBUTE_ID (0x0000) +#define ZCL_APPLICATION_VERSION_ATTRIBUTE_ID (0x0001) +#define ZCL_STACK_VERSION_ATTRIBUTE_ID (0x0002) +#define ZCL_HW_VERSION_ATTRIBUTE_ID (0x0003) +#define ZCL_MANUFACTURER_NAME_ATTRIBUTE_ID (0x0004) +#define ZCL_MODEL_IDENTIFIER_ATTRIBUTE_ID (0x0005) +#define ZCL_DATE_CODE_ATTRIBUTE_ID (0x0006) +#define ZCL_POWER_SOURCE_ATTRIBUTE_ID (0x0007) +#define ZCL_GENERIC_DEVICE_CLASS_ATTRIBUTE_ID (0x0008) +#define ZCL_GENERIC_DEVICE_TYPE_ATTRIBUTE_ID (0x0009) +#define ZCL_PRODUCT_CODE_ATTRIBUTE_ID (0x000A) +#define ZCL_PRODUCT_URL_ATTRIBUTE_ID (0x000B) +#define ZCL_LOCATION_DESCRIPTION_ATTRIBUTE_ID (0x0010) +#define ZCL_PHYSICAL_ENVIRONMENT_ATTRIBUTE_ID (0x0011) +#define ZCL_DEVICE_ENABLED_ATTRIBUTE_ID (0x0012) +#define ZCL_ALARM_MASK_ATTRIBUTE_ID (0x0013) +#define ZCL_DISABLE_LOCAL_CONFIG_ATTRIBUTE_ID (0x0014) +#define ZCL_SW_BUILD_ID_ATTRIBUTE_ID (0x4000) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Power Configuration // Client attributes -#define ZCL_POWER_CONFIG_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_POWER_CONFIG_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_MAINS_VOLTAGE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_MAINS_FREQUENCY_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_MAINS_ALARM_MASK_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_MAINS_VOLTAGE_MIN_THRESHOLD_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_MAINS_VOLTAGE_MAX_THRESHOLD_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_MAINS_VOLTAGE_DWELL_TRIP_POINT_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_BATTERY_VOLTAGE_ATTRIBUTE_ID 0x0020 // Ver.: always -#define ZCL_BATTERY_PERCENTAGE_REMAINING_ATTRIBUTE_ID 0x0021 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_MANUFACTURER_ATTRIBUTE_ID 0x0030 // Ver.: always -#define ZCL_BATTERY_SIZE_ATTRIBUTE_ID 0x0031 // Ver.: always -#define ZCL_BATTERY_AHR_RATING_ATTRIBUTE_ID 0x0032 // Ver.: always -#define ZCL_BATTERY_QUANTITY_ATTRIBUTE_ID 0x0033 // Ver.: always -#define ZCL_BATTERY_RATED_VOLTAGE_ATTRIBUTE_ID 0x0034 // Ver.: always -#define ZCL_BATTERY_ALARM_MASK_ATTRIBUTE_ID 0x0035 // Ver.: always -#define ZCL_BATTERY_VOLTAGE_MIN_THRESHOLD_ATTRIBUTE_ID 0x0036 // Ver.: always -#define ZCL_BATTERY_VOLTAGE_THRESHOLD_1_ATTRIBUTE_ID 0x0037 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_VOLTAGE_THRESHOLD_2_ATTRIBUTE_ID 0x0038 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_VOLTAGE_THRESHOLD_3_ATTRIBUTE_ID 0x0039 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_PERCENTAGE_MIN_THRESHOLD_ATTRIBUTE_ID 0x003A // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_PERCENTAGE_THRESHOLD_1_ATTRIBUTE_ID 0x003B // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_PERCENTAGE_THRESHOLD_2_ATTRIBUTE_ID 0x003C // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_PERCENTAGE_THRESHOLD_3_ATTRIBUTE_ID 0x003D // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_ALARM_STATE_ATTRIBUTE_ID 0x003E // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_VOLTAGE_ATTRIBUTE_ID 0x0040 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_PERCENTAGE_REMAINING_ATTRIBUTE_ID 0x0041 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_MANUFACTURER_ATTRIBUTE_ID 0x0050 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_SIZE_ATTRIBUTE_ID 0x0051 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_AHR_RATING_ATTRIBUTE_ID 0x0052 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_QUANTITY_ATTRIBUTE_ID 0x0053 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_RATED_VOLTAGE_ATTRIBUTE_ID 0x0054 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_ALARM_MASK_ATTRIBUTE_ID 0x0055 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_VOLTAGE_MIN_THRESHOLD_ATTRIBUTE_ID 0x0056 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_VOLTAGE_THRESHOLD_1_ATTRIBUTE_ID 0x0057 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_VOLTAGE_THRESHOLD_2_ATTRIBUTE_ID 0x0058 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_VOLTAGE_THRESHOLD_3_ATTRIBUTE_ID 0x0059 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_PERCENTAGE_MIN_THRESHOLD_ATTRIBUTE_ID 0x005A // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_PERCENTAGE_THRESHOLD_1_ATTRIBUTE_ID 0x005B // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_PERCENTAGE_THRESHOLD_2_ATTRIBUTE_ID 0x005C // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_PERCENTAGE_THRESHOLD_3_ATTRIBUTE_ID 0x005D // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_2_ALARM_STATE_ATTRIBUTE_ID 0x005E // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_VOLTAGE_ATTRIBUTE_ID 0x0060 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_PERCENTAGE_REMAINING_ATTRIBUTE_ID 0x0061 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_MANUFACTURER_ATTRIBUTE_ID 0x0070 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_SIZE_ATTRIBUTE_ID 0x0071 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_AHR_RATING_ATTRIBUTE_ID 0x0072 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_QUANTITY_ATTRIBUTE_ID 0x0073 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_RATED_VOLTAGE_ATTRIBUTE_ID 0x0074 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_ALARM_MASK_ATTRIBUTE_ID 0x0075 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_VOLTAGE_MIN_THRESHOLD_ATTRIBUTE_ID 0x0076 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_VOLTAGE_THRESHOLD_1_ATTRIBUTE_ID 0x0077 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_VOLTAGE_THRESHOLD_2_ATTRIBUTE_ID 0x0078 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_VOLTAGE_THRESHOLD_3_ATTRIBUTE_ID 0x0079 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_PERCENTAGE_MIN_THRESHOLD_ATTRIBUTE_ID 0x007A // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_PERCENTAGE_THRESHOLD_1_ATTRIBUTE_ID 0x007B // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_PERCENTAGE_THRESHOLD_2_ATTRIBUTE_ID 0x007C // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_PERCENTAGE_THRESHOLD_3_ATTRIBUTE_ID 0x007D // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BATTERY_3_ALARM_STATE_ATTRIBUTE_ID 0x007E // Ver.: since ha-1.2-05-3520-29 -#define ZCL_POWER_CONFIG_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_POWER_CONFIG_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Device Temperature Configuration -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_MAINS_VOLTAGE_ATTRIBUTE_ID (0x0000) +#define ZCL_MAINS_FREQUENCY_ATTRIBUTE_ID (0x0001) +#define ZCL_MAINS_ALARM_MASK_ATTRIBUTE_ID (0x0010) +#define ZCL_MAINS_VOLTAGE_MIN_THRESHOLD_ATTRIBUTE_ID (0x0011) +#define ZCL_MAINS_VOLTAGE_MAX_THRESHOLD_ATTRIBUTE_ID (0x0012) +#define ZCL_MAINS_VOLTAGE_DWELL_TRIP_POINT_ATTRIBUTE_ID (0x0013) +#define ZCL_BATTERY_VOLTAGE_ATTRIBUTE_ID (0x0020) +#define ZCL_BATTERY_PERCENTAGE_REMAINING_ATTRIBUTE_ID (0x0021) +#define ZCL_BATTERY_MANUFACTURER_ATTRIBUTE_ID (0x0030) +#define ZCL_BATTERY_SIZE_ATTRIBUTE_ID (0x0031) +#define ZCL_BATTERY_AHR_RATING_ATTRIBUTE_ID (0x0032) +#define ZCL_BATTERY_QUANTITY_ATTRIBUTE_ID (0x0033) +#define ZCL_BATTERY_RATED_VOLTAGE_ATTRIBUTE_ID (0x0034) +#define ZCL_BATTERY_ALARM_MASK_ATTRIBUTE_ID (0x0035) +#define ZCL_BATTERY_VOLTAGE_MIN_THRESHOLD_ATTRIBUTE_ID (0x0036) +#define ZCL_BATTERY_VOLTAGE_THRESHOLD_1_ATTRIBUTE_ID (0x0037) +#define ZCL_BATTERY_VOLTAGE_THRESHOLD_2_ATTRIBUTE_ID (0x0038) +#define ZCL_BATTERY_VOLTAGE_THRESHOLD_3_ATTRIBUTE_ID (0x0039) +#define ZCL_BATTERY_PERCENTAGE_MIN_THRESHOLD_ATTRIBUTE_ID (0x003A) +#define ZCL_BATTERY_PERCENTAGE_THRESHOLD_1_ATTRIBUTE_ID (0x003B) +#define ZCL_BATTERY_PERCENTAGE_THRESHOLD_2_ATTRIBUTE_ID (0x003C) +#define ZCL_BATTERY_PERCENTAGE_THRESHOLD_3_ATTRIBUTE_ID (0x003D) +#define ZCL_BATTERY_ALARM_STATE_ATTRIBUTE_ID (0x003E) +#define ZCL_BATTERY_2_VOLTAGE_ATTRIBUTE_ID (0x0040) +#define ZCL_BATTERY_2_PERCENTAGE_REMAINING_ATTRIBUTE_ID (0x0041) +#define ZCL_BATTERY_2_MANUFACTURER_ATTRIBUTE_ID (0x0050) +#define ZCL_BATTERY_2_SIZE_ATTRIBUTE_ID (0x0051) +#define ZCL_BATTERY_2_AHR_RATING_ATTRIBUTE_ID (0x0052) +#define ZCL_BATTERY_2_QUANTITY_ATTRIBUTE_ID (0x0053) +#define ZCL_BATTERY_2_RATED_VOLTAGE_ATTRIBUTE_ID (0x0054) +#define ZCL_BATTERY_2_ALARM_MASK_ATTRIBUTE_ID (0x0055) +#define ZCL_BATTERY_2_VOLTAGE_MIN_THRESHOLD_ATTRIBUTE_ID (0x0056) +#define ZCL_BATTERY_2_VOLTAGE_THRESHOLD_1_ATTRIBUTE_ID (0x0057) +#define ZCL_BATTERY_2_VOLTAGE_THRESHOLD_2_ATTRIBUTE_ID (0x0058) +#define ZCL_BATTERY_2_VOLTAGE_THRESHOLD_3_ATTRIBUTE_ID (0x0059) +#define ZCL_BATTERY_2_PERCENTAGE_MIN_THRESHOLD_ATTRIBUTE_ID (0x005A) +#define ZCL_BATTERY_2_PERCENTAGE_THRESHOLD_1_ATTRIBUTE_ID (0x005B) +#define ZCL_BATTERY_2_PERCENTAGE_THRESHOLD_2_ATTRIBUTE_ID (0x005C) +#define ZCL_BATTERY_2_PERCENTAGE_THRESHOLD_3_ATTRIBUTE_ID (0x005D) +#define ZCL_BATTERY_2_ALARM_STATE_ATTRIBUTE_ID (0x005E) +#define ZCL_BATTERY_3_VOLTAGE_ATTRIBUTE_ID (0x0060) +#define ZCL_BATTERY_3_PERCENTAGE_REMAINING_ATTRIBUTE_ID (0x0061) +#define ZCL_BATTERY_3_MANUFACTURER_ATTRIBUTE_ID (0x0070) +#define ZCL_BATTERY_3_SIZE_ATTRIBUTE_ID (0x0071) +#define ZCL_BATTERY_3_AHR_RATING_ATTRIBUTE_ID (0x0072) +#define ZCL_BATTERY_3_QUANTITY_ATTRIBUTE_ID (0x0073) +#define ZCL_BATTERY_3_RATED_VOLTAGE_ATTRIBUTE_ID (0x0074) +#define ZCL_BATTERY_3_ALARM_MASK_ATTRIBUTE_ID (0x0075) +#define ZCL_BATTERY_3_VOLTAGE_MIN_THRESHOLD_ATTRIBUTE_ID (0x0076) +#define ZCL_BATTERY_3_VOLTAGE_THRESHOLD_1_ATTRIBUTE_ID (0x0077) +#define ZCL_BATTERY_3_VOLTAGE_THRESHOLD_2_ATTRIBUTE_ID (0x0078) +#define ZCL_BATTERY_3_VOLTAGE_THRESHOLD_3_ATTRIBUTE_ID (0x0079) +#define ZCL_BATTERY_3_PERCENTAGE_MIN_THRESHOLD_ATTRIBUTE_ID (0x007A) +#define ZCL_BATTERY_3_PERCENTAGE_THRESHOLD_1_ATTRIBUTE_ID (0x007B) +#define ZCL_BATTERY_3_PERCENTAGE_THRESHOLD_2_ATTRIBUTE_ID (0x007C) +#define ZCL_BATTERY_3_PERCENTAGE_THRESHOLD_3_ATTRIBUTE_ID (0x007D) +#define ZCL_BATTERY_3_ALARM_STATE_ATTRIBUTE_ID (0x007E) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Device Temperature Configuration // Client attributes -#define ZCL_DEVICE_TEMP_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DEVICE_TEMP_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CURRENT_TEMPERATURE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_MIN_TEMP_EXPERIENCED_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_MAX_TEMP_EXPERIENCED_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_OVER_TEMP_TOTAL_DWELL_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_DEVICE_TEMP_ALARM_MASK_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_LOW_TEMP_THRESHOLD_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_HIGH_TEMP_THRESHOLD_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_LOW_TEMP_DWELL_TRIP_POINT_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_HIGH_TEMP_DWELL_TRIP_POINT_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_DEVICE_TEMP_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DEVICE_TEMP_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Identify -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_CURRENT_TEMPERATURE_ATTRIBUTE_ID (0x0000) +#define ZCL_MIN_TEMP_EXPERIENCED_ATTRIBUTE_ID (0x0001) +#define ZCL_MAX_TEMP_EXPERIENCED_ATTRIBUTE_ID (0x0002) +#define ZCL_OVER_TEMP_TOTAL_DWELL_ATTRIBUTE_ID (0x0003) +#define ZCL_DEVICE_TEMP_ALARM_MASK_ATTRIBUTE_ID (0x0010) +#define ZCL_LOW_TEMP_THRESHOLD_ATTRIBUTE_ID (0x0011) +#define ZCL_HIGH_TEMP_THRESHOLD_ATTRIBUTE_ID (0x0012) +#define ZCL_LOW_TEMP_DWELL_TRIP_POINT_ATTRIBUTE_ID (0x0013) +#define ZCL_HIGH_TEMP_DWELL_TRIP_POINT_ATTRIBUTE_ID (0x0014) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Identify // Client attributes -#define ZCL_IDENTIFY_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_IDENTIFY_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_IDENTIFY_TIME_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_COMMISSION_STATE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_IDENTIFY_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_IDENTIFY_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_IDENTIFY_TIME_ATTRIBUTE_ID (0x0000) +#define ZCL_COMMISSION_STATE_ATTRIBUTE_ID (0x0001) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Groups -// Cluster specification level: zcl-7.0-07-5123-07 +// Attribute ids for cluster: Groups // Client attributes -#define ZCL_GROUPS_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_GROUPS_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_GROUP_NAME_SUPPORT_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_GROUPS_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_GROUPS_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_GROUP_NAME_SUPPORT_ATTRIBUTE_ID (0x0000) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Scenes -// Cluster specification level: zcl-7.0-07-5123-07 +// Attribute ids for cluster: Scenes // Client attributes -#define ZCL_SCENES_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SCENES_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_SCENE_COUNT_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CURRENT_SCENE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CURRENT_GROUP_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_SCENE_VALID_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_SCENE_NAME_SUPPORT_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_LAST_CONFIGURED_BY_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_SCENES_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SCENES_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: On/off -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_SCENE_COUNT_ATTRIBUTE_ID (0x0000) +#define ZCL_CURRENT_SCENE_ATTRIBUTE_ID (0x0001) +#define ZCL_CURRENT_GROUP_ATTRIBUTE_ID (0x0002) +#define ZCL_SCENE_VALID_ATTRIBUTE_ID (0x0003) +#define ZCL_SCENE_NAME_SUPPORT_ATTRIBUTE_ID (0x0004) +#define ZCL_LAST_CONFIGURED_BY_ATTRIBUTE_ID (0x0005) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: On/off // Client attributes -#define ZCL_ON_OFF_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ON_OFF_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ON_OFF_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_2_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_3_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_4_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_GLOBAL_SCENE_CONTROL_ATTRIBUTE_ID 0x4000 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_ON_TIME_ATTRIBUTE_ID 0x4001 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_OFF_WAIT_TIME_ATTRIBUTE_ID 0x4002 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_START_UP_ON_OFF_ATTRIBUTE_ID 0x4003 // Ver.: since l&o-1.0-15-0014-04 -#define ZCL_ON_OFF_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ON_OFF_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: On/off Switch Configuration -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_ON_OFF_ATTRIBUTE_ID (0x0000) +#define ZCL_SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_ATTRIBUTE_ID (0x0000) +#define ZCL_SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_2_ATTRIBUTE_ID (0x0000) +#define ZCL_SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_3_ATTRIBUTE_ID (0x0001) +#define ZCL_SAMPLE_MFG_SPECIFIC_TRANSITION_TIME_4_ATTRIBUTE_ID (0x0001) +#define ZCL_GLOBAL_SCENE_CONTROL_ATTRIBUTE_ID (0x4000) +#define ZCL_ON_TIME_ATTRIBUTE_ID (0x4001) +#define ZCL_OFF_WAIT_TIME_ATTRIBUTE_ID (0x4002) +#define ZCL_START_UP_ON_OFF_ATTRIBUTE_ID (0x4003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: On/off Switch Configuration // Client attributes -#define ZCL_ON_OFF_SWITCH_CONFIG_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ON_OFF_SWITCH_CONFIG_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_SWITCH_TYPE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SWITCH_ACTIONS_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_ON_OFF_SWITCH_CONFIG_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ON_OFF_SWITCH_CONFIG_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_SWITCH_TYPE_ATTRIBUTE_ID (0x0000) +#define ZCL_SWITCH_ACTIONS_ATTRIBUTE_ID (0x0010) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Level Control -// Cluster specification level: zcl-7.0-07-5123-07 +// Attribute ids for cluster: Level Control // Client attributes -#define ZCL_LEVEL_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_LEVEL_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CURRENT_LEVEL_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_LEVEL_CONTROL_REMAINING_TIME_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_OPTIONS_ATTRIBUTE_ID 0x000F // Ver.: since l&o-1.0-15-0014-04 -#define ZCL_ON_OFF_TRANSITION_TIME_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_ON_LEVEL_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_ON_TRANSITION_TIME_ATTRIBUTE_ID 0x0012 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_OFF_TRANSITION_TIME_ATTRIBUTE_ID 0x0013 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_DEFAULT_MOVE_RATE_ATTRIBUTE_ID 0x0014 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_START_UP_CURRENT_LEVEL_ATTRIBUTE_ID 0x4000 // Ver.: since l&o-1.0-15-0014-04 -#define ZCL_LEVEL_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_LEVEL_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Alarms -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_CURRENT_LEVEL_ATTRIBUTE_ID (0x0000) +#define ZCL_LEVEL_CONTROL_REMAINING_TIME_ATTRIBUTE_ID (0x0001) +#define ZCL_OPTIONS_ATTRIBUTE_ID (0x000F) +#define ZCL_ON_OFF_TRANSITION_TIME_ATTRIBUTE_ID (0x0010) +#define ZCL_ON_LEVEL_ATTRIBUTE_ID (0x0011) +#define ZCL_ON_TRANSITION_TIME_ATTRIBUTE_ID (0x0012) +#define ZCL_OFF_TRANSITION_TIME_ATTRIBUTE_ID (0x0013) +#define ZCL_DEFAULT_MOVE_RATE_ATTRIBUTE_ID (0x0014) +#define ZCL_START_UP_CURRENT_LEVEL_ATTRIBUTE_ID (0x4000) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Alarms // Client attributes -#define ZCL_ALARM_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ALARM_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ALARM_COUNT_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_ALARM_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ALARM_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_ALARM_COUNT_ATTRIBUTE_ID (0x0000) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Time -// Cluster specification level: zcl-7.0-07-5123-07 +// Attribute ids for cluster: Time // Client attributes -#define ZCL_TIME_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TIME_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_TIME_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_TIME_STATUS_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_TIME_ZONE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_DST_START_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_DST_END_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_DST_SHIFT_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_STANDARD_TIME_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_LOCAL_TIME_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_LAST_SET_TIME_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_VALID_UNTIL_TIME_ATTRIBUTE_ID 0x0009 // Ver.: always -#define ZCL_TIME_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TIME_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: RSSI Location -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_TIME_ATTRIBUTE_ID (0x0000) +#define ZCL_TIME_STATUS_ATTRIBUTE_ID (0x0001) +#define ZCL_TIME_ZONE_ATTRIBUTE_ID (0x0002) +#define ZCL_DST_START_ATTRIBUTE_ID (0x0003) +#define ZCL_DST_END_ATTRIBUTE_ID (0x0004) +#define ZCL_DST_SHIFT_ATTRIBUTE_ID (0x0005) +#define ZCL_STANDARD_TIME_ATTRIBUTE_ID (0x0006) +#define ZCL_LOCAL_TIME_ATTRIBUTE_ID (0x0007) +#define ZCL_LAST_SET_TIME_ATTRIBUTE_ID (0x0008) +#define ZCL_VALID_UNTIL_TIME_ATTRIBUTE_ID (0x0009) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: RSSI Location // Client attributes -#define ZCL_RSSI_LOCATION_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_RSSI_LOCATION_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_LOCATION_TYPE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_LOCATION_METHOD_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_LOCATION_AGE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_QUALITY_MEASURE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_NUMBER_OF_DEVICES_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_COORDINATE1_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_COORDINATE2_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_COORDINATE3_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_POWER_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_PATH_LOSS_EXPONENT_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_REPORTING_PERIOD_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_CALCULATION_PERIOD_ATTRIBUTE_ID 0x0016 // Ver.: always -#define ZCL_NUMBER_RSSI_MEASUREMENTS_ATTRIBUTE_ID 0x0017 // Ver.: always -#define ZCL_RSSI_LOCATION_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_RSSI_LOCATION_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Binary Input (Basic) -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_LOCATION_TYPE_ATTRIBUTE_ID (0x0000) +#define ZCL_LOCATION_METHOD_ATTRIBUTE_ID (0x0001) +#define ZCL_LOCATION_AGE_ATTRIBUTE_ID (0x0002) +#define ZCL_QUALITY_MEASURE_ATTRIBUTE_ID (0x0003) +#define ZCL_NUMBER_OF_DEVICES_ATTRIBUTE_ID (0x0004) +#define ZCL_COORDINATE1_ATTRIBUTE_ID (0x0010) +#define ZCL_COORDINATE2_ATTRIBUTE_ID (0x0011) +#define ZCL_COORDINATE3_ATTRIBUTE_ID (0x0012) +#define ZCL_POWER_ATTRIBUTE_ID (0x0013) +#define ZCL_PATH_LOSS_EXPONENT_ATTRIBUTE_ID (0x0014) +#define ZCL_REPORTING_PERIOD_ATTRIBUTE_ID (0x0015) +#define ZCL_CALCULATION_PERIOD_ATTRIBUTE_ID (0x0016) +#define ZCL_NUMBER_RSSI_MEASUREMENTS_ATTRIBUTE_ID (0x0017) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Binary Input (Basic) // Client attributes -#define ZCL_BINARY_INPUT_BASIC_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BINARY_INPUT_BASIC_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ACTIVE_TEXT_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_DESCRIPTION_ATTRIBUTE_ID 0x001C // Ver.: always -#define ZCL_INACTIVE_TEXT_ATTRIBUTE_ID 0x002E // Ver.: always -#define ZCL_OUT_OF_SERVICE_ATTRIBUTE_ID 0x0051 // Ver.: always -#define ZCL_POLARITY_ATTRIBUTE_ID 0x0054 // Ver.: always -#define ZCL_PRESENT_VALUE_ATTRIBUTE_ID 0x0055 // Ver.: always -#define ZCL_RELIABILITY_ATTRIBUTE_ID 0x0067 // Ver.: always -#define ZCL_STATUS_FLAGS_ATTRIBUTE_ID 0x006F // Ver.: always -#define ZCL_APPLICATION_TYPE_ATTRIBUTE_ID 0x0100 // Ver.: always -#define ZCL_BINARY_INPUT_BASIC_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BINARY_INPUT_BASIC_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Commissioning -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_ACTIVE_TEXT_ATTRIBUTE_ID (0x0004) +#define ZCL_DESCRIPTION_ATTRIBUTE_ID (0x001C) +#define ZCL_INACTIVE_TEXT_ATTRIBUTE_ID (0x002E) +#define ZCL_OUT_OF_SERVICE_ATTRIBUTE_ID (0x0051) +#define ZCL_POLARITY_ATTRIBUTE_ID (0x0054) +#define ZCL_PRESENT_VALUE_ATTRIBUTE_ID (0x0055) +#define ZCL_RELIABILITY_ATTRIBUTE_ID (0x0067) +#define ZCL_STATUS_FLAGS_ATTRIBUTE_ID (0x006F) +#define ZCL_APPLICATION_TYPE_ATTRIBUTE_ID (0x0100) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Commissioning // Client attributes -#define ZCL_COMMISSIONING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_COMMISSIONING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_SHORT_ADDRESS_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_EXTENDED_PAN_ID_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_PAN_ID_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CHANNEL_MASK_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_PROTOCOL_VERSION_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_STACK_PROFILE_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_STARTUP_CONTROL_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_TRUST_CENTER_ADDRESS_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_TRUST_CENTER_MASTER_KEY_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_NETWORK_KEY_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_USE_INSECURE_JOIN_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_PRECONFIGURED_LINK_KEY_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_NETWORK_KEY_SEQUENCE_NUMBER_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_NETWORK_KEY_TYPE_ATTRIBUTE_ID 0x0016 // Ver.: always -#define ZCL_NETWORK_MANAGER_ADDRESS_ATTRIBUTE_ID 0x0017 // Ver.: always -#define ZCL_SCAN_ATTEMPTS_ATTRIBUTE_ID 0x0020 // Ver.: always -#define ZCL_TIME_BETWEEN_SCANS_ATTRIBUTE_ID 0x0021 // Ver.: always -#define ZCL_REJOIN_INTERVAL_ATTRIBUTE_ID 0x0022 // Ver.: always -#define ZCL_MAX_REJOIN_INTERVAL_ATTRIBUTE_ID 0x0023 // Ver.: always -#define ZCL_INDIRECT_POLL_RATE_ATTRIBUTE_ID 0x0030 // Ver.: always -#define ZCL_PARENT_RETRY_THRESHOLD_ATTRIBUTE_ID 0x0031 // Ver.: always -#define ZCL_CONCENTRATOR_FLAG_ATTRIBUTE_ID 0x0040 // Ver.: always -#define ZCL_CONCENTRATOR_RADIUS_ATTRIBUTE_ID 0x0041 // Ver.: always -#define ZCL_CONCENTRATOR_DISCOVERY_TIME_ATTRIBUTE_ID 0x0042 // Ver.: always -#define ZCL_COMMISSIONING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_COMMISSIONING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Partition -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_SHORT_ADDRESS_ATTRIBUTE_ID (0x0000) +#define ZCL_EXTENDED_PAN_ID_ATTRIBUTE_ID (0x0001) +#define ZCL_PAN_ID_ATTRIBUTE_ID (0x0002) +#define ZCL_CHANNEL_MASK_ATTRIBUTE_ID (0x0003) +#define ZCL_PROTOCOL_VERSION_ATTRIBUTE_ID (0x0004) +#define ZCL_STACK_PROFILE_ATTRIBUTE_ID (0x0005) +#define ZCL_STARTUP_CONTROL_ATTRIBUTE_ID (0x0006) +#define ZCL_TRUST_CENTER_ADDRESS_ATTRIBUTE_ID (0x0010) +#define ZCL_TRUST_CENTER_MASTER_KEY_ATTRIBUTE_ID (0x0011) +#define ZCL_NETWORK_KEY_ATTRIBUTE_ID (0x0012) +#define ZCL_USE_INSECURE_JOIN_ATTRIBUTE_ID (0x0013) +#define ZCL_PRECONFIGURED_LINK_KEY_ATTRIBUTE_ID (0x0014) +#define ZCL_NETWORK_KEY_SEQUENCE_NUMBER_ATTRIBUTE_ID (0x0015) +#define ZCL_NETWORK_KEY_TYPE_ATTRIBUTE_ID (0x0016) +#define ZCL_NETWORK_MANAGER_ADDRESS_ATTRIBUTE_ID (0x0017) +#define ZCL_SCAN_ATTEMPTS_ATTRIBUTE_ID (0x0020) +#define ZCL_TIME_BETWEEN_SCANS_ATTRIBUTE_ID (0x0021) +#define ZCL_REJOIN_INTERVAL_ATTRIBUTE_ID (0x0022) +#define ZCL_MAX_REJOIN_INTERVAL_ATTRIBUTE_ID (0x0023) +#define ZCL_INDIRECT_POLL_RATE_ATTRIBUTE_ID (0x0030) +#define ZCL_PARENT_RETRY_THRESHOLD_ATTRIBUTE_ID (0x0031) +#define ZCL_CONCENTRATOR_FLAG_ATTRIBUTE_ID (0x0040) +#define ZCL_CONCENTRATOR_RADIUS_ATTRIBUTE_ID (0x0041) +#define ZCL_CONCENTRATOR_DISCOVERY_TIME_ATTRIBUTE_ID (0x0042) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Partition // Client attributes -#define ZCL_PARTITION_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PARTITION_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_PARTITION_MAXIMUM_INCOMING_TRANSFER_SIZE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_PARTITION_MAXIMUM_OUTGOING_TRANSFER_SIZE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_PARTIONED_FRAME_SIZE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_LARGE_FRAME_SIZE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_NUMBER_OF_ACK_FRAME_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_NACK_TIMEOUT_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_INTERFRAME_DELAY_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_NUMBER_OF_SEND_RETRIES_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_SENDER_TIMEOUT_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_RECEIVER_TIMEOUT_ATTRIBUTE_ID 0x0009 // Ver.: always -#define ZCL_PARTITION_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PARTITION_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Over the Air Bootloading -// Cluster specification level: zcl-7.0-07-5123-07 +#define ZCL_PARTITION_MAXIMUM_INCOMING_TRANSFER_SIZE_ATTRIBUTE_ID (0x0000) +#define ZCL_PARTITION_MAXIMUM_OUTGOING_TRANSFER_SIZE_ATTRIBUTE_ID (0x0001) +#define ZCL_PARTIONED_FRAME_SIZE_ATTRIBUTE_ID (0x0002) +#define ZCL_LARGE_FRAME_SIZE_ATTRIBUTE_ID (0x0003) +#define ZCL_NUMBER_OF_ACK_FRAME_ATTRIBUTE_ID (0x0004) +#define ZCL_NACK_TIMEOUT_ATTRIBUTE_ID (0x0005) +#define ZCL_INTERFRAME_DELAY_ATTRIBUTE_ID (0x0006) +#define ZCL_NUMBER_OF_SEND_RETRIES_ATTRIBUTE_ID (0x0007) +#define ZCL_SENDER_TIMEOUT_ATTRIBUTE_ID (0x0008) +#define ZCL_RECEIVER_TIMEOUT_ATTRIBUTE_ID (0x0009) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Over the Air Bootloading // Client attributes -#define ZCL_UPGRADE_SERVER_ID_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_FILE_OFFSET_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CURRENT_FILE_VERSION_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CURRENT_ZIGBEE_STACK_VERSION_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_DOWNLOADED_FILE_VERSION_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_DOWNLOADED_ZIGBEE_STACK_VERSION_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_IMAGE_UPGRADE_STATUS_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_MANUFACTURER_ID_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_IMAGE_TYPE_ID_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_MINIMUM_BLOCK_REQUEST_PERIOD_ATTRIBUTE_ID 0x0009 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_IMAGE_STAMP_ATTRIBUTE_ID 0x000A // Ver.: since ha-1.2-05-3520-29 -#define ZCL_UPGRADE_ACTIVATION_POLICY_ATTRIBUTE_ID 0x000B // Ver.: since se-1.2b-15-0131-02 -#define ZCL_UPGRADE_TIMEOUT_POLICY_ATTRIBUTE_ID 0x000C // Ver.: since se-1.2b-15-0131-02 -#define ZCL_OTA_BOOTLOAD_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OTA_BOOTLOAD_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_UPGRADE_SERVER_ID_ATTRIBUTE_ID (0x0000) +#define ZCL_FILE_OFFSET_ATTRIBUTE_ID (0x0001) +#define ZCL_CURRENT_FILE_VERSION_ATTRIBUTE_ID (0x0002) +#define ZCL_CURRENT_ZIGBEE_STACK_VERSION_ATTRIBUTE_ID (0x0003) +#define ZCL_DOWNLOADED_FILE_VERSION_ATTRIBUTE_ID (0x0004) +#define ZCL_DOWNLOADED_ZIGBEE_STACK_VERSION_ATTRIBUTE_ID (0x0005) +#define ZCL_IMAGE_UPGRADE_STATUS_ATTRIBUTE_ID (0x0006) +#define ZCL_MANUFACTURER_ID_ATTRIBUTE_ID (0x0007) +#define ZCL_IMAGE_TYPE_ID_ATTRIBUTE_ID (0x0008) +#define ZCL_MINIMUM_BLOCK_REQUEST_PERIOD_ATTRIBUTE_ID (0x0009) +#define ZCL_IMAGE_STAMP_ATTRIBUTE_ID (0x000A) +#define ZCL_UPGRADE_ACTIVATION_POLICY_ATTRIBUTE_ID (0x000B) +#define ZCL_UPGRADE_TIMEOUT_POLICY_ATTRIBUTE_ID (0x000C) +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_OTA_BOOTLOAD_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OTA_BOOTLOAD_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Power Profile -// Cluster specification level: zcl-7.0-07-5123-07 +// Attribute ids for cluster: Power Profile // Client attributes -#define ZCL_POWER_PROFILE_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_POWER_PROFILE_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_TOTAL_PROFILE_NUM_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_MULTIPLE_SCHEDULING_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_ENERGY_FORMATTING_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_ENERGY_REMOTE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_SCHEDULE_MODE_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_POWER_PROFILE_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_POWER_PROFILE_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_TOTAL_PROFILE_NUM_ATTRIBUTE_ID (0x0000) +#define ZCL_MULTIPLE_SCHEDULING_ATTRIBUTE_ID (0x0001) +#define ZCL_ENERGY_FORMATTING_ATTRIBUTE_ID (0x0002) +#define ZCL_ENERGY_REMOTE_ATTRIBUTE_ID (0x0003) +#define ZCL_SCHEDULE_MODE_ATTRIBUTE_ID (0x0004) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Appliance Control -// Cluster specification level: zcl-7.0-07-5123-07 +// Attribute ids for cluster: Appliance Control // Client attributes -#define ZCL_APPLIANCE_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_APPLIANCE_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_START_TIME_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_FINISH_TIME_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_REMAINING_TIME_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_APPLIANCE_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_APPLIANCE_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_START_TIME_ATTRIBUTE_ID (0x0000) +#define ZCL_FINISH_TIME_ATTRIBUTE_ID (0x0001) +#define ZCL_REMAINING_TIME_ATTRIBUTE_ID (0x0002) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Poll Control -// Cluster specification level: zcl-7.0-07-5123-07 +// Attribute ids for cluster: Poll Control // Client attributes -#define ZCL_POLL_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_POLL_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CHECK_IN_INTERVAL_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_LONG_POLL_INTERVAL_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SHORT_POLL_INTERVAL_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_FAST_POLL_TIMEOUT_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CHECK_IN_INTERVAL_MIN_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_LONG_POLL_INTERVAL_MIN_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_FAST_POLL_TIMEOUT_MAX_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_POLL_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_POLL_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Green Power -// Cluster specification level: gp-1.0a-09-5499-26 +#define ZCL_CHECK_IN_INTERVAL_ATTRIBUTE_ID (0x0000) +#define ZCL_LONG_POLL_INTERVAL_ATTRIBUTE_ID (0x0001) +#define ZCL_SHORT_POLL_INTERVAL_ATTRIBUTE_ID (0x0002) +#define ZCL_FAST_POLL_TIMEOUT_ATTRIBUTE_ID (0x0003) +#define ZCL_CHECK_IN_INTERVAL_MIN_ATTRIBUTE_ID (0x0004) +#define ZCL_LONG_POLL_INTERVAL_MIN_ATTRIBUTE_ID (0x0005) +#define ZCL_FAST_POLL_TIMEOUT_MAX_ATTRIBUTE_ID (0x0006) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Green Power // Client attributes -#define ZCL_GP_CLIENT_GPP_MAX_PROXY_TABLE_ENTRIES_ATTRIBUTE_ID 0x0010 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_PROXY_TABLE_ATTRIBUTE_ID 0x0011 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_GPP_NOTIFICATION_RETRY_NUMBER_ATTRIBUTE_ID 0x0012 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_GPP_NOTIFICATION_RETRY_TIMER_ATTRIBUTE_ID 0x0013 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_GPP_MAX_SEARCH_COUNTER_ATTRIBUTE_ID 0x0014 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_GPP_BLOCKED_GPD_ID_ATTRIBUTE_ID 0x0015 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_GPP_FUNCTIONALITY_ATTRIBUTE_ID 0x0016 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_GPP_ACTIVE_FUNCTIONALITY_ATTRIBUTE_ID 0x0017 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_GP_SHARED_SECURITY_KEY_TYPE_ATTRIBUTE_ID 0x0020 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_GP_SHARED_SECURITY_KEY_ATTRIBUTE_ID 0x0021 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_CLIENT_GP_LINK_KEY_ATTRIBUTE_ID 0x0022 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GREEN_POWER_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_GREEN_POWER_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_GP_CLIENT_GPP_MAX_PROXY_TABLE_ENTRIES_ATTRIBUTE_ID (0x0010) +#define ZCL_GP_CLIENT_PROXY_TABLE_ATTRIBUTE_ID (0x0011) +#define ZCL_GP_CLIENT_GPP_NOTIFICATION_RETRY_NUMBER_ATTRIBUTE_ID (0x0012) +#define ZCL_GP_CLIENT_GPP_NOTIFICATION_RETRY_TIMER_ATTRIBUTE_ID (0x0013) +#define ZCL_GP_CLIENT_GPP_MAX_SEARCH_COUNTER_ATTRIBUTE_ID (0x0014) +#define ZCL_GP_CLIENT_GPP_BLOCKED_GPD_ID_ATTRIBUTE_ID (0x0015) +#define ZCL_GP_CLIENT_GPP_FUNCTIONALITY_ATTRIBUTE_ID (0x0016) +#define ZCL_GP_CLIENT_GPP_ACTIVE_FUNCTIONALITY_ATTRIBUTE_ID (0x0017) +#define ZCL_GP_CLIENT_GP_SHARED_SECURITY_KEY_TYPE_ATTRIBUTE_ID (0x0020) +#define ZCL_GP_CLIENT_GP_SHARED_SECURITY_KEY_ATTRIBUTE_ID (0x0021) +#define ZCL_GP_CLIENT_GP_LINK_KEY_ATTRIBUTE_ID (0x0022) +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_GP_SERVER_GPS_MAX_SINK_TABLE_ENTRIES_ATTRIBUTE_ID 0x0000 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_SINK_TABLE_ATTRIBUTE_ID 0x0001 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_GPS_COMMUNICATION_MODE_ATTRIBUTE_ID 0x0002 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_GPS_COMMISSIONING_EXIT_MODE_ATTRIBUTE_ID 0x0003 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_GPS_COMMISSIONING_WINDOW_ATTRIBUTE_ID 0x0004 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_GPS_SECURITY_LEVEL_ATTRIBUTE_ID 0x0005 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_GPS_FUNCTIONALITY_ATTRIBUTE_ID 0x0006 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_GPS_ACTIVE_FUNCTIONALITY_ATTRIBUTE_ID 0x0007 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_GP_SHARED_SECURITY_KEY_TYPE_ATTRIBUTE_ID 0x0020 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_GP_SHARED_SECURITY_KEY_ATTRIBUTE_ID 0x0021 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SERVER_GP_LINK_KEY_ATTRIBUTE_ID 0x0022 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GREEN_POWER_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_GREEN_POWER_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Keep-Alive -// Cluster specification level: se-1.2b-15-0131-02 +#define ZCL_GP_SERVER_GPS_MAX_SINK_TABLE_ENTRIES_ATTRIBUTE_ID (0x0000) +#define ZCL_GP_SERVER_SINK_TABLE_ATTRIBUTE_ID (0x0001) +#define ZCL_GP_SERVER_GPS_COMMUNICATION_MODE_ATTRIBUTE_ID (0x0002) +#define ZCL_GP_SERVER_GPS_COMMISSIONING_EXIT_MODE_ATTRIBUTE_ID (0x0003) +#define ZCL_GP_SERVER_GPS_COMMISSIONING_WINDOW_ATTRIBUTE_ID (0x0004) +#define ZCL_GP_SERVER_GPS_SECURITY_LEVEL_ATTRIBUTE_ID (0x0005) +#define ZCL_GP_SERVER_GPS_FUNCTIONALITY_ATTRIBUTE_ID (0x0006) +#define ZCL_GP_SERVER_GPS_ACTIVE_FUNCTIONALITY_ATTRIBUTE_ID (0x0007) +#define ZCL_GP_SERVER_GP_SHARED_SECURITY_KEY_TYPE_ATTRIBUTE_ID (0x0020) +#define ZCL_GP_SERVER_GP_SHARED_SECURITY_KEY_ATTRIBUTE_ID (0x0021) +#define ZCL_GP_SERVER_GP_LINK_KEY_ATTRIBUTE_ID (0x0022) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Keep-Alive // Client attributes -#define ZCL_KEEPALIVE_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_KEEPALIVE_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_KEEPALIVE_BASE_ATTRIBUTE_ID 0x0000 // Ver.: since se-1.2b-15-0131-02 -#define ZCL_KEEPALIVE_JITTER_ATTRIBUTE_ID 0x0001 // Ver.: since se-1.2b-15-0131-02 -#define ZCL_KEEPALIVE_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_KEEPALIVE_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_KEEPALIVE_BASE_ATTRIBUTE_ID (0x0000) +#define ZCL_KEEPALIVE_JITTER_ATTRIBUTE_ID (0x0001) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Shade Configuration -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Shade Configuration // Client attributes -#define ZCL_SHADE_CONFIG_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SHADE_CONFIG_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_SHADE_CONFIG_PHYSICAL_CLOSED_LIMIT_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SHADE_CONFIG_MOTOR_STEP_SIZE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SHADE_CONFIG_STATUS_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_SHADE_CONFIG_CLOSED_LIMIT_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_SHADE_CONFIG_MODE_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_SHADE_CONFIG_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SHADE_CONFIG_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_SHADE_CONFIG_PHYSICAL_CLOSED_LIMIT_ATTRIBUTE_ID (0x0000) +#define ZCL_SHADE_CONFIG_MOTOR_STEP_SIZE_ATTRIBUTE_ID (0x0001) +#define ZCL_SHADE_CONFIG_STATUS_ATTRIBUTE_ID (0x0002) +#define ZCL_SHADE_CONFIG_CLOSED_LIMIT_ATTRIBUTE_ID (0x0010) +#define ZCL_SHADE_CONFIG_MODE_ATTRIBUTE_ID (0x0011) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Door Lock -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Door Lock // Client attributes -#define ZCL_DOOR_LOCK_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DOOR_LOCK_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_LOCK_STATE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_LOCK_TYPE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_ACTUATOR_ENABLED_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_DOOR_STATE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_DOOR_OPEN_EVENTS_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_DOOR_CLOSED_EVENTS_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_OPEN_PERIOD_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_NUM_LOCK_RECORDS_SUPPORTED_ATTRIBUTE_ID 0x0010 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_NUM_TOTAL_USERS_SUPPORTED_ATTRIBUTE_ID 0x0011 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_NUM_PIN_USERS_SUPPORTED_ATTRIBUTE_ID 0x0012 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_NUM_RFID_USERS_SUPPORTED_ATTRIBUTE_ID 0x0013 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_NUM_WEEKDAY_SCHEDULES_SUPPORTED_PER_USER_ATTRIBUTE_ID 0x0014 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_NUM_YEARDAY_SCHEDULES_SUPPORTED_PER_USER_ATTRIBUTE_ID 0x0015 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_NUM_HOLIDAY_SCHEDULES_SUPPORTED_PER_USER_ATTRIBUTE_ID 0x0016 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_MAX_PIN_LENGTH_ATTRIBUTE_ID 0x0017 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_MIN_PIN_LENGTH_ATTRIBUTE_ID 0x0018 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_MAX_RFID_CODE_LENGTH_ATTRIBUTE_ID 0x0019 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_MIN_RFID_CODE_LENGTH_ATTRIBUTE_ID 0x001A // Ver.: since ha-1.2-05-3520-29 -#define ZCL_ENABLE_LOGGING_ATTRIBUTE_ID 0x0020 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_LANGUAGE_ATTRIBUTE_ID 0x0021 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_LED_SETTINGS_ATTRIBUTE_ID 0x0022 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_AUTO_RELOCK_TIME_ATTRIBUTE_ID 0x0023 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SOUND_VOLUME_ATTRIBUTE_ID 0x0024 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_OPERATING_MODE_ATTRIBUTE_ID 0x0025 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SUPPORTED_OPERATING_MODES_ATTRIBUTE_ID 0x0026 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_DEFAULT_CONFIGURATION_REGISTER_ATTRIBUTE_ID 0x0027 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_ENABLE_LOCAL_PROGRAMMING_ATTRIBUTE_ID 0x0028 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_ENABLE_ONE_TOUCH_LOCKING_ATTRIBUTE_ID 0x0029 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_ENABLE_INSIDE_STATUS_LED_ATTRIBUTE_ID 0x002A // Ver.: since ha-1.2-05-3520-29 -#define ZCL_ENABLE_PRIVACY_MODE_BUTTON_ATTRIBUTE_ID 0x002B // Ver.: since ha-1.2-05-3520-29 -#define ZCL_WRONG_CODE_ENTRY_LIMIT_ATTRIBUTE_ID 0x0030 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_USER_CODE_TEMPORARY_DISABLE_TIME_ATTRIBUTE_ID 0x0031 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SEND_PIN_OVER_THE_AIR_ATTRIBUTE_ID 0x0032 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_REQUIRE_PIN_FOR_RF_OPERATION_ATTRIBUTE_ID 0x0033 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_ZIGBEE_SECURITY_LEVEL_ATTRIBUTE_ID 0x0034 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_DOOR_LOCK_ALARM_MASK_ATTRIBUTE_ID 0x0040 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_KEYPAD_OPERATION_EVENT_MASK_ATTRIBUTE_ID 0x0041 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_RF_OPERATION_EVENT_MASK_ATTRIBUTE_ID 0x0042 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_MANUAL_OPERATION_EVENT_MASK_ATTRIBUTE_ID 0x0043 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_RFID_OPERATION_EVENT_MASK_ATTRIBUTE_ID 0x0044 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_KEYPAD_PROGRAMMING_EVENT_MASK_ATTRIBUTE_ID 0x0045 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_RF_PROGRAMMING_EVENT_MASK_ATTRIBUTE_ID 0x0046 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_RFID_PROGRAMMING_EVENT_MASK_ATTRIBUTE_ID 0x0047 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_DOOR_LOCK_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DOOR_LOCK_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Window Covering -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_LOCK_STATE_ATTRIBUTE_ID (0x0000) +#define ZCL_LOCK_TYPE_ATTRIBUTE_ID (0x0001) +#define ZCL_ACTUATOR_ENABLED_ATTRIBUTE_ID (0x0002) +#define ZCL_DOOR_STATE_ATTRIBUTE_ID (0x0003) +#define ZCL_DOOR_OPEN_EVENTS_ATTRIBUTE_ID (0x0004) +#define ZCL_DOOR_CLOSED_EVENTS_ATTRIBUTE_ID (0x0005) +#define ZCL_OPEN_PERIOD_ATTRIBUTE_ID (0x0006) +#define ZCL_NUM_LOCK_RECORDS_SUPPORTED_ATTRIBUTE_ID (0x0010) +#define ZCL_NUM_TOTAL_USERS_SUPPORTED_ATTRIBUTE_ID (0x0011) +#define ZCL_NUM_PIN_USERS_SUPPORTED_ATTRIBUTE_ID (0x0012) +#define ZCL_NUM_RFID_USERS_SUPPORTED_ATTRIBUTE_ID (0x0013) +#define ZCL_NUM_WEEKDAY_SCHEDULES_SUPPORTED_PER_USER_ATTRIBUTE_ID (0x0014) +#define ZCL_NUM_YEARDAY_SCHEDULES_SUPPORTED_PER_USER_ATTRIBUTE_ID (0x0015) +#define ZCL_NUM_HOLIDAY_SCHEDULES_SUPPORTED_PER_USER_ATTRIBUTE_ID (0x0016) +#define ZCL_MAX_PIN_LENGTH_ATTRIBUTE_ID (0x0017) +#define ZCL_MIN_PIN_LENGTH_ATTRIBUTE_ID (0x0018) +#define ZCL_MAX_RFID_CODE_LENGTH_ATTRIBUTE_ID (0x0019) +#define ZCL_MIN_RFID_CODE_LENGTH_ATTRIBUTE_ID (0x001A) +#define ZCL_ENABLE_LOGGING_ATTRIBUTE_ID (0x0020) +#define ZCL_LANGUAGE_ATTRIBUTE_ID (0x0021) +#define ZCL_LED_SETTINGS_ATTRIBUTE_ID (0x0022) +#define ZCL_AUTO_RELOCK_TIME_ATTRIBUTE_ID (0x0023) +#define ZCL_SOUND_VOLUME_ATTRIBUTE_ID (0x0024) +#define ZCL_OPERATING_MODE_ATTRIBUTE_ID (0x0025) +#define ZCL_SUPPORTED_OPERATING_MODES_ATTRIBUTE_ID (0x0026) +#define ZCL_DEFAULT_CONFIGURATION_REGISTER_ATTRIBUTE_ID (0x0027) +#define ZCL_ENABLE_LOCAL_PROGRAMMING_ATTRIBUTE_ID (0x0028) +#define ZCL_ENABLE_ONE_TOUCH_LOCKING_ATTRIBUTE_ID (0x0029) +#define ZCL_ENABLE_INSIDE_STATUS_LED_ATTRIBUTE_ID (0x002A) +#define ZCL_ENABLE_PRIVACY_MODE_BUTTON_ATTRIBUTE_ID (0x002B) +#define ZCL_WRONG_CODE_ENTRY_LIMIT_ATTRIBUTE_ID (0x0030) +#define ZCL_USER_CODE_TEMPORARY_DISABLE_TIME_ATTRIBUTE_ID (0x0031) +#define ZCL_SEND_PIN_OVER_THE_AIR_ATTRIBUTE_ID (0x0032) +#define ZCL_REQUIRE_PIN_FOR_RF_OPERATION_ATTRIBUTE_ID (0x0033) +#define ZCL_ZIGBEE_SECURITY_LEVEL_ATTRIBUTE_ID (0x0034) +#define ZCL_DOOR_LOCK_ALARM_MASK_ATTRIBUTE_ID (0x0040) +#define ZCL_KEYPAD_OPERATION_EVENT_MASK_ATTRIBUTE_ID (0x0041) +#define ZCL_RF_OPERATION_EVENT_MASK_ATTRIBUTE_ID (0x0042) +#define ZCL_MANUAL_OPERATION_EVENT_MASK_ATTRIBUTE_ID (0x0043) +#define ZCL_RFID_OPERATION_EVENT_MASK_ATTRIBUTE_ID (0x0044) +#define ZCL_KEYPAD_PROGRAMMING_EVENT_MASK_ATTRIBUTE_ID (0x0045) +#define ZCL_RF_PROGRAMMING_EVENT_MASK_ATTRIBUTE_ID (0x0046) +#define ZCL_RFID_PROGRAMMING_EVENT_MASK_ATTRIBUTE_ID (0x0047) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Window Covering // Client attributes -#define ZCL_WINDOW_COVERING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_WINDOW_COVERING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_COVERING_TYPE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_LIMIT_LIFT_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_LIMIT_TILT_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CURRENT_LIFT_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CURRENT_TILT_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_NUMBER_LIFT_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_NUMBER_TILT_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_CONFIG_STATUS_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_CURRENT_LIFT_PERCENTAGE_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_CURRENT_TILT_PERCENTAGE_ATTRIBUTE_ID 0x0009 // Ver.: always -#define ZCL_OPEN_LIMIT_LIFT_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_CLOSED_LIMIT_LIFT_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_OPEN_LIMIT_TILT_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_CLOSED_LIMIT_TILT_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_VELOCITY_LIFT_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_ACCELERATION_LIFT_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_DECELERATION_LIFT_ATTRIBUTE_ID 0x0016 // Ver.: always -#define ZCL_MODE_ATTRIBUTE_ID 0x0017 // Ver.: always -#define ZCL_SETPOINTS_LIFT_ATTRIBUTE_ID 0x0018 // Ver.: always -#define ZCL_SETPOINTS_TILT_ATTRIBUTE_ID 0x0019 // Ver.: always -#define ZCL_WINDOW_COVERING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_WINDOW_COVERING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Barrier Control -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_COVERING_TYPE_ATTRIBUTE_ID (0x0000) +#define ZCL_LIMIT_LIFT_ATTRIBUTE_ID (0x0001) +#define ZCL_LIMIT_TILT_ATTRIBUTE_ID (0x0002) +#define ZCL_CURRENT_LIFT_ATTRIBUTE_ID (0x0003) +#define ZCL_CURRENT_TILT_ATTRIBUTE_ID (0x0004) +#define ZCL_NUMBER_LIFT_ATTRIBUTE_ID (0x0005) +#define ZCL_NUMBER_TILT_ATTRIBUTE_ID (0x0006) +#define ZCL_CONFIG_STATUS_ATTRIBUTE_ID (0x0007) +#define ZCL_CURRENT_LIFT_PERCENTAGE_ATTRIBUTE_ID (0x0008) +#define ZCL_CURRENT_TILT_PERCENTAGE_ATTRIBUTE_ID (0x0009) +#define ZCL_OPEN_LIMIT_LIFT_ATTRIBUTE_ID (0x0010) +#define ZCL_CLOSED_LIMIT_LIFT_ATTRIBUTE_ID (0x0011) +#define ZCL_OPEN_LIMIT_TILT_ATTRIBUTE_ID (0x0012) +#define ZCL_CLOSED_LIMIT_TILT_ATTRIBUTE_ID (0x0013) +#define ZCL_VELOCITY_LIFT_ATTRIBUTE_ID (0x0014) +#define ZCL_ACCELERATION_LIFT_ATTRIBUTE_ID (0x0015) +#define ZCL_DECELERATION_LIFT_ATTRIBUTE_ID (0x0016) +#define ZCL_MODE_ATTRIBUTE_ID (0x0017) +#define ZCL_SETPOINTS_LIFT_ATTRIBUTE_ID (0x0018) +#define ZCL_SETPOINTS_TILT_ATTRIBUTE_ID (0x0019) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Barrier Control // Client attributes -#define ZCL_BARRIER_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BARRIER_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_BARRIER_MOVING_STATE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_BARRIER_SAFETY_STATUS_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_BARRIER_CAPABILITIES_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_BARRIER_OPEN_EVENTS_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_BARRIER_CLOSE_EVENTS_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_BARRIER_COMMAND_OPEN_EVENTS_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_BARRIER_COMMAND_CLOSE_EVENTS_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_BARRIER_OPEN_PERIOD_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_BARRIER_CLOSE_PERIOD_ATTRIBUTE_ID 0x0009 // Ver.: always -#define ZCL_BARRIER_POSITION_ATTRIBUTE_ID 0x000A // Ver.: always -#define ZCL_BARRIER_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BARRIER_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Pump Configuration and Control -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_BARRIER_MOVING_STATE_ATTRIBUTE_ID (0x0001) +#define ZCL_BARRIER_SAFETY_STATUS_ATTRIBUTE_ID (0x0002) +#define ZCL_BARRIER_CAPABILITIES_ATTRIBUTE_ID (0x0003) +#define ZCL_BARRIER_OPEN_EVENTS_ATTRIBUTE_ID (0x0004) +#define ZCL_BARRIER_CLOSE_EVENTS_ATTRIBUTE_ID (0x0005) +#define ZCL_BARRIER_COMMAND_OPEN_EVENTS_ATTRIBUTE_ID (0x0006) +#define ZCL_BARRIER_COMMAND_CLOSE_EVENTS_ATTRIBUTE_ID (0x0007) +#define ZCL_BARRIER_OPEN_PERIOD_ATTRIBUTE_ID (0x0008) +#define ZCL_BARRIER_CLOSE_PERIOD_ATTRIBUTE_ID (0x0009) +#define ZCL_BARRIER_POSITION_ATTRIBUTE_ID (0x000A) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Pump Configuration and Control // Client attributes -#define ZCL_PUMP_CONFIG_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PUMP_CONFIG_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_MAX_PRESSURE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_MAX_SPEED_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_MAX_FLOW_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_MIN_CONST_PRESSURE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_MAX_CONST_PRESSURE_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_MIN_COMP_PRESSURE_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_MAX_COMP_PRESSURE_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_MIN_CONST_SPEED_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_MAX_CONST_SPEED_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_MIN_CONST_FLOW_ATTRIBUTE_ID 0x0009 // Ver.: always -#define ZCL_MAX_CONST_FLOW_ATTRIBUTE_ID 0x000A // Ver.: always -#define ZCL_MIN_CONST_TEMP_ATTRIBUTE_ID 0x000B // Ver.: always -#define ZCL_MAX_CONST_TEMP_ATTRIBUTE_ID 0x000C // Ver.: always -#define ZCL_PUMP_STATUS_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_EFFECTIVE_OPERATION_MODE_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_EFFECTIVE_CONTROL_MODE_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_CAPACITY_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_SPEED_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_LIFETIME_RUNNING_HOURS_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_PUMP_POWER_ATTRIBUTE_ID 0x0016 // Ver.: always -#define ZCL_LIFETIME_ENERGY_CONSUMED_ATTRIBUTE_ID 0x0017 // Ver.: always -#define ZCL_OPERATION_MODE_ATTRIBUTE_ID 0x0020 // Ver.: always -#define ZCL_CONTROL_MODE_ATTRIBUTE_ID 0x0021 // Ver.: always -#define ZCL_PUMP_ALARM_MASK_ATTRIBUTE_ID 0x0022 // Ver.: always -#define ZCL_PUMP_CONFIG_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PUMP_CONFIG_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Thermostat -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_MAX_PRESSURE_ATTRIBUTE_ID (0x0000) +#define ZCL_MAX_SPEED_ATTRIBUTE_ID (0x0001) +#define ZCL_MAX_FLOW_ATTRIBUTE_ID (0x0002) +#define ZCL_MIN_CONST_PRESSURE_ATTRIBUTE_ID (0x0003) +#define ZCL_MAX_CONST_PRESSURE_ATTRIBUTE_ID (0x0004) +#define ZCL_MIN_COMP_PRESSURE_ATTRIBUTE_ID (0x0005) +#define ZCL_MAX_COMP_PRESSURE_ATTRIBUTE_ID (0x0006) +#define ZCL_MIN_CONST_SPEED_ATTRIBUTE_ID (0x0007) +#define ZCL_MAX_CONST_SPEED_ATTRIBUTE_ID (0x0008) +#define ZCL_MIN_CONST_FLOW_ATTRIBUTE_ID (0x0009) +#define ZCL_MAX_CONST_FLOW_ATTRIBUTE_ID (0x000A) +#define ZCL_MIN_CONST_TEMP_ATTRIBUTE_ID (0x000B) +#define ZCL_MAX_CONST_TEMP_ATTRIBUTE_ID (0x000C) +#define ZCL_PUMP_STATUS_ATTRIBUTE_ID (0x0010) +#define ZCL_EFFECTIVE_OPERATION_MODE_ATTRIBUTE_ID (0x0011) +#define ZCL_EFFECTIVE_CONTROL_MODE_ATTRIBUTE_ID (0x0012) +#define ZCL_CAPACITY_ATTRIBUTE_ID (0x0013) +#define ZCL_SPEED_ATTRIBUTE_ID (0x0014) +#define ZCL_LIFETIME_RUNNING_HOURS_ATTRIBUTE_ID (0x0015) +#define ZCL_PUMP_POWER_ATTRIBUTE_ID (0x0016) +#define ZCL_LIFETIME_ENERGY_CONSUMED_ATTRIBUTE_ID (0x0017) +#define ZCL_OPERATION_MODE_ATTRIBUTE_ID (0x0020) +#define ZCL_CONTROL_MODE_ATTRIBUTE_ID (0x0021) +#define ZCL_PUMP_ALARM_MASK_ATTRIBUTE_ID (0x0022) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Thermostat // Client attributes -#define ZCL_THERMOSTAT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_THERMOSTAT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_LOCAL_TEMPERATURE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_OUTDOOR_TEMPERATURE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_THERMOSTAT_OCCUPANCY_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_ABS_MIN_HEAT_SETPOINT_LIMIT_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_ABS_MAX_HEAT_SETPOINT_LIMIT_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_ABS_MIN_COOL_SETPOINT_LIMIT_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_ABS_MAX_COOL_SETPOINT_LIMIT_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_PI_COOLING_DEMAND_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_PI_HEATING_DEMAND_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_HVAC_SYSTEM_TYPE_CONFIGURATION_ATTRIBUTE_ID 0x0009 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_LOCAL_TEMPERATURE_CALIBRATION_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_OCCUPIED_COOLING_SETPOINT_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_OCCUPIED_HEATING_SETPOINT_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_UNOCCUPIED_COOLING_SETPOINT_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_UNOCCUPIED_HEATING_SETPOINT_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_MIN_HEAT_SETPOINT_LIMIT_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_MAX_HEAT_SETPOINT_LIMIT_ATTRIBUTE_ID 0x0016 // Ver.: always -#define ZCL_MIN_COOL_SETPOINT_LIMIT_ATTRIBUTE_ID 0x0017 // Ver.: always -#define ZCL_MAX_COOL_SETPOINT_LIMIT_ATTRIBUTE_ID 0x0018 // Ver.: always -#define ZCL_MIN_SETPOINT_DEAD_BAND_ATTRIBUTE_ID 0x0019 // Ver.: always -#define ZCL_REMOTE_SENSING_ATTRIBUTE_ID 0x001A // Ver.: always -#define ZCL_CONTROL_SEQUENCE_OF_OPERATION_ATTRIBUTE_ID 0x001B // Ver.: always -#define ZCL_SYSTEM_MODE_ATTRIBUTE_ID 0x001C // Ver.: always -#define ZCL_THERMOSTAT_ALARM_MASK_ATTRIBUTE_ID 0x001D // Ver.: always -#define ZCL_THERMOSTAT_RUNNING_MODE_ATTRIBUTE_ID 0x001E // Ver.: since ha-1.2-05-3520-29 -#define ZCL_START_OF_WEEK_ATTRIBUTE_ID 0x0020 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_NUMBER_OF_WEEKLY_TRANSITIONS_ATTRIBUTE_ID 0x0021 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_NUMBER_OF_DAILY_TRANSITIONS_ATTRIBUTE_ID 0x0022 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_TEMPERATURE_SETPOINT_HOLD_ATTRIBUTE_ID 0x0023 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_TEMPERATURE_SETPOINT_HOLD_DURATION_ATTRIBUTE_ID 0x0024 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_THERMOSTAT_PROGRAMMING_OPERATION_MODE_ATTRIBUTE_ID 0x0025 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_THERMOSTAT_RUNNING_STATE_ATTRIBUTE_ID 0x0029 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SETPOINT_CHANGE_SOURCE_ATTRIBUTE_ID 0x0030 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SETPOINT_CHANGE_AMOUNT_ATTRIBUTE_ID 0x0031 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SETPOINT_CHANGE_SOURCE_TIMESTAMP_ATTRIBUTE_ID 0x0032 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_OCCUPIED_SETBACK_ATTRIBUTE_ID 0x0034 // Ver.: always -#define ZCL_OCCUPIED_SETBACK_MIN_ATTRIBUTE_ID 0x0035 // Ver.: always -#define ZCL_OCCUPIED_SETBACK_MAX_ATTRIBUTE_ID 0x0036 // Ver.: always -#define ZCL_UNOCCUPIED_SETBACK_ATTRIBUTE_ID 0x0037 // Ver.: always -#define ZCL_UNOCCUPIED_SETBACK_MIN_ATTRIBUTE_ID 0x0038 // Ver.: always -#define ZCL_UNOCCUPIED_SETBACK_MAX_ATTRIBUTE_ID 0x0039 // Ver.: always -#define ZCL_EMERGENCY_HEAT_DELTA_ATTRIBUTE_ID 0x003A // Ver.: always -#define ZCL_AC_TYPE_ATTRIBUTE_ID 0x0040 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_AC_CAPACITY_ATTRIBUTE_ID 0x0041 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_AC_REFRIGERANT_TYPE_ATTRIBUTE_ID 0x0042 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_AC_COMPRESSOR_ATTRIBUTE_ID 0x0043 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_AC_ERROR_CODE_ATTRIBUTE_ID 0x0044 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_AC_LOUVER_POSITION_ATTRIBUTE_ID 0x0045 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_AC_COIL_TEMPERATURE_ATTRIBUTE_ID 0x0046 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_AC_CAPACITY_FORMAT_ATTRIBUTE_ID 0x0047 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_THERMOSTAT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_THERMOSTAT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Fan Control -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_LOCAL_TEMPERATURE_ATTRIBUTE_ID (0x0000) +#define ZCL_OUTDOOR_TEMPERATURE_ATTRIBUTE_ID (0x0001) +#define ZCL_THERMOSTAT_OCCUPANCY_ATTRIBUTE_ID (0x0002) +#define ZCL_ABS_MIN_HEAT_SETPOINT_LIMIT_ATTRIBUTE_ID (0x0003) +#define ZCL_ABS_MAX_HEAT_SETPOINT_LIMIT_ATTRIBUTE_ID (0x0004) +#define ZCL_ABS_MIN_COOL_SETPOINT_LIMIT_ATTRIBUTE_ID (0x0005) +#define ZCL_ABS_MAX_COOL_SETPOINT_LIMIT_ATTRIBUTE_ID (0x0006) +#define ZCL_PI_COOLING_DEMAND_ATTRIBUTE_ID (0x0007) +#define ZCL_PI_HEATING_DEMAND_ATTRIBUTE_ID (0x0008) +#define ZCL_HVAC_SYSTEM_TYPE_CONFIGURATION_ATTRIBUTE_ID (0x0009) +#define ZCL_LOCAL_TEMPERATURE_CALIBRATION_ATTRIBUTE_ID (0x0010) +#define ZCL_OCCUPIED_COOLING_SETPOINT_ATTRIBUTE_ID (0x0011) +#define ZCL_OCCUPIED_HEATING_SETPOINT_ATTRIBUTE_ID (0x0012) +#define ZCL_UNOCCUPIED_COOLING_SETPOINT_ATTRIBUTE_ID (0x0013) +#define ZCL_UNOCCUPIED_HEATING_SETPOINT_ATTRIBUTE_ID (0x0014) +#define ZCL_MIN_HEAT_SETPOINT_LIMIT_ATTRIBUTE_ID (0x0015) +#define ZCL_MAX_HEAT_SETPOINT_LIMIT_ATTRIBUTE_ID (0x0016) +#define ZCL_MIN_COOL_SETPOINT_LIMIT_ATTRIBUTE_ID (0x0017) +#define ZCL_MAX_COOL_SETPOINT_LIMIT_ATTRIBUTE_ID (0x0018) +#define ZCL_MIN_SETPOINT_DEAD_BAND_ATTRIBUTE_ID (0x0019) +#define ZCL_REMOTE_SENSING_ATTRIBUTE_ID (0x001A) +#define ZCL_CONTROL_SEQUENCE_OF_OPERATION_ATTRIBUTE_ID (0x001B) +#define ZCL_SYSTEM_MODE_ATTRIBUTE_ID (0x001C) +#define ZCL_THERMOSTAT_ALARM_MASK_ATTRIBUTE_ID (0x001D) +#define ZCL_THERMOSTAT_RUNNING_MODE_ATTRIBUTE_ID (0x001E) +#define ZCL_START_OF_WEEK_ATTRIBUTE_ID (0x0020) +#define ZCL_NUMBER_OF_WEEKLY_TRANSITIONS_ATTRIBUTE_ID (0x0021) +#define ZCL_NUMBER_OF_DAILY_TRANSITIONS_ATTRIBUTE_ID (0x0022) +#define ZCL_TEMPERATURE_SETPOINT_HOLD_ATTRIBUTE_ID (0x0023) +#define ZCL_TEMPERATURE_SETPOINT_HOLD_DURATION_ATTRIBUTE_ID (0x0024) +#define ZCL_THERMOSTAT_PROGRAMMING_OPERATION_MODE_ATTRIBUTE_ID (0x0025) +#define ZCL_THERMOSTAT_RUNNING_STATE_ATTRIBUTE_ID (0x0029) +#define ZCL_SETPOINT_CHANGE_SOURCE_ATTRIBUTE_ID (0x0030) +#define ZCL_SETPOINT_CHANGE_AMOUNT_ATTRIBUTE_ID (0x0031) +#define ZCL_SETPOINT_CHANGE_SOURCE_TIMESTAMP_ATTRIBUTE_ID (0x0032) +#define ZCL_AC_TYPE_ATTRIBUTE_ID (0x0040) +#define ZCL_AC_CAPACITY_ATTRIBUTE_ID (0x0041) +#define ZCL_AC_REFRIGERANT_TYPE_ATTRIBUTE_ID (0x0042) +#define ZCL_AC_COMPRESSOR_ATTRIBUTE_ID (0x0043) +#define ZCL_AC_ERROR_CODE_ATTRIBUTE_ID (0x0044) +#define ZCL_AC_LOUVER_POSITION_ATTRIBUTE_ID (0x0045) +#define ZCL_AC_COIL_TEMPERATURE_ATTRIBUTE_ID (0x0046) +#define ZCL_AC_CAPACITY_FORMAT_ATTRIBUTE_ID (0x0047) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Fan Control // Client attributes -#define ZCL_FAN_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_FAN_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_FAN_CONTROL_FAN_MODE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_FAN_CONTROL_FAN_MODE_SEQUENCE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_FAN_DELAY_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_FAN_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_FAN_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_FAN_CONTROL_FAN_MODE_ATTRIBUTE_ID (0x0000) +#define ZCL_FAN_CONTROL_FAN_MODE_SEQUENCE_ATTRIBUTE_ID (0x0001) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Dehumidification Control -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Dehumidification Control // Client attributes -#define ZCL_DEHUMID_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DEHUMID_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_RELATIVE_HUMIDITY_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_DEHUMIDIFICATION_COOLING_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_RH_DEHUMIDIFICATION_SETPOINT_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_RELATIVE_HUMIDITY_MODE_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_DEHUMIDIFICATION_LOCKOUT_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_DEHUMIDIFICATION_HYSTERESIS_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_DEHUMIDIFICATION_MAX_COOL_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_RELATIVE_HUMIDITY_DISPLAY_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_DEHUMID_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DEHUMID_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Thermostat User Interface Configuration -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_RELATIVE_HUMIDITY_ATTRIBUTE_ID (0x0000) +#define ZCL_DEHUMIDIFICATION_COOLING_ATTRIBUTE_ID (0x0001) +#define ZCL_RH_DEHUMIDIFICATION_SETPOINT_ATTRIBUTE_ID (0x0010) +#define ZCL_RELATIVE_HUMIDITY_MODE_ATTRIBUTE_ID (0x0011) +#define ZCL_DEHUMIDIFICATION_LOCKOUT_ATTRIBUTE_ID (0x0012) +#define ZCL_DEHUMIDIFICATION_HYSTERESIS_ATTRIBUTE_ID (0x0013) +#define ZCL_DEHUMIDIFICATION_MAX_COOL_ATTRIBUTE_ID (0x0014) +#define ZCL_RELATIVE_HUMIDITY_DISPLAY_ATTRIBUTE_ID (0x0015) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Thermostat User Interface Configuration // Client attributes -#define ZCL_THERMOSTAT_UI_CONFIG_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_THERMOSTAT_UI_CONFIG_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_TEMPERATURE_DISPLAY_MODE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_KEYPAD_LOCKOUT_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SCHEDULE_PROGRAMMING_VISIBILITY_ATTRIBUTE_ID 0x0002 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_BACKLIGHT_TIMEOUT_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_SETPOINT_SOURCE_INDICATION_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_THERMOSTAT_UI_CONFIG_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_THERMOSTAT_UI_CONFIG_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_TEMPERATURE_DISPLAY_MODE_ATTRIBUTE_ID (0x0000) +#define ZCL_KEYPAD_LOCKOUT_ATTRIBUTE_ID (0x0001) +#define ZCL_SCHEDULE_PROGRAMMING_VISIBILITY_ATTRIBUTE_ID (0x0002) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Color Control -// Cluster specification level: zcl6-errata-14-0129-15 +// Attribute ids for cluster: Color Control // Client attributes -#define ZCL_COLOR_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_COLOR_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_COLOR_CONTROL_CURRENT_HUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_COLOR_CONTROL_CURRENT_SATURATION_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_COLOR_CONTROL_REMAINING_TIME_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_COLOR_CONTROL_CURRENT_X_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_COLOR_CONTROL_CURRENT_Y_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_COLOR_CONTROL_DRIFT_COMPENSATION_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_COLOR_CONTROL_COMPENSATION_TEXT_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_TEMPERATURE_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_MODE_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_COLOR_CONTROL_OPTIONS_ATTRIBUTE_ID 0x000F // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_COLOR_CONTROL_NUMBER_OF_PRIMARIES_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_1_X_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_1_Y_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_1_INTENSITY_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_2_X_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_2_Y_ATTRIBUTE_ID 0x0016 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_2_INTENSITY_ATTRIBUTE_ID 0x0017 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_3_X_ATTRIBUTE_ID 0x0019 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_3_Y_ATTRIBUTE_ID 0x001A // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_3_INTENSITY_ATTRIBUTE_ID 0x001B // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_4_X_ATTRIBUTE_ID 0x0020 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_4_Y_ATTRIBUTE_ID 0x0021 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_4_INTENSITY_ATTRIBUTE_ID 0x0022 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_5_X_ATTRIBUTE_ID 0x0024 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_5_Y_ATTRIBUTE_ID 0x0025 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_5_INTENSITY_ATTRIBUTE_ID 0x0026 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_6_X_ATTRIBUTE_ID 0x0028 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_6_Y_ATTRIBUTE_ID 0x0029 // Ver.: always -#define ZCL_COLOR_CONTROL_PRIMARY_6_INTENSITY_ATTRIBUTE_ID 0x002A // Ver.: always -#define ZCL_COLOR_CONTROL_WHITE_POINT_X_ATTRIBUTE_ID 0x0030 // Ver.: always -#define ZCL_COLOR_CONTROL_WHITE_POINT_Y_ATTRIBUTE_ID 0x0031 // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_POINT_R_X_ATTRIBUTE_ID 0x0032 // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_POINT_R_Y_ATTRIBUTE_ID 0x0033 // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_POINT_R_INTENSITY_ATTRIBUTE_ID 0x0034 // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_POINT_G_X_ATTRIBUTE_ID 0x0036 // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_POINT_G_Y_ATTRIBUTE_ID 0x0037 // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_POINT_G_INTENSITY_ATTRIBUTE_ID 0x0038 // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_POINT_B_X_ATTRIBUTE_ID 0x003A // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_POINT_B_Y_ATTRIBUTE_ID 0x003B // Ver.: always -#define ZCL_COLOR_CONTROL_COLOR_POINT_B_INTENSITY_ATTRIBUTE_ID 0x003C // Ver.: always -#define ZCL_COLOR_CONTROL_ENHANCED_CURRENT_HUE_ATTRIBUTE_ID 0x4000 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_ENHANCED_COLOR_MODE_ATTRIBUTE_ID 0x4001 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_COLOR_LOOP_ACTIVE_ATTRIBUTE_ID 0x4002 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_COLOR_LOOP_DIRECTION_ATTRIBUTE_ID 0x4003 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_COLOR_LOOP_TIME_ATTRIBUTE_ID 0x4004 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_COLOR_LOOP_START_ENHANCED_HUE_ATTRIBUTE_ID 0x4005 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_COLOR_LOOP_STORED_ENHANCED_HUE_ATTRIBUTE_ID 0x4006 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_COLOR_CAPABILITIES_ATTRIBUTE_ID 0x400A // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_COLOR_TEMP_PHYSICAL_MIN_ATTRIBUTE_ID 0x400B // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_COLOR_TEMP_PHYSICAL_MAX_ATTRIBUTE_ID 0x400C // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_CONTROL_TEMPERATURE_LEVEL_MIN_MIREDS_ATTRIBUTE_ID 0x400D // Ver.: since l&o-1.0-15-0014-04 -#define ZCL_START_UP_COLOR_TEMPERATURE_MIREDS_ATTRIBUTE_ID 0x4010 // Ver.: since l&o-1.0-15-0014-04 -#define ZCL_COLOR_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_COLOR_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Ballast Configuration -// Cluster specification level: zcl6-errata-14-0129-15 +#define ZCL_COLOR_CONTROL_CURRENT_HUE_ATTRIBUTE_ID (0x0000) +#define ZCL_COLOR_CONTROL_CURRENT_SATURATION_ATTRIBUTE_ID (0x0001) +#define ZCL_COLOR_CONTROL_REMAINING_TIME_ATTRIBUTE_ID (0x0002) +#define ZCL_COLOR_CONTROL_CURRENT_X_ATTRIBUTE_ID (0x0003) +#define ZCL_COLOR_CONTROL_CURRENT_Y_ATTRIBUTE_ID (0x0004) +#define ZCL_COLOR_CONTROL_DRIFT_COMPENSATION_ATTRIBUTE_ID (0x0005) +#define ZCL_COLOR_CONTROL_COMPENSATION_TEXT_ATTRIBUTE_ID (0x0006) +#define ZCL_COLOR_CONTROL_COLOR_TEMPERATURE_ATTRIBUTE_ID (0x0007) +#define ZCL_COLOR_CONTROL_COLOR_MODE_ATTRIBUTE_ID (0x0008) +#define ZCL_COLOR_CONTROL_OPTIONS_ATTRIBUTE_ID (0x000F) +#define ZCL_COLOR_CONTROL_NUMBER_OF_PRIMARIES_ATTRIBUTE_ID (0x0010) +#define ZCL_COLOR_CONTROL_PRIMARY_1_X_ATTRIBUTE_ID (0x0011) +#define ZCL_COLOR_CONTROL_PRIMARY_1_Y_ATTRIBUTE_ID (0x0012) +#define ZCL_COLOR_CONTROL_PRIMARY_1_INTENSITY_ATTRIBUTE_ID (0x0013) +#define ZCL_COLOR_CONTROL_PRIMARY_2_X_ATTRIBUTE_ID (0x0015) +#define ZCL_COLOR_CONTROL_PRIMARY_2_Y_ATTRIBUTE_ID (0x0016) +#define ZCL_COLOR_CONTROL_PRIMARY_2_INTENSITY_ATTRIBUTE_ID (0x0017) +#define ZCL_COLOR_CONTROL_PRIMARY_3_X_ATTRIBUTE_ID (0x0019) +#define ZCL_COLOR_CONTROL_PRIMARY_3_Y_ATTRIBUTE_ID (0x001A) +#define ZCL_COLOR_CONTROL_PRIMARY_3_INTENSITY_ATTRIBUTE_ID (0x001B) +#define ZCL_COLOR_CONTROL_PRIMARY_4_X_ATTRIBUTE_ID (0x0020) +#define ZCL_COLOR_CONTROL_PRIMARY_4_Y_ATTRIBUTE_ID (0x0021) +#define ZCL_COLOR_CONTROL_PRIMARY_4_INTENSITY_ATTRIBUTE_ID (0x0022) +#define ZCL_COLOR_CONTROL_PRIMARY_5_X_ATTRIBUTE_ID (0x0024) +#define ZCL_COLOR_CONTROL_PRIMARY_5_Y_ATTRIBUTE_ID (0x0025) +#define ZCL_COLOR_CONTROL_PRIMARY_5_INTENSITY_ATTRIBUTE_ID (0x0026) +#define ZCL_COLOR_CONTROL_PRIMARY_6_X_ATTRIBUTE_ID (0x0028) +#define ZCL_COLOR_CONTROL_PRIMARY_6_Y_ATTRIBUTE_ID (0x0029) +#define ZCL_COLOR_CONTROL_PRIMARY_6_INTENSITY_ATTRIBUTE_ID (0x002A) +#define ZCL_COLOR_CONTROL_WHITE_POINT_X_ATTRIBUTE_ID (0x0030) +#define ZCL_COLOR_CONTROL_WHITE_POINT_Y_ATTRIBUTE_ID (0x0031) +#define ZCL_COLOR_CONTROL_COLOR_POINT_R_X_ATTRIBUTE_ID (0x0032) +#define ZCL_COLOR_CONTROL_COLOR_POINT_R_Y_ATTRIBUTE_ID (0x0033) +#define ZCL_COLOR_CONTROL_COLOR_POINT_R_INTENSITY_ATTRIBUTE_ID (0x0034) +#define ZCL_COLOR_CONTROL_COLOR_POINT_G_X_ATTRIBUTE_ID (0x0036) +#define ZCL_COLOR_CONTROL_COLOR_POINT_G_Y_ATTRIBUTE_ID (0x0037) +#define ZCL_COLOR_CONTROL_COLOR_POINT_G_INTENSITY_ATTRIBUTE_ID (0x0038) +#define ZCL_COLOR_CONTROL_COLOR_POINT_B_X_ATTRIBUTE_ID (0x003A) +#define ZCL_COLOR_CONTROL_COLOR_POINT_B_Y_ATTRIBUTE_ID (0x003B) +#define ZCL_COLOR_CONTROL_COLOR_POINT_B_INTENSITY_ATTRIBUTE_ID (0x003C) +#define ZCL_COLOR_CONTROL_ENHANCED_CURRENT_HUE_ATTRIBUTE_ID (0x4000) +#define ZCL_COLOR_CONTROL_ENHANCED_COLOR_MODE_ATTRIBUTE_ID (0x4001) +#define ZCL_COLOR_CONTROL_COLOR_LOOP_ACTIVE_ATTRIBUTE_ID (0x4002) +#define ZCL_COLOR_CONTROL_COLOR_LOOP_DIRECTION_ATTRIBUTE_ID (0x4003) +#define ZCL_COLOR_CONTROL_COLOR_LOOP_TIME_ATTRIBUTE_ID (0x4004) +#define ZCL_COLOR_CONTROL_COLOR_LOOP_START_ENHANCED_HUE_ATTRIBUTE_ID (0x4005) +#define ZCL_COLOR_CONTROL_COLOR_LOOP_STORED_ENHANCED_HUE_ATTRIBUTE_ID (0x4006) +#define ZCL_COLOR_CONTROL_COLOR_CAPABILITIES_ATTRIBUTE_ID (0x400A) +#define ZCL_COLOR_CONTROL_COLOR_TEMP_PHYSICAL_MIN_ATTRIBUTE_ID (0x400B) +#define ZCL_COLOR_CONTROL_COLOR_TEMP_PHYSICAL_MAX_ATTRIBUTE_ID (0x400C) +#define ZCL_COLOR_CONTROL_TEMPERATURE_LEVEL_MIN_MIREDS_ATTRIBUTE_ID (0x400D) +#define ZCL_START_UP_COLOR_TEMPERATURE_MIREDS_ATTRIBUTE_ID (0x4010) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Ballast Configuration // Client attributes -#define ZCL_BALLAST_CONFIGURATION_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BALLAST_CONFIGURATION_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_PHYSICAL_MIN_LEVEL_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_PHYSICAL_MAX_LEVEL_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_BALLAST_STATUS_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_MIN_LEVEL_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_MAX_LEVEL_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_POWER_ON_LEVEL_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_POWER_ON_FADE_TIME_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_INTRINSIC_BALLAST_FACTOR_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_BALLAST_FACTOR_ADJUSTMENT_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_LAMP_QUALITY_ATTRIBUTE_ID 0x0020 // Ver.: always -#define ZCL_LAMP_TYPE_ATTRIBUTE_ID 0x0030 // Ver.: always -#define ZCL_LAMP_MANUFACTURER_ATTRIBUTE_ID 0x0031 // Ver.: always -#define ZCL_LAMP_RATED_HOURS_ATTRIBUTE_ID 0x0032 // Ver.: always -#define ZCL_LAMP_BURN_HOURS_ATTRIBUTE_ID 0x0033 // Ver.: always -#define ZCL_LAMP_ALARM_MODE_ATTRIBUTE_ID 0x0034 // Ver.: always -#define ZCL_LAMP_BURN_HOURS_TRIP_POINT_ATTRIBUTE_ID 0x0035 // Ver.: always -#define ZCL_BALLAST_CONFIGURATION_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BALLAST_CONFIGURATION_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Illuminance Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_PHYSICAL_MIN_LEVEL_ATTRIBUTE_ID (0x0000) +#define ZCL_PHYSICAL_MAX_LEVEL_ATTRIBUTE_ID (0x0001) +#define ZCL_BALLAST_STATUS_ATTRIBUTE_ID (0x0002) +#define ZCL_MIN_LEVEL_ATTRIBUTE_ID (0x0010) +#define ZCL_MAX_LEVEL_ATTRIBUTE_ID (0x0011) +#define ZCL_POWER_ON_LEVEL_ATTRIBUTE_ID (0x0012) +#define ZCL_POWER_ON_FADE_TIME_ATTRIBUTE_ID (0x0013) +#define ZCL_INTRINSIC_BALLAST_FACTOR_ATTRIBUTE_ID (0x0014) +#define ZCL_BALLAST_FACTOR_ADJUSTMENT_ATTRIBUTE_ID (0x0015) +#define ZCL_LAMP_QUALITY_ATTRIBUTE_ID (0x0020) +#define ZCL_LAMP_TYPE_ATTRIBUTE_ID (0x0030) +#define ZCL_LAMP_MANUFACTURER_ATTRIBUTE_ID (0x0031) +#define ZCL_LAMP_RATED_HOURS_ATTRIBUTE_ID (0x0032) +#define ZCL_LAMP_BURN_HOURS_ATTRIBUTE_ID (0x0033) +#define ZCL_LAMP_ALARM_MODE_ATTRIBUTE_ID (0x0034) +#define ZCL_LAMP_BURN_HOURS_TRIP_POINT_ATTRIBUTE_ID (0x0035) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Illuminance Measurement // Client attributes -#define ZCL_ILLUM_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ILLUM_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ILLUM_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_ILLUM_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_ILLUM_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_ILLUM_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_MEASUREMENT_LIGHT_SENSOR_TYPE_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_ILLUM_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ILLUM_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_ILLUM_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_ILLUM_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_ILLUM_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_ILLUM_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_MEASUREMENT_LIGHT_SENSOR_TYPE_ATTRIBUTE_ID (0x0004) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Illuminance Level Sensing -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Illuminance Level Sensing // Client attributes -#define ZCL_ILLUM_LEVEL_SENSING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ILLUM_LEVEL_SENSING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_LEVEL_STATUS_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SENSING_LIGHT_SENSOR_TYPE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_ILLUMINANCE_TARGET_LEVEL_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_ILLUM_LEVEL_SENSING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ILLUM_LEVEL_SENSING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_LEVEL_STATUS_ATTRIBUTE_ID (0x0000) +#define ZCL_SENSING_LIGHT_SENSOR_TYPE_ATTRIBUTE_ID (0x0001) +#define ZCL_ILLUMINANCE_TARGET_LEVEL_ATTRIBUTE_ID (0x0010) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Temperature Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Temperature Measurement // Client attributes -#define ZCL_TEMP_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TEMP_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_TEMP_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_TEMP_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_TEMP_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_TEMP_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_TEMP_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TEMP_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_TEMP_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_TEMP_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_TEMP_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_TEMP_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Pressure Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Pressure Measurement // Client attributes -#define ZCL_PRESSURE_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PRESSURE_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_PRESSURE_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_PRESSURE_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_PRESSURE_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_PRESSURE_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_PRESSURE_SCALED_VALUE_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_PRESSURE_MIN_SCALED_VALUE_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_PRESSURE_MAX_SCALED_VALUE_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_PRESSURE_SCALED_TOLERANCE_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_PRESSURE_SCALE_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_PRESSURE_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PRESSURE_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Flow Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_PRESSURE_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_PRESSURE_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_PRESSURE_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_PRESSURE_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_PRESSURE_SCALED_VALUE_ATTRIBUTE_ID (0x0010) +#define ZCL_PRESSURE_MIN_SCALED_VALUE_ATTRIBUTE_ID (0x0011) +#define ZCL_PRESSURE_MAX_SCALED_VALUE_ATTRIBUTE_ID (0x0012) +#define ZCL_PRESSURE_SCALED_TOLERANCE_ATTRIBUTE_ID (0x0013) +#define ZCL_PRESSURE_SCALE_ATTRIBUTE_ID (0x0014) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Flow Measurement // Client attributes -#define ZCL_FLOW_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_FLOW_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_FLOW_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_FLOW_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_FLOW_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_FLOW_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_FLOW_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_FLOW_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_FLOW_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_FLOW_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_FLOW_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_FLOW_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Relative Humidity Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Relative Humidity Measurement // Client attributes -#define ZCL_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_RELATIVE_HUMIDITY_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_RELATIVE_HUMIDITY_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_RELATIVE_HUMIDITY_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_RELATIVE_HUMIDITY_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_RELATIVE_HUMIDITY_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_RELATIVE_HUMIDITY_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_RELATIVE_HUMIDITY_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_RELATIVE_HUMIDITY_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Occupancy Sensing -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Occupancy Sensing // Client attributes -#define ZCL_OCCUPANCY_SENSING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OCCUPANCY_SENSING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_OCCUPANCY_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_OCCUPANCY_SENSOR_TYPE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_OCCUPANCY_SENSOR_TYPE_BITMAP_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_PIR_OCCUPIED_TO_UNOCCUPIED_DELAY_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_PIR_UNOCCUPIED_TO_OCCUPIED_DELAY_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_PIR_UNOCCUPIED_TO_OCCUPIED_THRESHOLD_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_ULTRASONIC_OCCUPIED_TO_UNOCCUPIED_DELAY_ATTRIBUTE_ID 0x0020 // Ver.: always -#define ZCL_ULTRASONIC_UNOCCUPIED_TO_OCCUPIED_DELAY_ATTRIBUTE_ID 0x0021 // Ver.: always -#define ZCL_ULTRASONIC_UNOCCUPIED_TO_OCCUPIED_THRESHOLD_ATTRIBUTE_ID 0x0022 // Ver.: always -#define ZCL_PHYSICAL_CONTACT_OCCUPIED_TO_UNOCCUPIED_DELAY_ATTRIBUTE_ID 0x0030 // Ver.: always -#define ZCL_PHYSICAL_CONTACT_UNOCCUPIED_TO_OCCUPIED_DELAY_ATTRIBUTE_ID 0x0031 // Ver.: always -#define ZCL_PHYSICAL_CONTACT_UNOCCUPIED_TO_OCCUPIED_THRESHOLD_ATTRIBUTE_ID 0x0032 // Ver.: always -#define ZCL_OCCUPANCY_SENSING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OCCUPANCY_SENSING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Carbon Monoxide Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_OCCUPANCY_ATTRIBUTE_ID (0x0000) +#define ZCL_OCCUPANCY_SENSOR_TYPE_ATTRIBUTE_ID (0x0001) +#define ZCL_OCCUPANCY_SENSOR_TYPE_BITMAP_ATTRIBUTE_ID (0x0002) +#define ZCL_PIR_OCCUPIED_TO_UNOCCUPIED_DELAY_ATTRIBUTE_ID (0x0010) +#define ZCL_PIR_UNOCCUPIED_TO_OCCUPIED_DELAY_ATTRIBUTE_ID (0x0011) +#define ZCL_PIR_UNOCCUPIED_TO_OCCUPIED_THRESHOLD_ATTRIBUTE_ID (0x0012) +#define ZCL_ULTRASONIC_OCCUPIED_TO_UNOCCUPIED_DELAY_ATTRIBUTE_ID (0x0020) +#define ZCL_ULTRASONIC_UNOCCUPIED_TO_OCCUPIED_DELAY_ATTRIBUTE_ID (0x0021) +#define ZCL_ULTRASONIC_UNOCCUPIED_TO_OCCUPIED_THRESHOLD_ATTRIBUTE_ID (0x0022) +#define ZCL_PHYSICAL_CONTACT_OCCUPIED_TO_UNOCCUPIED_DELAY_ATTRIBUTE_ID (0x0030) +#define ZCL_PHYSICAL_CONTACT_UNOCCUPIED_TO_OCCUPIED_DELAY_ATTRIBUTE_ID (0x0031) +#define ZCL_PHYSICAL_CONTACT_UNOCCUPIED_TO_OCCUPIED_THRESHOLD_ATTRIBUTE_ID (0x0032) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Carbon Monoxide Concentration Measurement // Client attributes -#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Carbon Dioxide Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Carbon Dioxide Concentration Measurement // Client attributes -#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Ethylene Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Ethylene Concentration Measurement // Client attributes -#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Ethylene Oxide Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Ethylene Oxide Concentration Measurement // Client attributes -#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Hydrogen Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Hydrogen Concentration Measurement // Client attributes -#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Hydrogen Sulphide Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Hydrogen Sulphide Concentration Measurement // Client attributes -#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Nitric Oxide Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Nitric Oxide Concentration Measurement // Client attributes -#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Nitrogen Dioxide Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Nitrogen Dioxide Concentration Measurement // Client attributes -#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Oxygen Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Oxygen Concentration Measurement // Client attributes -#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Ozone Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Ozone Concentration Measurement // Client attributes -#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Sulfur Dioxide Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Sulfur Dioxide Concentration Measurement // Client attributes -#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Dissolved Oxygen Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Dissolved Oxygen Concentration Measurement // Client attributes -#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Bromate Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Bromate Concentration Measurement // Client attributes -#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Chloramines Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Chloramines Concentration Measurement // Client attributes -#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Chlorine Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Chlorine Concentration Measurement // Client attributes -#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Fecal coliform and E. Coli Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Fecal coliform and E. Coli Concentration Measurement // Client attributes -#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Fluoride Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Fluoride Concentration Measurement // Client attributes -#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Haloacetic Acids Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Haloacetic Acids Concentration Measurement // Client attributes -#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Total Trihalomethanes Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Total Trihalomethanes Concentration Measurement // Client attributes -#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Total Coliform Bacteria Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Total Coliform Bacteria Concentration Measurement // Client attributes -#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Turbidity Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Turbidity Concentration Measurement // Client attributes -#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Copper Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Copper Concentration Measurement // Client attributes -#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Lead Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Lead Concentration Measurement // Client attributes -#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Manganese Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: Manganese Concentration Measurement // Client attributes -#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Sulfate Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Sulfate Concentration Measurement // Client attributes -#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Bromodichloromethane Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Bromodichloromethane Concentration Measurement // Client attributes -#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Bromoform Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Bromoform Concentration Measurement // Client attributes -#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Chlorodibromomethane Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Chlorodibromomethane Concentration Measurement // Client attributes -#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Chloroform Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Chloroform Concentration Measurement // Client attributes -#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID \ - 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID \ - 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Sodium Concentration Measurement -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Sodium Concentration Measurement // Client attributes -#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_MEASURED_VALUE_ATTRIBUTE_ID (0x0000) +#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_MIN_MEASURED_VALUE_ATTRIBUTE_ID (0x0001) +#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_MAX_MEASURED_VALUE_ATTRIBUTE_ID (0x0002) +#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_TOLERANCE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: IAS Zone -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: IAS Zone // Client attributes -#define ZCL_IAS_ZONE_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_IAS_ZONE_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ZONE_STATE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_ZONE_TYPE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_ZONE_STATUS_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_IAS_CIE_ADDRESS_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_ZONE_ID_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_NUMBER_OF_ZONE_SENSITIVITY_LEVELS_SUPPORTED_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_CURRENT_ZONE_SENSITIVITY_LEVEL_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_IAS_ZONE_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_IAS_ZONE_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: IAS ACE -// Cluster specification level: zcl-6.0-15-02018-001 +#define ZCL_ZONE_STATE_ATTRIBUTE_ID (0x0000) +#define ZCL_ZONE_TYPE_ATTRIBUTE_ID (0x0001) +#define ZCL_ZONE_STATUS_ATTRIBUTE_ID (0x0002) +#define ZCL_IAS_CIE_ADDRESS_ATTRIBUTE_ID (0x0010) +#define ZCL_ZONE_ID_ATTRIBUTE_ID (0x0011) +#define ZCL_NUMBER_OF_ZONE_SENSITIVITY_LEVELS_SUPPORTED_ATTRIBUTE_ID (0x0012) +#define ZCL_CURRENT_ZONE_SENSITIVITY_LEVEL_ATTRIBUTE_ID (0x0013) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: IAS ACE // Client attributes -#define ZCL_IAS_ACE_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_IAS_ACE_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_IAS_ACE_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_IAS_ACE_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: IAS WD -// Cluster specification level: zcl-6.0-15-02018-001 +// Attribute ids for cluster: IAS WD // Client attributes -#define ZCL_IAS_WD_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_IAS_WD_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_MAX_DURATION_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_IAS_WD_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_IAS_WD_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_MAX_DURATION_ATTRIBUTE_ID (0x0000) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Generic Tunnel -// Cluster specification level: cba-1.0-05-3516-12 +// Attribute ids for cluster: Generic Tunnel // Client attributes -#define ZCL_GENERIC_TUNNEL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_GENERIC_TUNNEL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_MAXIMUM_INCOMING_TRANSFER_SIZE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_MAXIMUM_OUTGOING_TRANSFER_SIZE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_PROTOCOL_ADDRESS_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_GENERIC_TUNNEL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_GENERIC_TUNNEL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_MAXIMUM_INCOMING_TRANSFER_SIZE_ATTRIBUTE_ID (0x0001) +#define ZCL_MAXIMUM_OUTGOING_TRANSFER_SIZE_ATTRIBUTE_ID (0x0002) +#define ZCL_PROTOCOL_ADDRESS_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: BACnet Protocol Tunnel -// Cluster specification level: cba-1.0-05-3516-12 +// Attribute ids for cluster: BACnet Protocol Tunnel // Client attributes -#define ZCL_BACNET_PROTOCOL_TUNNEL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BACNET_PROTOCOL_TUNNEL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_BACNET_PROTOCOL_TUNNEL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BACNET_PROTOCOL_TUNNEL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: 11073 Protocol Tunnel -// Cluster specification level: hc-1.0-07-5360-15 +// Attribute ids for cluster: 11073 Protocol Tunnel // Client attributes -#define ZCL_11073_PROTOCOL_TUNNEL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_11073_PROTOCOL_TUNNEL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_DEVICE_ID_LIST_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_MANAGER_TARGET_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_MANAGER_ENDPOINT_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CONNECTED_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_PREEMPTIBLE_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_IDLE_TIMEOUT_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_11073_PROTOCOL_TUNNEL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_11073_PROTOCOL_TUNNEL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: ISO 7816 Protocol Tunnel -// Cluster specification level: ta-1.0-07-5307-07 +#define ZCL_DEVICE_ID_LIST_ATTRIBUTE_ID (0x0000) +#define ZCL_MANAGER_TARGET_ATTRIBUTE_ID (0x0001) +#define ZCL_MANAGER_ENDPOINT_ATTRIBUTE_ID (0x0002) +#define ZCL_CONNECTED_ATTRIBUTE_ID (0x0003) +#define ZCL_PREEMPTIBLE_ATTRIBUTE_ID (0x0004) +#define ZCL_IDLE_TIMEOUT_ATTRIBUTE_ID (0x0005) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: ISO 7816 Protocol Tunnel // Client attributes -#define ZCL_ISO7816_PROTOCOL_TUNNEL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ISO7816_PROTOCOL_TUNNEL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ISO7816_PROTOCOL_TUNNEL_STATUS_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_ISO7816_PROTOCOL_TUNNEL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ISO7816_PROTOCOL_TUNNEL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_ISO7816_PROTOCOL_TUNNEL_STATUS_ATTRIBUTE_ID (0x0000) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Price -// Cluster specification level: se-1.2b-15-0131-02 +// Attribute ids for cluster: Price // Client attributes -#define ZCL_PRICE_INCREASE_RANDOMIZE_MINUTES_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_PRICE_DECREASE_RANDOMIZE_MINUTES_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_COMMODITY_TYPE_CLIENT_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_PRICE_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PRICE_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_PRICE_INCREASE_RANDOMIZE_MINUTES_ATTRIBUTE_ID (0x0000) +#define ZCL_PRICE_DECREASE_RANDOMIZE_MINUTES_ATTRIBUTE_ID (0x0001) +#define ZCL_COMMODITY_TYPE_CLIENT_ATTRIBUTE_ID (0x0002) +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_TIER1_PRICE_LABEL_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_TIER2_PRICE_LABEL_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_TIER3_PRICE_LABEL_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_TIER4_PRICE_LABEL_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_TIER5_PRICE_LABEL_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_TIER6_PRICE_LABEL_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_TIER7_PRICE_LABEL_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_TIER8_PRICE_LABEL_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_TIER9_PRICE_LABEL_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_TIER10_PRICE_LABEL_ATTRIBUTE_ID 0x0009 // Ver.: always -#define ZCL_TIER11_PRICE_LABEL_ATTRIBUTE_ID 0x000A // Ver.: always -#define ZCL_TIER12_PRICE_LABEL_ATTRIBUTE_ID 0x000B // Ver.: always -#define ZCL_TIER13_PRICE_LABEL_ATTRIBUTE_ID 0x000C // Ver.: always -#define ZCL_TIER14_PRICE_LABEL_ATTRIBUTE_ID 0x000D // Ver.: always -#define ZCL_TIER15_PRICE_LABEL_ATTRIBUTE_ID 0x000E // Ver.: always -#define ZCL_TIER16_PRICE_LABEL_ATTRIBUTE_ID 0x000F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER17_PRICE_LABEL_ATTRIBUTE_ID 0x0010 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER18_PRICE_LABEL_ATTRIBUTE_ID 0x0011 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER19_PRICE_LABEL_ATTRIBUTE_ID 0x0012 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER20_PRICE_LABEL_ATTRIBUTE_ID 0x0013 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER21_PRICE_LABEL_ATTRIBUTE_ID 0x0014 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER22_PRICE_LABEL_ATTRIBUTE_ID 0x0015 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER23_PRICE_LABEL_ATTRIBUTE_ID 0x0016 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER24_PRICE_LABEL_ATTRIBUTE_ID 0x0017 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER25_PRICE_LABEL_ATTRIBUTE_ID 0x0018 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER26_PRICE_LABEL_ATTRIBUTE_ID 0x0019 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER27_PRICE_LABEL_ATTRIBUTE_ID 0x001A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER28_PRICE_LABEL_ATTRIBUTE_ID 0x001B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER29_PRICE_LABEL_ATTRIBUTE_ID 0x001C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER30_PRICE_LABEL_ATTRIBUTE_ID 0x001D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER31_PRICE_LABEL_ATTRIBUTE_ID 0x001E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER32_PRICE_LABEL_ATTRIBUTE_ID 0x001F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER33_PRICE_LABEL_ATTRIBUTE_ID 0x0020 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER34_PRICE_LABEL_ATTRIBUTE_ID 0x0021 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER35_PRICE_LABEL_ATTRIBUTE_ID 0x0022 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER36_PRICE_LABEL_ATTRIBUTE_ID 0x0023 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER37_PRICE_LABEL_ATTRIBUTE_ID 0x0024 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER38_PRICE_LABEL_ATTRIBUTE_ID 0x0025 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER39_PRICE_LABEL_ATTRIBUTE_ID 0x0026 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER40_PRICE_LABEL_ATTRIBUTE_ID 0x0027 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER41_PRICE_LABEL_ATTRIBUTE_ID 0x0028 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER42_PRICE_LABEL_ATTRIBUTE_ID 0x0029 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER43_PRICE_LABEL_ATTRIBUTE_ID 0x002A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER44_PRICE_LABEL_ATTRIBUTE_ID 0x002B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER45_PRICE_LABEL_ATTRIBUTE_ID 0x002C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER46_PRICE_LABEL_ATTRIBUTE_ID 0x002D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER47_PRICE_LABEL_ATTRIBUTE_ID 0x002E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER48_PRICE_LABEL_ATTRIBUTE_ID 0x002F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0100 // Ver.: always -#define ZCL_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0101 // Ver.: always -#define ZCL_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0102 // Ver.: always -#define ZCL_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0103 // Ver.: always -#define ZCL_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0104 // Ver.: always -#define ZCL_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0105 // Ver.: always -#define ZCL_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0106 // Ver.: always -#define ZCL_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0107 // Ver.: always -#define ZCL_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0108 // Ver.: always -#define ZCL_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0109 // Ver.: always -#define ZCL_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x010A // Ver.: always -#define ZCL_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x010B // Ver.: always -#define ZCL_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x010C // Ver.: always -#define ZCL_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x010D // Ver.: always -#define ZCL_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x010E // Ver.: always -#define ZCL_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x010F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0110 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0111 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0112 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0113 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0114 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0115 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0116 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0117 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0118 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0119 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x011A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x011B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x011C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x011D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x011E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER1_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x011F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0120 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0121 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0122 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0123 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0124 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0125 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0126 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0127 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0128 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0129 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x012A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x012B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x012C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x012D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x012E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER2_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x012F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0130 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0131 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0132 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0133 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0134 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0135 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0136 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0137 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0138 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0139 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x013A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x013B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x013C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x013D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x013E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER3_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x013F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0140 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0141 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0142 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0143 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0144 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0145 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0146 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0147 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0148 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0149 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x014A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x014B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x014C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x014D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x014E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER4_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x014F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0150 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0151 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0152 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0153 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0154 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0155 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0156 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0157 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0158 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0159 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x015A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x015B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x015C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x015D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x015E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER5_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x015F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0160 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0161 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0162 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0163 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0164 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0165 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0166 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0167 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0168 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0169 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x016A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x016B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x016C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x016D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x016E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER6_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x016F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0170 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0171 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0172 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0173 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0174 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0175 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0176 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0177 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0178 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0179 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x017A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x017B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x017C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x017D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x017E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER7_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x017F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0180 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0181 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0182 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0183 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0184 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0185 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0186 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0187 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0188 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0189 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x018A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x018B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x018C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x018D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x018E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER8_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x018F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x0190 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x0191 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x0192 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x0193 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x0194 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x0195 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x0196 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x0197 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x0198 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x0199 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x019A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x019B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x019C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x019D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x019E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER9_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x019F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x01A0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x01A1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x01A2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x01A3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x01A4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x01A5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x01A6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x01A7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x01A8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x01A9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x01AA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x01AB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x01AC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x01AD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x01AE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER10_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x01AF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x01B0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x01B1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x01B2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x01B3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x01B4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x01B5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x01B6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x01B7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x01B8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x01B9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x01BA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x01BB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x01BC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x01BD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x01BE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER11_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x01BF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x01C0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x01C1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x01C2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x01C3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x01C4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x01C5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x01C6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x01C7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x01C8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x01C9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x01CA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x01CB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x01CC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x01CD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x01CE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER12_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x01CF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x01D0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x01D1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x01D2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x01D3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x01D4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x01D5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x01D6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x01D7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x01D8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x01D9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x01DA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x01DB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x01DC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x01DD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x01DE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER13_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x01DF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x01E0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x01E1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x01E2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x01E3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x01E4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x01E5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x01E6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x01E7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x01E8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x01E9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x01EA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x01EB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x01EC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x01ED // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x01EE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER14_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x01EF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x01F0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x01F1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x01F2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x01F3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x01F4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x01F5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x01F6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x01F7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x01F8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x01F9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x01FA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x01FB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x01FC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x01FD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x01FE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER15_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID 0x01FF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_START_OF_BLOCK_PERIOD_ATTRIBUTE_ID 0x0200 // Ver.: always -#define ZCL_BLOCK_PERIOD_DURATION_MINUTES_ATTRIBUTE_ID 0x0201 // Ver.: always -#define ZCL_THRESHOLD_MULTIPLIER_ATTRIBUTE_ID 0x0202 // Ver.: always -#define ZCL_THRESHOLD_DIVISOR_ATTRIBUTE_ID 0x0203 // Ver.: always -#define ZCL_BLOCK_PERIOD_DURATION_TYPE_ATTRIBUTE_ID 0x0204 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_COMMODITY_TYPE_SERVER_ATTRIBUTE_ID 0x0300 // Ver.: always -#define ZCL_STANDING_CHARGE_ATTRIBUTE_ID 0x0301 // Ver.: always -#define ZCL_CONVERSION_FACTOR_ATTRIBUTE_ID 0x0302 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_CONVERSION_FACTOR_TRAILING_DIGIT_ATTRIBUTE_ID 0x0303 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_CALORIFIC_VALUE_ATTRIBUTE_ID 0x0304 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_CALORIFIC_VALUE_UNIT_ATTRIBUTE_ID 0x0305 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_CALORIFIC_VALUE_TRAILING_DIGIT_ATTRIBUTE_ID 0x0306 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_NO_TIER_BLOCK1_PRICE_ATTRIBUTE_ID 0x0400 // Ver.: always -#define ZCL_NO_TIER_BLOCK2_PRICE_ATTRIBUTE_ID 0x0401 // Ver.: always -#define ZCL_NO_TIER_BLOCK3_PRICE_ATTRIBUTE_ID 0x0402 // Ver.: always -#define ZCL_NO_TIER_BLOCK4_PRICE_ATTRIBUTE_ID 0x0403 // Ver.: always -#define ZCL_NO_TIER_BLOCK5_PRICE_ATTRIBUTE_ID 0x0404 // Ver.: always -#define ZCL_NO_TIER_BLOCK6_PRICE_ATTRIBUTE_ID 0x0405 // Ver.: always -#define ZCL_NO_TIER_BLOCK7_PRICE_ATTRIBUTE_ID 0x0406 // Ver.: always -#define ZCL_NO_TIER_BLOCK8_PRICE_ATTRIBUTE_ID 0x0407 // Ver.: always -#define ZCL_NO_TIER_BLOCK9_PRICE_ATTRIBUTE_ID 0x0408 // Ver.: always -#define ZCL_NO_TIER_BLOCK10_PRICE_ATTRIBUTE_ID 0x0409 // Ver.: always -#define ZCL_NO_TIER_BLOCK11_PRICE_ATTRIBUTE_ID 0x040A // Ver.: always -#define ZCL_NO_TIER_BLOCK12_PRICE_ATTRIBUTE_ID 0x040B // Ver.: always -#define ZCL_NO_TIER_BLOCK13_PRICE_ATTRIBUTE_ID 0x040C // Ver.: always -#define ZCL_NO_TIER_BLOCK14_PRICE_ATTRIBUTE_ID 0x040D // Ver.: always -#define ZCL_NO_TIER_BLOCK15_PRICE_ATTRIBUTE_ID 0x040E // Ver.: always -#define ZCL_NO_TIER_BLOCK16_PRICE_ATTRIBUTE_ID 0x040F // Ver.: always -#define ZCL_TIER1_BLOCK1_PRICE_ATTRIBUTE_ID 0x0410 // Ver.: always -#define ZCL_TIER1_BLOCK2_PRICE_ATTRIBUTE_ID 0x0411 // Ver.: always -#define ZCL_TIER1_BLOCK3_PRICE_ATTRIBUTE_ID 0x0412 // Ver.: always -#define ZCL_TIER1_BLOCK4_PRICE_ATTRIBUTE_ID 0x0413 // Ver.: always -#define ZCL_TIER1_BLOCK5_PRICE_ATTRIBUTE_ID 0x0414 // Ver.: always -#define ZCL_TIER1_BLOCK6_PRICE_ATTRIBUTE_ID 0x0415 // Ver.: always -#define ZCL_TIER1_BLOCK7_PRICE_ATTRIBUTE_ID 0x0416 // Ver.: always -#define ZCL_TIER1_BLOCK8_PRICE_ATTRIBUTE_ID 0x0417 // Ver.: always -#define ZCL_TIER1_BLOCK9_PRICE_ATTRIBUTE_ID 0x0418 // Ver.: always -#define ZCL_TIER1_BLOCK10_PRICE_ATTRIBUTE_ID 0x0419 // Ver.: always -#define ZCL_TIER1_BLOCK11_PRICE_ATTRIBUTE_ID 0x041A // Ver.: always -#define ZCL_TIER1_BLOCK12_PRICE_ATTRIBUTE_ID 0x041B // Ver.: always -#define ZCL_TIER1_BLOCK13_PRICE_ATTRIBUTE_ID 0x041C // Ver.: always -#define ZCL_TIER1_BLOCK14_PRICE_ATTRIBUTE_ID 0x041D // Ver.: always -#define ZCL_TIER1_BLOCK15_PRICE_ATTRIBUTE_ID 0x041E // Ver.: always -#define ZCL_TIER1_BLOCK16_PRICE_ATTRIBUTE_ID 0x041F // Ver.: always -#define ZCL_TIER2_BLOCK1_PRICE_ATTRIBUTE_ID 0x0420 // Ver.: always -#define ZCL_TIER2_BLOCK2_PRICE_ATTRIBUTE_ID 0x0421 // Ver.: always -#define ZCL_TIER2_BLOCK3_PRICE_ATTRIBUTE_ID 0x0422 // Ver.: always -#define ZCL_TIER2_BLOCK4_PRICE_ATTRIBUTE_ID 0x0423 // Ver.: always -#define ZCL_TIER2_BLOCK5_PRICE_ATTRIBUTE_ID 0x0424 // Ver.: always -#define ZCL_TIER2_BLOCK6_PRICE_ATTRIBUTE_ID 0x0425 // Ver.: always -#define ZCL_TIER2_BLOCK7_PRICE_ATTRIBUTE_ID 0x0426 // Ver.: always -#define ZCL_TIER2_BLOCK8_PRICE_ATTRIBUTE_ID 0x0427 // Ver.: always -#define ZCL_TIER2_BLOCK9_PRICE_ATTRIBUTE_ID 0x0428 // Ver.: always -#define ZCL_TIER2_BLOCK10_PRICE_ATTRIBUTE_ID 0x0429 // Ver.: always -#define ZCL_TIER2_BLOCK11_PRICE_ATTRIBUTE_ID 0x042A // Ver.: always -#define ZCL_TIER2_BLOCK12_PRICE_ATTRIBUTE_ID 0x042B // Ver.: always -#define ZCL_TIER2_BLOCK13_PRICE_ATTRIBUTE_ID 0x042C // Ver.: always -#define ZCL_TIER2_BLOCK14_PRICE_ATTRIBUTE_ID 0x042D // Ver.: always -#define ZCL_TIER2_BLOCK15_PRICE_ATTRIBUTE_ID 0x042E // Ver.: always -#define ZCL_TIER2_BLOCK16_PRICE_ATTRIBUTE_ID 0x042F // Ver.: always -#define ZCL_TIER3_BLOCK1_PRICE_ATTRIBUTE_ID 0x0430 // Ver.: always -#define ZCL_TIER3_BLOCK2_PRICE_ATTRIBUTE_ID 0x0431 // Ver.: always -#define ZCL_TIER3_BLOCK3_PRICE_ATTRIBUTE_ID 0x0432 // Ver.: always -#define ZCL_TIER3_BLOCK4_PRICE_ATTRIBUTE_ID 0x0433 // Ver.: always -#define ZCL_TIER3_BLOCK5_PRICE_ATTRIBUTE_ID 0x0434 // Ver.: always -#define ZCL_TIER3_BLOCK6_PRICE_ATTRIBUTE_ID 0x0435 // Ver.: always -#define ZCL_TIER3_BLOCK7_PRICE_ATTRIBUTE_ID 0x0436 // Ver.: always -#define ZCL_TIER3_BLOCK8_PRICE_ATTRIBUTE_ID 0x0437 // Ver.: always -#define ZCL_TIER3_BLOCK9_PRICE_ATTRIBUTE_ID 0x0438 // Ver.: always -#define ZCL_TIER3_BLOCK10_PRICE_ATTRIBUTE_ID 0x0439 // Ver.: always -#define ZCL_TIER3_BLOCK11_PRICE_ATTRIBUTE_ID 0x043A // Ver.: always -#define ZCL_TIER3_BLOCK12_PRICE_ATTRIBUTE_ID 0x043B // Ver.: always -#define ZCL_TIER3_BLOCK13_PRICE_ATTRIBUTE_ID 0x043C // Ver.: always -#define ZCL_TIER3_BLOCK14_PRICE_ATTRIBUTE_ID 0x043D // Ver.: always -#define ZCL_TIER3_BLOCK15_PRICE_ATTRIBUTE_ID 0x043E // Ver.: always -#define ZCL_TIER3_BLOCK16_PRICE_ATTRIBUTE_ID 0x043F // Ver.: always -#define ZCL_TIER4_BLOCK1_PRICE_ATTRIBUTE_ID 0x0440 // Ver.: always -#define ZCL_TIER4_BLOCK2_PRICE_ATTRIBUTE_ID 0x0441 // Ver.: always -#define ZCL_TIER4_BLOCK3_PRICE_ATTRIBUTE_ID 0x0442 // Ver.: always -#define ZCL_TIER4_BLOCK4_PRICE_ATTRIBUTE_ID 0x0443 // Ver.: always -#define ZCL_TIER4_BLOCK5_PRICE_ATTRIBUTE_ID 0x0444 // Ver.: always -#define ZCL_TIER4_BLOCK6_PRICE_ATTRIBUTE_ID 0x0445 // Ver.: always -#define ZCL_TIER4_BLOCK7_PRICE_ATTRIBUTE_ID 0x0446 // Ver.: always -#define ZCL_TIER4_BLOCK8_PRICE_ATTRIBUTE_ID 0x0447 // Ver.: always -#define ZCL_TIER4_BLOCK9_PRICE_ATTRIBUTE_ID 0x0448 // Ver.: always -#define ZCL_TIER4_BLOCK10_PRICE_ATTRIBUTE_ID 0x0449 // Ver.: always -#define ZCL_TIER4_BLOCK11_PRICE_ATTRIBUTE_ID 0x044A // Ver.: always -#define ZCL_TIER4_BLOCK12_PRICE_ATTRIBUTE_ID 0x044B // Ver.: always -#define ZCL_TIER4_BLOCK13_PRICE_ATTRIBUTE_ID 0x044C // Ver.: always -#define ZCL_TIER4_BLOCK14_PRICE_ATTRIBUTE_ID 0x044D // Ver.: always -#define ZCL_TIER4_BLOCK15_PRICE_ATTRIBUTE_ID 0x044E // Ver.: always -#define ZCL_TIER4_BLOCK16_PRICE_ATTRIBUTE_ID 0x044F // Ver.: always -#define ZCL_TIER5_BLOCK1_PRICE_ATTRIBUTE_ID 0x0450 // Ver.: always -#define ZCL_TIER5_BLOCK2_PRICE_ATTRIBUTE_ID 0x0451 // Ver.: always -#define ZCL_TIER5_BLOCK3_PRICE_ATTRIBUTE_ID 0x0452 // Ver.: always -#define ZCL_TIER5_BLOCK4_PRICE_ATTRIBUTE_ID 0x0453 // Ver.: always -#define ZCL_TIER5_BLOCK5_PRICE_ATTRIBUTE_ID 0x0454 // Ver.: always -#define ZCL_TIER5_BLOCK6_PRICE_ATTRIBUTE_ID 0x0455 // Ver.: always -#define ZCL_TIER5_BLOCK7_PRICE_ATTRIBUTE_ID 0x0456 // Ver.: always -#define ZCL_TIER5_BLOCK8_PRICE_ATTRIBUTE_ID 0x0457 // Ver.: always -#define ZCL_TIER5_BLOCK9_PRICE_ATTRIBUTE_ID 0x0458 // Ver.: always -#define ZCL_TIER5_BLOCK10_PRICE_ATTRIBUTE_ID 0x0459 // Ver.: always -#define ZCL_TIER5_BLOCK11_PRICE_ATTRIBUTE_ID 0x045A // Ver.: always -#define ZCL_TIER5_BLOCK12_PRICE_ATTRIBUTE_ID 0x045B // Ver.: always -#define ZCL_TIER5_BLOCK13_PRICE_ATTRIBUTE_ID 0x045C // Ver.: always -#define ZCL_TIER5_BLOCK14_PRICE_ATTRIBUTE_ID 0x045D // Ver.: always -#define ZCL_TIER5_BLOCK15_PRICE_ATTRIBUTE_ID 0x045E // Ver.: always -#define ZCL_TIER5_BLOCK16_PRICE_ATTRIBUTE_ID 0x045F // Ver.: always -#define ZCL_TIER6_BLOCK1_PRICE_ATTRIBUTE_ID 0x0460 // Ver.: always -#define ZCL_TIER6_BLOCK2_PRICE_ATTRIBUTE_ID 0x0461 // Ver.: always -#define ZCL_TIER6_BLOCK3_PRICE_ATTRIBUTE_ID 0x0462 // Ver.: always -#define ZCL_TIER6_BLOCK4_PRICE_ATTRIBUTE_ID 0x0463 // Ver.: always -#define ZCL_TIER6_BLOCK5_PRICE_ATTRIBUTE_ID 0x0464 // Ver.: always -#define ZCL_TIER6_BLOCK6_PRICE_ATTRIBUTE_ID 0x0465 // Ver.: always -#define ZCL_TIER6_BLOCK7_PRICE_ATTRIBUTE_ID 0x0466 // Ver.: always -#define ZCL_TIER6_BLOCK8_PRICE_ATTRIBUTE_ID 0x0467 // Ver.: always -#define ZCL_TIER6_BLOCK9_PRICE_ATTRIBUTE_ID 0x0468 // Ver.: always -#define ZCL_TIER6_BLOCK10_PRICE_ATTRIBUTE_ID 0x0469 // Ver.: always -#define ZCL_TIER6_BLOCK11_PRICE_ATTRIBUTE_ID 0x046A // Ver.: always -#define ZCL_TIER6_BLOCK12_PRICE_ATTRIBUTE_ID 0x046B // Ver.: always -#define ZCL_TIER6_BLOCK13_PRICE_ATTRIBUTE_ID 0x046C // Ver.: always -#define ZCL_TIER6_BLOCK14_PRICE_ATTRIBUTE_ID 0x046D // Ver.: always -#define ZCL_TIER6_BLOCK15_PRICE_ATTRIBUTE_ID 0x046E // Ver.: always -#define ZCL_TIER6_BLOCK16_PRICE_ATTRIBUTE_ID 0x046F // Ver.: always -#define ZCL_TIER7_BLOCK1_PRICE_ATTRIBUTE_ID 0x0470 // Ver.: always -#define ZCL_TIER7_BLOCK2_PRICE_ATTRIBUTE_ID 0x0471 // Ver.: always -#define ZCL_TIER7_BLOCK3_PRICE_ATTRIBUTE_ID 0x0472 // Ver.: always -#define ZCL_TIER7_BLOCK4_PRICE_ATTRIBUTE_ID 0x0473 // Ver.: always -#define ZCL_TIER7_BLOCK5_PRICE_ATTRIBUTE_ID 0x0474 // Ver.: always -#define ZCL_TIER7_BLOCK6_PRICE_ATTRIBUTE_ID 0x0475 // Ver.: always -#define ZCL_TIER7_BLOCK7_PRICE_ATTRIBUTE_ID 0x0476 // Ver.: always -#define ZCL_TIER7_BLOCK8_PRICE_ATTRIBUTE_ID 0x0477 // Ver.: always -#define ZCL_TIER7_BLOCK9_PRICE_ATTRIBUTE_ID 0x0478 // Ver.: always -#define ZCL_TIER7_BLOCK10_PRICE_ATTRIBUTE_ID 0x0479 // Ver.: always -#define ZCL_TIER7_BLOCK11_PRICE_ATTRIBUTE_ID 0x047A // Ver.: always -#define ZCL_TIER7_BLOCK12_PRICE_ATTRIBUTE_ID 0x047B // Ver.: always -#define ZCL_TIER7_BLOCK13_PRICE_ATTRIBUTE_ID 0x047C // Ver.: always -#define ZCL_TIER7_BLOCK14_PRICE_ATTRIBUTE_ID 0x047D // Ver.: always -#define ZCL_TIER7_BLOCK15_PRICE_ATTRIBUTE_ID 0x047E // Ver.: always -#define ZCL_TIER7_BLOCK16_PRICE_ATTRIBUTE_ID 0x047F // Ver.: always -#define ZCL_TIER8_BLOCK1_PRICE_ATTRIBUTE_ID 0x0480 // Ver.: always -#define ZCL_TIER8_BLOCK2_PRICE_ATTRIBUTE_ID 0x0481 // Ver.: always -#define ZCL_TIER8_BLOCK3_PRICE_ATTRIBUTE_ID 0x0482 // Ver.: always -#define ZCL_TIER8_BLOCK4_PRICE_ATTRIBUTE_ID 0x0483 // Ver.: always -#define ZCL_TIER8_BLOCK5_PRICE_ATTRIBUTE_ID 0x0484 // Ver.: always -#define ZCL_TIER8_BLOCK6_PRICE_ATTRIBUTE_ID 0x0485 // Ver.: always -#define ZCL_TIER8_BLOCK7_PRICE_ATTRIBUTE_ID 0x0486 // Ver.: always -#define ZCL_TIER8_BLOCK8_PRICE_ATTRIBUTE_ID 0x0487 // Ver.: always -#define ZCL_TIER8_BLOCK9_PRICE_ATTRIBUTE_ID 0x0488 // Ver.: always -#define ZCL_TIER8_BLOCK10_PRICE_ATTRIBUTE_ID 0x0489 // Ver.: always -#define ZCL_TIER8_BLOCK11_PRICE_ATTRIBUTE_ID 0x048A // Ver.: always -#define ZCL_TIER8_BLOCK12_PRICE_ATTRIBUTE_ID 0x048B // Ver.: always -#define ZCL_TIER8_BLOCK13_PRICE_ATTRIBUTE_ID 0x048C // Ver.: always -#define ZCL_TIER8_BLOCK14_PRICE_ATTRIBUTE_ID 0x048D // Ver.: always -#define ZCL_TIER8_BLOCK15_PRICE_ATTRIBUTE_ID 0x048E // Ver.: always -#define ZCL_TIER8_BLOCK16_PRICE_ATTRIBUTE_ID 0x048F // Ver.: always -#define ZCL_TIER9_BLOCK1_PRICE_ATTRIBUTE_ID 0x0490 // Ver.: always -#define ZCL_TIER9_BLOCK2_PRICE_ATTRIBUTE_ID 0x0491 // Ver.: always -#define ZCL_TIER9_BLOCK3_PRICE_ATTRIBUTE_ID 0x0492 // Ver.: always -#define ZCL_TIER9_BLOCK4_PRICE_ATTRIBUTE_ID 0x0493 // Ver.: always -#define ZCL_TIER9_BLOCK5_PRICE_ATTRIBUTE_ID 0x0494 // Ver.: always -#define ZCL_TIER9_BLOCK6_PRICE_ATTRIBUTE_ID 0x0495 // Ver.: always -#define ZCL_TIER9_BLOCK7_PRICE_ATTRIBUTE_ID 0x0496 // Ver.: always -#define ZCL_TIER9_BLOCK8_PRICE_ATTRIBUTE_ID 0x0497 // Ver.: always -#define ZCL_TIER9_BLOCK9_PRICE_ATTRIBUTE_ID 0x0498 // Ver.: always -#define ZCL_TIER9_BLOCK10_PRICE_ATTRIBUTE_ID 0x0499 // Ver.: always -#define ZCL_TIER9_BLOCK11_PRICE_ATTRIBUTE_ID 0x049A // Ver.: always -#define ZCL_TIER9_BLOCK12_PRICE_ATTRIBUTE_ID 0x049B // Ver.: always -#define ZCL_TIER9_BLOCK13_PRICE_ATTRIBUTE_ID 0x049C // Ver.: always -#define ZCL_TIER9_BLOCK14_PRICE_ATTRIBUTE_ID 0x049D // Ver.: always -#define ZCL_TIER9_BLOCK15_PRICE_ATTRIBUTE_ID 0x049E // Ver.: always -#define ZCL_TIER9_BLOCK16_PRICE_ATTRIBUTE_ID 0x049F // Ver.: always -#define ZCL_TIER10_BLOCK1_PRICE_ATTRIBUTE_ID 0x04A0 // Ver.: always -#define ZCL_TIER10_BLOCK2_PRICE_ATTRIBUTE_ID 0x04A1 // Ver.: always -#define ZCL_TIER10_BLOCK3_PRICE_ATTRIBUTE_ID 0x04A2 // Ver.: always -#define ZCL_TIER10_BLOCK4_PRICE_ATTRIBUTE_ID 0x04A3 // Ver.: always -#define ZCL_TIER10_BLOCK5_PRICE_ATTRIBUTE_ID 0x04A4 // Ver.: always -#define ZCL_TIER10_BLOCK6_PRICE_ATTRIBUTE_ID 0x04A5 // Ver.: always -#define ZCL_TIER10_BLOCK7_PRICE_ATTRIBUTE_ID 0x04A6 // Ver.: always -#define ZCL_TIER10_BLOCK8_PRICE_ATTRIBUTE_ID 0x04A7 // Ver.: always -#define ZCL_TIER10_BLOCK9_PRICE_ATTRIBUTE_ID 0x04A8 // Ver.: always -#define ZCL_TIER10_BLOCK10_PRICE_ATTRIBUTE_ID 0x04A9 // Ver.: always -#define ZCL_TIER10_BLOCK11_PRICE_ATTRIBUTE_ID 0x04AA // Ver.: always -#define ZCL_TIER10_BLOCK12_PRICE_ATTRIBUTE_ID 0x04AB // Ver.: always -#define ZCL_TIER10_BLOCK13_PRICE_ATTRIBUTE_ID 0x04AC // Ver.: always -#define ZCL_TIER10_BLOCK14_PRICE_ATTRIBUTE_ID 0x04AD // Ver.: always -#define ZCL_TIER10_BLOCK15_PRICE_ATTRIBUTE_ID 0x04AE // Ver.: always -#define ZCL_TIER10_BLOCK16_PRICE_ATTRIBUTE_ID 0x04AF // Ver.: always -#define ZCL_TIER11_BLOCK1_PRICE_ATTRIBUTE_ID 0x04B0 // Ver.: always -#define ZCL_TIER11_BLOCK2_PRICE_ATTRIBUTE_ID 0x04B1 // Ver.: always -#define ZCL_TIER11_BLOCK3_PRICE_ATTRIBUTE_ID 0x04B2 // Ver.: always -#define ZCL_TIER11_BLOCK4_PRICE_ATTRIBUTE_ID 0x04B3 // Ver.: always -#define ZCL_TIER11_BLOCK5_PRICE_ATTRIBUTE_ID 0x04B4 // Ver.: always -#define ZCL_TIER11_BLOCK6_PRICE_ATTRIBUTE_ID 0x04B5 // Ver.: always -#define ZCL_TIER11_BLOCK7_PRICE_ATTRIBUTE_ID 0x04B6 // Ver.: always -#define ZCL_TIER11_BLOCK8_PRICE_ATTRIBUTE_ID 0x04B7 // Ver.: always -#define ZCL_TIER11_BLOCK9_PRICE_ATTRIBUTE_ID 0x04B8 // Ver.: always -#define ZCL_TIER11_BLOCK10_PRICE_ATTRIBUTE_ID 0x04B9 // Ver.: always -#define ZCL_TIER11_BLOCK11_PRICE_ATTRIBUTE_ID 0x04BA // Ver.: always -#define ZCL_TIER11_BLOCK12_PRICE_ATTRIBUTE_ID 0x04BB // Ver.: always -#define ZCL_TIER11_BLOCK13_PRICE_ATTRIBUTE_ID 0x04BC // Ver.: always -#define ZCL_TIER11_BLOCK14_PRICE_ATTRIBUTE_ID 0x04BD // Ver.: always -#define ZCL_TIER11_BLOCK15_PRICE_ATTRIBUTE_ID 0x04BE // Ver.: always -#define ZCL_TIER11_BLOCK16_PRICE_ATTRIBUTE_ID 0x04BF // Ver.: always -#define ZCL_TIER12_BLOCK1_PRICE_ATTRIBUTE_ID 0x04C0 // Ver.: always -#define ZCL_TIER12_BLOCK2_PRICE_ATTRIBUTE_ID 0x04C1 // Ver.: always -#define ZCL_TIER12_BLOCK3_PRICE_ATTRIBUTE_ID 0x04C2 // Ver.: always -#define ZCL_TIER12_BLOCK4_PRICE_ATTRIBUTE_ID 0x04C3 // Ver.: always -#define ZCL_TIER12_BLOCK5_PRICE_ATTRIBUTE_ID 0x04C4 // Ver.: always -#define ZCL_TIER12_BLOCK6_PRICE_ATTRIBUTE_ID 0x04C5 // Ver.: always -#define ZCL_TIER12_BLOCK7_PRICE_ATTRIBUTE_ID 0x04C6 // Ver.: always -#define ZCL_TIER12_BLOCK8_PRICE_ATTRIBUTE_ID 0x04C7 // Ver.: always -#define ZCL_TIER12_BLOCK9_PRICE_ATTRIBUTE_ID 0x04C8 // Ver.: always -#define ZCL_TIER12_BLOCK10_PRICE_ATTRIBUTE_ID 0x04C9 // Ver.: always -#define ZCL_TIER12_BLOCK11_PRICE_ATTRIBUTE_ID 0x04CA // Ver.: always -#define ZCL_TIER12_BLOCK12_PRICE_ATTRIBUTE_ID 0x04CB // Ver.: always -#define ZCL_TIER12_BLOCK13_PRICE_ATTRIBUTE_ID 0x04CC // Ver.: always -#define ZCL_TIER12_BLOCK14_PRICE_ATTRIBUTE_ID 0x04CD // Ver.: always -#define ZCL_TIER12_BLOCK15_PRICE_ATTRIBUTE_ID 0x04CE // Ver.: always -#define ZCL_TIER12_BLOCK16_PRICE_ATTRIBUTE_ID 0x04CF // Ver.: always -#define ZCL_TIER13_BLOCK1_PRICE_ATTRIBUTE_ID 0x04D0 // Ver.: always -#define ZCL_TIER13_BLOCK2_PRICE_ATTRIBUTE_ID 0x04D1 // Ver.: always -#define ZCL_TIER13_BLOCK3_PRICE_ATTRIBUTE_ID 0x04D2 // Ver.: always -#define ZCL_TIER13_BLOCK4_PRICE_ATTRIBUTE_ID 0x04D3 // Ver.: always -#define ZCL_TIER13_BLOCK5_PRICE_ATTRIBUTE_ID 0x04D4 // Ver.: always -#define ZCL_TIER13_BLOCK6_PRICE_ATTRIBUTE_ID 0x04D5 // Ver.: always -#define ZCL_TIER13_BLOCK7_PRICE_ATTRIBUTE_ID 0x04D6 // Ver.: always -#define ZCL_TIER13_BLOCK8_PRICE_ATTRIBUTE_ID 0x04D7 // Ver.: always -#define ZCL_TIER13_BLOCK9_PRICE_ATTRIBUTE_ID 0x04D8 // Ver.: always -#define ZCL_TIER13_BLOCK10_PRICE_ATTRIBUTE_ID 0x04D9 // Ver.: always -#define ZCL_TIER13_BLOCK11_PRICE_ATTRIBUTE_ID 0x04DA // Ver.: always -#define ZCL_TIER13_BLOCK12_PRICE_ATTRIBUTE_ID 0x04DB // Ver.: always -#define ZCL_TIER13_BLOCK13_PRICE_ATTRIBUTE_ID 0x04DC // Ver.: always -#define ZCL_TIER13_BLOCK14_PRICE_ATTRIBUTE_ID 0x04DD // Ver.: always -#define ZCL_TIER13_BLOCK15_PRICE_ATTRIBUTE_ID 0x04DE // Ver.: always -#define ZCL_TIER13_BLOCK16_PRICE_ATTRIBUTE_ID 0x04DF // Ver.: always -#define ZCL_TIER14_BLOCK1_PRICE_ATTRIBUTE_ID 0x04E0 // Ver.: always -#define ZCL_TIER14_BLOCK2_PRICE_ATTRIBUTE_ID 0x04E1 // Ver.: always -#define ZCL_TIER14_BLOCK3_PRICE_ATTRIBUTE_ID 0x04E2 // Ver.: always -#define ZCL_TIER14_BLOCK4_PRICE_ATTRIBUTE_ID 0x04E3 // Ver.: always -#define ZCL_TIER14_BLOCK5_PRICE_ATTRIBUTE_ID 0x04E4 // Ver.: always -#define ZCL_TIER14_BLOCK6_PRICE_ATTRIBUTE_ID 0x04E5 // Ver.: always -#define ZCL_TIER14_BLOCK7_PRICE_ATTRIBUTE_ID 0x04E6 // Ver.: always -#define ZCL_TIER14_BLOCK8_PRICE_ATTRIBUTE_ID 0x04E7 // Ver.: always -#define ZCL_TIER14_BLOCK9_PRICE_ATTRIBUTE_ID 0x04E8 // Ver.: always -#define ZCL_TIER14_BLOCK10_PRICE_ATTRIBUTE_ID 0x04E9 // Ver.: always -#define ZCL_TIER14_BLOCK11_PRICE_ATTRIBUTE_ID 0x04EA // Ver.: always -#define ZCL_TIER14_BLOCK12_PRICE_ATTRIBUTE_ID 0x04EB // Ver.: always -#define ZCL_TIER14_BLOCK13_PRICE_ATTRIBUTE_ID 0x04EC // Ver.: always -#define ZCL_TIER14_BLOCK14_PRICE_ATTRIBUTE_ID 0x04ED // Ver.: always -#define ZCL_TIER14_BLOCK15_PRICE_ATTRIBUTE_ID 0x04EE // Ver.: always -#define ZCL_TIER14_BLOCK16_PRICE_ATTRIBUTE_ID 0x04EF // Ver.: always -#define ZCL_TIER15_BLOCK1_PRICE_ATTRIBUTE_ID 0x04F0 // Ver.: always -#define ZCL_TIER15_BLOCK2_PRICE_ATTRIBUTE_ID 0x04F1 // Ver.: always -#define ZCL_TIER15_BLOCK3_PRICE_ATTRIBUTE_ID 0x04F2 // Ver.: always -#define ZCL_TIER15_BLOCK4_PRICE_ATTRIBUTE_ID 0x04F3 // Ver.: always -#define ZCL_TIER15_BLOCK5_PRICE_ATTRIBUTE_ID 0x04F4 // Ver.: always -#define ZCL_TIER15_BLOCK6_PRICE_ATTRIBUTE_ID 0x04F5 // Ver.: always -#define ZCL_TIER15_BLOCK7_PRICE_ATTRIBUTE_ID 0x04F6 // Ver.: always -#define ZCL_TIER15_BLOCK8_PRICE_ATTRIBUTE_ID 0x04F7 // Ver.: always -#define ZCL_TIER15_BLOCK9_PRICE_ATTRIBUTE_ID 0x04F8 // Ver.: always -#define ZCL_TIER15_BLOCK10_PRICE_ATTRIBUTE_ID 0x04F9 // Ver.: always -#define ZCL_TIER15_BLOCK11_PRICE_ATTRIBUTE_ID 0x04FA // Ver.: always -#define ZCL_TIER15_BLOCK12_PRICE_ATTRIBUTE_ID 0x04FB // Ver.: always -#define ZCL_TIER15_BLOCK13_PRICE_ATTRIBUTE_ID 0x04FC // Ver.: always -#define ZCL_TIER15_BLOCK14_PRICE_ATTRIBUTE_ID 0x04FD // Ver.: always -#define ZCL_TIER15_BLOCK15_PRICE_ATTRIBUTE_ID 0x04FE // Ver.: always -#define ZCL_TIER15_BLOCK16_PRICE_ATTRIBUTE_ID 0x04FF // Ver.: always -#define ZCL_PRICE_TIER16_ATTRIBUTE_ID 0x050F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER17_ATTRIBUTE_ID 0x0510 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER18_ATTRIBUTE_ID 0x0511 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER19_ATTRIBUTE_ID 0x0512 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER20_ATTRIBUTE_ID 0x0513 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER21_ATTRIBUTE_ID 0x0514 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER22_ATTRIBUTE_ID 0x0515 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER23_ATTRIBUTE_ID 0x0516 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER24_ATTRIBUTE_ID 0x0517 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER25_ATTRIBUTE_ID 0x0518 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER26_ATTRIBUTE_ID 0x0519 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER27_ATTRIBUTE_ID 0x051A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER28_ATTRIBUTE_ID 0x051B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER29_ATTRIBUTE_ID 0x051C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER30_ATTRIBUTE_ID 0x051D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER31_ATTRIBUTE_ID 0x051E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER32_ATTRIBUTE_ID 0x051F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER33_ATTRIBUTE_ID 0x0520 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER34_ATTRIBUTE_ID 0x0521 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER35_ATTRIBUTE_ID 0x0522 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER36_ATTRIBUTE_ID 0x0523 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER37_ATTRIBUTE_ID 0x0524 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER38_ATTRIBUTE_ID 0x0525 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER39_ATTRIBUTE_ID 0x0526 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER40_ATTRIBUTE_ID 0x0527 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER41_ATTRIBUTE_ID 0x0528 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER42_ATTRIBUTE_ID 0x0529 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER43_ATTRIBUTE_ID 0x052A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER44_ATTRIBUTE_ID 0x052B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER45_ATTRIBUTE_ID 0x052C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER46_ATTRIBUTE_ID 0x052D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER47_ATTRIBUTE_ID 0x052E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_TIER48_ATTRIBUTE_ID 0x052F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CPP1_PRICE_ATTRIBUTE_ID 0x05FE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CPP2_PRICE_ATTRIBUTE_ID 0x05FF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TARIFF_LABEL_ATTRIBUTE_ID 0x0610 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NUMBER_OF_PRICE_TIERS_IN_USE_ATTRIBUTE_ID 0x0611 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NUMBER_OF_BLOCK_THRESHOLDS_IN_USE_ATTRIBUTE_ID 0x0612 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TIER_BLOCK_MODE_ATTRIBUTE_ID 0x0613 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TARIFF_UNIT_OF_MEASURE_ATTRIBUTE_ID 0x0615 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TARIFF_CURRENCY_ATTRIBUTE_ID 0x0616 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TARIFF_PRICE_TRAILING_DIGIT_ATTRIBUTE_ID 0x0617 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TARIFF_RESOLUTION_PERIOD_ATTRIBUTE_ID 0x0619 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TARIFF_CO2_ATTRIBUTE_ID 0x0620 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TARIFF_CO2_UNIT_ATTRIBUTE_ID 0x0621 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TARIFF_CO2_TRAILING_DIGIT_ATTRIBUTE_ID 0x0622 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_BILLING_PERIOD_START_ATTRIBUTE_ID 0x0700 // Ver.: since se-1.1b-07-5356-18 -#define ZCL_CURRENT_BILLING_PERIOD_DURATION_ATTRIBUTE_ID 0x0701 // Ver.: since se-1.1b-07-5356-18 -#define ZCL_LAST_BILLING_PERIOD_START_ATTRIBUTE_ID 0x0702 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_LAST_BILLING_PERIOD_DURATION_ATTRIBUTE_ID 0x0703 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_LAST_BILLING_PERIOD_CONSOLIDATED_BILL_ATTRIBUTE_ID 0x0704 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_DUE_DATE_ATTRIBUTE_ID 0x0800 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_STATUS_ATTRIBUTE_ID 0x0801 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_OVER_DUE_AMOUNT_ATTRIBUTE_ID 0x0802 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PAYMENT_DISCOUNT_ATTRIBUTE_ID 0x080A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PAYMENT_DISCOUNT_PERIOD_ATTRIBUTE_ID 0x080B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_1_ATTRIBUTE_ID 0x0810 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_DATE_1_ATTRIBUTE_ID 0x0811 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_REF_1_ATTRIBUTE_ID 0x0812 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_2_ATTRIBUTE_ID 0x0820 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_DATE_2_ATTRIBUTE_ID 0x0821 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_REF_2_ATTRIBUTE_ID 0x0822 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_3_ATTRIBUTE_ID 0x0830 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_DATE_3_ATTRIBUTE_ID 0x0831 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_REF_3_ATTRIBUTE_ID 0x0832 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_4_ATTRIBUTE_ID 0x0840 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_DATE_4_ATTRIBUTE_ID 0x0841 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_REF_4_ATTRIBUTE_ID 0x0842 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_5_ATTRIBUTE_ID 0x0850 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_DATE_5_ATTRIBUTE_ID 0x0851 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_PAYMENT_REF_5_ATTRIBUTE_ID 0x0852 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_PRICE_LABEL_ATTRIBUTE_ID 0x8000 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_PRICE_LABEL_ATTRIBUTE_ID 0x8001 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_PRICE_LABEL_ATTRIBUTE_ID 0x8002 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_PRICE_LABEL_ATTRIBUTE_ID 0x8003 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_PRICE_LABEL_ATTRIBUTE_ID 0x8004 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_PRICE_LABEL_ATTRIBUTE_ID 0x8005 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_PRICE_LABEL_ATTRIBUTE_ID 0x8006 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_PRICE_LABEL_ATTRIBUTE_ID 0x8007 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_PRICE_LABEL_ATTRIBUTE_ID 0x8008 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_PRICE_LABEL_ATTRIBUTE_ID 0x8009 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_PRICE_LABEL_ATTRIBUTE_ID 0x800A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_PRICE_LABEL_ATTRIBUTE_ID 0x800B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_PRICE_LABEL_ATTRIBUTE_ID 0x800C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_PRICE_LABEL_ATTRIBUTE_ID 0x800D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_PRICE_LABEL_ATTRIBUTE_ID 0x800E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER16_PRICE_LABEL_ATTRIBUTE_ID 0x800F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER17_PRICE_LABEL_ATTRIBUTE_ID 0x8010 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER18_PRICE_LABEL_ATTRIBUTE_ID 0x8011 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER19_PRICE_LABEL_ATTRIBUTE_ID 0x8012 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER20_PRICE_LABEL_ATTRIBUTE_ID 0x8013 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER21_PRICE_LABEL_ATTRIBUTE_ID 0x8014 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER22_PRICE_LABEL_ATTRIBUTE_ID 0x8015 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER23_PRICE_LABEL_ATTRIBUTE_ID 0x8016 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER24_PRICE_LABEL_ATTRIBUTE_ID 0x8017 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER25_PRICE_LABEL_ATTRIBUTE_ID 0x8018 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER26_PRICE_LABEL_ATTRIBUTE_ID 0x8019 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER27_PRICE_LABEL_ATTRIBUTE_ID 0x801A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER28_PRICE_LABEL_ATTRIBUTE_ID 0x801B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER29_PRICE_LABEL_ATTRIBUTE_ID 0x801C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER30_PRICE_LABEL_ATTRIBUTE_ID 0x801D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER31_PRICE_LABEL_ATTRIBUTE_ID 0x801E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER32_PRICE_LABEL_ATTRIBUTE_ID 0x801F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER33_PRICE_LABEL_ATTRIBUTE_ID 0x8020 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER34_PRICE_LABEL_ATTRIBUTE_ID 0x8021 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER35_PRICE_LABEL_ATTRIBUTE_ID 0x8022 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER36_PRICE_LABEL_ATTRIBUTE_ID 0x8023 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER37_PRICE_LABEL_ATTRIBUTE_ID 0x8024 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER38_PRICE_LABEL_ATTRIBUTE_ID 0x8025 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER39_PRICE_LABEL_ATTRIBUTE_ID 0x8026 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER40_PRICE_LABEL_ATTRIBUTE_ID 0x8027 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER41_PRICE_LABEL_ATTRIBUTE_ID 0x8028 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER42_PRICE_LABEL_ATTRIBUTE_ID 0x8029 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER43_PRICE_LABEL_ATTRIBUTE_ID 0x802A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER44_PRICE_LABEL_ATTRIBUTE_ID 0x802B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER45_PRICE_LABEL_ATTRIBUTE_ID 0x802C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER46_PRICE_LABEL_ATTRIBUTE_ID 0x802D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER47_PRICE_LABEL_ATTRIBUTE_ID 0x802E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER48_PRICE_LABEL_ATTRIBUTE_ID 0x802F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK1_THRESHOLD_ATTRIBUTE_ID 0x8100 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK2_THRESHOLD_ATTRIBUTE_ID 0x8101 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK3_THRESHOLD_ATTRIBUTE_ID 0x8102 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK4_THRESHOLD_ATTRIBUTE_ID 0x8103 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK5_THRESHOLD_ATTRIBUTE_ID 0x8104 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK6_THRESHOLD_ATTRIBUTE_ID 0x8105 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK7_THRESHOLD_ATTRIBUTE_ID 0x8106 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK8_THRESHOLD_ATTRIBUTE_ID 0x8107 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK9_THRESHOLD_ATTRIBUTE_ID 0x8108 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK10_THRESHOLD_ATTRIBUTE_ID 0x8109 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK11_THRESHOLD_ATTRIBUTE_ID 0x810A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK12_THRESHOLD_ATTRIBUTE_ID 0x810B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK13_THRESHOLD_ATTRIBUTE_ID 0x810C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK14_THRESHOLD_ATTRIBUTE_ID 0x810D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK15_THRESHOLD_ATTRIBUTE_ID 0x810E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_START_OF_BLOCK_PERIOD_ATTRIBUTE_ID 0x8200 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_BLOCK_PERIOD_DURATION_ATTRIBUTE_ID 0x8201 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_THRESHOLD_MULTIPLIER_ATTRIBUTE_ID 0x8202 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_THRESHOLD_DIVISOR_ATTRIBUTE_ID 0x8203 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK1_PRICE_ATTRIBUTE_ID 0x8400 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK2_PRICE_ATTRIBUTE_ID 0x8401 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK3_PRICE_ATTRIBUTE_ID 0x8402 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK4_PRICE_ATTRIBUTE_ID 0x8403 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK5_PRICE_ATTRIBUTE_ID 0x8404 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK6_PRICE_ATTRIBUTE_ID 0x8405 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK7_PRICE_ATTRIBUTE_ID 0x8406 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK8_PRICE_ATTRIBUTE_ID 0x8407 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK9_PRICE_ATTRIBUTE_ID 0x8408 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK10_PRICE_ATTRIBUTE_ID 0x8409 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK11_PRICE_ATTRIBUTE_ID 0x840A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK12_PRICE_ATTRIBUTE_ID 0x840B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK13_PRICE_ATTRIBUTE_ID 0x840C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK14_PRICE_ATTRIBUTE_ID 0x840D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK15_PRICE_ATTRIBUTE_ID 0x840E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NO_TIER_BLOCK16_PRICE_ATTRIBUTE_ID 0x840F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK1_PRICE_ATTRIBUTE_ID 0x8410 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK2_PRICE_ATTRIBUTE_ID 0x8411 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK3_PRICE_ATTRIBUTE_ID 0x8412 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK4_PRICE_ATTRIBUTE_ID 0x8413 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK5_PRICE_ATTRIBUTE_ID 0x8414 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK6_PRICE_ATTRIBUTE_ID 0x8415 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK7_PRICE_ATTRIBUTE_ID 0x8416 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK8_PRICE_ATTRIBUTE_ID 0x8417 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK9_PRICE_ATTRIBUTE_ID 0x8418 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK10_PRICE_ATTRIBUTE_ID 0x8419 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK11_PRICE_ATTRIBUTE_ID 0x841A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK12_PRICE_ATTRIBUTE_ID 0x841B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK13_PRICE_ATTRIBUTE_ID 0x841C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK14_PRICE_ATTRIBUTE_ID 0x841D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK15_PRICE_ATTRIBUTE_ID 0x841E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER1_BLOCK16_PRICE_ATTRIBUTE_ID 0x841F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK1_PRICE_ATTRIBUTE_ID 0x8420 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK2_PRICE_ATTRIBUTE_ID 0x8421 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK3_PRICE_ATTRIBUTE_ID 0x8422 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK4_PRICE_ATTRIBUTE_ID 0x8423 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK5_PRICE_ATTRIBUTE_ID 0x8424 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK6_PRICE_ATTRIBUTE_ID 0x8425 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK7_PRICE_ATTRIBUTE_ID 0x8426 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK8_PRICE_ATTRIBUTE_ID 0x8427 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK9_PRICE_ATTRIBUTE_ID 0x8428 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK10_PRICE_ATTRIBUTE_ID 0x8429 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK11_PRICE_ATTRIBUTE_ID 0x842A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK12_PRICE_ATTRIBUTE_ID 0x842B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK13_PRICE_ATTRIBUTE_ID 0x842C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK14_PRICE_ATTRIBUTE_ID 0x842D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK15_PRICE_ATTRIBUTE_ID 0x842E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER2_BLOCK16_PRICE_ATTRIBUTE_ID 0x842F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK1_PRICE_ATTRIBUTE_ID 0x8430 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK2_PRICE_ATTRIBUTE_ID 0x8431 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK3_PRICE_ATTRIBUTE_ID 0x8432 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK4_PRICE_ATTRIBUTE_ID 0x8433 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK5_PRICE_ATTRIBUTE_ID 0x8434 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK6_PRICE_ATTRIBUTE_ID 0x8435 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK7_PRICE_ATTRIBUTE_ID 0x8436 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK8_PRICE_ATTRIBUTE_ID 0x8437 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK9_PRICE_ATTRIBUTE_ID 0x8438 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK10_PRICE_ATTRIBUTE_ID 0x8439 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK11_PRICE_ATTRIBUTE_ID 0x843A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK12_PRICE_ATTRIBUTE_ID 0x843B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK13_PRICE_ATTRIBUTE_ID 0x843C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK14_PRICE_ATTRIBUTE_ID 0x843D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK15_PRICE_ATTRIBUTE_ID 0x843E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER3_BLOCK16_PRICE_ATTRIBUTE_ID 0x843F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK1_PRICE_ATTRIBUTE_ID 0x8440 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK2_PRICE_ATTRIBUTE_ID 0x8441 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK3_PRICE_ATTRIBUTE_ID 0x8442 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK4_PRICE_ATTRIBUTE_ID 0x8443 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK5_PRICE_ATTRIBUTE_ID 0x8444 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK6_PRICE_ATTRIBUTE_ID 0x8445 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK7_PRICE_ATTRIBUTE_ID 0x8446 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK8_PRICE_ATTRIBUTE_ID 0x8447 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK9_PRICE_ATTRIBUTE_ID 0x8448 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK10_PRICE_ATTRIBUTE_ID 0x8449 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK11_PRICE_ATTRIBUTE_ID 0x844A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK12_PRICE_ATTRIBUTE_ID 0x844B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK13_PRICE_ATTRIBUTE_ID 0x844C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK14_PRICE_ATTRIBUTE_ID 0x844D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK15_PRICE_ATTRIBUTE_ID 0x844E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER4_BLOCK16_PRICE_ATTRIBUTE_ID 0x844F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK1_PRICE_ATTRIBUTE_ID 0x8450 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK2_PRICE_ATTRIBUTE_ID 0x8451 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK3_PRICE_ATTRIBUTE_ID 0x8452 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK4_PRICE_ATTRIBUTE_ID 0x8453 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK5_PRICE_ATTRIBUTE_ID 0x8454 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK6_PRICE_ATTRIBUTE_ID 0x8455 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK7_PRICE_ATTRIBUTE_ID 0x8456 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK8_PRICE_ATTRIBUTE_ID 0x8457 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK9_PRICE_ATTRIBUTE_ID 0x8458 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK10_PRICE_ATTRIBUTE_ID 0x8459 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK11_PRICE_ATTRIBUTE_ID 0x845A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK12_PRICE_ATTRIBUTE_ID 0x845B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK13_PRICE_ATTRIBUTE_ID 0x845C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK14_PRICE_ATTRIBUTE_ID 0x845D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK15_PRICE_ATTRIBUTE_ID 0x845E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER5_BLOCK16_PRICE_ATTRIBUTE_ID 0x845F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK1_PRICE_ATTRIBUTE_ID 0x8460 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK2_PRICE_ATTRIBUTE_ID 0x8461 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK3_PRICE_ATTRIBUTE_ID 0x8462 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK4_PRICE_ATTRIBUTE_ID 0x8463 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK5_PRICE_ATTRIBUTE_ID 0x8464 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK6_PRICE_ATTRIBUTE_ID 0x8465 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK7_PRICE_ATTRIBUTE_ID 0x8466 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK8_PRICE_ATTRIBUTE_ID 0x8467 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK9_PRICE_ATTRIBUTE_ID 0x8468 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK10_PRICE_ATTRIBUTE_ID 0x8469 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK11_PRICE_ATTRIBUTE_ID 0x846A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK12_PRICE_ATTRIBUTE_ID 0x846B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK13_PRICE_ATTRIBUTE_ID 0x846C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK14_PRICE_ATTRIBUTE_ID 0x846D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK15_PRICE_ATTRIBUTE_ID 0x846E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER6_BLOCK16_PRICE_ATTRIBUTE_ID 0x846F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK1_PRICE_ATTRIBUTE_ID 0x8470 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK2_PRICE_ATTRIBUTE_ID 0x8471 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK3_PRICE_ATTRIBUTE_ID 0x8472 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK4_PRICE_ATTRIBUTE_ID 0x8473 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK5_PRICE_ATTRIBUTE_ID 0x8474 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK6_PRICE_ATTRIBUTE_ID 0x8475 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK7_PRICE_ATTRIBUTE_ID 0x8476 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK8_PRICE_ATTRIBUTE_ID 0x8477 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK9_PRICE_ATTRIBUTE_ID 0x8478 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK10_PRICE_ATTRIBUTE_ID 0x8479 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK11_PRICE_ATTRIBUTE_ID 0x847A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK12_PRICE_ATTRIBUTE_ID 0x847B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK13_PRICE_ATTRIBUTE_ID 0x847C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK14_PRICE_ATTRIBUTE_ID 0x847D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK15_PRICE_ATTRIBUTE_ID 0x847E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER7_BLOCK16_PRICE_ATTRIBUTE_ID 0x847F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK1_PRICE_ATTRIBUTE_ID 0x8480 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK2_PRICE_ATTRIBUTE_ID 0x8481 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK3_PRICE_ATTRIBUTE_ID 0x8482 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK4_PRICE_ATTRIBUTE_ID 0x8483 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK5_PRICE_ATTRIBUTE_ID 0x8484 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK6_PRICE_ATTRIBUTE_ID 0x8485 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK7_PRICE_ATTRIBUTE_ID 0x8486 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK8_PRICE_ATTRIBUTE_ID 0x8487 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK9_PRICE_ATTRIBUTE_ID 0x8488 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK10_PRICE_ATTRIBUTE_ID 0x8489 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK11_PRICE_ATTRIBUTE_ID 0x848A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK12_PRICE_ATTRIBUTE_ID 0x848B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK13_PRICE_ATTRIBUTE_ID 0x848C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK14_PRICE_ATTRIBUTE_ID 0x848D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK15_PRICE_ATTRIBUTE_ID 0x848E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER8_BLOCK16_PRICE_ATTRIBUTE_ID 0x848F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK1_PRICE_ATTRIBUTE_ID 0x8490 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK2_PRICE_ATTRIBUTE_ID 0x8491 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK3_PRICE_ATTRIBUTE_ID 0x8492 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK4_PRICE_ATTRIBUTE_ID 0x8493 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK5_PRICE_ATTRIBUTE_ID 0x8494 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK6_PRICE_ATTRIBUTE_ID 0x8495 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK7_PRICE_ATTRIBUTE_ID 0x8496 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK8_PRICE_ATTRIBUTE_ID 0x8497 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK9_PRICE_ATTRIBUTE_ID 0x8498 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK10_PRICE_ATTRIBUTE_ID 0x8499 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK11_PRICE_ATTRIBUTE_ID 0x849A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK12_PRICE_ATTRIBUTE_ID 0x849B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK13_PRICE_ATTRIBUTE_ID 0x849C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK14_PRICE_ATTRIBUTE_ID 0x849D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK15_PRICE_ATTRIBUTE_ID 0x849E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER9_BLOCK16_PRICE_ATTRIBUTE_ID 0x849F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK1_PRICE_ATTRIBUTE_ID 0x84A0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK2_PRICE_ATTRIBUTE_ID 0x84A1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK3_PRICE_ATTRIBUTE_ID 0x84A2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK4_PRICE_ATTRIBUTE_ID 0x84A3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK5_PRICE_ATTRIBUTE_ID 0x84A4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK6_PRICE_ATTRIBUTE_ID 0x84A5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK7_PRICE_ATTRIBUTE_ID 0x84A6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK8_PRICE_ATTRIBUTE_ID 0x84A7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK9_PRICE_ATTRIBUTE_ID 0x84A8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK10_PRICE_ATTRIBUTE_ID 0x84A9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK11_PRICE_ATTRIBUTE_ID 0x84AA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK12_PRICE_ATTRIBUTE_ID 0x84AB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK13_PRICE_ATTRIBUTE_ID 0x84AC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK14_PRICE_ATTRIBUTE_ID 0x84AD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK15_PRICE_ATTRIBUTE_ID 0x84AE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER10_BLOCK16_PRICE_ATTRIBUTE_ID 0x84AF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK1_PRICE_ATTRIBUTE_ID 0x84B0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK2_PRICE_ATTRIBUTE_ID 0x84B1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK3_PRICE_ATTRIBUTE_ID 0x84B2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK4_PRICE_ATTRIBUTE_ID 0x84B3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK5_PRICE_ATTRIBUTE_ID 0x84B4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK6_PRICE_ATTRIBUTE_ID 0x84B5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK7_PRICE_ATTRIBUTE_ID 0x84B6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK8_PRICE_ATTRIBUTE_ID 0x84B7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK9_PRICE_ATTRIBUTE_ID 0x84B8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK10_PRICE_ATTRIBUTE_ID 0x84B9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK11_PRICE_ATTRIBUTE_ID 0x84BA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK12_PRICE_ATTRIBUTE_ID 0x84BB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK13_PRICE_ATTRIBUTE_ID 0x84BC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK14_PRICE_ATTRIBUTE_ID 0x84BD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK15_PRICE_ATTRIBUTE_ID 0x84BE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER11_BLOCK16_PRICE_ATTRIBUTE_ID 0x84BF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK1_PRICE_ATTRIBUTE_ID 0x84C0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK2_PRICE_ATTRIBUTE_ID 0x84C1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK3_PRICE_ATTRIBUTE_ID 0x84C2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK4_PRICE_ATTRIBUTE_ID 0x84C3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK5_PRICE_ATTRIBUTE_ID 0x84C4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK6_PRICE_ATTRIBUTE_ID 0x84C5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK7_PRICE_ATTRIBUTE_ID 0x84C6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK8_PRICE_ATTRIBUTE_ID 0x84C7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK9_PRICE_ATTRIBUTE_ID 0x84C8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK10_PRICE_ATTRIBUTE_ID 0x84C9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK11_PRICE_ATTRIBUTE_ID 0x84CA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK12_PRICE_ATTRIBUTE_ID 0x84CB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK13_PRICE_ATTRIBUTE_ID 0x84CC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK14_PRICE_ATTRIBUTE_ID 0x84CD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK15_PRICE_ATTRIBUTE_ID 0x84CE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER12_BLOCK16_PRICE_ATTRIBUTE_ID 0x84CF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK1_PRICE_ATTRIBUTE_ID 0x84D0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK2_PRICE_ATTRIBUTE_ID 0x84D1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK3_PRICE_ATTRIBUTE_ID 0x84D2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK4_PRICE_ATTRIBUTE_ID 0x84D3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK5_PRICE_ATTRIBUTE_ID 0x84D4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK6_PRICE_ATTRIBUTE_ID 0x84D5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK7_PRICE_ATTRIBUTE_ID 0x84D6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK8_PRICE_ATTRIBUTE_ID 0x84D7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK9_PRICE_ATTRIBUTE_ID 0x84D8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK10_PRICE_ATTRIBUTE_ID 0x84D9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK11_PRICE_ATTRIBUTE_ID 0x84DA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK12_PRICE_ATTRIBUTE_ID 0x84DB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK13_PRICE_ATTRIBUTE_ID 0x84DC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK14_PRICE_ATTRIBUTE_ID 0x84DD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK15_PRICE_ATTRIBUTE_ID 0x84DE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER13_BLOCK16_PRICE_ATTRIBUTE_ID 0x84DF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK1_PRICE_ATTRIBUTE_ID 0x84E0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK2_PRICE_ATTRIBUTE_ID 0x84E1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK3_PRICE_ATTRIBUTE_ID 0x84E2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK4_PRICE_ATTRIBUTE_ID 0x84E3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK5_PRICE_ATTRIBUTE_ID 0x84E4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK6_PRICE_ATTRIBUTE_ID 0x84E5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK7_PRICE_ATTRIBUTE_ID 0x84E6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK8_PRICE_ATTRIBUTE_ID 0x84E7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK9_PRICE_ATTRIBUTE_ID 0x84E8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK10_PRICE_ATTRIBUTE_ID 0x84E9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK11_PRICE_ATTRIBUTE_ID 0x84EA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK12_PRICE_ATTRIBUTE_ID 0x84EB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK13_PRICE_ATTRIBUTE_ID 0x84EC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK14_PRICE_ATTRIBUTE_ID 0x84ED // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK15_PRICE_ATTRIBUTE_ID 0x84EE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER14_BLOCK16_PRICE_ATTRIBUTE_ID 0x84EF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK1_PRICE_ATTRIBUTE_ID 0x84F0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK2_PRICE_ATTRIBUTE_ID 0x84F1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK3_PRICE_ATTRIBUTE_ID 0x84F2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK4_PRICE_ATTRIBUTE_ID 0x84F3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK5_PRICE_ATTRIBUTE_ID 0x84F4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK6_PRICE_ATTRIBUTE_ID 0x84F5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK7_PRICE_ATTRIBUTE_ID 0x84F6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK8_PRICE_ATTRIBUTE_ID 0x84F7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK9_PRICE_ATTRIBUTE_ID 0x84F8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK10_PRICE_ATTRIBUTE_ID 0x84F9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK11_PRICE_ATTRIBUTE_ID 0x84FA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK12_PRICE_ATTRIBUTE_ID 0x84FB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK13_PRICE_ATTRIBUTE_ID 0x84FC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK14_PRICE_ATTRIBUTE_ID 0x84FD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK15_PRICE_ATTRIBUTE_ID 0x84FE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER15_BLOCK16_PRICE_ATTRIBUTE_ID 0x84FF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER16_ATTRIBUTE_ID 0x850F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER17_ATTRIBUTE_ID 0x8510 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER18_ATTRIBUTE_ID 0x8511 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER19_ATTRIBUTE_ID 0x8512 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER20_ATTRIBUTE_ID 0x8513 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER21_ATTRIBUTE_ID 0x8514 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER22_ATTRIBUTE_ID 0x8515 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER23_ATTRIBUTE_ID 0x8516 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER24_ATTRIBUTE_ID 0x8517 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER25_ATTRIBUTE_ID 0x8518 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER26_ATTRIBUTE_ID 0x8519 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER27_ATTRIBUTE_ID 0x851A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER28_ATTRIBUTE_ID 0x851B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER29_ATTRIBUTE_ID 0x851C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER30_ATTRIBUTE_ID 0x851D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER31_ATTRIBUTE_ID 0x851E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER32_ATTRIBUTE_ID 0x851F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER33_ATTRIBUTE_ID 0x8520 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER34_ATTRIBUTE_ID 0x8521 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER35_ATTRIBUTE_ID 0x8522 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER36_ATTRIBUTE_ID 0x8523 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER37_ATTRIBUTE_ID 0x8524 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER38_ATTRIBUTE_ID 0x8525 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER39_ATTRIBUTE_ID 0x8526 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER40_ATTRIBUTE_ID 0x8527 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER41_ATTRIBUTE_ID 0x8528 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER42_ATTRIBUTE_ID 0x8529 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER43_ATTRIBUTE_ID 0x852A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER44_ATTRIBUTE_ID 0x852B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER45_ATTRIBUTE_ID 0x852C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER46_ATTRIBUTE_ID 0x852D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER47_ATTRIBUTE_ID 0x852E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_PRICE_TIER48_ATTRIBUTE_ID 0x852F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TARIFF_LABEL_ATTRIBUTE_ID 0x8610 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NUMBER_OF_PRICE_TIERS_IN_USE_ATTRIBUTE_ID 0x8611 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_NUMBER_OF_BLOCK_THRESHOLDS_IN_USE_ATTRIBUTE_ID 0x8612 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TIER_BLOCK_MODE_ATTRIBUTE_ID 0x8613 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_TARIFF_RESOLUTION_PERIOD_ATTRIBUTE_ID 0x8615 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_CO2_ATTRIBUTE_ID 0x8625 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_CO2_UNIT_ATTRIBUTE_ID 0x8626 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_CO2_TRAILING_DIGIT_ATTRIBUTE_ID 0x8627 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_CURRENT_BILLING_PERIOD_START_ATTRIBUTE_ID 0x8700 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_CURRENT_BILLING_PERIOD_DURATION_ATTRIBUTE_ID 0x8701 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_LAST_BILLING_PERIOD_START_ATTRIBUTE_ID 0x8702 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_LAST_BILLING_PERIOD_DURATION_ATTRIBUTE_ID 0x8703 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RX_LAST_BILLING_PERIOD_CONSOLIDATED_BILL_ATTRIBUTE_ID 0x8704 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PRICE_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PRICE_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Demand Response and Load Control -// Cluster specification level: se-1.2b-15-0131-02 +#define ZCL_TIER1_PRICE_LABEL_ATTRIBUTE_ID (0x0000) +#define ZCL_TIER2_PRICE_LABEL_ATTRIBUTE_ID (0x0001) +#define ZCL_TIER3_PRICE_LABEL_ATTRIBUTE_ID (0x0002) +#define ZCL_TIER4_PRICE_LABEL_ATTRIBUTE_ID (0x0003) +#define ZCL_TIER5_PRICE_LABEL_ATTRIBUTE_ID (0x0004) +#define ZCL_TIER6_PRICE_LABEL_ATTRIBUTE_ID (0x0005) +#define ZCL_TIER7_PRICE_LABEL_ATTRIBUTE_ID (0x0006) +#define ZCL_TIER8_PRICE_LABEL_ATTRIBUTE_ID (0x0007) +#define ZCL_TIER9_PRICE_LABEL_ATTRIBUTE_ID (0x0008) +#define ZCL_TIER10_PRICE_LABEL_ATTRIBUTE_ID (0x0009) +#define ZCL_TIER11_PRICE_LABEL_ATTRIBUTE_ID (0x000A) +#define ZCL_TIER12_PRICE_LABEL_ATTRIBUTE_ID (0x000B) +#define ZCL_TIER13_PRICE_LABEL_ATTRIBUTE_ID (0x000C) +#define ZCL_TIER14_PRICE_LABEL_ATTRIBUTE_ID (0x000D) +#define ZCL_TIER15_PRICE_LABEL_ATTRIBUTE_ID (0x000E) +#define ZCL_TIER16_PRICE_LABEL_ATTRIBUTE_ID (0x000F) +#define ZCL_TIER17_PRICE_LABEL_ATTRIBUTE_ID (0x0010) +#define ZCL_TIER18_PRICE_LABEL_ATTRIBUTE_ID (0x0011) +#define ZCL_TIER19_PRICE_LABEL_ATTRIBUTE_ID (0x0012) +#define ZCL_TIER20_PRICE_LABEL_ATTRIBUTE_ID (0x0013) +#define ZCL_TIER21_PRICE_LABEL_ATTRIBUTE_ID (0x0014) +#define ZCL_TIER22_PRICE_LABEL_ATTRIBUTE_ID (0x0015) +#define ZCL_TIER23_PRICE_LABEL_ATTRIBUTE_ID (0x0016) +#define ZCL_TIER24_PRICE_LABEL_ATTRIBUTE_ID (0x0017) +#define ZCL_TIER25_PRICE_LABEL_ATTRIBUTE_ID (0x0018) +#define ZCL_TIER26_PRICE_LABEL_ATTRIBUTE_ID (0x0019) +#define ZCL_TIER27_PRICE_LABEL_ATTRIBUTE_ID (0x001A) +#define ZCL_TIER28_PRICE_LABEL_ATTRIBUTE_ID (0x001B) +#define ZCL_TIER29_PRICE_LABEL_ATTRIBUTE_ID (0x001C) +#define ZCL_TIER30_PRICE_LABEL_ATTRIBUTE_ID (0x001D) +#define ZCL_TIER31_PRICE_LABEL_ATTRIBUTE_ID (0x001E) +#define ZCL_TIER32_PRICE_LABEL_ATTRIBUTE_ID (0x001F) +#define ZCL_TIER33_PRICE_LABEL_ATTRIBUTE_ID (0x0020) +#define ZCL_TIER34_PRICE_LABEL_ATTRIBUTE_ID (0x0021) +#define ZCL_TIER35_PRICE_LABEL_ATTRIBUTE_ID (0x0022) +#define ZCL_TIER36_PRICE_LABEL_ATTRIBUTE_ID (0x0023) +#define ZCL_TIER37_PRICE_LABEL_ATTRIBUTE_ID (0x0024) +#define ZCL_TIER38_PRICE_LABEL_ATTRIBUTE_ID (0x0025) +#define ZCL_TIER39_PRICE_LABEL_ATTRIBUTE_ID (0x0026) +#define ZCL_TIER40_PRICE_LABEL_ATTRIBUTE_ID (0x0027) +#define ZCL_TIER41_PRICE_LABEL_ATTRIBUTE_ID (0x0028) +#define ZCL_TIER42_PRICE_LABEL_ATTRIBUTE_ID (0x0029) +#define ZCL_TIER43_PRICE_LABEL_ATTRIBUTE_ID (0x002A) +#define ZCL_TIER44_PRICE_LABEL_ATTRIBUTE_ID (0x002B) +#define ZCL_TIER45_PRICE_LABEL_ATTRIBUTE_ID (0x002C) +#define ZCL_TIER46_PRICE_LABEL_ATTRIBUTE_ID (0x002D) +#define ZCL_TIER47_PRICE_LABEL_ATTRIBUTE_ID (0x002E) +#define ZCL_TIER48_PRICE_LABEL_ATTRIBUTE_ID (0x002F) +#define ZCL_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0100) +#define ZCL_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0101) +#define ZCL_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0102) +#define ZCL_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0103) +#define ZCL_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0104) +#define ZCL_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0105) +#define ZCL_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0106) +#define ZCL_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0107) +#define ZCL_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0108) +#define ZCL_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0109) +#define ZCL_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x010A) +#define ZCL_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x010B) +#define ZCL_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x010C) +#define ZCL_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x010D) +#define ZCL_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x010E) +#define ZCL_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x010F) +#define ZCL_TIER1_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0110) +#define ZCL_TIER1_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0111) +#define ZCL_TIER1_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0112) +#define ZCL_TIER1_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0113) +#define ZCL_TIER1_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0114) +#define ZCL_TIER1_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0115) +#define ZCL_TIER1_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0116) +#define ZCL_TIER1_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0117) +#define ZCL_TIER1_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0118) +#define ZCL_TIER1_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0119) +#define ZCL_TIER1_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x011A) +#define ZCL_TIER1_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x011B) +#define ZCL_TIER1_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x011C) +#define ZCL_TIER1_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x011D) +#define ZCL_TIER1_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x011E) +#define ZCL_TIER1_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x011F) +#define ZCL_TIER2_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0120) +#define ZCL_TIER2_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0121) +#define ZCL_TIER2_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0122) +#define ZCL_TIER2_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0123) +#define ZCL_TIER2_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0124) +#define ZCL_TIER2_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0125) +#define ZCL_TIER2_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0126) +#define ZCL_TIER2_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0127) +#define ZCL_TIER2_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0128) +#define ZCL_TIER2_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0129) +#define ZCL_TIER2_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x012A) +#define ZCL_TIER2_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x012B) +#define ZCL_TIER2_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x012C) +#define ZCL_TIER2_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x012D) +#define ZCL_TIER2_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x012E) +#define ZCL_TIER2_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x012F) +#define ZCL_TIER3_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0130) +#define ZCL_TIER3_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0131) +#define ZCL_TIER3_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0132) +#define ZCL_TIER3_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0133) +#define ZCL_TIER3_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0134) +#define ZCL_TIER3_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0135) +#define ZCL_TIER3_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0136) +#define ZCL_TIER3_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0137) +#define ZCL_TIER3_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0138) +#define ZCL_TIER3_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0139) +#define ZCL_TIER3_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x013A) +#define ZCL_TIER3_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x013B) +#define ZCL_TIER3_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x013C) +#define ZCL_TIER3_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x013D) +#define ZCL_TIER3_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x013E) +#define ZCL_TIER3_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x013F) +#define ZCL_TIER4_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0140) +#define ZCL_TIER4_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0141) +#define ZCL_TIER4_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0142) +#define ZCL_TIER4_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0143) +#define ZCL_TIER4_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0144) +#define ZCL_TIER4_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0145) +#define ZCL_TIER4_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0146) +#define ZCL_TIER4_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0147) +#define ZCL_TIER4_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0148) +#define ZCL_TIER4_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0149) +#define ZCL_TIER4_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x014A) +#define ZCL_TIER4_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x014B) +#define ZCL_TIER4_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x014C) +#define ZCL_TIER4_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x014D) +#define ZCL_TIER4_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x014E) +#define ZCL_TIER4_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x014F) +#define ZCL_TIER5_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0150) +#define ZCL_TIER5_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0151) +#define ZCL_TIER5_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0152) +#define ZCL_TIER5_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0153) +#define ZCL_TIER5_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0154) +#define ZCL_TIER5_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0155) +#define ZCL_TIER5_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0156) +#define ZCL_TIER5_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0157) +#define ZCL_TIER5_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0158) +#define ZCL_TIER5_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0159) +#define ZCL_TIER5_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x015A) +#define ZCL_TIER5_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x015B) +#define ZCL_TIER5_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x015C) +#define ZCL_TIER5_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x015D) +#define ZCL_TIER5_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x015E) +#define ZCL_TIER5_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x015F) +#define ZCL_TIER6_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0160) +#define ZCL_TIER6_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0161) +#define ZCL_TIER6_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0162) +#define ZCL_TIER6_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0163) +#define ZCL_TIER6_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0164) +#define ZCL_TIER6_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0165) +#define ZCL_TIER6_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0166) +#define ZCL_TIER6_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0167) +#define ZCL_TIER6_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0168) +#define ZCL_TIER6_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0169) +#define ZCL_TIER6_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x016A) +#define ZCL_TIER6_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x016B) +#define ZCL_TIER6_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x016C) +#define ZCL_TIER6_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x016D) +#define ZCL_TIER6_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x016E) +#define ZCL_TIER6_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x016F) +#define ZCL_TIER7_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0170) +#define ZCL_TIER7_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0171) +#define ZCL_TIER7_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0172) +#define ZCL_TIER7_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0173) +#define ZCL_TIER7_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0174) +#define ZCL_TIER7_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0175) +#define ZCL_TIER7_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0176) +#define ZCL_TIER7_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0177) +#define ZCL_TIER7_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0178) +#define ZCL_TIER7_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0179) +#define ZCL_TIER7_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x017A) +#define ZCL_TIER7_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x017B) +#define ZCL_TIER7_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x017C) +#define ZCL_TIER7_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x017D) +#define ZCL_TIER7_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x017E) +#define ZCL_TIER7_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x017F) +#define ZCL_TIER8_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0180) +#define ZCL_TIER8_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0181) +#define ZCL_TIER8_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0182) +#define ZCL_TIER8_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0183) +#define ZCL_TIER8_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0184) +#define ZCL_TIER8_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0185) +#define ZCL_TIER8_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0186) +#define ZCL_TIER8_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0187) +#define ZCL_TIER8_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0188) +#define ZCL_TIER8_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0189) +#define ZCL_TIER8_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x018A) +#define ZCL_TIER8_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x018B) +#define ZCL_TIER8_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x018C) +#define ZCL_TIER8_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x018D) +#define ZCL_TIER8_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x018E) +#define ZCL_TIER8_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x018F) +#define ZCL_TIER9_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x0190) +#define ZCL_TIER9_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x0191) +#define ZCL_TIER9_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x0192) +#define ZCL_TIER9_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x0193) +#define ZCL_TIER9_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x0194) +#define ZCL_TIER9_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x0195) +#define ZCL_TIER9_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x0196) +#define ZCL_TIER9_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x0197) +#define ZCL_TIER9_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x0198) +#define ZCL_TIER9_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x0199) +#define ZCL_TIER9_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x019A) +#define ZCL_TIER9_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x019B) +#define ZCL_TIER9_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x019C) +#define ZCL_TIER9_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x019D) +#define ZCL_TIER9_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x019E) +#define ZCL_TIER9_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x019F) +#define ZCL_TIER10_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x01A0) +#define ZCL_TIER10_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x01A1) +#define ZCL_TIER10_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x01A2) +#define ZCL_TIER10_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x01A3) +#define ZCL_TIER10_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x01A4) +#define ZCL_TIER10_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x01A5) +#define ZCL_TIER10_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x01A6) +#define ZCL_TIER10_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x01A7) +#define ZCL_TIER10_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x01A8) +#define ZCL_TIER10_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x01A9) +#define ZCL_TIER10_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x01AA) +#define ZCL_TIER10_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x01AB) +#define ZCL_TIER10_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x01AC) +#define ZCL_TIER10_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x01AD) +#define ZCL_TIER10_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x01AE) +#define ZCL_TIER10_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x01AF) +#define ZCL_TIER11_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x01B0) +#define ZCL_TIER11_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x01B1) +#define ZCL_TIER11_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x01B2) +#define ZCL_TIER11_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x01B3) +#define ZCL_TIER11_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x01B4) +#define ZCL_TIER11_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x01B5) +#define ZCL_TIER11_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x01B6) +#define ZCL_TIER11_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x01B7) +#define ZCL_TIER11_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x01B8) +#define ZCL_TIER11_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x01B9) +#define ZCL_TIER11_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x01BA) +#define ZCL_TIER11_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x01BB) +#define ZCL_TIER11_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x01BC) +#define ZCL_TIER11_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x01BD) +#define ZCL_TIER11_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x01BE) +#define ZCL_TIER11_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x01BF) +#define ZCL_TIER12_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x01C0) +#define ZCL_TIER12_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x01C1) +#define ZCL_TIER12_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x01C2) +#define ZCL_TIER12_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x01C3) +#define ZCL_TIER12_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x01C4) +#define ZCL_TIER12_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x01C5) +#define ZCL_TIER12_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x01C6) +#define ZCL_TIER12_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x01C7) +#define ZCL_TIER12_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x01C8) +#define ZCL_TIER12_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x01C9) +#define ZCL_TIER12_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x01CA) +#define ZCL_TIER12_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x01CB) +#define ZCL_TIER12_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x01CC) +#define ZCL_TIER12_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x01CD) +#define ZCL_TIER12_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x01CE) +#define ZCL_TIER12_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x01CF) +#define ZCL_TIER13_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x01D0) +#define ZCL_TIER13_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x01D1) +#define ZCL_TIER13_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x01D2) +#define ZCL_TIER13_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x01D3) +#define ZCL_TIER13_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x01D4) +#define ZCL_TIER13_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x01D5) +#define ZCL_TIER13_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x01D6) +#define ZCL_TIER13_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x01D7) +#define ZCL_TIER13_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x01D8) +#define ZCL_TIER13_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x01D9) +#define ZCL_TIER13_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x01DA) +#define ZCL_TIER13_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x01DB) +#define ZCL_TIER13_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x01DC) +#define ZCL_TIER13_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x01DD) +#define ZCL_TIER13_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x01DE) +#define ZCL_TIER13_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x01DF) +#define ZCL_TIER14_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x01E0) +#define ZCL_TIER14_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x01E1) +#define ZCL_TIER14_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x01E2) +#define ZCL_TIER14_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x01E3) +#define ZCL_TIER14_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x01E4) +#define ZCL_TIER14_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x01E5) +#define ZCL_TIER14_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x01E6) +#define ZCL_TIER14_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x01E7) +#define ZCL_TIER14_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x01E8) +#define ZCL_TIER14_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x01E9) +#define ZCL_TIER14_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x01EA) +#define ZCL_TIER14_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x01EB) +#define ZCL_TIER14_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x01EC) +#define ZCL_TIER14_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x01ED) +#define ZCL_TIER14_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x01EE) +#define ZCL_TIER14_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x01EF) +#define ZCL_TIER15_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x01F0) +#define ZCL_TIER15_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x01F1) +#define ZCL_TIER15_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x01F2) +#define ZCL_TIER15_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x01F3) +#define ZCL_TIER15_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x01F4) +#define ZCL_TIER15_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x01F5) +#define ZCL_TIER15_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x01F6) +#define ZCL_TIER15_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x01F7) +#define ZCL_TIER15_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x01F8) +#define ZCL_TIER15_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x01F9) +#define ZCL_TIER15_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x01FA) +#define ZCL_TIER15_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x01FB) +#define ZCL_TIER15_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x01FC) +#define ZCL_TIER15_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x01FD) +#define ZCL_TIER15_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x01FE) +#define ZCL_TIER15_BLOCK_THRESHOLD_COUNT_ATTRIBUTE_ID (0x01FF) +#define ZCL_START_OF_BLOCK_PERIOD_ATTRIBUTE_ID (0x0200) +#define ZCL_BLOCK_PERIOD_DURATION_MINUTES_ATTRIBUTE_ID (0x0201) +#define ZCL_THRESHOLD_MULTIPLIER_ATTRIBUTE_ID (0x0202) +#define ZCL_THRESHOLD_DIVISOR_ATTRIBUTE_ID (0x0203) +#define ZCL_BLOCK_PERIOD_DURATION_TYPE_ATTRIBUTE_ID (0x0204) +#define ZCL_COMMODITY_TYPE_SERVER_ATTRIBUTE_ID (0x0300) +#define ZCL_STANDING_CHARGE_ATTRIBUTE_ID (0x0301) +#define ZCL_CONVERSION_FACTOR_ATTRIBUTE_ID (0x0302) +#define ZCL_CONVERSION_FACTOR_TRAILING_DIGIT_ATTRIBUTE_ID (0x0303) +#define ZCL_CALORIFIC_VALUE_ATTRIBUTE_ID (0x0304) +#define ZCL_CALORIFIC_VALUE_UNIT_ATTRIBUTE_ID (0x0305) +#define ZCL_CALORIFIC_VALUE_TRAILING_DIGIT_ATTRIBUTE_ID (0x0306) +#define ZCL_NO_TIER_BLOCK1_PRICE_ATTRIBUTE_ID (0x0400) +#define ZCL_NO_TIER_BLOCK2_PRICE_ATTRIBUTE_ID (0x0401) +#define ZCL_NO_TIER_BLOCK3_PRICE_ATTRIBUTE_ID (0x0402) +#define ZCL_NO_TIER_BLOCK4_PRICE_ATTRIBUTE_ID (0x0403) +#define ZCL_NO_TIER_BLOCK5_PRICE_ATTRIBUTE_ID (0x0404) +#define ZCL_NO_TIER_BLOCK6_PRICE_ATTRIBUTE_ID (0x0405) +#define ZCL_NO_TIER_BLOCK7_PRICE_ATTRIBUTE_ID (0x0406) +#define ZCL_NO_TIER_BLOCK8_PRICE_ATTRIBUTE_ID (0x0407) +#define ZCL_NO_TIER_BLOCK9_PRICE_ATTRIBUTE_ID (0x0408) +#define ZCL_NO_TIER_BLOCK10_PRICE_ATTRIBUTE_ID (0x0409) +#define ZCL_NO_TIER_BLOCK11_PRICE_ATTRIBUTE_ID (0x040A) +#define ZCL_NO_TIER_BLOCK12_PRICE_ATTRIBUTE_ID (0x040B) +#define ZCL_NO_TIER_BLOCK13_PRICE_ATTRIBUTE_ID (0x040C) +#define ZCL_NO_TIER_BLOCK14_PRICE_ATTRIBUTE_ID (0x040D) +#define ZCL_NO_TIER_BLOCK15_PRICE_ATTRIBUTE_ID (0x040E) +#define ZCL_NO_TIER_BLOCK16_PRICE_ATTRIBUTE_ID (0x040F) +#define ZCL_TIER1_BLOCK1_PRICE_ATTRIBUTE_ID (0x0410) +#define ZCL_TIER1_BLOCK2_PRICE_ATTRIBUTE_ID (0x0411) +#define ZCL_TIER1_BLOCK3_PRICE_ATTRIBUTE_ID (0x0412) +#define ZCL_TIER1_BLOCK4_PRICE_ATTRIBUTE_ID (0x0413) +#define ZCL_TIER1_BLOCK5_PRICE_ATTRIBUTE_ID (0x0414) +#define ZCL_TIER1_BLOCK6_PRICE_ATTRIBUTE_ID (0x0415) +#define ZCL_TIER1_BLOCK7_PRICE_ATTRIBUTE_ID (0x0416) +#define ZCL_TIER1_BLOCK8_PRICE_ATTRIBUTE_ID (0x0417) +#define ZCL_TIER1_BLOCK9_PRICE_ATTRIBUTE_ID (0x0418) +#define ZCL_TIER1_BLOCK10_PRICE_ATTRIBUTE_ID (0x0419) +#define ZCL_TIER1_BLOCK11_PRICE_ATTRIBUTE_ID (0x041A) +#define ZCL_TIER1_BLOCK12_PRICE_ATTRIBUTE_ID (0x041B) +#define ZCL_TIER1_BLOCK13_PRICE_ATTRIBUTE_ID (0x041C) +#define ZCL_TIER1_BLOCK14_PRICE_ATTRIBUTE_ID (0x041D) +#define ZCL_TIER1_BLOCK15_PRICE_ATTRIBUTE_ID (0x041E) +#define ZCL_TIER1_BLOCK16_PRICE_ATTRIBUTE_ID (0x041F) +#define ZCL_TIER2_BLOCK1_PRICE_ATTRIBUTE_ID (0x0420) +#define ZCL_TIER2_BLOCK2_PRICE_ATTRIBUTE_ID (0x0421) +#define ZCL_TIER2_BLOCK3_PRICE_ATTRIBUTE_ID (0x0422) +#define ZCL_TIER2_BLOCK4_PRICE_ATTRIBUTE_ID (0x0423) +#define ZCL_TIER2_BLOCK5_PRICE_ATTRIBUTE_ID (0x0424) +#define ZCL_TIER2_BLOCK6_PRICE_ATTRIBUTE_ID (0x0425) +#define ZCL_TIER2_BLOCK7_PRICE_ATTRIBUTE_ID (0x0426) +#define ZCL_TIER2_BLOCK8_PRICE_ATTRIBUTE_ID (0x0427) +#define ZCL_TIER2_BLOCK9_PRICE_ATTRIBUTE_ID (0x0428) +#define ZCL_TIER2_BLOCK10_PRICE_ATTRIBUTE_ID (0x0429) +#define ZCL_TIER2_BLOCK11_PRICE_ATTRIBUTE_ID (0x042A) +#define ZCL_TIER2_BLOCK12_PRICE_ATTRIBUTE_ID (0x042B) +#define ZCL_TIER2_BLOCK13_PRICE_ATTRIBUTE_ID (0x042C) +#define ZCL_TIER2_BLOCK14_PRICE_ATTRIBUTE_ID (0x042D) +#define ZCL_TIER2_BLOCK15_PRICE_ATTRIBUTE_ID (0x042E) +#define ZCL_TIER2_BLOCK16_PRICE_ATTRIBUTE_ID (0x042F) +#define ZCL_TIER3_BLOCK1_PRICE_ATTRIBUTE_ID (0x0430) +#define ZCL_TIER3_BLOCK2_PRICE_ATTRIBUTE_ID (0x0431) +#define ZCL_TIER3_BLOCK3_PRICE_ATTRIBUTE_ID (0x0432) +#define ZCL_TIER3_BLOCK4_PRICE_ATTRIBUTE_ID (0x0433) +#define ZCL_TIER3_BLOCK5_PRICE_ATTRIBUTE_ID (0x0434) +#define ZCL_TIER3_BLOCK6_PRICE_ATTRIBUTE_ID (0x0435) +#define ZCL_TIER3_BLOCK7_PRICE_ATTRIBUTE_ID (0x0436) +#define ZCL_TIER3_BLOCK8_PRICE_ATTRIBUTE_ID (0x0437) +#define ZCL_TIER3_BLOCK9_PRICE_ATTRIBUTE_ID (0x0438) +#define ZCL_TIER3_BLOCK10_PRICE_ATTRIBUTE_ID (0x0439) +#define ZCL_TIER3_BLOCK11_PRICE_ATTRIBUTE_ID (0x043A) +#define ZCL_TIER3_BLOCK12_PRICE_ATTRIBUTE_ID (0x043B) +#define ZCL_TIER3_BLOCK13_PRICE_ATTRIBUTE_ID (0x043C) +#define ZCL_TIER3_BLOCK14_PRICE_ATTRIBUTE_ID (0x043D) +#define ZCL_TIER3_BLOCK15_PRICE_ATTRIBUTE_ID (0x043E) +#define ZCL_TIER3_BLOCK16_PRICE_ATTRIBUTE_ID (0x043F) +#define ZCL_TIER4_BLOCK1_PRICE_ATTRIBUTE_ID (0x0440) +#define ZCL_TIER4_BLOCK2_PRICE_ATTRIBUTE_ID (0x0441) +#define ZCL_TIER4_BLOCK3_PRICE_ATTRIBUTE_ID (0x0442) +#define ZCL_TIER4_BLOCK4_PRICE_ATTRIBUTE_ID (0x0443) +#define ZCL_TIER4_BLOCK5_PRICE_ATTRIBUTE_ID (0x0444) +#define ZCL_TIER4_BLOCK6_PRICE_ATTRIBUTE_ID (0x0445) +#define ZCL_TIER4_BLOCK7_PRICE_ATTRIBUTE_ID (0x0446) +#define ZCL_TIER4_BLOCK8_PRICE_ATTRIBUTE_ID (0x0447) +#define ZCL_TIER4_BLOCK9_PRICE_ATTRIBUTE_ID (0x0448) +#define ZCL_TIER4_BLOCK10_PRICE_ATTRIBUTE_ID (0x0449) +#define ZCL_TIER4_BLOCK11_PRICE_ATTRIBUTE_ID (0x044A) +#define ZCL_TIER4_BLOCK12_PRICE_ATTRIBUTE_ID (0x044B) +#define ZCL_TIER4_BLOCK13_PRICE_ATTRIBUTE_ID (0x044C) +#define ZCL_TIER4_BLOCK14_PRICE_ATTRIBUTE_ID (0x044D) +#define ZCL_TIER4_BLOCK15_PRICE_ATTRIBUTE_ID (0x044E) +#define ZCL_TIER4_BLOCK16_PRICE_ATTRIBUTE_ID (0x044F) +#define ZCL_TIER5_BLOCK1_PRICE_ATTRIBUTE_ID (0x0450) +#define ZCL_TIER5_BLOCK2_PRICE_ATTRIBUTE_ID (0x0451) +#define ZCL_TIER5_BLOCK3_PRICE_ATTRIBUTE_ID (0x0452) +#define ZCL_TIER5_BLOCK4_PRICE_ATTRIBUTE_ID (0x0453) +#define ZCL_TIER5_BLOCK5_PRICE_ATTRIBUTE_ID (0x0454) +#define ZCL_TIER5_BLOCK6_PRICE_ATTRIBUTE_ID (0x0455) +#define ZCL_TIER5_BLOCK7_PRICE_ATTRIBUTE_ID (0x0456) +#define ZCL_TIER5_BLOCK8_PRICE_ATTRIBUTE_ID (0x0457) +#define ZCL_TIER5_BLOCK9_PRICE_ATTRIBUTE_ID (0x0458) +#define ZCL_TIER5_BLOCK10_PRICE_ATTRIBUTE_ID (0x0459) +#define ZCL_TIER5_BLOCK11_PRICE_ATTRIBUTE_ID (0x045A) +#define ZCL_TIER5_BLOCK12_PRICE_ATTRIBUTE_ID (0x045B) +#define ZCL_TIER5_BLOCK13_PRICE_ATTRIBUTE_ID (0x045C) +#define ZCL_TIER5_BLOCK14_PRICE_ATTRIBUTE_ID (0x045D) +#define ZCL_TIER5_BLOCK15_PRICE_ATTRIBUTE_ID (0x045E) +#define ZCL_TIER5_BLOCK16_PRICE_ATTRIBUTE_ID (0x045F) +#define ZCL_TIER6_BLOCK1_PRICE_ATTRIBUTE_ID (0x0460) +#define ZCL_TIER6_BLOCK2_PRICE_ATTRIBUTE_ID (0x0461) +#define ZCL_TIER6_BLOCK3_PRICE_ATTRIBUTE_ID (0x0462) +#define ZCL_TIER6_BLOCK4_PRICE_ATTRIBUTE_ID (0x0463) +#define ZCL_TIER6_BLOCK5_PRICE_ATTRIBUTE_ID (0x0464) +#define ZCL_TIER6_BLOCK6_PRICE_ATTRIBUTE_ID (0x0465) +#define ZCL_TIER6_BLOCK7_PRICE_ATTRIBUTE_ID (0x0466) +#define ZCL_TIER6_BLOCK8_PRICE_ATTRIBUTE_ID (0x0467) +#define ZCL_TIER6_BLOCK9_PRICE_ATTRIBUTE_ID (0x0468) +#define ZCL_TIER6_BLOCK10_PRICE_ATTRIBUTE_ID (0x0469) +#define ZCL_TIER6_BLOCK11_PRICE_ATTRIBUTE_ID (0x046A) +#define ZCL_TIER6_BLOCK12_PRICE_ATTRIBUTE_ID (0x046B) +#define ZCL_TIER6_BLOCK13_PRICE_ATTRIBUTE_ID (0x046C) +#define ZCL_TIER6_BLOCK14_PRICE_ATTRIBUTE_ID (0x046D) +#define ZCL_TIER6_BLOCK15_PRICE_ATTRIBUTE_ID (0x046E) +#define ZCL_TIER6_BLOCK16_PRICE_ATTRIBUTE_ID (0x046F) +#define ZCL_TIER7_BLOCK1_PRICE_ATTRIBUTE_ID (0x0470) +#define ZCL_TIER7_BLOCK2_PRICE_ATTRIBUTE_ID (0x0471) +#define ZCL_TIER7_BLOCK3_PRICE_ATTRIBUTE_ID (0x0472) +#define ZCL_TIER7_BLOCK4_PRICE_ATTRIBUTE_ID (0x0473) +#define ZCL_TIER7_BLOCK5_PRICE_ATTRIBUTE_ID (0x0474) +#define ZCL_TIER7_BLOCK6_PRICE_ATTRIBUTE_ID (0x0475) +#define ZCL_TIER7_BLOCK7_PRICE_ATTRIBUTE_ID (0x0476) +#define ZCL_TIER7_BLOCK8_PRICE_ATTRIBUTE_ID (0x0477) +#define ZCL_TIER7_BLOCK9_PRICE_ATTRIBUTE_ID (0x0478) +#define ZCL_TIER7_BLOCK10_PRICE_ATTRIBUTE_ID (0x0479) +#define ZCL_TIER7_BLOCK11_PRICE_ATTRIBUTE_ID (0x047A) +#define ZCL_TIER7_BLOCK12_PRICE_ATTRIBUTE_ID (0x047B) +#define ZCL_TIER7_BLOCK13_PRICE_ATTRIBUTE_ID (0x047C) +#define ZCL_TIER7_BLOCK14_PRICE_ATTRIBUTE_ID (0x047D) +#define ZCL_TIER7_BLOCK15_PRICE_ATTRIBUTE_ID (0x047E) +#define ZCL_TIER7_BLOCK16_PRICE_ATTRIBUTE_ID (0x047F) +#define ZCL_TIER8_BLOCK1_PRICE_ATTRIBUTE_ID (0x0480) +#define ZCL_TIER8_BLOCK2_PRICE_ATTRIBUTE_ID (0x0481) +#define ZCL_TIER8_BLOCK3_PRICE_ATTRIBUTE_ID (0x0482) +#define ZCL_TIER8_BLOCK4_PRICE_ATTRIBUTE_ID (0x0483) +#define ZCL_TIER8_BLOCK5_PRICE_ATTRIBUTE_ID (0x0484) +#define ZCL_TIER8_BLOCK6_PRICE_ATTRIBUTE_ID (0x0485) +#define ZCL_TIER8_BLOCK7_PRICE_ATTRIBUTE_ID (0x0486) +#define ZCL_TIER8_BLOCK8_PRICE_ATTRIBUTE_ID (0x0487) +#define ZCL_TIER8_BLOCK9_PRICE_ATTRIBUTE_ID (0x0488) +#define ZCL_TIER8_BLOCK10_PRICE_ATTRIBUTE_ID (0x0489) +#define ZCL_TIER8_BLOCK11_PRICE_ATTRIBUTE_ID (0x048A) +#define ZCL_TIER8_BLOCK12_PRICE_ATTRIBUTE_ID (0x048B) +#define ZCL_TIER8_BLOCK13_PRICE_ATTRIBUTE_ID (0x048C) +#define ZCL_TIER8_BLOCK14_PRICE_ATTRIBUTE_ID (0x048D) +#define ZCL_TIER8_BLOCK15_PRICE_ATTRIBUTE_ID (0x048E) +#define ZCL_TIER8_BLOCK16_PRICE_ATTRIBUTE_ID (0x048F) +#define ZCL_TIER9_BLOCK1_PRICE_ATTRIBUTE_ID (0x0490) +#define ZCL_TIER9_BLOCK2_PRICE_ATTRIBUTE_ID (0x0491) +#define ZCL_TIER9_BLOCK3_PRICE_ATTRIBUTE_ID (0x0492) +#define ZCL_TIER9_BLOCK4_PRICE_ATTRIBUTE_ID (0x0493) +#define ZCL_TIER9_BLOCK5_PRICE_ATTRIBUTE_ID (0x0494) +#define ZCL_TIER9_BLOCK6_PRICE_ATTRIBUTE_ID (0x0495) +#define ZCL_TIER9_BLOCK7_PRICE_ATTRIBUTE_ID (0x0496) +#define ZCL_TIER9_BLOCK8_PRICE_ATTRIBUTE_ID (0x0497) +#define ZCL_TIER9_BLOCK9_PRICE_ATTRIBUTE_ID (0x0498) +#define ZCL_TIER9_BLOCK10_PRICE_ATTRIBUTE_ID (0x0499) +#define ZCL_TIER9_BLOCK11_PRICE_ATTRIBUTE_ID (0x049A) +#define ZCL_TIER9_BLOCK12_PRICE_ATTRIBUTE_ID (0x049B) +#define ZCL_TIER9_BLOCK13_PRICE_ATTRIBUTE_ID (0x049C) +#define ZCL_TIER9_BLOCK14_PRICE_ATTRIBUTE_ID (0x049D) +#define ZCL_TIER9_BLOCK15_PRICE_ATTRIBUTE_ID (0x049E) +#define ZCL_TIER9_BLOCK16_PRICE_ATTRIBUTE_ID (0x049F) +#define ZCL_TIER10_BLOCK1_PRICE_ATTRIBUTE_ID (0x04A0) +#define ZCL_TIER10_BLOCK2_PRICE_ATTRIBUTE_ID (0x04A1) +#define ZCL_TIER10_BLOCK3_PRICE_ATTRIBUTE_ID (0x04A2) +#define ZCL_TIER10_BLOCK4_PRICE_ATTRIBUTE_ID (0x04A3) +#define ZCL_TIER10_BLOCK5_PRICE_ATTRIBUTE_ID (0x04A4) +#define ZCL_TIER10_BLOCK6_PRICE_ATTRIBUTE_ID (0x04A5) +#define ZCL_TIER10_BLOCK7_PRICE_ATTRIBUTE_ID (0x04A6) +#define ZCL_TIER10_BLOCK8_PRICE_ATTRIBUTE_ID (0x04A7) +#define ZCL_TIER10_BLOCK9_PRICE_ATTRIBUTE_ID (0x04A8) +#define ZCL_TIER10_BLOCK10_PRICE_ATTRIBUTE_ID (0x04A9) +#define ZCL_TIER10_BLOCK11_PRICE_ATTRIBUTE_ID (0x04AA) +#define ZCL_TIER10_BLOCK12_PRICE_ATTRIBUTE_ID (0x04AB) +#define ZCL_TIER10_BLOCK13_PRICE_ATTRIBUTE_ID (0x04AC) +#define ZCL_TIER10_BLOCK14_PRICE_ATTRIBUTE_ID (0x04AD) +#define ZCL_TIER10_BLOCK15_PRICE_ATTRIBUTE_ID (0x04AE) +#define ZCL_TIER10_BLOCK16_PRICE_ATTRIBUTE_ID (0x04AF) +#define ZCL_TIER11_BLOCK1_PRICE_ATTRIBUTE_ID (0x04B0) +#define ZCL_TIER11_BLOCK2_PRICE_ATTRIBUTE_ID (0x04B1) +#define ZCL_TIER11_BLOCK3_PRICE_ATTRIBUTE_ID (0x04B2) +#define ZCL_TIER11_BLOCK4_PRICE_ATTRIBUTE_ID (0x04B3) +#define ZCL_TIER11_BLOCK5_PRICE_ATTRIBUTE_ID (0x04B4) +#define ZCL_TIER11_BLOCK6_PRICE_ATTRIBUTE_ID (0x04B5) +#define ZCL_TIER11_BLOCK7_PRICE_ATTRIBUTE_ID (0x04B6) +#define ZCL_TIER11_BLOCK8_PRICE_ATTRIBUTE_ID (0x04B7) +#define ZCL_TIER11_BLOCK9_PRICE_ATTRIBUTE_ID (0x04B8) +#define ZCL_TIER11_BLOCK10_PRICE_ATTRIBUTE_ID (0x04B9) +#define ZCL_TIER11_BLOCK11_PRICE_ATTRIBUTE_ID (0x04BA) +#define ZCL_TIER11_BLOCK12_PRICE_ATTRIBUTE_ID (0x04BB) +#define ZCL_TIER11_BLOCK13_PRICE_ATTRIBUTE_ID (0x04BC) +#define ZCL_TIER11_BLOCK14_PRICE_ATTRIBUTE_ID (0x04BD) +#define ZCL_TIER11_BLOCK15_PRICE_ATTRIBUTE_ID (0x04BE) +#define ZCL_TIER11_BLOCK16_PRICE_ATTRIBUTE_ID (0x04BF) +#define ZCL_TIER12_BLOCK1_PRICE_ATTRIBUTE_ID (0x04C0) +#define ZCL_TIER12_BLOCK2_PRICE_ATTRIBUTE_ID (0x04C1) +#define ZCL_TIER12_BLOCK3_PRICE_ATTRIBUTE_ID (0x04C2) +#define ZCL_TIER12_BLOCK4_PRICE_ATTRIBUTE_ID (0x04C3) +#define ZCL_TIER12_BLOCK5_PRICE_ATTRIBUTE_ID (0x04C4) +#define ZCL_TIER12_BLOCK6_PRICE_ATTRIBUTE_ID (0x04C5) +#define ZCL_TIER12_BLOCK7_PRICE_ATTRIBUTE_ID (0x04C6) +#define ZCL_TIER12_BLOCK8_PRICE_ATTRIBUTE_ID (0x04C7) +#define ZCL_TIER12_BLOCK9_PRICE_ATTRIBUTE_ID (0x04C8) +#define ZCL_TIER12_BLOCK10_PRICE_ATTRIBUTE_ID (0x04C9) +#define ZCL_TIER12_BLOCK11_PRICE_ATTRIBUTE_ID (0x04CA) +#define ZCL_TIER12_BLOCK12_PRICE_ATTRIBUTE_ID (0x04CB) +#define ZCL_TIER12_BLOCK13_PRICE_ATTRIBUTE_ID (0x04CC) +#define ZCL_TIER12_BLOCK14_PRICE_ATTRIBUTE_ID (0x04CD) +#define ZCL_TIER12_BLOCK15_PRICE_ATTRIBUTE_ID (0x04CE) +#define ZCL_TIER12_BLOCK16_PRICE_ATTRIBUTE_ID (0x04CF) +#define ZCL_TIER13_BLOCK1_PRICE_ATTRIBUTE_ID (0x04D0) +#define ZCL_TIER13_BLOCK2_PRICE_ATTRIBUTE_ID (0x04D1) +#define ZCL_TIER13_BLOCK3_PRICE_ATTRIBUTE_ID (0x04D2) +#define ZCL_TIER13_BLOCK4_PRICE_ATTRIBUTE_ID (0x04D3) +#define ZCL_TIER13_BLOCK5_PRICE_ATTRIBUTE_ID (0x04D4) +#define ZCL_TIER13_BLOCK6_PRICE_ATTRIBUTE_ID (0x04D5) +#define ZCL_TIER13_BLOCK7_PRICE_ATTRIBUTE_ID (0x04D6) +#define ZCL_TIER13_BLOCK8_PRICE_ATTRIBUTE_ID (0x04D7) +#define ZCL_TIER13_BLOCK9_PRICE_ATTRIBUTE_ID (0x04D8) +#define ZCL_TIER13_BLOCK10_PRICE_ATTRIBUTE_ID (0x04D9) +#define ZCL_TIER13_BLOCK11_PRICE_ATTRIBUTE_ID (0x04DA) +#define ZCL_TIER13_BLOCK12_PRICE_ATTRIBUTE_ID (0x04DB) +#define ZCL_TIER13_BLOCK13_PRICE_ATTRIBUTE_ID (0x04DC) +#define ZCL_TIER13_BLOCK14_PRICE_ATTRIBUTE_ID (0x04DD) +#define ZCL_TIER13_BLOCK15_PRICE_ATTRIBUTE_ID (0x04DE) +#define ZCL_TIER13_BLOCK16_PRICE_ATTRIBUTE_ID (0x04DF) +#define ZCL_TIER14_BLOCK1_PRICE_ATTRIBUTE_ID (0x04E0) +#define ZCL_TIER14_BLOCK2_PRICE_ATTRIBUTE_ID (0x04E1) +#define ZCL_TIER14_BLOCK3_PRICE_ATTRIBUTE_ID (0x04E2) +#define ZCL_TIER14_BLOCK4_PRICE_ATTRIBUTE_ID (0x04E3) +#define ZCL_TIER14_BLOCK5_PRICE_ATTRIBUTE_ID (0x04E4) +#define ZCL_TIER14_BLOCK6_PRICE_ATTRIBUTE_ID (0x04E5) +#define ZCL_TIER14_BLOCK7_PRICE_ATTRIBUTE_ID (0x04E6) +#define ZCL_TIER14_BLOCK8_PRICE_ATTRIBUTE_ID (0x04E7) +#define ZCL_TIER14_BLOCK9_PRICE_ATTRIBUTE_ID (0x04E8) +#define ZCL_TIER14_BLOCK10_PRICE_ATTRIBUTE_ID (0x04E9) +#define ZCL_TIER14_BLOCK11_PRICE_ATTRIBUTE_ID (0x04EA) +#define ZCL_TIER14_BLOCK12_PRICE_ATTRIBUTE_ID (0x04EB) +#define ZCL_TIER14_BLOCK13_PRICE_ATTRIBUTE_ID (0x04EC) +#define ZCL_TIER14_BLOCK14_PRICE_ATTRIBUTE_ID (0x04ED) +#define ZCL_TIER14_BLOCK15_PRICE_ATTRIBUTE_ID (0x04EE) +#define ZCL_TIER14_BLOCK16_PRICE_ATTRIBUTE_ID (0x04EF) +#define ZCL_TIER15_BLOCK1_PRICE_ATTRIBUTE_ID (0x04F0) +#define ZCL_TIER15_BLOCK2_PRICE_ATTRIBUTE_ID (0x04F1) +#define ZCL_TIER15_BLOCK3_PRICE_ATTRIBUTE_ID (0x04F2) +#define ZCL_TIER15_BLOCK4_PRICE_ATTRIBUTE_ID (0x04F3) +#define ZCL_TIER15_BLOCK5_PRICE_ATTRIBUTE_ID (0x04F4) +#define ZCL_TIER15_BLOCK6_PRICE_ATTRIBUTE_ID (0x04F5) +#define ZCL_TIER15_BLOCK7_PRICE_ATTRIBUTE_ID (0x04F6) +#define ZCL_TIER15_BLOCK8_PRICE_ATTRIBUTE_ID (0x04F7) +#define ZCL_TIER15_BLOCK9_PRICE_ATTRIBUTE_ID (0x04F8) +#define ZCL_TIER15_BLOCK10_PRICE_ATTRIBUTE_ID (0x04F9) +#define ZCL_TIER15_BLOCK11_PRICE_ATTRIBUTE_ID (0x04FA) +#define ZCL_TIER15_BLOCK12_PRICE_ATTRIBUTE_ID (0x04FB) +#define ZCL_TIER15_BLOCK13_PRICE_ATTRIBUTE_ID (0x04FC) +#define ZCL_TIER15_BLOCK14_PRICE_ATTRIBUTE_ID (0x04FD) +#define ZCL_TIER15_BLOCK15_PRICE_ATTRIBUTE_ID (0x04FE) +#define ZCL_TIER15_BLOCK16_PRICE_ATTRIBUTE_ID (0x04FF) +#define ZCL_PRICE_TIER16_ATTRIBUTE_ID (0x050F) +#define ZCL_PRICE_TIER17_ATTRIBUTE_ID (0x0510) +#define ZCL_PRICE_TIER18_ATTRIBUTE_ID (0x0511) +#define ZCL_PRICE_TIER19_ATTRIBUTE_ID (0x0512) +#define ZCL_PRICE_TIER20_ATTRIBUTE_ID (0x0513) +#define ZCL_PRICE_TIER21_ATTRIBUTE_ID (0x0514) +#define ZCL_PRICE_TIER22_ATTRIBUTE_ID (0x0515) +#define ZCL_PRICE_TIER23_ATTRIBUTE_ID (0x0516) +#define ZCL_PRICE_TIER24_ATTRIBUTE_ID (0x0517) +#define ZCL_PRICE_TIER25_ATTRIBUTE_ID (0x0518) +#define ZCL_PRICE_TIER26_ATTRIBUTE_ID (0x0519) +#define ZCL_PRICE_TIER27_ATTRIBUTE_ID (0x051A) +#define ZCL_PRICE_TIER28_ATTRIBUTE_ID (0x051B) +#define ZCL_PRICE_TIER29_ATTRIBUTE_ID (0x051C) +#define ZCL_PRICE_TIER30_ATTRIBUTE_ID (0x051D) +#define ZCL_PRICE_TIER31_ATTRIBUTE_ID (0x051E) +#define ZCL_PRICE_TIER32_ATTRIBUTE_ID (0x051F) +#define ZCL_PRICE_TIER33_ATTRIBUTE_ID (0x0520) +#define ZCL_PRICE_TIER34_ATTRIBUTE_ID (0x0521) +#define ZCL_PRICE_TIER35_ATTRIBUTE_ID (0x0522) +#define ZCL_PRICE_TIER36_ATTRIBUTE_ID (0x0523) +#define ZCL_PRICE_TIER37_ATTRIBUTE_ID (0x0524) +#define ZCL_PRICE_TIER38_ATTRIBUTE_ID (0x0525) +#define ZCL_PRICE_TIER39_ATTRIBUTE_ID (0x0526) +#define ZCL_PRICE_TIER40_ATTRIBUTE_ID (0x0527) +#define ZCL_PRICE_TIER41_ATTRIBUTE_ID (0x0528) +#define ZCL_PRICE_TIER42_ATTRIBUTE_ID (0x0529) +#define ZCL_PRICE_TIER43_ATTRIBUTE_ID (0x052A) +#define ZCL_PRICE_TIER44_ATTRIBUTE_ID (0x052B) +#define ZCL_PRICE_TIER45_ATTRIBUTE_ID (0x052C) +#define ZCL_PRICE_TIER46_ATTRIBUTE_ID (0x052D) +#define ZCL_PRICE_TIER47_ATTRIBUTE_ID (0x052E) +#define ZCL_PRICE_TIER48_ATTRIBUTE_ID (0x052F) +#define ZCL_CPP1_PRICE_ATTRIBUTE_ID (0x05FE) +#define ZCL_CPP2_PRICE_ATTRIBUTE_ID (0x05FF) +#define ZCL_TARIFF_LABEL_ATTRIBUTE_ID (0x0610) +#define ZCL_NUMBER_OF_PRICE_TIERS_IN_USE_ATTRIBUTE_ID (0x0611) +#define ZCL_NUMBER_OF_BLOCK_THRESHOLDS_IN_USE_ATTRIBUTE_ID (0x0612) +#define ZCL_TIER_BLOCK_MODE_ATTRIBUTE_ID (0x0613) +#define ZCL_TARIFF_UNIT_OF_MEASURE_ATTRIBUTE_ID (0x0615) +#define ZCL_TARIFF_CURRENCY_ATTRIBUTE_ID (0x0616) +#define ZCL_TARIFF_PRICE_TRAILING_DIGIT_ATTRIBUTE_ID (0x0617) +#define ZCL_TARIFF_RESOLUTION_PERIOD_ATTRIBUTE_ID (0x0619) +#define ZCL_TARIFF_CO2_ATTRIBUTE_ID (0x0620) +#define ZCL_TARIFF_CO2_UNIT_ATTRIBUTE_ID (0x0621) +#define ZCL_TARIFF_CO2_TRAILING_DIGIT_ATTRIBUTE_ID (0x0622) +#define ZCL_CURRENT_BILLING_PERIOD_START_ATTRIBUTE_ID (0x0700) +#define ZCL_CURRENT_BILLING_PERIOD_DURATION_ATTRIBUTE_ID (0x0701) +#define ZCL_LAST_BILLING_PERIOD_START_ATTRIBUTE_ID (0x0702) +#define ZCL_LAST_BILLING_PERIOD_DURATION_ATTRIBUTE_ID (0x0703) +#define ZCL_LAST_BILLING_PERIOD_CONSOLIDATED_BILL_ATTRIBUTE_ID (0x0704) +#define ZCL_CREDIT_PAYMENT_DUE_DATE_ATTRIBUTE_ID (0x0800) +#define ZCL_CREDIT_PAYMENT_STATUS_ATTRIBUTE_ID (0x0801) +#define ZCL_CREDIT_PAYMENT_OVER_DUE_AMOUNT_ATTRIBUTE_ID (0x0802) +#define ZCL_PAYMENT_DISCOUNT_ATTRIBUTE_ID (0x080A) +#define ZCL_PAYMENT_DISCOUNT_PERIOD_ATTRIBUTE_ID (0x080B) +#define ZCL_CREDIT_PAYMENT_1_ATTRIBUTE_ID (0x0810) +#define ZCL_CREDIT_PAYMENT_DATE_1_ATTRIBUTE_ID (0x0811) +#define ZCL_CREDIT_PAYMENT_REF_1_ATTRIBUTE_ID (0x0812) +#define ZCL_CREDIT_PAYMENT_2_ATTRIBUTE_ID (0x0820) +#define ZCL_CREDIT_PAYMENT_DATE_2_ATTRIBUTE_ID (0x0821) +#define ZCL_CREDIT_PAYMENT_REF_2_ATTRIBUTE_ID (0x0822) +#define ZCL_CREDIT_PAYMENT_3_ATTRIBUTE_ID (0x0830) +#define ZCL_CREDIT_PAYMENT_DATE_3_ATTRIBUTE_ID (0x0831) +#define ZCL_CREDIT_PAYMENT_REF_3_ATTRIBUTE_ID (0x0832) +#define ZCL_CREDIT_PAYMENT_4_ATTRIBUTE_ID (0x0840) +#define ZCL_CREDIT_PAYMENT_DATE_4_ATTRIBUTE_ID (0x0841) +#define ZCL_CREDIT_PAYMENT_REF_4_ATTRIBUTE_ID (0x0842) +#define ZCL_CREDIT_PAYMENT_5_ATTRIBUTE_ID (0x0850) +#define ZCL_CREDIT_PAYMENT_DATE_5_ATTRIBUTE_ID (0x0851) +#define ZCL_CREDIT_PAYMENT_REF_5_ATTRIBUTE_ID (0x0852) +#define ZCL_RX_TIER1_PRICE_LABEL_ATTRIBUTE_ID (0x8000) +#define ZCL_RX_TIER2_PRICE_LABEL_ATTRIBUTE_ID (0x8001) +#define ZCL_RX_TIER3_PRICE_LABEL_ATTRIBUTE_ID (0x8002) +#define ZCL_RX_TIER4_PRICE_LABEL_ATTRIBUTE_ID (0x8003) +#define ZCL_RX_TIER5_PRICE_LABEL_ATTRIBUTE_ID (0x8004) +#define ZCL_RX_TIER6_PRICE_LABEL_ATTRIBUTE_ID (0x8005) +#define ZCL_RX_TIER7_PRICE_LABEL_ATTRIBUTE_ID (0x8006) +#define ZCL_RX_TIER8_PRICE_LABEL_ATTRIBUTE_ID (0x8007) +#define ZCL_RX_TIER9_PRICE_LABEL_ATTRIBUTE_ID (0x8008) +#define ZCL_RX_TIER10_PRICE_LABEL_ATTRIBUTE_ID (0x8009) +#define ZCL_RX_TIER11_PRICE_LABEL_ATTRIBUTE_ID (0x800A) +#define ZCL_RX_TIER12_PRICE_LABEL_ATTRIBUTE_ID (0x800B) +#define ZCL_RX_TIER13_PRICE_LABEL_ATTRIBUTE_ID (0x800C) +#define ZCL_RX_TIER14_PRICE_LABEL_ATTRIBUTE_ID (0x800D) +#define ZCL_RX_TIER15_PRICE_LABEL_ATTRIBUTE_ID (0x800E) +#define ZCL_RX_TIER16_PRICE_LABEL_ATTRIBUTE_ID (0x800F) +#define ZCL_RX_TIER17_PRICE_LABEL_ATTRIBUTE_ID (0x8010) +#define ZCL_RX_TIER18_PRICE_LABEL_ATTRIBUTE_ID (0x8011) +#define ZCL_RX_TIER19_PRICE_LABEL_ATTRIBUTE_ID (0x8012) +#define ZCL_RX_TIER20_PRICE_LABEL_ATTRIBUTE_ID (0x8013) +#define ZCL_RX_TIER21_PRICE_LABEL_ATTRIBUTE_ID (0x8014) +#define ZCL_RX_TIER22_PRICE_LABEL_ATTRIBUTE_ID (0x8015) +#define ZCL_RX_TIER23_PRICE_LABEL_ATTRIBUTE_ID (0x8016) +#define ZCL_RX_TIER24_PRICE_LABEL_ATTRIBUTE_ID (0x8017) +#define ZCL_RX_TIER25_PRICE_LABEL_ATTRIBUTE_ID (0x8018) +#define ZCL_RX_TIER26_PRICE_LABEL_ATTRIBUTE_ID (0x8019) +#define ZCL_RX_TIER27_PRICE_LABEL_ATTRIBUTE_ID (0x801A) +#define ZCL_RX_TIER28_PRICE_LABEL_ATTRIBUTE_ID (0x801B) +#define ZCL_RX_TIER29_PRICE_LABEL_ATTRIBUTE_ID (0x801C) +#define ZCL_RX_TIER30_PRICE_LABEL_ATTRIBUTE_ID (0x801D) +#define ZCL_RX_TIER31_PRICE_LABEL_ATTRIBUTE_ID (0x801E) +#define ZCL_RX_TIER32_PRICE_LABEL_ATTRIBUTE_ID (0x801F) +#define ZCL_RX_TIER33_PRICE_LABEL_ATTRIBUTE_ID (0x8020) +#define ZCL_RX_TIER34_PRICE_LABEL_ATTRIBUTE_ID (0x8021) +#define ZCL_RX_TIER35_PRICE_LABEL_ATTRIBUTE_ID (0x8022) +#define ZCL_RX_TIER36_PRICE_LABEL_ATTRIBUTE_ID (0x8023) +#define ZCL_RX_TIER37_PRICE_LABEL_ATTRIBUTE_ID (0x8024) +#define ZCL_RX_TIER38_PRICE_LABEL_ATTRIBUTE_ID (0x8025) +#define ZCL_RX_TIER39_PRICE_LABEL_ATTRIBUTE_ID (0x8026) +#define ZCL_RX_TIER40_PRICE_LABEL_ATTRIBUTE_ID (0x8027) +#define ZCL_RX_TIER41_PRICE_LABEL_ATTRIBUTE_ID (0x8028) +#define ZCL_RX_TIER42_PRICE_LABEL_ATTRIBUTE_ID (0x8029) +#define ZCL_RX_TIER43_PRICE_LABEL_ATTRIBUTE_ID (0x802A) +#define ZCL_RX_TIER44_PRICE_LABEL_ATTRIBUTE_ID (0x802B) +#define ZCL_RX_TIER45_PRICE_LABEL_ATTRIBUTE_ID (0x802C) +#define ZCL_RX_TIER46_PRICE_LABEL_ATTRIBUTE_ID (0x802D) +#define ZCL_RX_TIER47_PRICE_LABEL_ATTRIBUTE_ID (0x802E) +#define ZCL_RX_TIER48_PRICE_LABEL_ATTRIBUTE_ID (0x802F) +#define ZCL_RX_BLOCK1_THRESHOLD_ATTRIBUTE_ID (0x8100) +#define ZCL_RX_BLOCK2_THRESHOLD_ATTRIBUTE_ID (0x8101) +#define ZCL_RX_BLOCK3_THRESHOLD_ATTRIBUTE_ID (0x8102) +#define ZCL_RX_BLOCK4_THRESHOLD_ATTRIBUTE_ID (0x8103) +#define ZCL_RX_BLOCK5_THRESHOLD_ATTRIBUTE_ID (0x8104) +#define ZCL_RX_BLOCK6_THRESHOLD_ATTRIBUTE_ID (0x8105) +#define ZCL_RX_BLOCK7_THRESHOLD_ATTRIBUTE_ID (0x8106) +#define ZCL_RX_BLOCK8_THRESHOLD_ATTRIBUTE_ID (0x8107) +#define ZCL_RX_BLOCK9_THRESHOLD_ATTRIBUTE_ID (0x8108) +#define ZCL_RX_BLOCK10_THRESHOLD_ATTRIBUTE_ID (0x8109) +#define ZCL_RX_BLOCK11_THRESHOLD_ATTRIBUTE_ID (0x810A) +#define ZCL_RX_BLOCK12_THRESHOLD_ATTRIBUTE_ID (0x810B) +#define ZCL_RX_BLOCK13_THRESHOLD_ATTRIBUTE_ID (0x810C) +#define ZCL_RX_BLOCK14_THRESHOLD_ATTRIBUTE_ID (0x810D) +#define ZCL_RX_BLOCK15_THRESHOLD_ATTRIBUTE_ID (0x810E) +#define ZCL_RX_START_OF_BLOCK_PERIOD_ATTRIBUTE_ID (0x8200) +#define ZCL_RX_BLOCK_PERIOD_DURATION_ATTRIBUTE_ID (0x8201) +#define ZCL_RX_THRESHOLD_MULTIPLIER_ATTRIBUTE_ID (0x8202) +#define ZCL_RX_THRESHOLD_DIVISOR_ATTRIBUTE_ID (0x8203) +#define ZCL_RX_NO_TIER_BLOCK1_PRICE_ATTRIBUTE_ID (0x8400) +#define ZCL_RX_NO_TIER_BLOCK2_PRICE_ATTRIBUTE_ID (0x8401) +#define ZCL_RX_NO_TIER_BLOCK3_PRICE_ATTRIBUTE_ID (0x8402) +#define ZCL_RX_NO_TIER_BLOCK4_PRICE_ATTRIBUTE_ID (0x8403) +#define ZCL_RX_NO_TIER_BLOCK5_PRICE_ATTRIBUTE_ID (0x8404) +#define ZCL_RX_NO_TIER_BLOCK6_PRICE_ATTRIBUTE_ID (0x8405) +#define ZCL_RX_NO_TIER_BLOCK7_PRICE_ATTRIBUTE_ID (0x8406) +#define ZCL_RX_NO_TIER_BLOCK8_PRICE_ATTRIBUTE_ID (0x8407) +#define ZCL_RX_NO_TIER_BLOCK9_PRICE_ATTRIBUTE_ID (0x8408) +#define ZCL_RX_NO_TIER_BLOCK10_PRICE_ATTRIBUTE_ID (0x8409) +#define ZCL_RX_NO_TIER_BLOCK11_PRICE_ATTRIBUTE_ID (0x840A) +#define ZCL_RX_NO_TIER_BLOCK12_PRICE_ATTRIBUTE_ID (0x840B) +#define ZCL_RX_NO_TIER_BLOCK13_PRICE_ATTRIBUTE_ID (0x840C) +#define ZCL_RX_NO_TIER_BLOCK14_PRICE_ATTRIBUTE_ID (0x840D) +#define ZCL_RX_NO_TIER_BLOCK15_PRICE_ATTRIBUTE_ID (0x840E) +#define ZCL_RX_NO_TIER_BLOCK16_PRICE_ATTRIBUTE_ID (0x840F) +#define ZCL_RX_TIER1_BLOCK1_PRICE_ATTRIBUTE_ID (0x8410) +#define ZCL_RX_TIER1_BLOCK2_PRICE_ATTRIBUTE_ID (0x8411) +#define ZCL_RX_TIER1_BLOCK3_PRICE_ATTRIBUTE_ID (0x8412) +#define ZCL_RX_TIER1_BLOCK4_PRICE_ATTRIBUTE_ID (0x8413) +#define ZCL_RX_TIER1_BLOCK5_PRICE_ATTRIBUTE_ID (0x8414) +#define ZCL_RX_TIER1_BLOCK6_PRICE_ATTRIBUTE_ID (0x8415) +#define ZCL_RX_TIER1_BLOCK7_PRICE_ATTRIBUTE_ID (0x8416) +#define ZCL_RX_TIER1_BLOCK8_PRICE_ATTRIBUTE_ID (0x8417) +#define ZCL_RX_TIER1_BLOCK9_PRICE_ATTRIBUTE_ID (0x8418) +#define ZCL_RX_TIER1_BLOCK10_PRICE_ATTRIBUTE_ID (0x8419) +#define ZCL_RX_TIER1_BLOCK11_PRICE_ATTRIBUTE_ID (0x841A) +#define ZCL_RX_TIER1_BLOCK12_PRICE_ATTRIBUTE_ID (0x841B) +#define ZCL_RX_TIER1_BLOCK13_PRICE_ATTRIBUTE_ID (0x841C) +#define ZCL_RX_TIER1_BLOCK14_PRICE_ATTRIBUTE_ID (0x841D) +#define ZCL_RX_TIER1_BLOCK15_PRICE_ATTRIBUTE_ID (0x841E) +#define ZCL_RX_TIER1_BLOCK16_PRICE_ATTRIBUTE_ID (0x841F) +#define ZCL_RX_TIER2_BLOCK1_PRICE_ATTRIBUTE_ID (0x8420) +#define ZCL_RX_TIER2_BLOCK2_PRICE_ATTRIBUTE_ID (0x8421) +#define ZCL_RX_TIER2_BLOCK3_PRICE_ATTRIBUTE_ID (0x8422) +#define ZCL_RX_TIER2_BLOCK4_PRICE_ATTRIBUTE_ID (0x8423) +#define ZCL_RX_TIER2_BLOCK5_PRICE_ATTRIBUTE_ID (0x8424) +#define ZCL_RX_TIER2_BLOCK6_PRICE_ATTRIBUTE_ID (0x8425) +#define ZCL_RX_TIER2_BLOCK7_PRICE_ATTRIBUTE_ID (0x8426) +#define ZCL_RX_TIER2_BLOCK8_PRICE_ATTRIBUTE_ID (0x8427) +#define ZCL_RX_TIER2_BLOCK9_PRICE_ATTRIBUTE_ID (0x8428) +#define ZCL_RX_TIER2_BLOCK10_PRICE_ATTRIBUTE_ID (0x8429) +#define ZCL_RX_TIER2_BLOCK11_PRICE_ATTRIBUTE_ID (0x842A) +#define ZCL_RX_TIER2_BLOCK12_PRICE_ATTRIBUTE_ID (0x842B) +#define ZCL_RX_TIER2_BLOCK13_PRICE_ATTRIBUTE_ID (0x842C) +#define ZCL_RX_TIER2_BLOCK14_PRICE_ATTRIBUTE_ID (0x842D) +#define ZCL_RX_TIER2_BLOCK15_PRICE_ATTRIBUTE_ID (0x842E) +#define ZCL_RX_TIER2_BLOCK16_PRICE_ATTRIBUTE_ID (0x842F) +#define ZCL_RX_TIER3_BLOCK1_PRICE_ATTRIBUTE_ID (0x8430) +#define ZCL_RX_TIER3_BLOCK2_PRICE_ATTRIBUTE_ID (0x8431) +#define ZCL_RX_TIER3_BLOCK3_PRICE_ATTRIBUTE_ID (0x8432) +#define ZCL_RX_TIER3_BLOCK4_PRICE_ATTRIBUTE_ID (0x8433) +#define ZCL_RX_TIER3_BLOCK5_PRICE_ATTRIBUTE_ID (0x8434) +#define ZCL_RX_TIER3_BLOCK6_PRICE_ATTRIBUTE_ID (0x8435) +#define ZCL_RX_TIER3_BLOCK7_PRICE_ATTRIBUTE_ID (0x8436) +#define ZCL_RX_TIER3_BLOCK8_PRICE_ATTRIBUTE_ID (0x8437) +#define ZCL_RX_TIER3_BLOCK9_PRICE_ATTRIBUTE_ID (0x8438) +#define ZCL_RX_TIER3_BLOCK10_PRICE_ATTRIBUTE_ID (0x8439) +#define ZCL_RX_TIER3_BLOCK11_PRICE_ATTRIBUTE_ID (0x843A) +#define ZCL_RX_TIER3_BLOCK12_PRICE_ATTRIBUTE_ID (0x843B) +#define ZCL_RX_TIER3_BLOCK13_PRICE_ATTRIBUTE_ID (0x843C) +#define ZCL_RX_TIER3_BLOCK14_PRICE_ATTRIBUTE_ID (0x843D) +#define ZCL_RX_TIER3_BLOCK15_PRICE_ATTRIBUTE_ID (0x843E) +#define ZCL_RX_TIER3_BLOCK16_PRICE_ATTRIBUTE_ID (0x843F) +#define ZCL_RX_TIER4_BLOCK1_PRICE_ATTRIBUTE_ID (0x8440) +#define ZCL_RX_TIER4_BLOCK2_PRICE_ATTRIBUTE_ID (0x8441) +#define ZCL_RX_TIER4_BLOCK3_PRICE_ATTRIBUTE_ID (0x8442) +#define ZCL_RX_TIER4_BLOCK4_PRICE_ATTRIBUTE_ID (0x8443) +#define ZCL_RX_TIER4_BLOCK5_PRICE_ATTRIBUTE_ID (0x8444) +#define ZCL_RX_TIER4_BLOCK6_PRICE_ATTRIBUTE_ID (0x8445) +#define ZCL_RX_TIER4_BLOCK7_PRICE_ATTRIBUTE_ID (0x8446) +#define ZCL_RX_TIER4_BLOCK8_PRICE_ATTRIBUTE_ID (0x8447) +#define ZCL_RX_TIER4_BLOCK9_PRICE_ATTRIBUTE_ID (0x8448) +#define ZCL_RX_TIER4_BLOCK10_PRICE_ATTRIBUTE_ID (0x8449) +#define ZCL_RX_TIER4_BLOCK11_PRICE_ATTRIBUTE_ID (0x844A) +#define ZCL_RX_TIER4_BLOCK12_PRICE_ATTRIBUTE_ID (0x844B) +#define ZCL_RX_TIER4_BLOCK13_PRICE_ATTRIBUTE_ID (0x844C) +#define ZCL_RX_TIER4_BLOCK14_PRICE_ATTRIBUTE_ID (0x844D) +#define ZCL_RX_TIER4_BLOCK15_PRICE_ATTRIBUTE_ID (0x844E) +#define ZCL_RX_TIER4_BLOCK16_PRICE_ATTRIBUTE_ID (0x844F) +#define ZCL_RX_TIER5_BLOCK1_PRICE_ATTRIBUTE_ID (0x8450) +#define ZCL_RX_TIER5_BLOCK2_PRICE_ATTRIBUTE_ID (0x8451) +#define ZCL_RX_TIER5_BLOCK3_PRICE_ATTRIBUTE_ID (0x8452) +#define ZCL_RX_TIER5_BLOCK4_PRICE_ATTRIBUTE_ID (0x8453) +#define ZCL_RX_TIER5_BLOCK5_PRICE_ATTRIBUTE_ID (0x8454) +#define ZCL_RX_TIER5_BLOCK6_PRICE_ATTRIBUTE_ID (0x8455) +#define ZCL_RX_TIER5_BLOCK7_PRICE_ATTRIBUTE_ID (0x8456) +#define ZCL_RX_TIER5_BLOCK8_PRICE_ATTRIBUTE_ID (0x8457) +#define ZCL_RX_TIER5_BLOCK9_PRICE_ATTRIBUTE_ID (0x8458) +#define ZCL_RX_TIER5_BLOCK10_PRICE_ATTRIBUTE_ID (0x8459) +#define ZCL_RX_TIER5_BLOCK11_PRICE_ATTRIBUTE_ID (0x845A) +#define ZCL_RX_TIER5_BLOCK12_PRICE_ATTRIBUTE_ID (0x845B) +#define ZCL_RX_TIER5_BLOCK13_PRICE_ATTRIBUTE_ID (0x845C) +#define ZCL_RX_TIER5_BLOCK14_PRICE_ATTRIBUTE_ID (0x845D) +#define ZCL_RX_TIER5_BLOCK15_PRICE_ATTRIBUTE_ID (0x845E) +#define ZCL_RX_TIER5_BLOCK16_PRICE_ATTRIBUTE_ID (0x845F) +#define ZCL_RX_TIER6_BLOCK1_PRICE_ATTRIBUTE_ID (0x8460) +#define ZCL_RX_TIER6_BLOCK2_PRICE_ATTRIBUTE_ID (0x8461) +#define ZCL_RX_TIER6_BLOCK3_PRICE_ATTRIBUTE_ID (0x8462) +#define ZCL_RX_TIER6_BLOCK4_PRICE_ATTRIBUTE_ID (0x8463) +#define ZCL_RX_TIER6_BLOCK5_PRICE_ATTRIBUTE_ID (0x8464) +#define ZCL_RX_TIER6_BLOCK6_PRICE_ATTRIBUTE_ID (0x8465) +#define ZCL_RX_TIER6_BLOCK7_PRICE_ATTRIBUTE_ID (0x8466) +#define ZCL_RX_TIER6_BLOCK8_PRICE_ATTRIBUTE_ID (0x8467) +#define ZCL_RX_TIER6_BLOCK9_PRICE_ATTRIBUTE_ID (0x8468) +#define ZCL_RX_TIER6_BLOCK10_PRICE_ATTRIBUTE_ID (0x8469) +#define ZCL_RX_TIER6_BLOCK11_PRICE_ATTRIBUTE_ID (0x846A) +#define ZCL_RX_TIER6_BLOCK12_PRICE_ATTRIBUTE_ID (0x846B) +#define ZCL_RX_TIER6_BLOCK13_PRICE_ATTRIBUTE_ID (0x846C) +#define ZCL_RX_TIER6_BLOCK14_PRICE_ATTRIBUTE_ID (0x846D) +#define ZCL_RX_TIER6_BLOCK15_PRICE_ATTRIBUTE_ID (0x846E) +#define ZCL_RX_TIER6_BLOCK16_PRICE_ATTRIBUTE_ID (0x846F) +#define ZCL_RX_TIER7_BLOCK1_PRICE_ATTRIBUTE_ID (0x8470) +#define ZCL_RX_TIER7_BLOCK2_PRICE_ATTRIBUTE_ID (0x8471) +#define ZCL_RX_TIER7_BLOCK3_PRICE_ATTRIBUTE_ID (0x8472) +#define ZCL_RX_TIER7_BLOCK4_PRICE_ATTRIBUTE_ID (0x8473) +#define ZCL_RX_TIER7_BLOCK5_PRICE_ATTRIBUTE_ID (0x8474) +#define ZCL_RX_TIER7_BLOCK6_PRICE_ATTRIBUTE_ID (0x8475) +#define ZCL_RX_TIER7_BLOCK7_PRICE_ATTRIBUTE_ID (0x8476) +#define ZCL_RX_TIER7_BLOCK8_PRICE_ATTRIBUTE_ID (0x8477) +#define ZCL_RX_TIER7_BLOCK9_PRICE_ATTRIBUTE_ID (0x8478) +#define ZCL_RX_TIER7_BLOCK10_PRICE_ATTRIBUTE_ID (0x8479) +#define ZCL_RX_TIER7_BLOCK11_PRICE_ATTRIBUTE_ID (0x847A) +#define ZCL_RX_TIER7_BLOCK12_PRICE_ATTRIBUTE_ID (0x847B) +#define ZCL_RX_TIER7_BLOCK13_PRICE_ATTRIBUTE_ID (0x847C) +#define ZCL_RX_TIER7_BLOCK14_PRICE_ATTRIBUTE_ID (0x847D) +#define ZCL_RX_TIER7_BLOCK15_PRICE_ATTRIBUTE_ID (0x847E) +#define ZCL_RX_TIER7_BLOCK16_PRICE_ATTRIBUTE_ID (0x847F) +#define ZCL_RX_TIER8_BLOCK1_PRICE_ATTRIBUTE_ID (0x8480) +#define ZCL_RX_TIER8_BLOCK2_PRICE_ATTRIBUTE_ID (0x8481) +#define ZCL_RX_TIER8_BLOCK3_PRICE_ATTRIBUTE_ID (0x8482) +#define ZCL_RX_TIER8_BLOCK4_PRICE_ATTRIBUTE_ID (0x8483) +#define ZCL_RX_TIER8_BLOCK5_PRICE_ATTRIBUTE_ID (0x8484) +#define ZCL_RX_TIER8_BLOCK6_PRICE_ATTRIBUTE_ID (0x8485) +#define ZCL_RX_TIER8_BLOCK7_PRICE_ATTRIBUTE_ID (0x8486) +#define ZCL_RX_TIER8_BLOCK8_PRICE_ATTRIBUTE_ID (0x8487) +#define ZCL_RX_TIER8_BLOCK9_PRICE_ATTRIBUTE_ID (0x8488) +#define ZCL_RX_TIER8_BLOCK10_PRICE_ATTRIBUTE_ID (0x8489) +#define ZCL_RX_TIER8_BLOCK11_PRICE_ATTRIBUTE_ID (0x848A) +#define ZCL_RX_TIER8_BLOCK12_PRICE_ATTRIBUTE_ID (0x848B) +#define ZCL_RX_TIER8_BLOCK13_PRICE_ATTRIBUTE_ID (0x848C) +#define ZCL_RX_TIER8_BLOCK14_PRICE_ATTRIBUTE_ID (0x848D) +#define ZCL_RX_TIER8_BLOCK15_PRICE_ATTRIBUTE_ID (0x848E) +#define ZCL_RX_TIER8_BLOCK16_PRICE_ATTRIBUTE_ID (0x848F) +#define ZCL_RX_TIER9_BLOCK1_PRICE_ATTRIBUTE_ID (0x8490) +#define ZCL_RX_TIER9_BLOCK2_PRICE_ATTRIBUTE_ID (0x8491) +#define ZCL_RX_TIER9_BLOCK3_PRICE_ATTRIBUTE_ID (0x8492) +#define ZCL_RX_TIER9_BLOCK4_PRICE_ATTRIBUTE_ID (0x8493) +#define ZCL_RX_TIER9_BLOCK5_PRICE_ATTRIBUTE_ID (0x8494) +#define ZCL_RX_TIER9_BLOCK6_PRICE_ATTRIBUTE_ID (0x8495) +#define ZCL_RX_TIER9_BLOCK7_PRICE_ATTRIBUTE_ID (0x8496) +#define ZCL_RX_TIER9_BLOCK8_PRICE_ATTRIBUTE_ID (0x8497) +#define ZCL_RX_TIER9_BLOCK9_PRICE_ATTRIBUTE_ID (0x8498) +#define ZCL_RX_TIER9_BLOCK10_PRICE_ATTRIBUTE_ID (0x8499) +#define ZCL_RX_TIER9_BLOCK11_PRICE_ATTRIBUTE_ID (0x849A) +#define ZCL_RX_TIER9_BLOCK12_PRICE_ATTRIBUTE_ID (0x849B) +#define ZCL_RX_TIER9_BLOCK13_PRICE_ATTRIBUTE_ID (0x849C) +#define ZCL_RX_TIER9_BLOCK14_PRICE_ATTRIBUTE_ID (0x849D) +#define ZCL_RX_TIER9_BLOCK15_PRICE_ATTRIBUTE_ID (0x849E) +#define ZCL_RX_TIER9_BLOCK16_PRICE_ATTRIBUTE_ID (0x849F) +#define ZCL_RX_TIER10_BLOCK1_PRICE_ATTRIBUTE_ID (0x84A0) +#define ZCL_RX_TIER10_BLOCK2_PRICE_ATTRIBUTE_ID (0x84A1) +#define ZCL_RX_TIER10_BLOCK3_PRICE_ATTRIBUTE_ID (0x84A2) +#define ZCL_RX_TIER10_BLOCK4_PRICE_ATTRIBUTE_ID (0x84A3) +#define ZCL_RX_TIER10_BLOCK5_PRICE_ATTRIBUTE_ID (0x84A4) +#define ZCL_RX_TIER10_BLOCK6_PRICE_ATTRIBUTE_ID (0x84A5) +#define ZCL_RX_TIER10_BLOCK7_PRICE_ATTRIBUTE_ID (0x84A6) +#define ZCL_RX_TIER10_BLOCK8_PRICE_ATTRIBUTE_ID (0x84A7) +#define ZCL_RX_TIER10_BLOCK9_PRICE_ATTRIBUTE_ID (0x84A8) +#define ZCL_RX_TIER10_BLOCK10_PRICE_ATTRIBUTE_ID (0x84A9) +#define ZCL_RX_TIER10_BLOCK11_PRICE_ATTRIBUTE_ID (0x84AA) +#define ZCL_RX_TIER10_BLOCK12_PRICE_ATTRIBUTE_ID (0x84AB) +#define ZCL_RX_TIER10_BLOCK13_PRICE_ATTRIBUTE_ID (0x84AC) +#define ZCL_RX_TIER10_BLOCK14_PRICE_ATTRIBUTE_ID (0x84AD) +#define ZCL_RX_TIER10_BLOCK15_PRICE_ATTRIBUTE_ID (0x84AE) +#define ZCL_RX_TIER10_BLOCK16_PRICE_ATTRIBUTE_ID (0x84AF) +#define ZCL_RX_TIER11_BLOCK1_PRICE_ATTRIBUTE_ID (0x84B0) +#define ZCL_RX_TIER11_BLOCK2_PRICE_ATTRIBUTE_ID (0x84B1) +#define ZCL_RX_TIER11_BLOCK3_PRICE_ATTRIBUTE_ID (0x84B2) +#define ZCL_RX_TIER11_BLOCK4_PRICE_ATTRIBUTE_ID (0x84B3) +#define ZCL_RX_TIER11_BLOCK5_PRICE_ATTRIBUTE_ID (0x84B4) +#define ZCL_RX_TIER11_BLOCK6_PRICE_ATTRIBUTE_ID (0x84B5) +#define ZCL_RX_TIER11_BLOCK7_PRICE_ATTRIBUTE_ID (0x84B6) +#define ZCL_RX_TIER11_BLOCK8_PRICE_ATTRIBUTE_ID (0x84B7) +#define ZCL_RX_TIER11_BLOCK9_PRICE_ATTRIBUTE_ID (0x84B8) +#define ZCL_RX_TIER11_BLOCK10_PRICE_ATTRIBUTE_ID (0x84B9) +#define ZCL_RX_TIER11_BLOCK11_PRICE_ATTRIBUTE_ID (0x84BA) +#define ZCL_RX_TIER11_BLOCK12_PRICE_ATTRIBUTE_ID (0x84BB) +#define ZCL_RX_TIER11_BLOCK13_PRICE_ATTRIBUTE_ID (0x84BC) +#define ZCL_RX_TIER11_BLOCK14_PRICE_ATTRIBUTE_ID (0x84BD) +#define ZCL_RX_TIER11_BLOCK15_PRICE_ATTRIBUTE_ID (0x84BE) +#define ZCL_RX_TIER11_BLOCK16_PRICE_ATTRIBUTE_ID (0x84BF) +#define ZCL_RX_TIER12_BLOCK1_PRICE_ATTRIBUTE_ID (0x84C0) +#define ZCL_RX_TIER12_BLOCK2_PRICE_ATTRIBUTE_ID (0x84C1) +#define ZCL_RX_TIER12_BLOCK3_PRICE_ATTRIBUTE_ID (0x84C2) +#define ZCL_RX_TIER12_BLOCK4_PRICE_ATTRIBUTE_ID (0x84C3) +#define ZCL_RX_TIER12_BLOCK5_PRICE_ATTRIBUTE_ID (0x84C4) +#define ZCL_RX_TIER12_BLOCK6_PRICE_ATTRIBUTE_ID (0x84C5) +#define ZCL_RX_TIER12_BLOCK7_PRICE_ATTRIBUTE_ID (0x84C6) +#define ZCL_RX_TIER12_BLOCK8_PRICE_ATTRIBUTE_ID (0x84C7) +#define ZCL_RX_TIER12_BLOCK9_PRICE_ATTRIBUTE_ID (0x84C8) +#define ZCL_RX_TIER12_BLOCK10_PRICE_ATTRIBUTE_ID (0x84C9) +#define ZCL_RX_TIER12_BLOCK11_PRICE_ATTRIBUTE_ID (0x84CA) +#define ZCL_RX_TIER12_BLOCK12_PRICE_ATTRIBUTE_ID (0x84CB) +#define ZCL_RX_TIER12_BLOCK13_PRICE_ATTRIBUTE_ID (0x84CC) +#define ZCL_RX_TIER12_BLOCK14_PRICE_ATTRIBUTE_ID (0x84CD) +#define ZCL_RX_TIER12_BLOCK15_PRICE_ATTRIBUTE_ID (0x84CE) +#define ZCL_RX_TIER12_BLOCK16_PRICE_ATTRIBUTE_ID (0x84CF) +#define ZCL_RX_TIER13_BLOCK1_PRICE_ATTRIBUTE_ID (0x84D0) +#define ZCL_RX_TIER13_BLOCK2_PRICE_ATTRIBUTE_ID (0x84D1) +#define ZCL_RX_TIER13_BLOCK3_PRICE_ATTRIBUTE_ID (0x84D2) +#define ZCL_RX_TIER13_BLOCK4_PRICE_ATTRIBUTE_ID (0x84D3) +#define ZCL_RX_TIER13_BLOCK5_PRICE_ATTRIBUTE_ID (0x84D4) +#define ZCL_RX_TIER13_BLOCK6_PRICE_ATTRIBUTE_ID (0x84D5) +#define ZCL_RX_TIER13_BLOCK7_PRICE_ATTRIBUTE_ID (0x84D6) +#define ZCL_RX_TIER13_BLOCK8_PRICE_ATTRIBUTE_ID (0x84D7) +#define ZCL_RX_TIER13_BLOCK9_PRICE_ATTRIBUTE_ID (0x84D8) +#define ZCL_RX_TIER13_BLOCK10_PRICE_ATTRIBUTE_ID (0x84D9) +#define ZCL_RX_TIER13_BLOCK11_PRICE_ATTRIBUTE_ID (0x84DA) +#define ZCL_RX_TIER13_BLOCK12_PRICE_ATTRIBUTE_ID (0x84DB) +#define ZCL_RX_TIER13_BLOCK13_PRICE_ATTRIBUTE_ID (0x84DC) +#define ZCL_RX_TIER13_BLOCK14_PRICE_ATTRIBUTE_ID (0x84DD) +#define ZCL_RX_TIER13_BLOCK15_PRICE_ATTRIBUTE_ID (0x84DE) +#define ZCL_RX_TIER13_BLOCK16_PRICE_ATTRIBUTE_ID (0x84DF) +#define ZCL_RX_TIER14_BLOCK1_PRICE_ATTRIBUTE_ID (0x84E0) +#define ZCL_RX_TIER14_BLOCK2_PRICE_ATTRIBUTE_ID (0x84E1) +#define ZCL_RX_TIER14_BLOCK3_PRICE_ATTRIBUTE_ID (0x84E2) +#define ZCL_RX_TIER14_BLOCK4_PRICE_ATTRIBUTE_ID (0x84E3) +#define ZCL_RX_TIER14_BLOCK5_PRICE_ATTRIBUTE_ID (0x84E4) +#define ZCL_RX_TIER14_BLOCK6_PRICE_ATTRIBUTE_ID (0x84E5) +#define ZCL_RX_TIER14_BLOCK7_PRICE_ATTRIBUTE_ID (0x84E6) +#define ZCL_RX_TIER14_BLOCK8_PRICE_ATTRIBUTE_ID (0x84E7) +#define ZCL_RX_TIER14_BLOCK9_PRICE_ATTRIBUTE_ID (0x84E8) +#define ZCL_RX_TIER14_BLOCK10_PRICE_ATTRIBUTE_ID (0x84E9) +#define ZCL_RX_TIER14_BLOCK11_PRICE_ATTRIBUTE_ID (0x84EA) +#define ZCL_RX_TIER14_BLOCK12_PRICE_ATTRIBUTE_ID (0x84EB) +#define ZCL_RX_TIER14_BLOCK13_PRICE_ATTRIBUTE_ID (0x84EC) +#define ZCL_RX_TIER14_BLOCK14_PRICE_ATTRIBUTE_ID (0x84ED) +#define ZCL_RX_TIER14_BLOCK15_PRICE_ATTRIBUTE_ID (0x84EE) +#define ZCL_RX_TIER14_BLOCK16_PRICE_ATTRIBUTE_ID (0x84EF) +#define ZCL_RX_TIER15_BLOCK1_PRICE_ATTRIBUTE_ID (0x84F0) +#define ZCL_RX_TIER15_BLOCK2_PRICE_ATTRIBUTE_ID (0x84F1) +#define ZCL_RX_TIER15_BLOCK3_PRICE_ATTRIBUTE_ID (0x84F2) +#define ZCL_RX_TIER15_BLOCK4_PRICE_ATTRIBUTE_ID (0x84F3) +#define ZCL_RX_TIER15_BLOCK5_PRICE_ATTRIBUTE_ID (0x84F4) +#define ZCL_RX_TIER15_BLOCK6_PRICE_ATTRIBUTE_ID (0x84F5) +#define ZCL_RX_TIER15_BLOCK7_PRICE_ATTRIBUTE_ID (0x84F6) +#define ZCL_RX_TIER15_BLOCK8_PRICE_ATTRIBUTE_ID (0x84F7) +#define ZCL_RX_TIER15_BLOCK9_PRICE_ATTRIBUTE_ID (0x84F8) +#define ZCL_RX_TIER15_BLOCK10_PRICE_ATTRIBUTE_ID (0x84F9) +#define ZCL_RX_TIER15_BLOCK11_PRICE_ATTRIBUTE_ID (0x84FA) +#define ZCL_RX_TIER15_BLOCK12_PRICE_ATTRIBUTE_ID (0x84FB) +#define ZCL_RX_TIER15_BLOCK13_PRICE_ATTRIBUTE_ID (0x84FC) +#define ZCL_RX_TIER15_BLOCK14_PRICE_ATTRIBUTE_ID (0x84FD) +#define ZCL_RX_TIER15_BLOCK15_PRICE_ATTRIBUTE_ID (0x84FE) +#define ZCL_RX_TIER15_BLOCK16_PRICE_ATTRIBUTE_ID (0x84FF) +#define ZCL_RX_PRICE_TIER16_ATTRIBUTE_ID (0x850F) +#define ZCL_RX_PRICE_TIER17_ATTRIBUTE_ID (0x8510) +#define ZCL_RX_PRICE_TIER18_ATTRIBUTE_ID (0x8511) +#define ZCL_RX_PRICE_TIER19_ATTRIBUTE_ID (0x8512) +#define ZCL_RX_PRICE_TIER20_ATTRIBUTE_ID (0x8513) +#define ZCL_RX_PRICE_TIER21_ATTRIBUTE_ID (0x8514) +#define ZCL_RX_PRICE_TIER22_ATTRIBUTE_ID (0x8515) +#define ZCL_RX_PRICE_TIER23_ATTRIBUTE_ID (0x8516) +#define ZCL_RX_PRICE_TIER24_ATTRIBUTE_ID (0x8517) +#define ZCL_RX_PRICE_TIER25_ATTRIBUTE_ID (0x8518) +#define ZCL_RX_PRICE_TIER26_ATTRIBUTE_ID (0x8519) +#define ZCL_RX_PRICE_TIER27_ATTRIBUTE_ID (0x851A) +#define ZCL_RX_PRICE_TIER28_ATTRIBUTE_ID (0x851B) +#define ZCL_RX_PRICE_TIER29_ATTRIBUTE_ID (0x851C) +#define ZCL_RX_PRICE_TIER30_ATTRIBUTE_ID (0x851D) +#define ZCL_RX_PRICE_TIER31_ATTRIBUTE_ID (0x851E) +#define ZCL_RX_PRICE_TIER32_ATTRIBUTE_ID (0x851F) +#define ZCL_RX_PRICE_TIER33_ATTRIBUTE_ID (0x8520) +#define ZCL_RX_PRICE_TIER34_ATTRIBUTE_ID (0x8521) +#define ZCL_RX_PRICE_TIER35_ATTRIBUTE_ID (0x8522) +#define ZCL_RX_PRICE_TIER36_ATTRIBUTE_ID (0x8523) +#define ZCL_RX_PRICE_TIER37_ATTRIBUTE_ID (0x8524) +#define ZCL_RX_PRICE_TIER38_ATTRIBUTE_ID (0x8525) +#define ZCL_RX_PRICE_TIER39_ATTRIBUTE_ID (0x8526) +#define ZCL_RX_PRICE_TIER40_ATTRIBUTE_ID (0x8527) +#define ZCL_RX_PRICE_TIER41_ATTRIBUTE_ID (0x8528) +#define ZCL_RX_PRICE_TIER42_ATTRIBUTE_ID (0x8529) +#define ZCL_RX_PRICE_TIER43_ATTRIBUTE_ID (0x852A) +#define ZCL_RX_PRICE_TIER44_ATTRIBUTE_ID (0x852B) +#define ZCL_RX_PRICE_TIER45_ATTRIBUTE_ID (0x852C) +#define ZCL_RX_PRICE_TIER46_ATTRIBUTE_ID (0x852D) +#define ZCL_RX_PRICE_TIER47_ATTRIBUTE_ID (0x852E) +#define ZCL_RX_PRICE_TIER48_ATTRIBUTE_ID (0x852F) +#define ZCL_RX_TARIFF_LABEL_ATTRIBUTE_ID (0x8610) +#define ZCL_RX_NUMBER_OF_PRICE_TIERS_IN_USE_ATTRIBUTE_ID (0x8611) +#define ZCL_RX_NUMBER_OF_BLOCK_THRESHOLDS_IN_USE_ATTRIBUTE_ID (0x8612) +#define ZCL_RX_TIER_BLOCK_MODE_ATTRIBUTE_ID (0x8613) +#define ZCL_RX_TARIFF_RESOLUTION_PERIOD_ATTRIBUTE_ID (0x8615) +#define ZCL_RX_CO2_ATTRIBUTE_ID (0x8625) +#define ZCL_RX_CO2_UNIT_ATTRIBUTE_ID (0x8626) +#define ZCL_RX_CO2_TRAILING_DIGIT_ATTRIBUTE_ID (0x8627) +#define ZCL_RX_CURRENT_BILLING_PERIOD_START_ATTRIBUTE_ID (0x8700) +#define ZCL_RX_CURRENT_BILLING_PERIOD_DURATION_ATTRIBUTE_ID (0x8701) +#define ZCL_RX_LAST_BILLING_PERIOD_START_ATTRIBUTE_ID (0x8702) +#define ZCL_RX_LAST_BILLING_PERIOD_DURATION_ATTRIBUTE_ID (0x8703) +#define ZCL_RX_LAST_BILLING_PERIOD_CONSOLIDATED_BILL_ATTRIBUTE_ID (0x8704) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Demand Response and Load Control // Client attributes -#define ZCL_UTILITY_ENROLLMENT_GROUP_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_START_RANDOMIZATION_MINUTES_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_DURATION_RANDOMIZATION_MINUTES_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_DEVICE_CLASS_VALUE_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_UTILITY_ENROLLMENT_GROUP_ATTRIBUTE_ID (0x0000) +#define ZCL_START_RANDOMIZATION_MINUTES_ATTRIBUTE_ID (0x0001) +#define ZCL_DURATION_RANDOMIZATION_MINUTES_ATTRIBUTE_ID (0x0002) +#define ZCL_DEVICE_CLASS_VALUE_ATTRIBUTE_ID (0x0003) +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Simple Metering -// Cluster specification level: se-1.2b-15-0131-02 +// Attribute ids for cluster: Simple Metering // Client attributes -#define ZCL_FUNCTIONAL_NOTIFICATION_FLAGS_ATTRIBUTE_ID 0x0000 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NOTIFICATION_FLAGS_2_ATTRIBUTE_ID 0x0001 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NOTIFICATION_FLAGS_3_ATTRIBUTE_ID 0x0002 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NOTIFICATION_FLAGS_4_ATTRIBUTE_ID 0x0003 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NOTIFICATION_FLAGS_5_ATTRIBUTE_ID 0x0004 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NOTIFICATION_FLAGS_6_ATTRIBUTE_ID 0x0005 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NOTIFICATION_FLAGS_7_ATTRIBUTE_ID 0x0006 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NOTIFICATION_FLAGS_8_ATTRIBUTE_ID 0x0007 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SIMPLE_METERING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SIMPLE_METERING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_FUNCTIONAL_NOTIFICATION_FLAGS_ATTRIBUTE_ID (0x0000) +#define ZCL_NOTIFICATION_FLAGS_2_ATTRIBUTE_ID (0x0001) +#define ZCL_NOTIFICATION_FLAGS_3_ATTRIBUTE_ID (0x0002) +#define ZCL_NOTIFICATION_FLAGS_4_ATTRIBUTE_ID (0x0003) +#define ZCL_NOTIFICATION_FLAGS_5_ATTRIBUTE_ID (0x0004) +#define ZCL_NOTIFICATION_FLAGS_6_ATTRIBUTE_ID (0x0005) +#define ZCL_NOTIFICATION_FLAGS_7_ATTRIBUTE_ID (0x0006) +#define ZCL_NOTIFICATION_FLAGS_8_ATTRIBUTE_ID (0x0007) +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CURRENT_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CURRENT_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CURRENT_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CURRENT_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_DFT_SUMMATION_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_DAILY_FREEZE_TIME_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_POWER_FACTOR_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_READING_SNAP_SHOT_TIME_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_CURRENT_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_CURRENT_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID 0x0009 // Ver.: always -#define ZCL_DEFAULT_UPDATE_PERIOD_ATTRIBUTE_ID 0x000A // Ver.: since se-1.1-07-5356-16 -#define ZCL_FAST_POLL_UPDATE_PERIOD_ATTRIBUTE_ID 0x000B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_BLOCK_PERIOD_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x000C // Ver.: since se-1.1-07-5356-16 -#define ZCL_DAILY_CONSUMPTION_TARGET_ATTRIBUTE_ID 0x000D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_BLOCK_ATTRIBUTE_ID 0x000E // Ver.: since se-1.1-07-5356-16 -#define ZCL_PROFILE_INTERVAL_PERIOD_ATTRIBUTE_ID 0x000F // Ver.: since se-1.1-07-5356-16 -#define ZCL_INTERVAL_READ_REPORTING_PERIOD_ATTRIBUTE_ID 0x0010 // Ver.: since se-1.1-07-5356-16 -#define ZCL_PRESET_READING_TIME_ATTRIBUTE_ID 0x0011 // Ver.: since se-1.1-07-5356-16 -#define ZCL_VOLUME_PER_REPORT_ATTRIBUTE_ID 0x0012 // Ver.: since se-1.1-07-5356-16 -#define ZCL_FLOW_RESTRICTION_ATTRIBUTE_ID 0x0013 // Ver.: since se-1.1-07-5356-16 -#define ZCL_SUPPLY_STATUS_ATTRIBUTE_ID 0x0014 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_INLET_ENERGY_CARRIER_SUMMATION_ATTRIBUTE_ID 0x0015 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_OUTLET_ENERGY_CARRIER_SUMMATION_ATTRIBUTE_ID 0x0016 // Ver.: since se-1.1-07-5356-16 -#define ZCL_INLET_TEMPERATURE_ATTRIBUTE_ID 0x0017 // Ver.: since se-1.1-07-5356-16 -#define ZCL_OUTLET_TEMPERATURE_ATTRIBUTE_ID 0x0018 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CONTROL_TEMPERATURE_ATTRIBUTE_ID 0x0019 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_INLET_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID 0x001A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_OUTLET_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID 0x001B // Ver.: since se-1.1-07-5356-16 -#define ZCL_PREVIOUS_BLOCK_PERIOD_CONSUMIPTION_DELIVERED_ATTRIBUTE_ID 0x001C // Ver.: since se-1.1b-07-5356-18 -#define ZCL_CURRENT_BLOCK_PERIOD_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x001D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_BLOCK_RECEIVED_ATTRIBUTE_ID 0x001E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DFT_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x001F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_ACTIVE_REGISTER_TIER_DELIVERED_ATTRIBUTE_ID 0x0020 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_ACTIVE_REGISTER_TIER_RECEIVED_ATTRIBUTE_ID 0x0021 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_LAST_BLOCK_SWITCH_TIME_ATTRIBUTE_ID 0x0022 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0100 // Ver.: always -#define ZCL_CURRENT_TIER1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0101 // Ver.: always -#define ZCL_CURRENT_TIER2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0102 // Ver.: always -#define ZCL_CURRENT_TIER2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0103 // Ver.: always -#define ZCL_CURRENT_TIER3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0104 // Ver.: always -#define ZCL_CURRENT_TIER3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0105 // Ver.: always -#define ZCL_CURRENT_TIER4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0106 // Ver.: always -#define ZCL_CURRENT_TIER4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0107 // Ver.: always -#define ZCL_CURRENT_TIER5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0108 // Ver.: always -#define ZCL_CURRENT_TIER5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0109 // Ver.: always -#define ZCL_CURRENT_TIER6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x010A // Ver.: always -#define ZCL_CURRENT_TIER6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x010B // Ver.: always -#define ZCL_CURRENT_TIER7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x010C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x010D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x010E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x010F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0110 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0111 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0112 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0113 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0114 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0115 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0116 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0117 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0118 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0119 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x011A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x011B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x011C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x011D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x011E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x011F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER17_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0120 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER17_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0121 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER18_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0122 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER18_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0123 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER19_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0124 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER19_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0125 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER20_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0126 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER20_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0127 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER21_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0128 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER21_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0129 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER22_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x012A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER22_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x012B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER23_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x012C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER23_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x012D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER24_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x012E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER24_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x012F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER25_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0130 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER25_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0131 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER26_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0132 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER26_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0133 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER27_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0134 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER27_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0135 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER28_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0136 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER28_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0137 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER29_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0138 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER29_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0139 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER30_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x013A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER30_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x013B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER31_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x013C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER31_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x013D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER32_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x013E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER32_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x013F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER33_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0140 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER33_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0141 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER34_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0142 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER34_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0143 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER35_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0144 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER35_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0145 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER36_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0146 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER36_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0147 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER37_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0148 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER37_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0149 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER38_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x014A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER38_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x014B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER39_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x014C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER39_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x014D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER40_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x014E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER40_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x014F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER41_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0150 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER41_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0151 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER42_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0152 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER42_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0153 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER43_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0154 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER43_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0155 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER44_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0156 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER44_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0157 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER45_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0158 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER45_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0159 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER46_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x015A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER46_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x015B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER47_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x015C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER47_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x015D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER48_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x015E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER48_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x015F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CPP1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x01FC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CPP2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x01FE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_STATUS_ATTRIBUTE_ID 0x0200 // Ver.: always -#define ZCL_REMAINING_BATTERY_LIFE_ATTRIBUTE_ID 0x0201 // Ver.: since se-1.1-07-5356-16 -#define ZCL_HOURS_IN_OPERATION_ATTRIBUTE_ID 0x0202 // Ver.: since se-1.1-07-5356-16 -#define ZCL_HOURS_IN_FAULT_ATTRIBUTE_ID 0x0203 // Ver.: since se-1.1-07-5356-16 -#define ZCL_EXTENDED_STATUS_ATTRIBUTE_ID 0x0204 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_REMAINING_BATTERY_LIFE_IN_DAYS_ATTRIBUTE_ID 0x0205 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_METER_ID_ATTRIBUTE_ID 0x0206 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_AMBIENT_CONSUMPTION_INDICATOR_ATTRIBUTE_ID 0x0207 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_UNIT_OF_MEASURE_ATTRIBUTE_ID 0x0300 // Ver.: always -#define ZCL_MULTIPLIER_ATTRIBUTE_ID 0x0301 // Ver.: always -#define ZCL_DIVISOR_ATTRIBUTE_ID 0x0302 // Ver.: always -#define ZCL_SUMMATION_FORMATTING_ATTRIBUTE_ID 0x0303 // Ver.: always -#define ZCL_DEMAND_FORMATTING_ATTRIBUTE_ID 0x0304 // Ver.: always -#define ZCL_HISTORICAL_CONSUMPTION_FORMATTING_ATTRIBUTE_ID 0x0305 // Ver.: always -#define ZCL_METERING_DEVICE_TYPE_ATTRIBUTE_ID 0x0306 // Ver.: always -#define ZCL_SITE_ID_ATTRIBUTE_ID 0x0307 // Ver.: since se-1.1-07-5356-16 -#define ZCL_METER_SERIAL_NUMBER_ATTRIBUTE_ID 0x0308 // Ver.: since se-1.1-07-5356-16 -#define ZCL_ENERGY_CARRIER_UNIT_OF_MEASURE_ATTRIBUTE_ID 0x0309 // Ver.: since se-1.1-07-5356-16 -#define ZCL_ENERGY_CARRIER_SUMMATION_FORMATTING_ATTRIBUTE_ID 0x030A // Ver.: since se-1.1-07-5356-16 -#define ZCL_ENERGY_CARRIER_DEMAND_FORMATTING_ATTRIBUTE_ID 0x030B // Ver.: since se-1.1-07-5356-16 -#define ZCL_TEMPERATURE_UNIT_OF_MEASURE_ATTRIBUTE_ID 0x030C // Ver.: since se-1.1-07-5356-16 -#define ZCL_TEMPERATURE_FORMATTING_ATTRIBUTE_ID 0x030D // Ver.: since se-1.1-07-5356-16 -#define ZCL_MODULE_SERIAL_NUMBER_ATTRIBUTE_ID 0x030E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_OPERATING_TARIFF_LABEL_DELIVERED_ATTRIBUTE_ID 0x030F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_OPERATING_TARIFF_LABEL_RECEIVED_ATTRIBUTE_ID 0x0310 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CUSTOMER_ID_NUMBER_ATTRIBUTE_ID 0x0311 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_ALTERNATIVE_UNIT_OF_MEASURE_ATTRIBUTE_ID 0x0312 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_ALTERNATIVE_DEMAND_FORMATTING_ATTRIBUTE_ID 0x0313 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_ALTERNATIVE_CONSUMPTION_FORMATTING_ATTRIBUTE_ID 0x0314 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_INSTANTANEOUS_DEMAND_ATTRIBUTE_ID 0x0400 // Ver.: always -#define ZCL_CURRENT_DAY_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0401 // Ver.: always -#define ZCL_CURRENT_DAY_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0402 // Ver.: always -#define ZCL_PREVIOUS_DAY_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0403 // Ver.: always -#define ZCL_PREVIOUS_DAY_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0404 // Ver.: always -#define ZCL_CURRENT_PARTIAL_PROFILE_INTERVAL_START_TIME_DELIVERED_ATTRIBUTE_ID 0x0405 // Ver.: always -#define ZCL_CURRENT_PARTIAL_PROFILE_INTERVAL_START_TIME_RECEIVED_ATTRIBUTE_ID 0x0406 // Ver.: always -#define ZCL_CURRENT_PARTIAL_PROFILE_INTERVAL_VALUE_DELIVERED_ATTRIBUTE_ID 0x0407 // Ver.: always -#define ZCL_CURRENT_PARTIAL_PROFILE_INTERVAL_VALUE_RECEIVED_ATTRIBUTE_ID 0x0408 // Ver.: always -#define ZCL_CURRENT_DAY_MAX_PRESSURE_ATTRIBUTE_ID 0x0409 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_DAY_MIN_PRESSURE_ATTRIBUTE_ID 0x040A // Ver.: since se-1.1-07-5356-16 -#define ZCL_PREVIOUS_DAY_MAX_PRESSURE_ATTRIBUTE_ID 0x040B // Ver.: since se-1.1-07-5356-16 -#define ZCL_PREVIOUS_DAY_MIN_PRESSURE_ATTRIBUTE_ID 0x040C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_DAY_MAX_DEMAND_ATTRIBUTE_ID 0x040D // Ver.: since se-1.1-07-5356-16 -#define ZCL_PREVIOUS_DAY_MAX_DEMAND_ATTRIBUTE_ID 0x040E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_MONTH_MAX_DEMAND_ATTRIBUTE_ID 0x040F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_YEAR_MAX_DEMAND_ATTRIBUTE_ID 0x0410 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_DAY_MAX_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID 0x0411 // Ver.: since se-1.1-07-5356-16 -#define ZCL_PREVIOUS_DAY_MAX_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID 0x0412 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_MONTH_MAX_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID 0x0413 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_MONTH_MIN_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID 0x0414 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_YEAR_MAX_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID 0x0415 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_YEAR_MIN_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID 0x0416 // Ver.: since se-1.1-07-5356-16 -#define ZCL_PREVIOUS_DAY2_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0420 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY2_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0421 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY3_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0422 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY3_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0423 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY4_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0424 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY4_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0425 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY5_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0426 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY5_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0427 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY6_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0428 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY6_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0429 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY7_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x042A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY7_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x042B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY8_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x042C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY8_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x042D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_WEEK_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0430 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_WEEK_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0431 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0432 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0433 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK2_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0434 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK2_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0435 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK3_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0436 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK3_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0437 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK4_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0438 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK4_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0439 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK5_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x043A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK5_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x043B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_MONTH_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0440 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_MONTH_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0441 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0442 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0443 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH2_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0444 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH2_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0445 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH3_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0446 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH3_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0447 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH4_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0448 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH4_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0449 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH5_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x044A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH5_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x044B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH6_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x044C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH6_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x044D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH7_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x044E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH7_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x044F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH8_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0450 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH8_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0451 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH9_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0452 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH9_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0453 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH10_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0454 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH10_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0455 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH11_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0456 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH11_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0457 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH12_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0458 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH12_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0459 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH13_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x045A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH13_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x045B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_METERING_HISTORICAL_FREEZE_TIME_ATTRIBUTE_ID 0x045C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_DAY_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID 0x045D // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_DAY_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID 0x045E // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_DAY_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID 0x045F // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_DAY_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID 0x0460 // Ver.: since se-1.4-17-05019-001 -#define ZCL_PREVIOUS_DAY_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID 0x0461 // Ver.: since se-1.4-17-05019-001 -#define ZCL_PREVIOUS_DAY_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID 0x0462 // Ver.: since se-1.4-17-05019-001 -#define ZCL_PREVIOUS_DAY_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID 0x0463 // Ver.: since se-1.4-17-05019-001 -#define ZCL_PREVIOUS_DAY_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID 0x0464 // Ver.: since se-1.4-17-05019-001 -#define ZCL_MAX_NUMBER_OF_PERIODS_DELIVERED_ATTRIBUTE_ID 0x0500 // Ver.: always -#define ZCL_CURRENT_DEMAND_DELIVERED_ATTRIBUTE_ID 0x0600 // Ver.: always -#define ZCL_DEMAND_LIMIT_ATTRIBUTE_ID 0x0601 // Ver.: always -#define ZCL_DEMAND_INTEGRATION_PERIOD_ATTRIBUTE_ID 0x0602 // Ver.: always -#define ZCL_NUMBER_OF_DEMAND_SUBINTERVALS_ATTRIBUTE_ID 0x0603 // Ver.: always -#define ZCL_DEMAND_LIMIT_ARM_DURATION_IN_MINUTES_ATTRIBUTE_ID 0x0604 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_LOAD_LIMIT_SUPPLY_STATE_ATTRIBUTE_ID 0x0605 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_LOAD_LIMIT_COUNTER_ATTRIBUTE_ID 0x0606 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SUPPLY_TAMPER_STATE_ATTRIBUTE_ID 0x0607 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SUPPLY_DEPLETION_STATE_ATTRIBUTE_ID 0x0608 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SUPPLY_UNCONTROLLED_FLOW_STATE_ATTRIBUTE_ID 0x0609 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0700 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0701 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0702 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0703 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0704 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0705 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0706 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0707 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0708 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0709 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x070A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x070B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x070C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x070D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x070E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_NO_TIER_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x070F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0710 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0711 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0712 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0713 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0714 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0715 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0716 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0717 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0718 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0719 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x071A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x071B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x071C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x071D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x071E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER1_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x071F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0720 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0721 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0722 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0723 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0724 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0725 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0726 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0727 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0728 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0729 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x072A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x072B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x072C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x072D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x072E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER2_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x072F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0730 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0731 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0732 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0733 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0734 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0735 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0736 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0737 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0738 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0739 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x073A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x073B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x073C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x073D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x073E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER3_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x073F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0740 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0741 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0742 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0743 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0744 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0745 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0746 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0747 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0748 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0749 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x074A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x074B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x074C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x074D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x074E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER4_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x074F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0750 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0751 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0752 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0753 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0754 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0755 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0756 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0757 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0758 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0759 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x075A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x075B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x075C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x075D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x075E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER5_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x075F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0760 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0761 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0762 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0763 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0764 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0765 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0766 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0767 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0768 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0769 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x076A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x076B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x076C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x076D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x076E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER6_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x076F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0770 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0771 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0772 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0773 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0774 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0775 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0776 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0777 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0778 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0779 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x077A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x077B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x077C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x077D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x077E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER7_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x077F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0780 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0781 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0782 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0783 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0784 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0785 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0786 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0787 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0788 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0789 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x078A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x078B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x078C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x078D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x078E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER8_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x078F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0790 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0791 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0792 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0793 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0794 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0795 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0796 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0797 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0798 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x0799 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x079A // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x079B // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x079C // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x079D // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x079E // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER9_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x079F // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A0 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A1 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A2 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A3 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A4 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A5 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A6 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A7 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A8 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07A9 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07AA // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07AB // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07AC // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07AD // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07AE // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER10_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07AF // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B0 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B1 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B2 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B3 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B4 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B5 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B6 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B7 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B8 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07B9 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07BA // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07BB // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07BC // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07BD // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07BE // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER11_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07BF // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C0 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C1 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C2 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C3 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C4 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C5 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C6 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C7 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C8 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07C9 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07CA // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07CB // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07CC // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07CD // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07CE // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER12_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07CF // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D0 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D1 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D2 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D3 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D4 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D5 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D6 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D7 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D8 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07D9 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07DA // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07DB // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07DC // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07DD // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07DE // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER13_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07DF // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E0 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E1 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E2 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E3 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E4 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E5 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E6 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E7 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E8 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07E9 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07EA // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07EB // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07EC // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07ED // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07EE // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER14_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07EF // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F0 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F1 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F2 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F3 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F4 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F5 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F6 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F7 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F8 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07F9 // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07FA // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07FB // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07FC // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07FD // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07FE // Ver.: since se-1.1-07-5356-16 -#define ZCL_CURRENT_TIER15_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID 0x07FF // Ver.: since se-1.1-07-5356-16 -#define ZCL_GENERIC_ALARM_MASK_ATTRIBUTE_ID 0x0800 // Ver.: since se-1.1-07-5356-16 -#define ZCL_ELECTRICITY_ALARM_MASK_ATTRIBUTE_ID 0x0801 // Ver.: since se-1.1-07-5356-16 -#define ZCL_GENERIC_FLOW_PRESSURE_ALARM_MASK_ATTRIBUTE_ID 0x0802 // Ver.: since se-1.1-07-5356-16 -#define ZCL_WATER_SPECIFIC_ALARM_MASK_ATTRIBUTE_ID 0x0803 // Ver.: since se-1.1-07-5356-16 -#define ZCL_HEAT_AND_COOLING_SPECIFIC_ALARM_MASK_ATTRIBUTE_ID 0x0804 // Ver.: since se-1.1-07-5356-16 -#define ZCL_GAS_SPECIFIC_ALARM_MASK_ATTRIBUTE_ID 0x0805 // Ver.: since se-1.1-07-5356-16 -#define ZCL_METERING_EXTENDED_GENERIC_ALARM_MASK_ATTRIBUTE_ID 0x0806 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_METERING_MANUFACTURE_ALARM_MASK_ATTRIBUTE_ID 0x0807 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0900 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0901 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0902 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0903 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0904 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0905 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0906 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0907 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0908 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0909 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x090A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x090B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x090C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x090D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x090E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_NO_TIER_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x090F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0910 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0911 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0912 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0913 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0914 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0915 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0916 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0917 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0918 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0919 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x091A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x091B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x091C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x091D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x091E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER1_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x091F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0920 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0921 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0922 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0923 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0924 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0925 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0926 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0927 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0928 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0929 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x092A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x092B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x092C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x092D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x092E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER2_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x092F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0930 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0931 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0932 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0933 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0934 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0935 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0936 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0937 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0938 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0939 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x093A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x093B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x093C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x093D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x093E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER3_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x093F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0940 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0941 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0942 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0943 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0944 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0945 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0946 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0947 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0948 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0949 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x094A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x094B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x094C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x094D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x094E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER4_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x094F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0950 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0951 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0952 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0953 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0954 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0955 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0956 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0957 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0958 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0959 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x095A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x095B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x095C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x095D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x095E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER5_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x095F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0960 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0961 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0962 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0963 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0964 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0965 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0966 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0967 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0968 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0969 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x096A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x096B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x096C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x096D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x096E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER6_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x096F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0970 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0971 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0972 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0973 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0974 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0975 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0976 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0977 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0978 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0979 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x097A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x097B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x097C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x097D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x097E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER7_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x097F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0980 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0981 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0982 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0983 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0984 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0985 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0986 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0987 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0988 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0989 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x098A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x098B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x098C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x098D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x098E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER8_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x098F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0990 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0991 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0992 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0993 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0994 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0995 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0996 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0997 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0998 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x0999 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x099A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x099B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x099C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x099D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x099E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER9_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x099F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09A9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09AA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09AB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09AC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09AD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09AE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER10_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09AF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09B9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09BA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09BB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09BC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09BD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09BE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER11_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09BF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09C9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09CA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09CB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09CC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09CD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09CE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER12_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09CF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09D9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09DA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09DB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09DC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09DD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09DE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER13_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09DF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09E9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09EA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09EB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09EC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09ED // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09EE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER14_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09EF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F0 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F1 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F2 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F3 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F4 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F5 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F6 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F7 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F8 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09F9 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09FA // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09FB // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09FC // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09FD // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09FE // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_TIER15_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID 0x09FF // Ver.: since se-1.2a-07-5356-19 -#define ZCL_BILL_TO_DATE_DELIVERED_ATTRIBUTE_ID 0x0A00 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_BILL_TO_DATE_TIME_STAMP_DELIVERED_ATTRIBUTE_ID 0x0A01 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PROJECTED_BILL_DELIVERED_ATTRIBUTE_ID 0x0A02 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PROJECTED_BILL_TIME_STAMP_DELIVERED_ATTRIBUTE_ID 0x0A03 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_BILL_DELIVERED_TRAILING_DIGIT_ATTRIBUTE_ID 0x0A04 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_BILL_TO_DATE_RECEIVED_ATTRIBUTE_ID 0x0A10 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_BILL_TO_DATE_TIME_STAMP_RECEIVED_ATTRIBUTE_ID 0x0A11 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PROJECTED_BILL_RECEIVED_ATTRIBUTE_ID 0x0A12 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PROJECTED_BILL_TIME_STAMP_RECEIVED_ATTRIBUTE_ID 0x0A13 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_BILL_RECEIVED_TRAILING_DIGIT_ATTRIBUTE_ID 0x0A14 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PROPOSED_CHANGE_SUPPLY_IMPLEMENTATION_TIME_ATTRIBUTE_ID 0x0B00 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PROPOSED_CHANGE_SUPPLY_STATUS_ATTRIBUTE_ID 0x0B01 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_UNCONTROLLED_FLOW_THESHOLD_ATTRIBUTE_ID 0x0B10 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_UNCONTROLLED_FLOW_THESHOLD_UNIT_OF_MEASURE_ATTRIBUTE_ID 0x0B11 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_UNCONTROLLED_FLOW_MULTIPLIER_ATTRIBUTE_ID 0x0B12 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_UNCONTROLLED_FLOW_DIVISOR_ATTRIBUTE_ID 0x0B13 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_FLOW_STABILIZATION_PERIOD_ATTRIBUTE_ID 0x0B14 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_FLOW_MEASUREMENT_PERIOD_ATTRIBUTE_ID 0x0B15 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_ALTERNATIVE_INSTANTANEOUS_DEMAND_ATTRIBUTE_ID 0x0C00 // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_DAY_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C01 // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_DAY_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C02 // Ver.: always -#define ZCL_PREVIOUS_DAY_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C03 // Ver.: always -#define ZCL_PREVIOUS_DAY_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C04 // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_PARTIAL_PROFILE_INTERVAL_START_TIME_DELIVERED_ATTRIBUTE_ID 0x0C05 // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_PARTIAL_PROFILE_INTERVAL_START_TIME_RECEIVED_ATTRIBUTE_ID 0x0C06 // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_PARTIAL_PROFILE_INTERVAL_VALUE_DELIVERED_ATTRIBUTE_ID 0x0C07 // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_PARTIAL_PROFILE_INTERVAL_VALUE_RECEIVED_ATTRIBUTE_ID 0x0C08 // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_DAY_MAX_PRESSURE_ATTRIBUTE_ID 0x0C09 // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_DAY_MIN_PRESSURE_ATTRIBUTE_ID 0x0C0A // Ver.: always -#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_PRESSURE_ATTRIBUTE_ID 0x0C0B // Ver.: always -#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MIN_PRESSURE_ATTRIBUTE_ID 0x0C0C // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_DAY_ALTERNATIVE_MAX_DEMAND_ATTRIBUTE_ID 0x0C0D // Ver.: always -#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_ATTRIBUTE_ID 0x0C0E // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_MONTH_MAX_DEMAND_ATTRIBUTE_ID 0x0C0F // Ver.: always -#define ZCL_CURRENT_ALTERNATIVE_YEAR_MAX_DEMAND_ATTRIBUTE_ID 0x0C10 // Ver.: always -#define ZCL_PREVIOUS_DAY2_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C20 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY2_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C21 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY3_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C22 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY3_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C23 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY4_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C24 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY4_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C25 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY5_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C26 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY5_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C27 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY6_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C28 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY6_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C29 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY7_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C2A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY7_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C2B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY8_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C2C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY8_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C2D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_WEEK_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C30 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_WEEK_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C31 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C32 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C33 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK2_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C34 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK2_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C35 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK3_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C36 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK3_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C37 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK4_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C38 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK4_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C39 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK5_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C3A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK5_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C3B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_MONTH_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C40 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_MONTH_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C41 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C42 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C43 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH2_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C44 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH2_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C45 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH3_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C46 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH3_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C47 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH4_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C48 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH4_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C49 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH5_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C4A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH5_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C4B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH6_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C4C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH6_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C4D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH7_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C4E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH7_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C4F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH8_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C50 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH8_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C51 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH9_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C52 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH9_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C53 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH10_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C54 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH10_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C55 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH11_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C56 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH11_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C57 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH12_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C58 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH12_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C59 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH13_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0C5A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH13_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0C5B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_DAY_ALTERNATIVE_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID 0x0C5C // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_DAY_ALTERNATIVE_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID 0x0C5D // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_DAY_ALTERNATIVE_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID 0x0C5E // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_DAY_ALTERNATIVE_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID 0x0C5F // Ver.: since se-1.4-17-05019-001 -#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID 0x0C60 // Ver.: since se-1.4-17-05019-001 -#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID 0x0C61 // Ver.: since se-1.4-17-05019-001 -#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID 0x0C62 // Ver.: since se-1.4-17-05019-001 -#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID 0x0C63 // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_ACTIVE_SUMMATION_Q1_ATTRIBUTE_ID 0x0D01 // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_ACTIVE_SUMMATION_Q2_ATTRIBUTE_ID 0x0D02 // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_ACTIVE_SUMMATION_Q3_ATTRIBUTE_ID 0x0D03 // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_ACTIVE_SUMMATION_Q4_ATTRIBUTE_ID 0x0D04 // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_REACTIVE_SUMMATION_Q1_ATTRIBUTE_ID 0x0D05 // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_REACTIVE_SUMMATION_Q2_ATTRIBUTE_ID 0x0D06 // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_REACTIVE_SUMMATION_Q3_ATTRIBUTE_ID 0x0D07 // Ver.: since se-1.4-17-05019-001 -#define ZCL_CURRENT_REACTIVE_SUMMATION_Q4_ATTRIBUTE_ID 0x0D08 // Ver.: since se-1.4-17-05019-001 -#define ZCL_SIMPLE_METERING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SIMPLE_METERING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Messaging -// Cluster specification level: se-1.2b-15-0131-02 +#define ZCL_CURRENT_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0000) +#define ZCL_CURRENT_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0001) +#define ZCL_CURRENT_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID (0x0002) +#define ZCL_CURRENT_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID (0x0003) +#define ZCL_DFT_SUMMATION_ATTRIBUTE_ID (0x0004) +#define ZCL_DAILY_FREEZE_TIME_ATTRIBUTE_ID (0x0005) +#define ZCL_POWER_FACTOR_ATTRIBUTE_ID (0x0006) +#define ZCL_READING_SNAP_SHOT_TIME_ATTRIBUTE_ID (0x0007) +#define ZCL_CURRENT_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID (0x0008) +#define ZCL_CURRENT_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID (0x0009) +#define ZCL_DEFAULT_UPDATE_PERIOD_ATTRIBUTE_ID (0x000A) +#define ZCL_FAST_POLL_UPDATE_PERIOD_ATTRIBUTE_ID (0x000B) +#define ZCL_CURRENT_BLOCK_PERIOD_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x000C) +#define ZCL_DAILY_CONSUMPTION_TARGET_ATTRIBUTE_ID (0x000D) +#define ZCL_CURRENT_BLOCK_ATTRIBUTE_ID (0x000E) +#define ZCL_PROFILE_INTERVAL_PERIOD_ATTRIBUTE_ID (0x000F) +#define ZCL_INTERVAL_READ_REPORTING_PERIOD_ATTRIBUTE_ID (0x0010) +#define ZCL_PRESET_READING_TIME_ATTRIBUTE_ID (0x0011) +#define ZCL_VOLUME_PER_REPORT_ATTRIBUTE_ID (0x0012) +#define ZCL_FLOW_RESTRICTION_ATTRIBUTE_ID (0x0013) +#define ZCL_SUPPLY_STATUS_ATTRIBUTE_ID (0x0014) +#define ZCL_CURRENT_INLET_ENERGY_CARRIER_SUMMATION_ATTRIBUTE_ID (0x0015) +#define ZCL_CURRENT_OUTLET_ENERGY_CARRIER_SUMMATION_ATTRIBUTE_ID (0x0016) +#define ZCL_INLET_TEMPERATURE_ATTRIBUTE_ID (0x0017) +#define ZCL_OUTLET_TEMPERATURE_ATTRIBUTE_ID (0x0018) +#define ZCL_CONTROL_TEMPERATURE_ATTRIBUTE_ID (0x0019) +#define ZCL_CURRENT_INLET_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID (0x001A) +#define ZCL_CURRENT_OUTLET_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID (0x001B) +#define ZCL_PREVIOUS_BLOCK_PERIOD_CONSUMIPTION_DELIVERED_ATTRIBUTE_ID (0x001C) +#define ZCL_CURRENT_BLOCK_PERIOD_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x001D) +#define ZCL_CURRENT_BLOCK_RECEIVED_ATTRIBUTE_ID (0x001E) +#define ZCL_DFT_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x001F) +#define ZCL_ACTIVE_REGISTER_TIER_DELIVERED_ATTRIBUTE_ID (0x0020) +#define ZCL_ACTIVE_REGISTER_TIER_RECEIVED_ATTRIBUTE_ID (0x0021) +#define ZCL_LAST_BLOCK_SWITCH_TIME_ATTRIBUTE_ID (0x0022) +#define ZCL_CURRENT_TIER1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0100) +#define ZCL_CURRENT_TIER1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0101) +#define ZCL_CURRENT_TIER2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0102) +#define ZCL_CURRENT_TIER2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0103) +#define ZCL_CURRENT_TIER3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0104) +#define ZCL_CURRENT_TIER3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0105) +#define ZCL_CURRENT_TIER4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0106) +#define ZCL_CURRENT_TIER4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0107) +#define ZCL_CURRENT_TIER5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0108) +#define ZCL_CURRENT_TIER5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0109) +#define ZCL_CURRENT_TIER6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x010A) +#define ZCL_CURRENT_TIER6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x010B) +#define ZCL_CURRENT_TIER7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x010C) +#define ZCL_CURRENT_TIER7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x010D) +#define ZCL_CURRENT_TIER8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x010E) +#define ZCL_CURRENT_TIER8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x010F) +#define ZCL_CURRENT_TIER9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0110) +#define ZCL_CURRENT_TIER9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0111) +#define ZCL_CURRENT_TIER10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0112) +#define ZCL_CURRENT_TIER10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0113) +#define ZCL_CURRENT_TIER11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0114) +#define ZCL_CURRENT_TIER11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0115) +#define ZCL_CURRENT_TIER12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0116) +#define ZCL_CURRENT_TIER12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0117) +#define ZCL_CURRENT_TIER13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0118) +#define ZCL_CURRENT_TIER13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0119) +#define ZCL_CURRENT_TIER14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x011A) +#define ZCL_CURRENT_TIER14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x011B) +#define ZCL_CURRENT_TIER15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x011C) +#define ZCL_CURRENT_TIER15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x011D) +#define ZCL_CURRENT_TIER16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x011E) +#define ZCL_CURRENT_TIER16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x011F) +#define ZCL_CURRENT_TIER17_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0120) +#define ZCL_CURRENT_TIER17_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0121) +#define ZCL_CURRENT_TIER18_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0122) +#define ZCL_CURRENT_TIER18_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0123) +#define ZCL_CURRENT_TIER19_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0124) +#define ZCL_CURRENT_TIER19_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0125) +#define ZCL_CURRENT_TIER20_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0126) +#define ZCL_CURRENT_TIER20_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0127) +#define ZCL_CURRENT_TIER21_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0128) +#define ZCL_CURRENT_TIER21_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0129) +#define ZCL_CURRENT_TIER22_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x012A) +#define ZCL_CURRENT_TIER22_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x012B) +#define ZCL_CURRENT_TIER23_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x012C) +#define ZCL_CURRENT_TIER23_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x012D) +#define ZCL_CURRENT_TIER24_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x012E) +#define ZCL_CURRENT_TIER24_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x012F) +#define ZCL_CURRENT_TIER25_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0130) +#define ZCL_CURRENT_TIER25_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0131) +#define ZCL_CURRENT_TIER26_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0132) +#define ZCL_CURRENT_TIER26_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0133) +#define ZCL_CURRENT_TIER27_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0134) +#define ZCL_CURRENT_TIER27_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0135) +#define ZCL_CURRENT_TIER28_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0136) +#define ZCL_CURRENT_TIER28_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0137) +#define ZCL_CURRENT_TIER29_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0138) +#define ZCL_CURRENT_TIER29_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0139) +#define ZCL_CURRENT_TIER30_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x013A) +#define ZCL_CURRENT_TIER30_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x013B) +#define ZCL_CURRENT_TIER31_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x013C) +#define ZCL_CURRENT_TIER31_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x013D) +#define ZCL_CURRENT_TIER32_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x013E) +#define ZCL_CURRENT_TIER32_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x013F) +#define ZCL_CURRENT_TIER33_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0140) +#define ZCL_CURRENT_TIER33_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0141) +#define ZCL_CURRENT_TIER34_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0142) +#define ZCL_CURRENT_TIER34_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0143) +#define ZCL_CURRENT_TIER35_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0144) +#define ZCL_CURRENT_TIER35_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0145) +#define ZCL_CURRENT_TIER36_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0146) +#define ZCL_CURRENT_TIER36_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0147) +#define ZCL_CURRENT_TIER37_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0148) +#define ZCL_CURRENT_TIER37_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0149) +#define ZCL_CURRENT_TIER38_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x014A) +#define ZCL_CURRENT_TIER38_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x014B) +#define ZCL_CURRENT_TIER39_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x014C) +#define ZCL_CURRENT_TIER39_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x014D) +#define ZCL_CURRENT_TIER40_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x014E) +#define ZCL_CURRENT_TIER40_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x014F) +#define ZCL_CURRENT_TIER41_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0150) +#define ZCL_CURRENT_TIER41_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0151) +#define ZCL_CURRENT_TIER42_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0152) +#define ZCL_CURRENT_TIER42_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0153) +#define ZCL_CURRENT_TIER43_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0154) +#define ZCL_CURRENT_TIER43_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0155) +#define ZCL_CURRENT_TIER44_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0156) +#define ZCL_CURRENT_TIER44_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0157) +#define ZCL_CURRENT_TIER45_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0158) +#define ZCL_CURRENT_TIER45_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0159) +#define ZCL_CURRENT_TIER46_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x015A) +#define ZCL_CURRENT_TIER46_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x015B) +#define ZCL_CURRENT_TIER47_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x015C) +#define ZCL_CURRENT_TIER47_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x015D) +#define ZCL_CURRENT_TIER48_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x015E) +#define ZCL_CURRENT_TIER48_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x015F) +#define ZCL_CPP1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x01FC) +#define ZCL_CPP2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x01FE) +#define ZCL_STATUS_ATTRIBUTE_ID (0x0200) +#define ZCL_REMAINING_BATTERY_LIFE_ATTRIBUTE_ID (0x0201) +#define ZCL_HOURS_IN_OPERATION_ATTRIBUTE_ID (0x0202) +#define ZCL_HOURS_IN_FAULT_ATTRIBUTE_ID (0x0203) +#define ZCL_EXTENDED_STATUS_ATTRIBUTE_ID (0x0204) +#define ZCL_REMAINING_BATTERY_LIFE_IN_DAYS_ATTRIBUTE_ID (0x0205) +#define ZCL_CURRENT_METER_ID_ATTRIBUTE_ID (0x0206) +#define ZCL_AMBIENT_CONSUMPTION_INDICATOR_ATTRIBUTE_ID (0x0207) +#define ZCL_UNIT_OF_MEASURE_ATTRIBUTE_ID (0x0300) +#define ZCL_MULTIPLIER_ATTRIBUTE_ID (0x0301) +#define ZCL_DIVISOR_ATTRIBUTE_ID (0x0302) +#define ZCL_SUMMATION_FORMATTING_ATTRIBUTE_ID (0x0303) +#define ZCL_DEMAND_FORMATTING_ATTRIBUTE_ID (0x0304) +#define ZCL_HISTORICAL_CONSUMPTION_FORMATTING_ATTRIBUTE_ID (0x0305) +#define ZCL_METERING_DEVICE_TYPE_ATTRIBUTE_ID (0x0306) +#define ZCL_SITE_ID_ATTRIBUTE_ID (0x0307) +#define ZCL_METER_SERIAL_NUMBER_ATTRIBUTE_ID (0x0308) +#define ZCL_ENERGY_CARRIER_UNIT_OF_MEASURE_ATTRIBUTE_ID (0x0309) +#define ZCL_ENERGY_CARRIER_SUMMATION_FORMATTING_ATTRIBUTE_ID (0x030A) +#define ZCL_ENERGY_CARRIER_DEMAND_FORMATTING_ATTRIBUTE_ID (0x030B) +#define ZCL_TEMPERATURE_UNIT_OF_MEASURE_ATTRIBUTE_ID (0x030C) +#define ZCL_TEMPERATURE_FORMATTING_ATTRIBUTE_ID (0x030D) +#define ZCL_MODULE_SERIAL_NUMBER_ATTRIBUTE_ID (0x030E) +#define ZCL_OPERATING_TARIFF_LABEL_DELIVERED_ATTRIBUTE_ID (0x030F) +#define ZCL_OPERATING_TARIFF_LABEL_RECEIVED_ATTRIBUTE_ID (0x0310) +#define ZCL_CUSTOMER_ID_NUMBER_ATTRIBUTE_ID (0x0311) +#define ZCL_ALTERNATIVE_UNIT_OF_MEASURE_ATTRIBUTE_ID (0x0312) +#define ZCL_ALTERNATIVE_DEMAND_FORMATTING_ATTRIBUTE_ID (0x0313) +#define ZCL_ALTERNATIVE_CONSUMPTION_FORMATTING_ATTRIBUTE_ID (0x0314) +#define ZCL_INSTANTANEOUS_DEMAND_ATTRIBUTE_ID (0x0400) +#define ZCL_CURRENT_DAY_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0401) +#define ZCL_CURRENT_DAY_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0402) +#define ZCL_PREVIOUS_DAY_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0403) +#define ZCL_PREVIOUS_DAY_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0404) +#define ZCL_CURRENT_PARTIAL_PROFILE_INTERVAL_START_TIME_DELIVERED_ATTRIBUTE_ID (0x0405) +#define ZCL_CURRENT_PARTIAL_PROFILE_INTERVAL_START_TIME_RECEIVED_ATTRIBUTE_ID (0x0406) +#define ZCL_CURRENT_PARTIAL_PROFILE_INTERVAL_VALUE_DELIVERED_ATTRIBUTE_ID (0x0407) +#define ZCL_CURRENT_PARTIAL_PROFILE_INTERVAL_VALUE_RECEIVED_ATTRIBUTE_ID (0x0408) +#define ZCL_CURRENT_DAY_MAX_PRESSURE_ATTRIBUTE_ID (0x0409) +#define ZCL_CURRENT_DAY_MIN_PRESSURE_ATTRIBUTE_ID (0x040A) +#define ZCL_PREVIOUS_DAY_MAX_PRESSURE_ATTRIBUTE_ID (0x040B) +#define ZCL_PREVIOUS_DAY_MIN_PRESSURE_ATTRIBUTE_ID (0x040C) +#define ZCL_CURRENT_DAY_MAX_DEMAND_ATTRIBUTE_ID (0x040D) +#define ZCL_PREVIOUS_DAY_MAX_DEMAND_ATTRIBUTE_ID (0x040E) +#define ZCL_CURRENT_MONTH_MAX_DEMAND_ATTRIBUTE_ID (0x040F) +#define ZCL_CURRENT_YEAR_MAX_DEMAND_ATTRIBUTE_ID (0x0410) +#define ZCL_CURRENT_DAY_MAX_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID (0x0411) +#define ZCL_PREVIOUS_DAY_MAX_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID (0x0412) +#define ZCL_CURRENT_MONTH_MAX_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID (0x0413) +#define ZCL_CURRENT_MONTH_MIN_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID (0x0414) +#define ZCL_CURRENT_YEAR_MAX_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID (0x0415) +#define ZCL_CURRENT_YEAR_MIN_ENERGY_CARRIER_DEMAND_ATTRIBUTE_ID (0x0416) +#define ZCL_PREVIOUS_DAY2_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0420) +#define ZCL_PREVIOUS_DAY2_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0421) +#define ZCL_PREVIOUS_DAY3_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0422) +#define ZCL_PREVIOUS_DAY3_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0423) +#define ZCL_PREVIOUS_DAY4_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0424) +#define ZCL_PREVIOUS_DAY4_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0425) +#define ZCL_PREVIOUS_DAY5_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0426) +#define ZCL_PREVIOUS_DAY5_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0427) +#define ZCL_PREVIOUS_DAY6_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0428) +#define ZCL_PREVIOUS_DAY6_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0429) +#define ZCL_PREVIOUS_DAY7_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x042A) +#define ZCL_PREVIOUS_DAY7_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x042B) +#define ZCL_PREVIOUS_DAY8_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x042C) +#define ZCL_PREVIOUS_DAY8_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x042D) +#define ZCL_CURRENT_WEEK_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0430) +#define ZCL_CURRENT_WEEK_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0431) +#define ZCL_PREVIOUS_WEEK_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0432) +#define ZCL_PREVIOUS_WEEK_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0433) +#define ZCL_PREVIOUS_WEEK2_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0434) +#define ZCL_PREVIOUS_WEEK2_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0435) +#define ZCL_PREVIOUS_WEEK3_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0436) +#define ZCL_PREVIOUS_WEEK3_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0437) +#define ZCL_PREVIOUS_WEEK4_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0438) +#define ZCL_PREVIOUS_WEEK4_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0439) +#define ZCL_PREVIOUS_WEEK5_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x043A) +#define ZCL_PREVIOUS_WEEK5_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x043B) +#define ZCL_CURRENT_MONTH_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0440) +#define ZCL_CURRENT_MONTH_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0441) +#define ZCL_PREVIOUS_MONTH_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0442) +#define ZCL_PREVIOUS_MONTH_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0443) +#define ZCL_PREVIOUS_MONTH2_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0444) +#define ZCL_PREVIOUS_MONTH2_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0445) +#define ZCL_PREVIOUS_MONTH3_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0446) +#define ZCL_PREVIOUS_MONTH3_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0447) +#define ZCL_PREVIOUS_MONTH4_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0448) +#define ZCL_PREVIOUS_MONTH4_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0449) +#define ZCL_PREVIOUS_MONTH5_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x044A) +#define ZCL_PREVIOUS_MONTH5_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x044B) +#define ZCL_PREVIOUS_MONTH6_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x044C) +#define ZCL_PREVIOUS_MONTH6_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x044D) +#define ZCL_PREVIOUS_MONTH7_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x044E) +#define ZCL_PREVIOUS_MONTH7_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x044F) +#define ZCL_PREVIOUS_MONTH8_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0450) +#define ZCL_PREVIOUS_MONTH8_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0451) +#define ZCL_PREVIOUS_MONTH9_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0452) +#define ZCL_PREVIOUS_MONTH9_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0453) +#define ZCL_PREVIOUS_MONTH10_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0454) +#define ZCL_PREVIOUS_MONTH10_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0455) +#define ZCL_PREVIOUS_MONTH11_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0456) +#define ZCL_PREVIOUS_MONTH11_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0457) +#define ZCL_PREVIOUS_MONTH12_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0458) +#define ZCL_PREVIOUS_MONTH12_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0459) +#define ZCL_PREVIOUS_MONTH13_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x045A) +#define ZCL_PREVIOUS_MONTH13_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x045B) +#define ZCL_METERING_HISTORICAL_FREEZE_TIME_ATTRIBUTE_ID (0x045C) +#define ZCL_CURRENT_DAY_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID (0x045D) +#define ZCL_CURRENT_DAY_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID (0x045E) +#define ZCL_CURRENT_DAY_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID (0x045F) +#define ZCL_CURRENT_DAY_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID (0x0460) +#define ZCL_PREVIOUS_DAY_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID (0x0461) +#define ZCL_PREVIOUS_DAY_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID (0x0462) +#define ZCL_PREVIOUS_DAY_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID (0x0463) +#define ZCL_PREVIOUS_DAY_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID (0x0464) +#define ZCL_MAX_NUMBER_OF_PERIODS_DELIVERED_ATTRIBUTE_ID (0x0500) +#define ZCL_CURRENT_DEMAND_DELIVERED_ATTRIBUTE_ID (0x0600) +#define ZCL_DEMAND_LIMIT_ATTRIBUTE_ID (0x0601) +#define ZCL_DEMAND_INTEGRATION_PERIOD_ATTRIBUTE_ID (0x0602) +#define ZCL_NUMBER_OF_DEMAND_SUBINTERVALS_ATTRIBUTE_ID (0x0603) +#define ZCL_DEMAND_LIMIT_ARM_DURATION_IN_MINUTES_ATTRIBUTE_ID (0x0604) +#define ZCL_LOAD_LIMIT_SUPPLY_STATE_ATTRIBUTE_ID (0x0605) +#define ZCL_LOAD_LIMIT_COUNTER_ATTRIBUTE_ID (0x0606) +#define ZCL_SUPPLY_TAMPER_STATE_ATTRIBUTE_ID (0x0607) +#define ZCL_SUPPLY_DEPLETION_STATE_ATTRIBUTE_ID (0x0608) +#define ZCL_SUPPLY_UNCONTROLLED_FLOW_STATE_ATTRIBUTE_ID (0x0609) +#define ZCL_CURRENT_NO_TIER_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0700) +#define ZCL_CURRENT_NO_TIER_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0701) +#define ZCL_CURRENT_NO_TIER_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0702) +#define ZCL_CURRENT_NO_TIER_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0703) +#define ZCL_CURRENT_NO_TIER_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0704) +#define ZCL_CURRENT_NO_TIER_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0705) +#define ZCL_CURRENT_NO_TIER_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0706) +#define ZCL_CURRENT_NO_TIER_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0707) +#define ZCL_CURRENT_NO_TIER_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0708) +#define ZCL_CURRENT_NO_TIER_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0709) +#define ZCL_CURRENT_NO_TIER_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x070A) +#define ZCL_CURRENT_NO_TIER_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x070B) +#define ZCL_CURRENT_NO_TIER_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x070C) +#define ZCL_CURRENT_NO_TIER_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x070D) +#define ZCL_CURRENT_NO_TIER_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x070E) +#define ZCL_CURRENT_NO_TIER_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x070F) +#define ZCL_CURRENT_TIER1_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0710) +#define ZCL_CURRENT_TIER1_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0711) +#define ZCL_CURRENT_TIER1_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0712) +#define ZCL_CURRENT_TIER1_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0713) +#define ZCL_CURRENT_TIER1_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0714) +#define ZCL_CURRENT_TIER1_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0715) +#define ZCL_CURRENT_TIER1_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0716) +#define ZCL_CURRENT_TIER1_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0717) +#define ZCL_CURRENT_TIER1_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0718) +#define ZCL_CURRENT_TIER1_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0719) +#define ZCL_CURRENT_TIER1_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x071A) +#define ZCL_CURRENT_TIER1_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x071B) +#define ZCL_CURRENT_TIER1_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x071C) +#define ZCL_CURRENT_TIER1_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x071D) +#define ZCL_CURRENT_TIER1_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x071E) +#define ZCL_CURRENT_TIER1_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x071F) +#define ZCL_CURRENT_TIER2_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0720) +#define ZCL_CURRENT_TIER2_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0721) +#define ZCL_CURRENT_TIER2_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0722) +#define ZCL_CURRENT_TIER2_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0723) +#define ZCL_CURRENT_TIER2_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0724) +#define ZCL_CURRENT_TIER2_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0725) +#define ZCL_CURRENT_TIER2_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0726) +#define ZCL_CURRENT_TIER2_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0727) +#define ZCL_CURRENT_TIER2_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0728) +#define ZCL_CURRENT_TIER2_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0729) +#define ZCL_CURRENT_TIER2_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x072A) +#define ZCL_CURRENT_TIER2_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x072B) +#define ZCL_CURRENT_TIER2_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x072C) +#define ZCL_CURRENT_TIER2_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x072D) +#define ZCL_CURRENT_TIER2_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x072E) +#define ZCL_CURRENT_TIER2_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x072F) +#define ZCL_CURRENT_TIER3_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0730) +#define ZCL_CURRENT_TIER3_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0731) +#define ZCL_CURRENT_TIER3_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0732) +#define ZCL_CURRENT_TIER3_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0733) +#define ZCL_CURRENT_TIER3_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0734) +#define ZCL_CURRENT_TIER3_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0735) +#define ZCL_CURRENT_TIER3_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0736) +#define ZCL_CURRENT_TIER3_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0737) +#define ZCL_CURRENT_TIER3_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0738) +#define ZCL_CURRENT_TIER3_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0739) +#define ZCL_CURRENT_TIER3_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x073A) +#define ZCL_CURRENT_TIER3_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x073B) +#define ZCL_CURRENT_TIER3_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x073C) +#define ZCL_CURRENT_TIER3_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x073D) +#define ZCL_CURRENT_TIER3_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x073E) +#define ZCL_CURRENT_TIER3_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x073F) +#define ZCL_CURRENT_TIER4_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0740) +#define ZCL_CURRENT_TIER4_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0741) +#define ZCL_CURRENT_TIER4_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0742) +#define ZCL_CURRENT_TIER4_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0743) +#define ZCL_CURRENT_TIER4_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0744) +#define ZCL_CURRENT_TIER4_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0745) +#define ZCL_CURRENT_TIER4_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0746) +#define ZCL_CURRENT_TIER4_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0747) +#define ZCL_CURRENT_TIER4_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0748) +#define ZCL_CURRENT_TIER4_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0749) +#define ZCL_CURRENT_TIER4_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x074A) +#define ZCL_CURRENT_TIER4_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x074B) +#define ZCL_CURRENT_TIER4_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x074C) +#define ZCL_CURRENT_TIER4_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x074D) +#define ZCL_CURRENT_TIER4_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x074E) +#define ZCL_CURRENT_TIER4_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x074F) +#define ZCL_CURRENT_TIER5_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0750) +#define ZCL_CURRENT_TIER5_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0751) +#define ZCL_CURRENT_TIER5_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0752) +#define ZCL_CURRENT_TIER5_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0753) +#define ZCL_CURRENT_TIER5_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0754) +#define ZCL_CURRENT_TIER5_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0755) +#define ZCL_CURRENT_TIER5_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0756) +#define ZCL_CURRENT_TIER5_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0757) +#define ZCL_CURRENT_TIER5_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0758) +#define ZCL_CURRENT_TIER5_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0759) +#define ZCL_CURRENT_TIER5_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x075A) +#define ZCL_CURRENT_TIER5_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x075B) +#define ZCL_CURRENT_TIER5_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x075C) +#define ZCL_CURRENT_TIER5_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x075D) +#define ZCL_CURRENT_TIER5_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x075E) +#define ZCL_CURRENT_TIER5_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x075F) +#define ZCL_CURRENT_TIER6_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0760) +#define ZCL_CURRENT_TIER6_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0761) +#define ZCL_CURRENT_TIER6_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0762) +#define ZCL_CURRENT_TIER6_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0763) +#define ZCL_CURRENT_TIER6_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0764) +#define ZCL_CURRENT_TIER6_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0765) +#define ZCL_CURRENT_TIER6_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0766) +#define ZCL_CURRENT_TIER6_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0767) +#define ZCL_CURRENT_TIER6_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0768) +#define ZCL_CURRENT_TIER6_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0769) +#define ZCL_CURRENT_TIER6_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x076A) +#define ZCL_CURRENT_TIER6_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x076B) +#define ZCL_CURRENT_TIER6_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x076C) +#define ZCL_CURRENT_TIER6_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x076D) +#define ZCL_CURRENT_TIER6_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x076E) +#define ZCL_CURRENT_TIER6_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x076F) +#define ZCL_CURRENT_TIER7_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0770) +#define ZCL_CURRENT_TIER7_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0771) +#define ZCL_CURRENT_TIER7_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0772) +#define ZCL_CURRENT_TIER7_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0773) +#define ZCL_CURRENT_TIER7_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0774) +#define ZCL_CURRENT_TIER7_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0775) +#define ZCL_CURRENT_TIER7_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0776) +#define ZCL_CURRENT_TIER7_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0777) +#define ZCL_CURRENT_TIER7_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0778) +#define ZCL_CURRENT_TIER7_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0779) +#define ZCL_CURRENT_TIER7_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x077A) +#define ZCL_CURRENT_TIER7_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x077B) +#define ZCL_CURRENT_TIER7_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x077C) +#define ZCL_CURRENT_TIER7_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x077D) +#define ZCL_CURRENT_TIER7_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x077E) +#define ZCL_CURRENT_TIER7_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x077F) +#define ZCL_CURRENT_TIER8_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0780) +#define ZCL_CURRENT_TIER8_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0781) +#define ZCL_CURRENT_TIER8_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0782) +#define ZCL_CURRENT_TIER8_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0783) +#define ZCL_CURRENT_TIER8_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0784) +#define ZCL_CURRENT_TIER8_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0785) +#define ZCL_CURRENT_TIER8_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0786) +#define ZCL_CURRENT_TIER8_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0787) +#define ZCL_CURRENT_TIER8_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0788) +#define ZCL_CURRENT_TIER8_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0789) +#define ZCL_CURRENT_TIER8_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x078A) +#define ZCL_CURRENT_TIER8_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x078B) +#define ZCL_CURRENT_TIER8_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x078C) +#define ZCL_CURRENT_TIER8_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x078D) +#define ZCL_CURRENT_TIER8_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x078E) +#define ZCL_CURRENT_TIER8_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x078F) +#define ZCL_CURRENT_TIER9_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0790) +#define ZCL_CURRENT_TIER9_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0791) +#define ZCL_CURRENT_TIER9_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0792) +#define ZCL_CURRENT_TIER9_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0793) +#define ZCL_CURRENT_TIER9_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0794) +#define ZCL_CURRENT_TIER9_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0795) +#define ZCL_CURRENT_TIER9_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0796) +#define ZCL_CURRENT_TIER9_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0797) +#define ZCL_CURRENT_TIER9_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0798) +#define ZCL_CURRENT_TIER9_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x0799) +#define ZCL_CURRENT_TIER9_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x079A) +#define ZCL_CURRENT_TIER9_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x079B) +#define ZCL_CURRENT_TIER9_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x079C) +#define ZCL_CURRENT_TIER9_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x079D) +#define ZCL_CURRENT_TIER9_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x079E) +#define ZCL_CURRENT_TIER9_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x079F) +#define ZCL_CURRENT_TIER10_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A0) +#define ZCL_CURRENT_TIER10_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A1) +#define ZCL_CURRENT_TIER10_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A2) +#define ZCL_CURRENT_TIER10_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A3) +#define ZCL_CURRENT_TIER10_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A4) +#define ZCL_CURRENT_TIER10_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A5) +#define ZCL_CURRENT_TIER10_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A6) +#define ZCL_CURRENT_TIER10_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A7) +#define ZCL_CURRENT_TIER10_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A8) +#define ZCL_CURRENT_TIER10_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07A9) +#define ZCL_CURRENT_TIER10_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07AA) +#define ZCL_CURRENT_TIER10_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07AB) +#define ZCL_CURRENT_TIER10_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07AC) +#define ZCL_CURRENT_TIER10_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07AD) +#define ZCL_CURRENT_TIER10_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07AE) +#define ZCL_CURRENT_TIER10_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07AF) +#define ZCL_CURRENT_TIER11_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B0) +#define ZCL_CURRENT_TIER11_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B1) +#define ZCL_CURRENT_TIER11_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B2) +#define ZCL_CURRENT_TIER11_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B3) +#define ZCL_CURRENT_TIER11_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B4) +#define ZCL_CURRENT_TIER11_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B5) +#define ZCL_CURRENT_TIER11_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B6) +#define ZCL_CURRENT_TIER11_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B7) +#define ZCL_CURRENT_TIER11_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B8) +#define ZCL_CURRENT_TIER11_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07B9) +#define ZCL_CURRENT_TIER11_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07BA) +#define ZCL_CURRENT_TIER11_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07BB) +#define ZCL_CURRENT_TIER11_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07BC) +#define ZCL_CURRENT_TIER11_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07BD) +#define ZCL_CURRENT_TIER11_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07BE) +#define ZCL_CURRENT_TIER11_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07BF) +#define ZCL_CURRENT_TIER12_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C0) +#define ZCL_CURRENT_TIER12_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C1) +#define ZCL_CURRENT_TIER12_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C2) +#define ZCL_CURRENT_TIER12_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C3) +#define ZCL_CURRENT_TIER12_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C4) +#define ZCL_CURRENT_TIER12_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C5) +#define ZCL_CURRENT_TIER12_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C6) +#define ZCL_CURRENT_TIER12_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C7) +#define ZCL_CURRENT_TIER12_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C8) +#define ZCL_CURRENT_TIER12_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07C9) +#define ZCL_CURRENT_TIER12_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07CA) +#define ZCL_CURRENT_TIER12_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07CB) +#define ZCL_CURRENT_TIER12_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07CC) +#define ZCL_CURRENT_TIER12_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07CD) +#define ZCL_CURRENT_TIER12_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07CE) +#define ZCL_CURRENT_TIER12_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07CF) +#define ZCL_CURRENT_TIER13_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D0) +#define ZCL_CURRENT_TIER13_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D1) +#define ZCL_CURRENT_TIER13_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D2) +#define ZCL_CURRENT_TIER13_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D3) +#define ZCL_CURRENT_TIER13_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D4) +#define ZCL_CURRENT_TIER13_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D5) +#define ZCL_CURRENT_TIER13_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D6) +#define ZCL_CURRENT_TIER13_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D7) +#define ZCL_CURRENT_TIER13_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D8) +#define ZCL_CURRENT_TIER13_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07D9) +#define ZCL_CURRENT_TIER13_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07DA) +#define ZCL_CURRENT_TIER13_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07DB) +#define ZCL_CURRENT_TIER13_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07DC) +#define ZCL_CURRENT_TIER13_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07DD) +#define ZCL_CURRENT_TIER13_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07DE) +#define ZCL_CURRENT_TIER13_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07DF) +#define ZCL_CURRENT_TIER14_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E0) +#define ZCL_CURRENT_TIER14_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E1) +#define ZCL_CURRENT_TIER14_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E2) +#define ZCL_CURRENT_TIER14_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E3) +#define ZCL_CURRENT_TIER14_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E4) +#define ZCL_CURRENT_TIER14_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E5) +#define ZCL_CURRENT_TIER14_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E6) +#define ZCL_CURRENT_TIER14_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E7) +#define ZCL_CURRENT_TIER14_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E8) +#define ZCL_CURRENT_TIER14_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07E9) +#define ZCL_CURRENT_TIER14_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07EA) +#define ZCL_CURRENT_TIER14_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07EB) +#define ZCL_CURRENT_TIER14_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07EC) +#define ZCL_CURRENT_TIER14_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07ED) +#define ZCL_CURRENT_TIER14_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07EE) +#define ZCL_CURRENT_TIER14_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07EF) +#define ZCL_CURRENT_TIER15_BLOCK1_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F0) +#define ZCL_CURRENT_TIER15_BLOCK2_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F1) +#define ZCL_CURRENT_TIER15_BLOCK3_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F2) +#define ZCL_CURRENT_TIER15_BLOCK4_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F3) +#define ZCL_CURRENT_TIER15_BLOCK5_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F4) +#define ZCL_CURRENT_TIER15_BLOCK6_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F5) +#define ZCL_CURRENT_TIER15_BLOCK7_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F6) +#define ZCL_CURRENT_TIER15_BLOCK8_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F7) +#define ZCL_CURRENT_TIER15_BLOCK9_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F8) +#define ZCL_CURRENT_TIER15_BLOCK10_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07F9) +#define ZCL_CURRENT_TIER15_BLOCK11_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07FA) +#define ZCL_CURRENT_TIER15_BLOCK12_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07FB) +#define ZCL_CURRENT_TIER15_BLOCK13_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07FC) +#define ZCL_CURRENT_TIER15_BLOCK14_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07FD) +#define ZCL_CURRENT_TIER15_BLOCK15_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07FE) +#define ZCL_CURRENT_TIER15_BLOCK16_SUMMATION_DELIVERED_ATTRIBUTE_ID (0x07FF) +#define ZCL_GENERIC_ALARM_MASK_ATTRIBUTE_ID (0x0800) +#define ZCL_ELECTRICITY_ALARM_MASK_ATTRIBUTE_ID (0x0801) +#define ZCL_GENERIC_FLOW_PRESSURE_ALARM_MASK_ATTRIBUTE_ID (0x0802) +#define ZCL_WATER_SPECIFIC_ALARM_MASK_ATTRIBUTE_ID (0x0803) +#define ZCL_HEAT_AND_COOLING_SPECIFIC_ALARM_MASK_ATTRIBUTE_ID (0x0804) +#define ZCL_GAS_SPECIFIC_ALARM_MASK_ATTRIBUTE_ID (0x0805) +#define ZCL_METERING_EXTENDED_GENERIC_ALARM_MASK_ATTRIBUTE_ID (0x0806) +#define ZCL_METERING_MANUFACTURE_ALARM_MASK_ATTRIBUTE_ID (0x0807) +#define ZCL_CURRENT_NO_TIER_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0900) +#define ZCL_CURRENT_NO_TIER_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0901) +#define ZCL_CURRENT_NO_TIER_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0902) +#define ZCL_CURRENT_NO_TIER_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0903) +#define ZCL_CURRENT_NO_TIER_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0904) +#define ZCL_CURRENT_NO_TIER_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0905) +#define ZCL_CURRENT_NO_TIER_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0906) +#define ZCL_CURRENT_NO_TIER_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0907) +#define ZCL_CURRENT_NO_TIER_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0908) +#define ZCL_CURRENT_NO_TIER_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0909) +#define ZCL_CURRENT_NO_TIER_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x090A) +#define ZCL_CURRENT_NO_TIER_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x090B) +#define ZCL_CURRENT_NO_TIER_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x090C) +#define ZCL_CURRENT_NO_TIER_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x090D) +#define ZCL_CURRENT_NO_TIER_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x090E) +#define ZCL_CURRENT_NO_TIER_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x090F) +#define ZCL_CURRENT_TIER1_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0910) +#define ZCL_CURRENT_TIER1_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0911) +#define ZCL_CURRENT_TIER1_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0912) +#define ZCL_CURRENT_TIER1_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0913) +#define ZCL_CURRENT_TIER1_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0914) +#define ZCL_CURRENT_TIER1_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0915) +#define ZCL_CURRENT_TIER1_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0916) +#define ZCL_CURRENT_TIER1_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0917) +#define ZCL_CURRENT_TIER1_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0918) +#define ZCL_CURRENT_TIER1_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0919) +#define ZCL_CURRENT_TIER1_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x091A) +#define ZCL_CURRENT_TIER1_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x091B) +#define ZCL_CURRENT_TIER1_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x091C) +#define ZCL_CURRENT_TIER1_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x091D) +#define ZCL_CURRENT_TIER1_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x091E) +#define ZCL_CURRENT_TIER1_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x091F) +#define ZCL_CURRENT_TIER2_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0920) +#define ZCL_CURRENT_TIER2_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0921) +#define ZCL_CURRENT_TIER2_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0922) +#define ZCL_CURRENT_TIER2_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0923) +#define ZCL_CURRENT_TIER2_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0924) +#define ZCL_CURRENT_TIER2_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0925) +#define ZCL_CURRENT_TIER2_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0926) +#define ZCL_CURRENT_TIER2_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0927) +#define ZCL_CURRENT_TIER2_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0928) +#define ZCL_CURRENT_TIER2_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0929) +#define ZCL_CURRENT_TIER2_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x092A) +#define ZCL_CURRENT_TIER2_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x092B) +#define ZCL_CURRENT_TIER2_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x092C) +#define ZCL_CURRENT_TIER2_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x092D) +#define ZCL_CURRENT_TIER2_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x092E) +#define ZCL_CURRENT_TIER2_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x092F) +#define ZCL_CURRENT_TIER3_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0930) +#define ZCL_CURRENT_TIER3_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0931) +#define ZCL_CURRENT_TIER3_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0932) +#define ZCL_CURRENT_TIER3_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0933) +#define ZCL_CURRENT_TIER3_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0934) +#define ZCL_CURRENT_TIER3_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0935) +#define ZCL_CURRENT_TIER3_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0936) +#define ZCL_CURRENT_TIER3_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0937) +#define ZCL_CURRENT_TIER3_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0938) +#define ZCL_CURRENT_TIER3_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0939) +#define ZCL_CURRENT_TIER3_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x093A) +#define ZCL_CURRENT_TIER3_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x093B) +#define ZCL_CURRENT_TIER3_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x093C) +#define ZCL_CURRENT_TIER3_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x093D) +#define ZCL_CURRENT_TIER3_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x093E) +#define ZCL_CURRENT_TIER3_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x093F) +#define ZCL_CURRENT_TIER4_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0940) +#define ZCL_CURRENT_TIER4_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0941) +#define ZCL_CURRENT_TIER4_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0942) +#define ZCL_CURRENT_TIER4_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0943) +#define ZCL_CURRENT_TIER4_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0944) +#define ZCL_CURRENT_TIER4_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0945) +#define ZCL_CURRENT_TIER4_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0946) +#define ZCL_CURRENT_TIER4_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0947) +#define ZCL_CURRENT_TIER4_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0948) +#define ZCL_CURRENT_TIER4_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0949) +#define ZCL_CURRENT_TIER4_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x094A) +#define ZCL_CURRENT_TIER4_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x094B) +#define ZCL_CURRENT_TIER4_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x094C) +#define ZCL_CURRENT_TIER4_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x094D) +#define ZCL_CURRENT_TIER4_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x094E) +#define ZCL_CURRENT_TIER4_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x094F) +#define ZCL_CURRENT_TIER5_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0950) +#define ZCL_CURRENT_TIER5_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0951) +#define ZCL_CURRENT_TIER5_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0952) +#define ZCL_CURRENT_TIER5_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0953) +#define ZCL_CURRENT_TIER5_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0954) +#define ZCL_CURRENT_TIER5_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0955) +#define ZCL_CURRENT_TIER5_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0956) +#define ZCL_CURRENT_TIER5_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0957) +#define ZCL_CURRENT_TIER5_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0958) +#define ZCL_CURRENT_TIER5_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0959) +#define ZCL_CURRENT_TIER5_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x095A) +#define ZCL_CURRENT_TIER5_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x095B) +#define ZCL_CURRENT_TIER5_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x095C) +#define ZCL_CURRENT_TIER5_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x095D) +#define ZCL_CURRENT_TIER5_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x095E) +#define ZCL_CURRENT_TIER5_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x095F) +#define ZCL_CURRENT_TIER6_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0960) +#define ZCL_CURRENT_TIER6_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0961) +#define ZCL_CURRENT_TIER6_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0962) +#define ZCL_CURRENT_TIER6_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0963) +#define ZCL_CURRENT_TIER6_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0964) +#define ZCL_CURRENT_TIER6_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0965) +#define ZCL_CURRENT_TIER6_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0966) +#define ZCL_CURRENT_TIER6_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0967) +#define ZCL_CURRENT_TIER6_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0968) +#define ZCL_CURRENT_TIER6_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0969) +#define ZCL_CURRENT_TIER6_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x096A) +#define ZCL_CURRENT_TIER6_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x096B) +#define ZCL_CURRENT_TIER6_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x096C) +#define ZCL_CURRENT_TIER6_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x096D) +#define ZCL_CURRENT_TIER6_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x096E) +#define ZCL_CURRENT_TIER6_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x096F) +#define ZCL_CURRENT_TIER7_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0970) +#define ZCL_CURRENT_TIER7_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0971) +#define ZCL_CURRENT_TIER7_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0972) +#define ZCL_CURRENT_TIER7_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0973) +#define ZCL_CURRENT_TIER7_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0974) +#define ZCL_CURRENT_TIER7_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0975) +#define ZCL_CURRENT_TIER7_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0976) +#define ZCL_CURRENT_TIER7_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0977) +#define ZCL_CURRENT_TIER7_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0978) +#define ZCL_CURRENT_TIER7_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0979) +#define ZCL_CURRENT_TIER7_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x097A) +#define ZCL_CURRENT_TIER7_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x097B) +#define ZCL_CURRENT_TIER7_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x097C) +#define ZCL_CURRENT_TIER7_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x097D) +#define ZCL_CURRENT_TIER7_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x097E) +#define ZCL_CURRENT_TIER7_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x097F) +#define ZCL_CURRENT_TIER8_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0980) +#define ZCL_CURRENT_TIER8_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0981) +#define ZCL_CURRENT_TIER8_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0982) +#define ZCL_CURRENT_TIER8_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0983) +#define ZCL_CURRENT_TIER8_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0984) +#define ZCL_CURRENT_TIER8_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0985) +#define ZCL_CURRENT_TIER8_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0986) +#define ZCL_CURRENT_TIER8_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0987) +#define ZCL_CURRENT_TIER8_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0988) +#define ZCL_CURRENT_TIER8_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0989) +#define ZCL_CURRENT_TIER8_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x098A) +#define ZCL_CURRENT_TIER8_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x098B) +#define ZCL_CURRENT_TIER8_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x098C) +#define ZCL_CURRENT_TIER8_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x098D) +#define ZCL_CURRENT_TIER8_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x098E) +#define ZCL_CURRENT_TIER8_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x098F) +#define ZCL_CURRENT_TIER9_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0990) +#define ZCL_CURRENT_TIER9_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0991) +#define ZCL_CURRENT_TIER9_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0992) +#define ZCL_CURRENT_TIER9_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0993) +#define ZCL_CURRENT_TIER9_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0994) +#define ZCL_CURRENT_TIER9_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0995) +#define ZCL_CURRENT_TIER9_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0996) +#define ZCL_CURRENT_TIER9_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0997) +#define ZCL_CURRENT_TIER9_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0998) +#define ZCL_CURRENT_TIER9_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x0999) +#define ZCL_CURRENT_TIER9_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x099A) +#define ZCL_CURRENT_TIER9_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x099B) +#define ZCL_CURRENT_TIER9_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x099C) +#define ZCL_CURRENT_TIER9_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x099D) +#define ZCL_CURRENT_TIER9_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x099E) +#define ZCL_CURRENT_TIER9_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x099F) +#define ZCL_CURRENT_TIER10_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A0) +#define ZCL_CURRENT_TIER10_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A1) +#define ZCL_CURRENT_TIER10_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A2) +#define ZCL_CURRENT_TIER10_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A3) +#define ZCL_CURRENT_TIER10_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A4) +#define ZCL_CURRENT_TIER10_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A5) +#define ZCL_CURRENT_TIER10_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A6) +#define ZCL_CURRENT_TIER10_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A7) +#define ZCL_CURRENT_TIER10_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A8) +#define ZCL_CURRENT_TIER10_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09A9) +#define ZCL_CURRENT_TIER10_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09AA) +#define ZCL_CURRENT_TIER10_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09AB) +#define ZCL_CURRENT_TIER10_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09AC) +#define ZCL_CURRENT_TIER10_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09AD) +#define ZCL_CURRENT_TIER10_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09AE) +#define ZCL_CURRENT_TIER10_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09AF) +#define ZCL_CURRENT_TIER11_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B0) +#define ZCL_CURRENT_TIER11_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B1) +#define ZCL_CURRENT_TIER11_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B2) +#define ZCL_CURRENT_TIER11_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B3) +#define ZCL_CURRENT_TIER11_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B4) +#define ZCL_CURRENT_TIER11_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B5) +#define ZCL_CURRENT_TIER11_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B6) +#define ZCL_CURRENT_TIER11_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B7) +#define ZCL_CURRENT_TIER11_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B8) +#define ZCL_CURRENT_TIER11_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09B9) +#define ZCL_CURRENT_TIER11_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09BA) +#define ZCL_CURRENT_TIER11_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09BB) +#define ZCL_CURRENT_TIER11_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09BC) +#define ZCL_CURRENT_TIER11_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09BD) +#define ZCL_CURRENT_TIER11_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09BE) +#define ZCL_CURRENT_TIER11_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09BF) +#define ZCL_CURRENT_TIER12_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C0) +#define ZCL_CURRENT_TIER12_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C1) +#define ZCL_CURRENT_TIER12_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C2) +#define ZCL_CURRENT_TIER12_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C3) +#define ZCL_CURRENT_TIER12_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C4) +#define ZCL_CURRENT_TIER12_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C5) +#define ZCL_CURRENT_TIER12_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C6) +#define ZCL_CURRENT_TIER12_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C7) +#define ZCL_CURRENT_TIER12_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C8) +#define ZCL_CURRENT_TIER12_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09C9) +#define ZCL_CURRENT_TIER12_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09CA) +#define ZCL_CURRENT_TIER12_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09CB) +#define ZCL_CURRENT_TIER12_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09CC) +#define ZCL_CURRENT_TIER12_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09CD) +#define ZCL_CURRENT_TIER12_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09CE) +#define ZCL_CURRENT_TIER12_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09CF) +#define ZCL_CURRENT_TIER13_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D0) +#define ZCL_CURRENT_TIER13_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D1) +#define ZCL_CURRENT_TIER13_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D2) +#define ZCL_CURRENT_TIER13_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D3) +#define ZCL_CURRENT_TIER13_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D4) +#define ZCL_CURRENT_TIER13_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D5) +#define ZCL_CURRENT_TIER13_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D6) +#define ZCL_CURRENT_TIER13_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D7) +#define ZCL_CURRENT_TIER13_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D8) +#define ZCL_CURRENT_TIER13_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09D9) +#define ZCL_CURRENT_TIER13_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09DA) +#define ZCL_CURRENT_TIER13_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09DB) +#define ZCL_CURRENT_TIER13_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09DC) +#define ZCL_CURRENT_TIER13_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09DD) +#define ZCL_CURRENT_TIER13_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09DE) +#define ZCL_CURRENT_TIER13_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09DF) +#define ZCL_CURRENT_TIER14_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E0) +#define ZCL_CURRENT_TIER14_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E1) +#define ZCL_CURRENT_TIER14_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E2) +#define ZCL_CURRENT_TIER14_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E3) +#define ZCL_CURRENT_TIER14_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E4) +#define ZCL_CURRENT_TIER14_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E5) +#define ZCL_CURRENT_TIER14_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E6) +#define ZCL_CURRENT_TIER14_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E7) +#define ZCL_CURRENT_TIER14_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E8) +#define ZCL_CURRENT_TIER14_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09E9) +#define ZCL_CURRENT_TIER14_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09EA) +#define ZCL_CURRENT_TIER14_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09EB) +#define ZCL_CURRENT_TIER14_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09EC) +#define ZCL_CURRENT_TIER14_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09ED) +#define ZCL_CURRENT_TIER14_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09EE) +#define ZCL_CURRENT_TIER14_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09EF) +#define ZCL_CURRENT_TIER15_BLOCK1_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F0) +#define ZCL_CURRENT_TIER15_BLOCK2_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F1) +#define ZCL_CURRENT_TIER15_BLOCK3_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F2) +#define ZCL_CURRENT_TIER15_BLOCK4_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F3) +#define ZCL_CURRENT_TIER15_BLOCK5_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F4) +#define ZCL_CURRENT_TIER15_BLOCK6_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F5) +#define ZCL_CURRENT_TIER15_BLOCK7_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F6) +#define ZCL_CURRENT_TIER15_BLOCK8_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F7) +#define ZCL_CURRENT_TIER15_BLOCK9_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F8) +#define ZCL_CURRENT_TIER15_BLOCK10_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09F9) +#define ZCL_CURRENT_TIER15_BLOCK11_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09FA) +#define ZCL_CURRENT_TIER15_BLOCK12_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09FB) +#define ZCL_CURRENT_TIER15_BLOCK13_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09FC) +#define ZCL_CURRENT_TIER15_BLOCK14_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09FD) +#define ZCL_CURRENT_TIER15_BLOCK15_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09FE) +#define ZCL_CURRENT_TIER15_BLOCK16_SUMMATION_RECEIVED_ATTRIBUTE_ID (0x09FF) +#define ZCL_BILL_TO_DATE_DELIVERED_ATTRIBUTE_ID (0x0A00) +#define ZCL_BILL_TO_DATE_TIME_STAMP_DELIVERED_ATTRIBUTE_ID (0x0A01) +#define ZCL_PROJECTED_BILL_DELIVERED_ATTRIBUTE_ID (0x0A02) +#define ZCL_PROJECTED_BILL_TIME_STAMP_DELIVERED_ATTRIBUTE_ID (0x0A03) +#define ZCL_BILL_DELIVERED_TRAILING_DIGIT_ATTRIBUTE_ID (0x0A04) +#define ZCL_BILL_TO_DATE_RECEIVED_ATTRIBUTE_ID (0x0A10) +#define ZCL_BILL_TO_DATE_TIME_STAMP_RECEIVED_ATTRIBUTE_ID (0x0A11) +#define ZCL_PROJECTED_BILL_RECEIVED_ATTRIBUTE_ID (0x0A12) +#define ZCL_PROJECTED_BILL_TIME_STAMP_RECEIVED_ATTRIBUTE_ID (0x0A13) +#define ZCL_BILL_RECEIVED_TRAILING_DIGIT_ATTRIBUTE_ID (0x0A14) +#define ZCL_PROPOSED_CHANGE_SUPPLY_IMPLEMENTATION_TIME_ATTRIBUTE_ID (0x0B00) +#define ZCL_PROPOSED_CHANGE_SUPPLY_STATUS_ATTRIBUTE_ID (0x0B01) +#define ZCL_UNCONTROLLED_FLOW_THESHOLD_ATTRIBUTE_ID (0x0B10) +#define ZCL_UNCONTROLLED_FLOW_THESHOLD_UNIT_OF_MEASURE_ATTRIBUTE_ID (0x0B11) +#define ZCL_UNCONTROLLED_FLOW_MULTIPLIER_ATTRIBUTE_ID (0x0B12) +#define ZCL_UNCONTROLLED_FLOW_DIVISOR_ATTRIBUTE_ID (0x0B13) +#define ZCL_FLOW_STABILIZATION_PERIOD_ATTRIBUTE_ID (0x0B14) +#define ZCL_FLOW_MEASUREMENT_PERIOD_ATTRIBUTE_ID (0x0B15) +#define ZCL_ALTERNATIVE_INSTANTANEOUS_DEMAND_ATTRIBUTE_ID (0x0C00) +#define ZCL_CURRENT_ALTERNATIVE_DAY_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C01) +#define ZCL_CURRENT_ALTERNATIVE_DAY_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C02) +#define ZCL_PREVIOUS_DAY_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C03) +#define ZCL_PREVIOUS_DAY_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C04) +#define ZCL_CURRENT_ALTERNATIVE_PARTIAL_PROFILE_INTERVAL_START_TIME_DELIVERED_ATTRIBUTE_ID (0x0C05) +#define ZCL_CURRENT_ALTERNATIVE_PARTIAL_PROFILE_INTERVAL_START_TIME_RECEIVED_ATTRIBUTE_ID (0x0C06) +#define ZCL_CURRENT_ALTERNATIVE_PARTIAL_PROFILE_INTERVAL_VALUE_DELIVERED_ATTRIBUTE_ID (0x0C07) +#define ZCL_CURRENT_ALTERNATIVE_PARTIAL_PROFILE_INTERVAL_VALUE_RECEIVED_ATTRIBUTE_ID (0x0C08) +#define ZCL_CURRENT_ALTERNATIVE_DAY_MAX_PRESSURE_ATTRIBUTE_ID (0x0C09) +#define ZCL_CURRENT_ALTERNATIVE_DAY_MIN_PRESSURE_ATTRIBUTE_ID (0x0C0A) +#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_PRESSURE_ATTRIBUTE_ID (0x0C0B) +#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MIN_PRESSURE_ATTRIBUTE_ID (0x0C0C) +#define ZCL_CURRENT_ALTERNATIVE_DAY_ALTERNATIVE_MAX_DEMAND_ATTRIBUTE_ID (0x0C0D) +#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_ATTRIBUTE_ID (0x0C0E) +#define ZCL_CURRENT_ALTERNATIVE_MONTH_MAX_DEMAND_ATTRIBUTE_ID (0x0C0F) +#define ZCL_CURRENT_ALTERNATIVE_YEAR_MAX_DEMAND_ATTRIBUTE_ID (0x0C10) +#define ZCL_PREVIOUS_DAY2_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C20) +#define ZCL_PREVIOUS_DAY2_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C21) +#define ZCL_PREVIOUS_DAY3_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C22) +#define ZCL_PREVIOUS_DAY3_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C23) +#define ZCL_PREVIOUS_DAY4_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C24) +#define ZCL_PREVIOUS_DAY4_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C25) +#define ZCL_PREVIOUS_DAY5_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C26) +#define ZCL_PREVIOUS_DAY5_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C27) +#define ZCL_PREVIOUS_DAY6_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C28) +#define ZCL_PREVIOUS_DAY6_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C29) +#define ZCL_PREVIOUS_DAY7_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C2A) +#define ZCL_PREVIOUS_DAY7_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C2B) +#define ZCL_PREVIOUS_DAY8_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C2C) +#define ZCL_PREVIOUS_DAY8_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C2D) +#define ZCL_CURRENT_WEEK_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C30) +#define ZCL_CURRENT_WEEK_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C31) +#define ZCL_PREVIOUS_WEEK_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C32) +#define ZCL_PREVIOUS_WEEK_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C33) +#define ZCL_PREVIOUS_WEEK2_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C34) +#define ZCL_PREVIOUS_WEEK2_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C35) +#define ZCL_PREVIOUS_WEEK3_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C36) +#define ZCL_PREVIOUS_WEEK3_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C37) +#define ZCL_PREVIOUS_WEEK4_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C38) +#define ZCL_PREVIOUS_WEEK4_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C39) +#define ZCL_PREVIOUS_WEEK5_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C3A) +#define ZCL_PREVIOUS_WEEK5_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C3B) +#define ZCL_CURRENT_MONTH_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C40) +#define ZCL_CURRENT_MONTH_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C41) +#define ZCL_PREVIOUS_MONTH_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C42) +#define ZCL_PREVIOUS_MONTH_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C43) +#define ZCL_PREVIOUS_MONTH2_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C44) +#define ZCL_PREVIOUS_MONTH2_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C45) +#define ZCL_PREVIOUS_MONTH3_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C46) +#define ZCL_PREVIOUS_MONTH3_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C47) +#define ZCL_PREVIOUS_MONTH4_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C48) +#define ZCL_PREVIOUS_MONTH4_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C49) +#define ZCL_PREVIOUS_MONTH5_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C4A) +#define ZCL_PREVIOUS_MONTH5_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C4B) +#define ZCL_PREVIOUS_MONTH6_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C4C) +#define ZCL_PREVIOUS_MONTH6_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C4D) +#define ZCL_PREVIOUS_MONTH7_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C4E) +#define ZCL_PREVIOUS_MONTH7_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C4F) +#define ZCL_PREVIOUS_MONTH8_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C50) +#define ZCL_PREVIOUS_MONTH8_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C51) +#define ZCL_PREVIOUS_MONTH9_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C52) +#define ZCL_PREVIOUS_MONTH9_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C53) +#define ZCL_PREVIOUS_MONTH10_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C54) +#define ZCL_PREVIOUS_MONTH10_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C55) +#define ZCL_PREVIOUS_MONTH11_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C56) +#define ZCL_PREVIOUS_MONTH11_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C57) +#define ZCL_PREVIOUS_MONTH12_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C58) +#define ZCL_PREVIOUS_MONTH12_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C59) +#define ZCL_PREVIOUS_MONTH13_ALTERNATIVE_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0C5A) +#define ZCL_PREVIOUS_MONTH13_ALTERNATIVE_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0C5B) +#define ZCL_CURRENT_DAY_ALTERNATIVE_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID (0x0C5C) +#define ZCL_CURRENT_DAY_ALTERNATIVE_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID (0x0C5D) +#define ZCL_CURRENT_DAY_ALTERNATIVE_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID (0x0C5E) +#define ZCL_CURRENT_DAY_ALTERNATIVE_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID (0x0C5F) +#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_DELIVERED_ATTRIBUTE_ID (0x0C60) +#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_DELIVERED_TIME_ATTRIBUTE_ID (0x0C61) +#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_RECEIVED_ATTRIBUTE_ID (0x0C62) +#define ZCL_PREVIOUS_DAY_ALTERNATIVE_MAX_DEMAND_RECEIVED_TIME_ATTRIBUTE_ID (0x0C63) +#define ZCL_CURRENT_ACTIVE_SUMMATION_Q1_ATTRIBUTE_ID (0x0D01) +#define ZCL_CURRENT_ACTIVE_SUMMATION_Q2_ATTRIBUTE_ID (0x0D02) +#define ZCL_CURRENT_ACTIVE_SUMMATION_Q3_ATTRIBUTE_ID (0x0D03) +#define ZCL_CURRENT_ACTIVE_SUMMATION_Q4_ATTRIBUTE_ID (0x0D04) +#define ZCL_CURRENT_REACTIVE_SUMMATION_Q1_ATTRIBUTE_ID (0x0D05) +#define ZCL_CURRENT_REACTIVE_SUMMATION_Q2_ATTRIBUTE_ID (0x0D06) +#define ZCL_CURRENT_REACTIVE_SUMMATION_Q3_ATTRIBUTE_ID (0x0D07) +#define ZCL_CURRENT_REACTIVE_SUMMATION_Q4_ATTRIBUTE_ID (0x0D08) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Messaging // Client attributes -#define ZCL_MESSAGING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_MESSAGING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_MESSAGING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_MESSAGING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Tunneling -// Cluster specification level: se-1.2b-15-0131-02 +// Attribute ids for cluster: Tunneling // Client attributes -#define ZCL_TUNNELING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TUNNELING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CLOSE_TUNNEL_TIMEOUT_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_TUNNELING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_TUNNELING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLOSE_TUNNEL_TIMEOUT_ATTRIBUTE_ID (0x0000) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Prepayment -// Cluster specification level: se-1.2b-15-0131-02 +// Attribute ids for cluster: Prepayment // Client attributes -#define ZCL_PREPAYMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PREPAYMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_PAYMENT_CONTROL_CONFIGURATION_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CREDIT_REMAINING_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_EMERGENCY_CREDIT_REMAINING_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CREDIT_STATUS_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CREDIT_REMAINING_TIMESTAMP_ATTRIBUTE_ID 0x0004 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_ACCUMULATED_DEBT_ATTRIBUTE_ID 0x0005 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_OVERALL_DEBT_CAP_ATTRIBUTE_ID 0x0006 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_EMERGENCY_CREDIT_LIMIT_ALLOWANCE_ATTRIBUTE_ID 0x0010 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_EMERGENCY_CREDIT_THRESHOLD_ATTRIBUTE_ID 0x0011 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TOTAL_CREDIT_ADDED_ATTRIBUTE_ID 0x0020 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_MAX_CREDIT_LIMIT_ATTRIBUTE_ID 0x0021 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_MAX_CREDIT_PER_TOP_UP_ATTRIBUTE_ID 0x0022 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_FRIENDLY_CREDIT_WARNING_ATTRIBUTE_ID 0x0030 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_LOW_CREDIT_WARNING_ATTRIBUTE_ID 0x0031 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_IHD_LOW_CREDIT_WARNING_ATTRIBUTE_ID 0x0032 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_INTERRUPT_SUSPEND_TIME_ATTRIBUTE_ID 0x0033 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_REMAINING_FRIENDLY_CREDIT_TIME_ATTRIBUTE_ID 0x0034 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_NEXT_FRIENDLY_CREDIT_PERIOD_ATTRIBUTE_ID 0x0035 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CUT_OFF_VALUE_ATTRIBUTE_ID 0x0040 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TOKEN_CARRIER_ID_ATTRIBUTE_ID 0x0080 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TOP_UP_DATE_TIME_1_ATTRIBUTE_ID 0x0100 // Ver.: always -#define ZCL_TOP_UP_AMOUNT_1_ATTRIBUTE_ID 0x0101 // Ver.: always -#define ZCL_TOP_UP_ORIGINATING_DEVICE_1_ATTRIBUTE_ID 0x0102 // Ver.: always -#define ZCL_TOP_UP_CODE_1_ATTRIBUTE_ID 0x0103 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TOP_UP_DATE_TIME_2_ATTRIBUTE_ID 0x0110 // Ver.: always -#define ZCL_TOP_UP_AMOUNT_2_ATTRIBUTE_ID 0x0111 // Ver.: always -#define ZCL_TOP_UP_ORIGINATING_DEVICE_2_ATTRIBUTE_ID 0x0112 // Ver.: always -#define ZCL_TOP_UP_CODE_2_ATTRIBUTE_ID 0x0113 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TOP_UP_DATE_TIME_3_ATTRIBUTE_ID 0x0120 // Ver.: always -#define ZCL_TOP_UP_AMOUNT_3_ATTRIBUTE_ID 0x0121 // Ver.: always -#define ZCL_TOP_UP_ORIGINATING_DEVICE_3_ATTRIBUTE_ID 0x0122 // Ver.: always -#define ZCL_TOP_UP_CODE_3_ATTRIBUTE_ID 0x0123 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TOP_UP_DATE_TIME_4_ATTRIBUTE_ID 0x0130 // Ver.: always -#define ZCL_TOP_UP_AMOUNT_4_ATTRIBUTE_ID 0x0131 // Ver.: always -#define ZCL_TOP_UP_ORIGINATING_DEVICE_4_ATTRIBUTE_ID 0x0132 // Ver.: always -#define ZCL_TOP_UP_CODE_4_ATTRIBUTE_ID 0x0133 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TOP_UP_DATE_TIME_5_ATTRIBUTE_ID 0x0140 // Ver.: always -#define ZCL_TOP_UP_AMOUNT_5_ATTRIBUTE_ID 0x0141 // Ver.: always -#define ZCL_TOP_UP_ORIGINATING_DEVICE_5_ATTRIBUTE_ID 0x0142 // Ver.: always -#define ZCL_TOP_UP_CODE_5_ATTRIBUTE_ID 0x0143 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_LABEL_1_ATTRIBUTE_ID 0x0210 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_AMOUNT_1_ATTRIBUTE_ID 0x0211 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_METHOD_1_ATTRIBUTE_ID 0x0212 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_START_TIME_1_ATTRIBUTE_ID 0x0213 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_COLLECTION_TIME_1_ATTRIBUTE_ID 0x0214 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_FREQUENCY_1_ATTRIBUTE_ID 0x0216 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_AMOUNT_1_ATTRIBUTE_ID 0x0217 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_TOP_UP_PERCENTAGE_1_ATTRIBUTE_ID 0x0219 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_LABEL_2_ATTRIBUTE_ID 0x0220 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_AMOUNT_2_ATTRIBUTE_ID 0x0221 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_METHOD_2_ATTRIBUTE_ID 0x0222 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_START_TIME_2_ATTRIBUTE_ID 0x0223 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_COLLECTION_TIME_2_ATTRIBUTE_ID 0x0224 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_FREQUENCY_2_ATTRIBUTE_ID 0x0226 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_AMOUNT_2_ATTRIBUTE_ID 0x0227 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_TOP_UP_PERCENTAGE_2_ATTRIBUTE_ID 0x0229 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_LABEL_3_ATTRIBUTE_ID 0x0230 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_AMOUNT_3_ATTRIBUTE_ID 0x0231 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_METHOD_3_ATTRIBUTE_ID 0x0232 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_START_TIME_3_ATTRIBUTE_ID 0x0233 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_COLLECTION_TIME_3_ATTRIBUTE_ID 0x0234 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_FREQUENCY_3_ATTRIBUTE_ID 0x0236 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_AMOUNT_3_ATTRIBUTE_ID 0x0237 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_DEBT_RECOVERY_TOP_UP_PERCENTAGE_3_ATTRIBUTE_ID 0x0239 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREPAYMENT_ALARM_STATUS_ATTRIBUTE_ID 0x0400 // Ver.: since se-1.2a-07-5356-21 -#define ZCL_PREPAY_GENERIC_ALARM_MASK_ATTRIBUTE_ID 0x0401 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREPAY_SWITCH_ALARM_MASK_ATTRIBUTE_ID 0x0402 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREPAY_EVENT_ALARM_MASK_ATTRIBUTE_ID 0x0403 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_HISTORICAL_COST_CONSUMPTION_FORMATTING_ATTRIBUTE_ID 0x0500 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CONSUMPTION_UNIT_OF_MEASUREMENT_ATTRIBUTE_ID 0x0501 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENCY_SCALING_FACTOR_ATTRIBUTE_ID 0x0502 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREPAYMANT_CURRENCY_ATTRIBUTE_ID 0x0503 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_DAY_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x051C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_DAY_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x051D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x051E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x051F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_2_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0520 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_2_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0521 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_3_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0522 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_3_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0523 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_4_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0524 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_4_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0525 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_5_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0526 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_5_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0527 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_6_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0528 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_6_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0529 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_7_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x052A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_7_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x052B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_8_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x052C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_DAY_8_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x052D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_WEEK_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0530 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_WEEK_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0531 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0532 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0533 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_2_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0534 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_2_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0535 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_3_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0536 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_3_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0537 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_4_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0538 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_4_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0539 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_5_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x053A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_WEEK_5_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x053B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_MONTH_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0540 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CURRENT_MONTH_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0541 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0542 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0543 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_2_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0544 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_2_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0545 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_3_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0546 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_3_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0547 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_4_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0548 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_4_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0549 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_5_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x054A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_5_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x054B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_6_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x054C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_6_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x054D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_7_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x054E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_7_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x054F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_8_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0550 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_8_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0551 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_9_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0552 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_9_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0553 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_10_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0554 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_10_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0555 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_11_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0556 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_11_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0557 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_12_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x0558 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_12_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x0559 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_13_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID 0x055A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREVIOUS_MONTH_13_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID 0x055B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREPAYMENT_HISTORICAL_FREEZE_TIME_ATTRIBUTE_ID 0x055C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PREPAYMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PREPAYMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Energy Management -// Cluster specification level: se-1.2b-15-0131-02 +#define ZCL_PAYMENT_CONTROL_CONFIGURATION_ATTRIBUTE_ID (0x0000) +#define ZCL_CREDIT_REMAINING_ATTRIBUTE_ID (0x0001) +#define ZCL_EMERGENCY_CREDIT_REMAINING_ATTRIBUTE_ID (0x0002) +#define ZCL_CREDIT_STATUS_ATTRIBUTE_ID (0x0003) +#define ZCL_CREDIT_REMAINING_TIMESTAMP_ATTRIBUTE_ID (0x0004) +#define ZCL_ACCUMULATED_DEBT_ATTRIBUTE_ID (0x0005) +#define ZCL_OVERALL_DEBT_CAP_ATTRIBUTE_ID (0x0006) +#define ZCL_EMERGENCY_CREDIT_LIMIT_ALLOWANCE_ATTRIBUTE_ID (0x0010) +#define ZCL_EMERGENCY_CREDIT_THRESHOLD_ATTRIBUTE_ID (0x0011) +#define ZCL_TOTAL_CREDIT_ADDED_ATTRIBUTE_ID (0x0020) +#define ZCL_MAX_CREDIT_LIMIT_ATTRIBUTE_ID (0x0021) +#define ZCL_MAX_CREDIT_PER_TOP_UP_ATTRIBUTE_ID (0x0022) +#define ZCL_FRIENDLY_CREDIT_WARNING_ATTRIBUTE_ID (0x0030) +#define ZCL_LOW_CREDIT_WARNING_ATTRIBUTE_ID (0x0031) +#define ZCL_IHD_LOW_CREDIT_WARNING_ATTRIBUTE_ID (0x0032) +#define ZCL_INTERRUPT_SUSPEND_TIME_ATTRIBUTE_ID (0x0033) +#define ZCL_REMAINING_FRIENDLY_CREDIT_TIME_ATTRIBUTE_ID (0x0034) +#define ZCL_NEXT_FRIENDLY_CREDIT_PERIOD_ATTRIBUTE_ID (0x0035) +#define ZCL_CUT_OFF_VALUE_ATTRIBUTE_ID (0x0040) +#define ZCL_TOKEN_CARRIER_ID_ATTRIBUTE_ID (0x0080) +#define ZCL_TOP_UP_DATE_TIME_1_ATTRIBUTE_ID (0x0100) +#define ZCL_TOP_UP_AMOUNT_1_ATTRIBUTE_ID (0x0101) +#define ZCL_TOP_UP_ORIGINATING_DEVICE_1_ATTRIBUTE_ID (0x0102) +#define ZCL_TOP_UP_CODE_1_ATTRIBUTE_ID (0x0103) +#define ZCL_TOP_UP_DATE_TIME_2_ATTRIBUTE_ID (0x0110) +#define ZCL_TOP_UP_AMOUNT_2_ATTRIBUTE_ID (0x0111) +#define ZCL_TOP_UP_ORIGINATING_DEVICE_2_ATTRIBUTE_ID (0x0112) +#define ZCL_TOP_UP_CODE_2_ATTRIBUTE_ID (0x0113) +#define ZCL_TOP_UP_DATE_TIME_3_ATTRIBUTE_ID (0x0120) +#define ZCL_TOP_UP_AMOUNT_3_ATTRIBUTE_ID (0x0121) +#define ZCL_TOP_UP_ORIGINATING_DEVICE_3_ATTRIBUTE_ID (0x0122) +#define ZCL_TOP_UP_CODE_3_ATTRIBUTE_ID (0x0123) +#define ZCL_TOP_UP_DATE_TIME_4_ATTRIBUTE_ID (0x0130) +#define ZCL_TOP_UP_AMOUNT_4_ATTRIBUTE_ID (0x0131) +#define ZCL_TOP_UP_ORIGINATING_DEVICE_4_ATTRIBUTE_ID (0x0132) +#define ZCL_TOP_UP_CODE_4_ATTRIBUTE_ID (0x0133) +#define ZCL_TOP_UP_DATE_TIME_5_ATTRIBUTE_ID (0x0140) +#define ZCL_TOP_UP_AMOUNT_5_ATTRIBUTE_ID (0x0141) +#define ZCL_TOP_UP_ORIGINATING_DEVICE_5_ATTRIBUTE_ID (0x0142) +#define ZCL_TOP_UP_CODE_5_ATTRIBUTE_ID (0x0143) +#define ZCL_DEBT_LABEL_1_ATTRIBUTE_ID (0x0210) +#define ZCL_DEBT_AMOUNT_1_ATTRIBUTE_ID (0x0211) +#define ZCL_DEBT_RECOVERY_METHOD_1_ATTRIBUTE_ID (0x0212) +#define ZCL_DEBT_RECOVERY_START_TIME_1_ATTRIBUTE_ID (0x0213) +#define ZCL_DEBT_RECOVERY_COLLECTION_TIME_1_ATTRIBUTE_ID (0x0214) +#define ZCL_DEBT_RECOVERY_FREQUENCY_1_ATTRIBUTE_ID (0x0216) +#define ZCL_DEBT_RECOVERY_AMOUNT_1_ATTRIBUTE_ID (0x0217) +#define ZCL_DEBT_RECOVERY_TOP_UP_PERCENTAGE_1_ATTRIBUTE_ID (0x0219) +#define ZCL_DEBT_LABEL_2_ATTRIBUTE_ID (0x0220) +#define ZCL_DEBT_AMOUNT_2_ATTRIBUTE_ID (0x0221) +#define ZCL_DEBT_RECOVERY_METHOD_2_ATTRIBUTE_ID (0x0222) +#define ZCL_DEBT_RECOVERY_START_TIME_2_ATTRIBUTE_ID (0x0223) +#define ZCL_DEBT_RECOVERY_COLLECTION_TIME_2_ATTRIBUTE_ID (0x0224) +#define ZCL_DEBT_RECOVERY_FREQUENCY_2_ATTRIBUTE_ID (0x0226) +#define ZCL_DEBT_RECOVERY_AMOUNT_2_ATTRIBUTE_ID (0x0227) +#define ZCL_DEBT_RECOVERY_TOP_UP_PERCENTAGE_2_ATTRIBUTE_ID (0x0229) +#define ZCL_DEBT_LABEL_3_ATTRIBUTE_ID (0x0230) +#define ZCL_DEBT_AMOUNT_3_ATTRIBUTE_ID (0x0231) +#define ZCL_DEBT_RECOVERY_METHOD_3_ATTRIBUTE_ID (0x0232) +#define ZCL_DEBT_RECOVERY_START_TIME_3_ATTRIBUTE_ID (0x0233) +#define ZCL_DEBT_RECOVERY_COLLECTION_TIME_3_ATTRIBUTE_ID (0x0234) +#define ZCL_DEBT_RECOVERY_FREQUENCY_3_ATTRIBUTE_ID (0x0236) +#define ZCL_DEBT_RECOVERY_AMOUNT_3_ATTRIBUTE_ID (0x0237) +#define ZCL_DEBT_RECOVERY_TOP_UP_PERCENTAGE_3_ATTRIBUTE_ID (0x0239) +#define ZCL_PREPAYMENT_ALARM_STATUS_ATTRIBUTE_ID (0x0400) +#define ZCL_PREPAY_GENERIC_ALARM_MASK_ATTRIBUTE_ID (0x0401) +#define ZCL_PREPAY_SWITCH_ALARM_MASK_ATTRIBUTE_ID (0x0402) +#define ZCL_PREPAY_EVENT_ALARM_MASK_ATTRIBUTE_ID (0x0403) +#define ZCL_HISTORICAL_COST_CONSUMPTION_FORMATTING_ATTRIBUTE_ID (0x0500) +#define ZCL_CONSUMPTION_UNIT_OF_MEASUREMENT_ATTRIBUTE_ID (0x0501) +#define ZCL_CURRENCY_SCALING_FACTOR_ATTRIBUTE_ID (0x0502) +#define ZCL_PREPAYMANT_CURRENCY_ATTRIBUTE_ID (0x0503) +#define ZCL_CURRENT_DAY_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x051C) +#define ZCL_CURRENT_DAY_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x051D) +#define ZCL_PREVIOUS_DAY_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x051E) +#define ZCL_PREVIOUS_DAY_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x051F) +#define ZCL_PREVIOUS_DAY_2_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0520) +#define ZCL_PREVIOUS_DAY_2_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0521) +#define ZCL_PREVIOUS_DAY_3_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0522) +#define ZCL_PREVIOUS_DAY_3_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0523) +#define ZCL_PREVIOUS_DAY_4_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0524) +#define ZCL_PREVIOUS_DAY_4_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0525) +#define ZCL_PREVIOUS_DAY_5_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0526) +#define ZCL_PREVIOUS_DAY_5_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0527) +#define ZCL_PREVIOUS_DAY_6_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0528) +#define ZCL_PREVIOUS_DAY_6_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0529) +#define ZCL_PREVIOUS_DAY_7_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x052A) +#define ZCL_PREVIOUS_DAY_7_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x052B) +#define ZCL_PREVIOUS_DAY_8_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x052C) +#define ZCL_PREVIOUS_DAY_8_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x052D) +#define ZCL_CURRENT_WEEK_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0530) +#define ZCL_CURRENT_WEEK_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0531) +#define ZCL_PREVIOUS_WEEK_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0532) +#define ZCL_PREVIOUS_WEEK_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0533) +#define ZCL_PREVIOUS_WEEK_2_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0534) +#define ZCL_PREVIOUS_WEEK_2_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0535) +#define ZCL_PREVIOUS_WEEK_3_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0536) +#define ZCL_PREVIOUS_WEEK_3_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0537) +#define ZCL_PREVIOUS_WEEK_4_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0538) +#define ZCL_PREVIOUS_WEEK_4_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0539) +#define ZCL_PREVIOUS_WEEK_5_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x053A) +#define ZCL_PREVIOUS_WEEK_5_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x053B) +#define ZCL_CURRENT_MONTH_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0540) +#define ZCL_CURRENT_MONTH_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0541) +#define ZCL_PREVIOUS_MONTH_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0542) +#define ZCL_PREVIOUS_MONTH_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0543) +#define ZCL_PREVIOUS_MONTH_2_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0544) +#define ZCL_PREVIOUS_MONTH_2_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0545) +#define ZCL_PREVIOUS_MONTH_3_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0546) +#define ZCL_PREVIOUS_MONTH_3_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0547) +#define ZCL_PREVIOUS_MONTH_4_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0548) +#define ZCL_PREVIOUS_MONTH_4_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0549) +#define ZCL_PREVIOUS_MONTH_5_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x054A) +#define ZCL_PREVIOUS_MONTH_5_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x054B) +#define ZCL_PREVIOUS_MONTH_6_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x054C) +#define ZCL_PREVIOUS_MONTH_6_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x054D) +#define ZCL_PREVIOUS_MONTH_7_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x054E) +#define ZCL_PREVIOUS_MONTH_7_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x054F) +#define ZCL_PREVIOUS_MONTH_8_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0550) +#define ZCL_PREVIOUS_MONTH_8_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0551) +#define ZCL_PREVIOUS_MONTH_9_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0552) +#define ZCL_PREVIOUS_MONTH_9_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0553) +#define ZCL_PREVIOUS_MONTH_10_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0554) +#define ZCL_PREVIOUS_MONTH_10_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0555) +#define ZCL_PREVIOUS_MONTH_11_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0556) +#define ZCL_PREVIOUS_MONTH_11_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0557) +#define ZCL_PREVIOUS_MONTH_12_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x0558) +#define ZCL_PREVIOUS_MONTH_12_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x0559) +#define ZCL_PREVIOUS_MONTH_13_COST_CONSUMPTION_DELIVERED_ATTRIBUTE_ID (0x055A) +#define ZCL_PREVIOUS_MONTH_13_COST_CONSUMPTION_RECEIVED_ATTRIBUTE_ID (0x055B) +#define ZCL_PREPAYMENT_HISTORICAL_FREEZE_TIME_ATTRIBUTE_ID (0x055C) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Energy Management // Client attributes -#define ZCL_ENERGY_MANAGEMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ENERGY_MANAGEMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_LOAD_CONTROL_STATE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_CURRENT_EVENT_ID_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CURRENT_EVENT_STATUS_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_CONFORMANCE_LEVEL_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_MINIMUM_OFF_TIME_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_MINIMUM_ON_TIME_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_MINIMUM_CYCLE_PERIOD_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_ENERGY_MANAGEMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ENERGY_MANAGEMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Calendar -// Cluster specification level: se-1.2b-15-0131-02 +#define ZCL_LOAD_CONTROL_STATE_ATTRIBUTE_ID (0x0000) +#define ZCL_CURRENT_EVENT_ID_ATTRIBUTE_ID (0x0001) +#define ZCL_CURRENT_EVENT_STATUS_ATTRIBUTE_ID (0x0002) +#define ZCL_CONFORMANCE_LEVEL_ATTRIBUTE_ID (0x0003) +#define ZCL_MINIMUM_OFF_TIME_ATTRIBUTE_ID (0x0004) +#define ZCL_MINIMUM_ON_TIME_ATTRIBUTE_ID (0x0005) +#define ZCL_MINIMUM_CYCLE_PERIOD_ATTRIBUTE_ID (0x0006) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Calendar // Client attributes -#define ZCL_CALENDAR_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CALENDAR_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_AUXILIARY_SWITCH_1_LABEL_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_AUXILIARY_SWITCH_2_LABEL_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_AUXILIARY_SWITCH_3_LABEL_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_AUXILIARY_SWITCH_4_LABEL_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_AUXILIARY_SWITCH_5_LABEL_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_AUXILIARY_SWITCH_6_LABEL_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_AUXILIARY_SWITCH_7_LABEL_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_AUXILIARY_SWITCH_8_LABEL_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_CALENDAR_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CALENDAR_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Device Management -// Cluster specification level: se-1.2b-15-0131-02 +#define ZCL_AUXILIARY_SWITCH_1_LABEL_ATTRIBUTE_ID (0x0000) +#define ZCL_AUXILIARY_SWITCH_2_LABEL_ATTRIBUTE_ID (0x0001) +#define ZCL_AUXILIARY_SWITCH_3_LABEL_ATTRIBUTE_ID (0x0002) +#define ZCL_AUXILIARY_SWITCH_4_LABEL_ATTRIBUTE_ID (0x0003) +#define ZCL_AUXILIARY_SWITCH_5_LABEL_ATTRIBUTE_ID (0x0004) +#define ZCL_AUXILIARY_SWITCH_6_LABEL_ATTRIBUTE_ID (0x0005) +#define ZCL_AUXILIARY_SWITCH_7_LABEL_ATTRIBUTE_ID (0x0006) +#define ZCL_AUXILIARY_SWITCH_8_LABEL_ATTRIBUTE_ID (0x0007) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Device Management // Client attributes -#define ZCL_PROVIDER_ID_CLIENT_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_RECEIVED_PROVIDER_ID_CLIENT_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_TOU_TARIFF_ACTIVATION_ATTRIBUTE_ID 0x0100 // Ver.: always -#define ZCL_BLOCK_TARIFF_ACTIVATED_ATTRIBUTE_ID 0x0101 // Ver.: always -#define ZCL_BLOCK_TOU_TARIFF_ACTIVATED_ATTRIBUTE_ID 0x0102 // Ver.: always -#define ZCL_SINGLE_TARIFF_RATE_ACTIVATED_ATTRIBUTE_ID 0x0103 // Ver.: always -#define ZCL_ASYNCHRONOUS_BILLING_OCCURRED_ATTRIBUTE_ID 0x0104 // Ver.: always -#define ZCL_SYNCHRONOUS_BILLING_OCCURRED_ATTRIBUTE_ID 0x0105 // Ver.: always -#define ZCL_TARIFF_NOT_SUPPORTED_ATTRIBUTE_ID 0x0106 // Ver.: always -#define ZCL_PRICE_CLUSTER_NOT_FOUND_ATTRIBUTE_ID 0x0107 // Ver.: always -#define ZCL_CURRENCY_CHANGE_PASSIVE_ACTIVATED_ATTRIBUTE_ID 0x0108 // Ver.: always -#define ZCL_CURRENCY_CHANGE_PASSIVE_UPDATED_ATTRIBUTE_ID 0x0109 // Ver.: always -#define ZCL_PRICE_MATRIX_PASSIVE_ACTIVATED_ATTRIBUTE_ID 0x010A // Ver.: always -#define ZCL_PRICE_MATRIX_PASSIVE_UPDATED_ATTRIBUTE_ID 0x010B // Ver.: always -#define ZCL_TARIFF_CHANGE_PASSIVE_ACTIVATED_ATTRIBUTE_ID 0x010C // Ver.: always -#define ZCL_TARIFF_CHANGE_PASSIVE_UPDATED_ATTRIBUTE_ID 0x010D // Ver.: always -#define ZCL_PUBLISH_PRICE_RECEIVED_ATTRIBUTE_ID 0x01B0 // Ver.: always -#define ZCL_PUBLISH_PRICE_ACTIONED_ATTRIBUTE_ID 0x01B1 // Ver.: always -#define ZCL_PUBLISH_PRICE_CANCELLED_ATTRIBUTE_ID 0x01B2 // Ver.: always -#define ZCL_PUBLISH_PRICE_REJECTED_ATTRIBUTE_ID 0x01B3 // Ver.: always -#define ZCL_PUBLISH_TARIFF_INFO_RECEIVED_ATTRIBUTE_ID 0x01B4 // Ver.: always -#define ZCL_PUBLISH_TARIFF_INFO_ACTIONED_ATTRIBUTE_ID 0x01B5 // Ver.: always -#define ZCL_PUBLISH_TARIFF_INFO_CANCELLED_ATTRIBUTE_ID 0x01B6 // Ver.: always -#define ZCL_PUBLISH_TARIFF_INFO_REJECTED_ATTRIBUTE_ID 0x01B7 // Ver.: always -#define ZCL_PUBLISH_PRICE_MATRIX_RECEIVED_ATTRIBUTE_ID 0x01B8 // Ver.: always -#define ZCL_PUBLISH_PRICE_MATRIX_ACTIONED_ATTRIBUTE_ID 0x01B9 // Ver.: always -#define ZCL_PUBLISH_PRICE_MATRIX_CANCELLED_ATTRIBUTE_ID 0x01BA // Ver.: always -#define ZCL_PUBLISH_PRICE_MATRIX_REJECTED_ATTRIBUTE_ID 0x01BB // Ver.: always -#define ZCL_PUBLISH_BLOCK_THRESHOLDS_RECEIVED_ATTRIBUTE_ID 0x01BC // Ver.: always -#define ZCL_PUBLISH_BLOCK_THRESHOLDS_ACTIONED_ATTRIBUTE_ID 0x01BD // Ver.: always -#define ZCL_PUBLISH_BLOCK_THRESHOLDS_CANCELLED_ATTRIBUTE_ID 0x01BE // Ver.: always -#define ZCL_PUBLISH_BLOCK_THRESHOLDS_REJECTED_ATTRIBUTE_ID 0x01BF // Ver.: always -#define ZCL_PUBLISH_CALORIFIC_VALUE_RECEIVED_ATTRIBUTE_ID 0x01C0 // Ver.: always -#define ZCL_PUBLISH_CALORIFIC_VALUE_ACTIONED_ATTRIBUTE_ID 0x01C1 // Ver.: always -#define ZCL_PUBLISH_CALORIFIC_VALUE_CANCELLED_ATTRIBUTE_ID 0x01C2 // Ver.: always -#define ZCL_PUBLISH_CALORIFIC_VALUE_REJECTED_ATTRIBUTE_ID 0x01C3 // Ver.: always -#define ZCL_PUBLISH_CONVERSION_FACTOR_RECEIVED_ATTRIBUTE_ID 0x01C4 // Ver.: always -#define ZCL_PUBLISH_CONVERSION_FACTOR_ACTIONED_ATTRIBUTE_ID 0x01C5 // Ver.: always -#define ZCL_PUBLISH_CONVERSION_FACTOR_CANCELLED_ATTRIBUTE_ID 0x01C6 // Ver.: always -#define ZCL_PUBLISH_CONVERSION_FACTOR_REJECTED_ATTRIBUTE_ID 0x01C7 // Ver.: always -#define ZCL_PUBLISH_CO2_VALUE_RECEIVED_ATTRIBUTE_ID 0x01C8 // Ver.: always -#define ZCL_PUBLISH_CO2_VALUE_ACTIONED_ATTRIBUTE_ID 0x01C9 // Ver.: always -#define ZCL_PUBLISH_CO2_VALUE_CANCELLED_ATTRIBUTE_ID 0x01CA // Ver.: always -#define ZCL_PUBLISH_CO2_VALUE_REJECTED_ATTRIBUTE_ID 0x01CB // Ver.: always -#define ZCL_PUBLISH_CPP_EVENT_RECEIVED_ATTRIBUTE_ID 0x01CC // Ver.: always -#define ZCL_PUBLISH_CPP_EVENT_ACTIONED_ATTRIBUTE_ID 0x01CD // Ver.: always -#define ZCL_PUBLISH_CPP_EVENT_CANCELLED_ATTRIBUTE_ID 0x01CE // Ver.: always -#define ZCL_PUBLISH_CPP_EVENT_REJECTED_ATTRIBUTE_ID 0x01CF // Ver.: always -#define ZCL_PUBLISH_TIER_LABELS_RECEIVED_ATTRIBUTE_ID 0x01D0 // Ver.: always -#define ZCL_PUBLISH_TIER_LABELS_ACTIONED_ATTRIBUTE_ID 0x01D1 // Ver.: always -#define ZCL_PUBLISH_TIER_LABELS_CANCELLED_ATTRIBUTE_ID 0x01D2 // Ver.: always -#define ZCL_PUBLISH_TIER_LABELS_REJECTED_ATTRIBUTE_ID 0x01D3 // Ver.: always -#define ZCL_PUBLISH_BILLING_PERIOD_RECEIVED_ATTRIBUTE_ID 0x01D4 // Ver.: always -#define ZCL_PUBLISH_BILLING_PERIOD_ACTIONED_ATTRIBUTE_ID 0x01D5 // Ver.: always -#define ZCL_PUBLISH_BILLING_PERIOD_CANCELLED_ATTRIBUTE_ID 0x01D6 // Ver.: always -#define ZCL_PUBLISH_BILLING_PERIOD_REJECTED_ATTRIBUTE_ID 0x01D7 // Ver.: always -#define ZCL_PUBLISH_CONSOLIDATED_BILL_RECEIVED_ATTRIBUTE_ID 0x01D8 // Ver.: always -#define ZCL_PUBLISH_CONSOLIDATED_BILL_ACTIONED_ATTRIBUTE_ID 0x01D9 // Ver.: always -#define ZCL_PUBLISH_CONSOLIDATED_BILL_CANCELLED_ATTRIBUTE_ID 0x01DA // Ver.: always -#define ZCL_PUBLISH_CONSOLIDATED_BILL_REJECTED_ATTRIBUTE_ID 0x01DB // Ver.: always -#define ZCL_PUBLISH_BLOCK_PERIOD_RECEIVED_ATTRIBUTE_ID 0x01DC // Ver.: always -#define ZCL_PUBLISH_BLOCK_PERIOD_ACTIONED_ATTRIBUTE_ID 0x01DD // Ver.: always -#define ZCL_PUBLISH_BLOCK_PERIOD_CANCELLED_ATTRIBUTE_ID 0x01DE // Ver.: always -#define ZCL_PUBLISH_BLOCK_PERIOD_REJECTED_ATTRIBUTE_ID 0x01DF // Ver.: always -#define ZCL_PUBLISH_CREDIT_PAYMENT_INFO_RECEIVED_ATTRIBUTE_ID 0x01E0 // Ver.: always -#define ZCL_PUBLISH_CREDIT_PAYMENT_INFO_ACTIONED_ATTRIBUTE_ID 0x01E1 // Ver.: always -#define ZCL_PUBLISH_CREDIT_PAYMENT_INFO_CANCELLED_ATTRIBUTE_ID 0x01E2 // Ver.: always -#define ZCL_PUBLISH_CREDIT_PAYMENT_INFO_REJECTED_ATTRIBUTE_ID 0x01E3 // Ver.: always -#define ZCL_PUBLISH_CURRENCY_CONVERSION_RECEIVED_ATTRIBUTE_ID 0x01E4 // Ver.: always -#define ZCL_PUBLISH_CURRENCY_CONVERSION_ACTIONED_ATTRIBUTE_ID 0x01E5 // Ver.: always -#define ZCL_PUBLISH_CURRENCY_CONVERSION_CANCELLED_ATTRIBUTE_ID 0x01E6 // Ver.: always -#define ZCL_PUBLISH_CURRENCY_CONVERSION_REJECTED_ATTRIBUTE_ID 0x01E7 // Ver.: always -#define ZCL_CHECK_METER_ATTRIBUTE_ID 0x0200 // Ver.: always -#define ZCL_LOW_BATTERY_ATTRIBUTE_ID 0x0201 // Ver.: always -#define ZCL_TAMPER_DETECT_ATTRIBUTE_ID 0x0202 // Ver.: always -#define ZCL_DEVICE_MANAGEMENT_SUPPLY_STATUS_ATTRIBUTE_ID 0x0203 // Ver.: always -#define ZCL_SUPPLY_QUALITY_ATTRIBUTE_ID 0x0204 // Ver.: always -#define ZCL_LEAK_DETECT_ATTRIBUTE_ID 0x0205 // Ver.: always -#define ZCL_SERVICE_DISCONNECT_ATTRIBUTE_ID 0x0206 // Ver.: always -#define ZCL_REVERSE_FLOW_GENERAL_ATTRIBUTE_ID 0x0207 // Ver.: always -#define ZCL_METER_COVER_REMOVED_ATTRIBUTE_ID 0x0208 // Ver.: always -#define ZCL_METER_COVER_CLOSED_ATTRIBUTE_ID 0x0209 // Ver.: always -#define ZCL_STRONG_MAGNETIC_FIELD_ATTRIBUTE_ID 0x020A // Ver.: always -#define ZCL_NO_STRONG_MAGNETIC_FIELD_ATTRIBUTE_ID 0x020B // Ver.: always -#define ZCL_BATTERY_FAILURE_ATTRIBUTE_ID 0x020C // Ver.: always -#define ZCL_PROGRAM_MEMORY_ERROR_ATTRIBUTE_ID 0x020D // Ver.: always -#define ZCL_RAM_ERROR_ATTRIBUTE_ID 0x020E // Ver.: always -#define ZCL_NV_MEMORY_ERROR_ATTRIBUTE_ID 0x020F // Ver.: always -#define ZCL_LOW_VOLTAGE_L1_ATTRIBUTE_ID 0x0210 // Ver.: always -#define ZCL_HIGH_VOLTAGE_L1_ATTRIBUTE_ID 0x0211 // Ver.: always -#define ZCL_LOW_VOLTAGE_L2_ATTRIBUTE_ID 0x0212 // Ver.: always -#define ZCL_HIGH_VOLTAGE_L2_ATTRIBUTE_ID 0x0213 // Ver.: always -#define ZCL_LOW_VOLTAGE_L3_ATTRIBUTE_ID 0x0214 // Ver.: always -#define ZCL_HIGH_VOLTAGE_L3_ATTRIBUTE_ID 0x0215 // Ver.: always -#define ZCL_OVER_CURRENT_L1_ATTRIBUTE_ID 0x0216 // Ver.: always -#define ZCL_OVER_CURRENT_L2_ATTRIBUTE_ID 0x0217 // Ver.: always -#define ZCL_OVER_CURRENT_L3_ATTRIBUTE_ID 0x0218 // Ver.: always -#define ZCL_FREQUENCY_TOO_LOW_L1_ATTRIBUTE_ID 0x0219 // Ver.: always -#define ZCL_FREQUENCY_TOO_HIGH_L1_ATTRIBUTE_ID 0x021A // Ver.: always -#define ZCL_FREQUENCY_TOO_LOW_L2_ATTRIBUTE_ID 0x021B // Ver.: always -#define ZCL_FREQUENCY_TOO_HIGH_L2_ATTRIBUTE_ID 0x021C // Ver.: always -#define ZCL_FREQUENCY_TOO_LOW_L3_ATTRIBUTE_ID 0x021D // Ver.: always -#define ZCL_FREQUENCY_TOO_HIGH_L3_ATTRIBUTE_ID 0x021E // Ver.: always -#define ZCL_GROUND_FAULT_ATTRIBUTE_ID 0x021F // Ver.: always -#define ZCL_ELECTRIC_TAMPER_DETECT_ATTRIBUTE_ID 0x0220 // Ver.: always -#define ZCL_INCORRECT_POLARITY_ATTRIBUTE_ID 0x0221 // Ver.: always -#define ZCL_CURRENT_NO_VOLTAGE_ATTRIBUTE_ID 0x0222 // Ver.: always -#define ZCL_UNDER_VOLTAGE_ATTRIBUTE_ID 0x0223 // Ver.: always -#define ZCL_OVER_VOLTAGE_ATTRIBUTE_ID 0x0224 // Ver.: always -#define ZCL_NORMAL_VOLTAGE_ATTRIBUTE_ID 0x0225 // Ver.: always -#define ZCL_PF_BELOW_THRESHOLD_ATTRIBUTE_ID 0x0226 // Ver.: always -#define ZCL_PF_ABOVE_THRESHOLD_ATTRIBUTE_ID 0x0227 // Ver.: always -#define ZCL_TERMINAL_COVER_REMOVED_ATTRIBUTE_ID 0x0228 // Ver.: always -#define ZCL_TERMINAL_COVER_CLOSED_ATTRIBUTE_ID 0x0229 // Ver.: always -#define ZCL_BURST_DETECT_ATTRIBUTE_ID 0x0230 // Ver.: always -#define ZCL_PRESSURE_TOO_LOW_ATTRIBUTE_ID 0x0231 // Ver.: always -#define ZCL_PRESSURE_TOO_HIGH_ATTRIBUTE_ID 0x0232 // Ver.: always -#define ZCL_FLOW_SENSOR_COMMUNICATION_ERROR_ATTRIBUTE_ID 0x0233 // Ver.: always -#define ZCL_FLOW_SENSOR_MEASUREMENT_FAULT_ATTRIBUTE_ID 0x0234 // Ver.: always -#define ZCL_FLOW_SENSOR_REVERSE_FLOW_ATTRIBUTE_ID 0x0235 // Ver.: always -#define ZCL_FLOW_SENSOR_AIR_DETECT_ATTRIBUTE_ID 0x0236 // Ver.: always -#define ZCL_PIPE_EMPTY_ATTRIBUTE_ID 0x0237 // Ver.: always -#define ZCL_INLET_TEMP_SENSOR_FAULT_ATTRIBUTE_ID 0x0250 // Ver.: always -#define ZCL_OUTLET_TEMP_SENSOR_FAULT_ATTRIBUTE_ID 0x0251 // Ver.: always -#define ZCL_REVERSE_FLOW_ATTRIBUTE_ID 0x0260 // Ver.: always -#define ZCL_TILT_TAMPER_ATTRIBUTE_ID 0x0261 // Ver.: always -#define ZCL_BATTERY_COVER_REMOVED_ATTRIBUTE_ID 0x0262 // Ver.: always -#define ZCL_BATTERY_COVER_CLOSED_ATTRIBUTE_ID 0x0263 // Ver.: always -#define ZCL_EXCESS_FLOW_ATTRIBUTE_ID 0x0264 // Ver.: always -#define ZCL_TILT_TAMPER_ENABLED_ATTRIBUTE_ID 0x0265 // Ver.: always -#define ZCL_MEASUREMENT_SYSTEM_ERROR_ATTRIBUTE_ID 0x0270 // Ver.: always -#define ZCL_WATCHDOG_ERROR_ATTRIBUTE_ID 0x0271 // Ver.: always -#define ZCL_SUPPLY_DISCONNECT_FAILURE_ATTRIBUTE_ID 0x0272 // Ver.: always -#define ZCL_SUPPLY_CONNECT_FAILURE_ATTRIBUTE_ID 0x0273 // Ver.: always -#define ZCL_MEASUREMENT_SOFTWARE_CHANGED_ATTRIBUTE_ID 0x0274 // Ver.: always -#define ZCL_DST_ENABLED_ATTRIBUTE_ID 0x0275 // Ver.: always -#define ZCL_DST_DISABLED_ATTRIBUTE_ID 0x0276 // Ver.: always -#define ZCL_CLOCK_ADJ_BACKWARD_ATTRIBUTE_ID 0x0277 // Ver.: always -#define ZCL_CLOCK_ADJ_FORWARD_ATTRIBUTE_ID 0x0278 // Ver.: always -#define ZCL_CLOCK_INVALID_ATTRIBUTE_ID 0x0279 // Ver.: always -#define ZCL_COMMUNICATION_ERROR_HAN_ATTRIBUTE_ID 0x027A // Ver.: always -#define ZCL_COMMUNICATION_OK_HAN_ATTRIBUTE_ID 0x027B // Ver.: always -#define ZCL_METER_FRAUD_ATTEMPT_ATTRIBUTE_ID 0x027C // Ver.: always -#define ZCL_POWER_LOSS_ATTRIBUTE_ID 0x027D // Ver.: always -#define ZCL_UNUSUAL_HAN_TRAFFIC_ATTRIBUTE_ID 0x027E // Ver.: always -#define ZCL_UNEXPECTED_CLOCK_CHANGE_ATTRIBUTE_ID 0x027F // Ver.: always -#define ZCL_COMMS_USING_UNAUTHENTICATED_COMPONENT_ATTRIBUTE_ID 0x0280 // Ver.: always -#define ZCL_METERING_ERROR_REG_CLEAR_ATTRIBUTE_ID 0x0281 // Ver.: always -#define ZCL_METERING_ALARM_REG_CLEAR_ATTRIBUTE_ID 0x0282 // Ver.: always -#define ZCL_UNEXPECTED_HW_RESET_ATTRIBUTE_ID 0x0283 // Ver.: always -#define ZCL_UNEXPECTED_PROGRAM_EXECUTION_ATTRIBUTE_ID 0x0284 // Ver.: always -#define ZCL_LIMIT_THRESHOLD_EXCEEDED_ATTRIBUTE_ID 0x0285 // Ver.: always -#define ZCL_LIMIT_THRESHOLD_OK_ATTRIBUTE_ID 0x0286 // Ver.: always -#define ZCL_LIMIT_THRESHOLD_CHANGED_ATTRIBUTE_ID 0x0287 // Ver.: always -#define ZCL_MAXIMUM_DEMAND_EXCEEDED_ATTRIBUTE_ID 0x0288 // Ver.: always -#define ZCL_PROFILE_CLEARED_ATTRIBUTE_ID 0x0289 // Ver.: always -#define ZCL_LOAD_PROFILE_CLEARED_ATTRIBUTE_ID 0x028A // Ver.: always -#define ZCL_BATTERY_WARN_ATTRIBUTE_ID 0x028B // Ver.: always -#define ZCL_WRONG_SIGNATURE_ATTRIBUTE_ID 0x028C // Ver.: always -#define ZCL_NO_SIGNATURE_ATTRIBUTE_ID 0x028D // Ver.: always -#define ZCL_SIGNATURE_NOT_VALID_ATTRIBUTE_ID 0x028E // Ver.: always -#define ZCL_UNAUTHORISE_ACTION_FROM_HAN_ATTRIBUTE_ID 0x028F // Ver.: always -#define ZCL_FAST_POLLING_START_ATTRIBUTE_ID 0x0290 // Ver.: always -#define ZCL_FAST_POLLING_END_ATTRIBUTE_ID 0x0291 // Ver.: always -#define ZCL_METER_REPORTING_INTERVAL_CHANGED_ATTRIBUTE_ID 0x0292 // Ver.: always -#define ZCL_DISCONNECT_TO_LOAD_LIMIT_ATTRIBUTE_ID 0x0293 // Ver.: always -#define ZCL_METER_SUPPLY_STATUS_REGISTER_CHANGED_ATTRIBUTE_ID 0x0294 // Ver.: always -#define ZCL_METER_ALARM_STATUS_REGISTER_CHANGED_ATTRIBUTE_ID 0x0295 // Ver.: always -#define ZCL_EXTENDED_METER_ALARM_STATUS_REGISTER_CHANGED_ATTRIBUTE_ID 0x0296 // Ver.: always -#define ZCL_DATA_ACCESS_VIA_LOCAL_PORT_ATTRIBUTE_ID 0x0297 // Ver.: always -#define ZCL_CONFIGURE_MIRROR_SUCCESS_ATTRIBUTE_ID 0x0298 // Ver.: always -#define ZCL_CONFIGURE_MIRROR_FAILURE_ATTRIBUTE_ID 0x0299 // Ver.: always -#define ZCL_CONFIGURE_NOTIFICATION_FLAG_SCHEME_SUCCESS_ATTRIBUTE_ID 0x029A // Ver.: always -#define ZCL_CONFIGURE_NOTIFICATION_FLAG_SCHEME_FAILURE_ATTRIBUTE_ID 0x029B // Ver.: always -#define ZCL_CONFIGURE_NOTIFICATION_FLAGS_SUCCESS_ATTRIBUTE_ID 0x029C // Ver.: always -#define ZCL_CONFIGURE_NOTIFICATION_FLAGS_FAILURE_ATTRIBUTE_ID 0x029D // Ver.: always -#define ZCL_STAY_AWAKE_REQUEST_HAN_ATTRIBUTE_ID 0x029E // Ver.: always -#define ZCL_STAY_AWAKE_REQUEST_WAN_ATTRIBUTE_ID 0x029F // Ver.: always -#define ZCL_MANUFACTURER_SPECIFIC_A_ATTRIBUTE_ID 0x02B0 // Ver.: always -#define ZCL_MANUFACTURER_SPECIFIC_B_ATTRIBUTE_ID 0x02B1 // Ver.: always -#define ZCL_MANUFACTURER_SPECIFIC_C_ATTRIBUTE_ID 0x02B2 // Ver.: always -#define ZCL_MANUFACTURER_SPECIFIC_D_ATTRIBUTE_ID 0x02B3 // Ver.: always -#define ZCL_MANUFACTURER_SPECIFIC_E_ATTRIBUTE_ID 0x02B4 // Ver.: always -#define ZCL_MANUFACTURER_SPECIFIC_F_ATTRIBUTE_ID 0x02B5 // Ver.: always -#define ZCL_MANUFACTURER_SPECIFIC_G_ATTRIBUTE_ID 0x02B6 // Ver.: always -#define ZCL_MANUFACTURER_SPECIFIC_H_ATTRIBUTE_ID 0x02B7 // Ver.: always -#define ZCL_MANUFACTURER_SPECIFIC_I_ATTRIBUTE_ID 0x02B8 // Ver.: always -#define ZCL_GET_PROFILE_COMMAND_RECEIVED_ATTRIBUTE_ID 0x02C0 // Ver.: always -#define ZCL_GET_PROFILE_COMMAND_ACTIONED_ATTRIBUTE_ID 0x02C1 // Ver.: always -#define ZCL_GET_PROFILE_COMMAND_CANCELLED_ATTRIBUTE_ID 0x02C2 // Ver.: always -#define ZCL_GET_PROFILE_COMMAND_REJECTED_ATTRIBUTE_ID 0x02C3 // Ver.: always -#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_RECEIVED_ATTRIBUTE_ID 0x02C4 // Ver.: always -#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_ACTIONED_ATTRIBUTE_ID 0x02C5 // Ver.: always -#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_CANCELLED_ATTRIBUTE_ID 0x02C6 // Ver.: always -#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_REJECTED_ATTRIBUTE_ID 0x02C7 // Ver.: always -#define ZCL_MIRROR_REMOVED_COMMAND_RECEIVED_ATTRIBUTE_ID 0x02C8 // Ver.: always -#define ZCL_MIRROR_REMOVED_COMMAND_ACTIONED_ATTRIBUTE_ID 0x02C9 // Ver.: always -#define ZCL_MIRROR_REMOVED_COMMAND_CANCELLED_ATTRIBUTE_ID 0x02CA // Ver.: always -#define ZCL_MIRROR_REMOVED_COMMAND_REJECTED_ATTRIBUTE_ID 0x02CB // Ver.: always -#define ZCL_GET_SNAPSHOT_COMMAND_RECEIVED_ATTRIBUTE_ID 0x02CC // Ver.: always -#define ZCL_GET_SNAPSHOT_COMMAND_ACTIONED_ATTRIBUTE_ID 0x02CD // Ver.: always -#define ZCL_GET_SNAPSHOT_COMMAND_CANCELLED_ATTRIBUTE_ID 0x02CE // Ver.: always -#define ZCL_GET_SNAPSHOT_COMMAND_REJECTED_ATTRIBUTE_ID 0x02CF // Ver.: always -#define ZCL_TAKE_SNAPSHOT_COMMAND_RECEIVED_ATTRIBUTE_ID 0x02D0 // Ver.: always -#define ZCL_TAKE_SNAPSHOT_COMMAND_ACTIONED_ATTRIBUTE_ID 0x02D1 // Ver.: always -#define ZCL_TAKE_SNAPSHOT_COMMAND_CANCELLED_ATTRIBUTE_ID 0x02D2 // Ver.: always -#define ZCL_TAKE_SNAPSHOT_COMMAND_REJECTED_ATTRIBUTE_ID 0x02D3 // Ver.: always -#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_RECEIVED_ATTRIBUTE_ID 0x02D4 // Ver.: always -#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_ACTIONED_ATTRIBUTE_ID 0x02D5 // Ver.: always -#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_CANCELLED_ATTRIBUTE_ID 0x02D6 // Ver.: always -#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_REJECTED_ATTRIBUTE_ID 0x02D7 // Ver.: always -#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_RECEIVED_ATTRIBUTE_ID 0x02D8 // Ver.: always -#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_ACTIONED_ATTRIBUTE_ID 0x02D9 // Ver.: always -#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_CANCELLED_ATTRIBUTE_ID 0x02DA // Ver.: always -#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_REJECTED_ATTRIBUTE_ID 0x02DB // Ver.: always -#define ZCL_START_SAMPLING_COMMAND_RECEIVED_ATTRIBUTE_ID 0x02DC // Ver.: always -#define ZCL_START_SAMPLING_COMMAND_ACTIONED_ATTRIBUTE_ID 0x02DD // Ver.: always -#define ZCL_START_SAMPLING_COMMAND_CANCELLED_ATTRIBUTE_ID 0x02DE // Ver.: always -#define ZCL_START_SAMPLING_COMMAND_REJECTED_ATTRIBUTE_ID 0x02DF // Ver.: always -#define ZCL_GET_SAMPLED_DATA_COMMAND_RECEIVED_ATTRIBUTE_ID 0x02E0 // Ver.: always -#define ZCL_GET_SAMPLED_DATA_COMMAND_ACTIONED_ATTRIBUTE_ID 0x02E1 // Ver.: always -#define ZCL_GET_SAMPLED_DATA_COMMAND_CANCELLED_ATTRIBUTE_ID 0x02E2 // Ver.: always -#define ZCL_GET_SAMPLED_DATA_COMMAND_REJECTED_ATTRIBUTE_ID 0x02E3 // Ver.: always -#define ZCL_SUPPLY_ON_ATTRIBUTE_ID 0x02E4 // Ver.: always -#define ZCL_SUPPLY_ARMED_ATTRIBUTE_ID 0x02E5 // Ver.: always -#define ZCL_SUPPLY_OFF_ATTRIBUTE_ID 0x02E6 // Ver.: always -#define ZCL_DISCONNECTED_DUE_TO_TAMPER_DETECTED_ATTRIBUTE_ID 0x02E7 // Ver.: always -#define ZCL_MANUAL_DISCONNECT_ATTRIBUTE_ID 0x02E8 // Ver.: always -#define ZCL_MANUAL_CONNECT_ATTRIBUTE_ID 0x02E9 // Ver.: always -#define ZCL_REMOTE_DISCONNECTION_ATTRIBUTE_ID 0x02EA // Ver.: always -#define ZCL_REMOTE_CONNECT_ATTRIBUTE_ID 0x02EB // Ver.: always -#define ZCL_LOCAL_DISCONNECTION_ATTRIBUTE_ID 0x02EC // Ver.: always -#define ZCL_LOCAL_CONNECT_ATTRIBUTE_ID 0x02ED // Ver.: always -#define ZCL_CHANGE_SUPPLY_RECEIVED_ATTRIBUTE_ID 0x02EE // Ver.: always -#define ZCL_CHANGE_SUPPLY_ACTIONED_ATTRIBUTE_ID 0x02EF // Ver.: always -#define ZCL_CHANGE_SUPPLY_CANCELLED_ATTRIBUTE_ID 0x02F0 // Ver.: always -#define ZCL_CHANGE_SUPPLY_REJECTED_ATTRIBUTE_ID 0x02F1 // Ver.: always -#define ZCL_LOCAL_CHANGE_SUPPLY_RECEIVED_ATTRIBUTE_ID 0x02F2 // Ver.: always -#define ZCL_LOCAL_CHANGE_SUPPLY_ACTIONED_ATTRIBUTE_ID 0x02F3 // Ver.: always -#define ZCL_LOCAL_CHANGE_SUPPLY_CANCELLED_ATTRIBUTE_ID 0x02F4 // Ver.: always -#define ZCL_LOCAL_CHANGE_SUPPLY_REJECTED_ATTRIBUTE_ID 0x02F5 // Ver.: always -#define ZCL_PUBLISH_UNCONTROLLED_FLOW_THRESHOLD_RECEIVED_ATTRIBUTE_ID 0x02F6 // Ver.: always -#define ZCL_PUBLISH_UNCONTROLLED_FLOW_THRESHOLD_ACTIONED_ATTRIBUTE_ID 0x02F7 // Ver.: always -#define ZCL_PUBLISH_UNCONTROLLED_FLOW_THRESHOLD_CANCELLED_ATTRIBUTE_ID 0x02F8 // Ver.: always -#define ZCL_PUBLISH_UNCONTROLLED_FLOW_THRESHOLD_REJECTED_ATTRIBUTE_ID 0x02F9 // Ver.: always -#define ZCL_MESSAGE_CONFIRMATION_SENT_ATTRIBUTE_ID 0x0300 // Ver.: always -#define ZCL_DISPLAY_MESSAGE_RECEIVED_ATTRIBUTE_ID 0x03C0 // Ver.: always -#define ZCL_DISPLAY_MESSAGE_ACTIONED_ATTRIBUTE_ID 0x03C1 // Ver.: always -#define ZCL_DISPLAY_MESSAGE_CANCELLED_ATTRIBUTE_ID 0x03C2 // Ver.: always -#define ZCL_DISPLAY_MESSAGE_REJECTED_ATTRIBUTE_ID 0x03C3 // Ver.: always -#define ZCL_CANCEL_MESSAGE_RECEIVED_ATTRIBUTE_ID 0x03C4 // Ver.: always -#define ZCL_CANCEL_MESSAGE_ACTIONED_ATTRIBUTE_ID 0x03C5 // Ver.: always -#define ZCL_CANCEL_MESSAGE_CANCELLED_ATTRIBUTE_ID 0x03C6 // Ver.: always -#define ZCL_CANCEL_MESSAGE_REJECTED_ATTRIBUTE_ID 0x03C7 // Ver.: always -#define ZCL_LOW_CREDIT_ATTRIBUTE_ID 0x0400 // Ver.: always -#define ZCL_NO_CREDIT_ATTRIBUTE_ID 0x0401 // Ver.: always -#define ZCL_CREDIT_EXHAUSTED_ATTRIBUTE_ID 0x0402 // Ver.: always -#define ZCL_EMERGENCY_CREDIT_ENABLED_ATTRIBUTE_ID 0x0403 // Ver.: always -#define ZCL_EMERGENCY_CREDIT_EXHAUSTED_ATTRIBUTE_ID 0x0404 // Ver.: always -#define ZCL_PREPAY_IHD_LOW_CREDIT_WARNING_ATTRIBUTE_ID 0x0405 // Ver.: always -#define ZCL_PHYSICAL_ATTACK_ON_THE_PREPAY_METER_ATTRIBUTE_ID 0x0420 // Ver.: always -#define ZCL_ELECTRONIC_ATTACK_ON_THE_PREPAY_METER_ATTRIBUTE_ID 0x0421 // Ver.: always -#define ZCL_DISCOUNT_APPLIED_ATTRIBUTE_ID 0x0422 // Ver.: always -#define ZCL_CREDIT_ADJUSTMENT_ATTRIBUTE_ID 0x0423 // Ver.: always -#define ZCL_CREDIT_ADJUST_FAIL_ATTRIBUTE_ID 0x0424 // Ver.: always -#define ZCL_DEBT_ADJUSTMENT_ATTRIBUTE_ID 0x0425 // Ver.: always -#define ZCL_DEBT_ADJUST_FAIL_ATTRIBUTE_ID 0x0426 // Ver.: always -#define ZCL_MODE_CHANGE_ATTRIBUTE_ID 0x0427 // Ver.: always -#define ZCL_TOPUP_CODE_ERROR_ATTRIBUTE_ID 0x0428 // Ver.: always -#define ZCL_TOPUP_ALREADY_USED_ATTRIBUTE_ID 0x0429 // Ver.: always -#define ZCL_TOPUP_CODE_INVALID_ATTRIBUTE_ID 0x042A // Ver.: always -#define ZCL_TOPUP_ACCEPTED_VIA_REMOTE_ATTRIBUTE_ID 0x042B // Ver.: always -#define ZCL_TOPUP_ACCEPTED_VIA_MANUAL_ENTRY_ATTRIBUTE_ID 0x042C // Ver.: always -#define ZCL_FRIENDLY_CREDIT_IN_USE_ATTRIBUTE_ID 0x042D // Ver.: always -#define ZCL_FRIENDLY_CREDIT_END_WARNING_ATTRIBUTE_ID 0x042E // Ver.: always -#define ZCL_FRIENDLY_CREDIT_PERIOD_END_ATTRIBUTE_ID 0x042F // Ver.: always -#define ZCL_PREPAY_ERROR_REG_CLEAR_ATTRIBUTE_ID 0x0430 // Ver.: always -#define ZCL_PREPAY_ALARM_REG_CLEAR_ATTRIBUTE_ID 0x0431 // Ver.: always -#define ZCL_PREPAY_CLUSTER_NOT_FOUND_ATTRIBUTE_ID 0x0432 // Ver.: always -#define ZCL_TOPUP_VALUE_TOO_LARGE_ATTRIBUTE_ID 0x0433 // Ver.: always -#define ZCL_MODE_CREDIT_2_PREPAY_ATTRIBUTE_ID 0x0441 // Ver.: always -#define ZCL_MODE_PREPAY_2_CREDIT_ATTRIBUTE_ID 0x0442 // Ver.: always -#define ZCL_MODE_DEFAULT_ATTRIBUTE_ID 0x0443 // Ver.: always -#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_RECEIVED_ATTRIBUTE_ID 0x04C0 // Ver.: always -#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_ACTIONED_ATTRIBUTE_ID 0x04C1 // Ver.: always -#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_CANCELLED_ATTRIBUTE_ID 0x04C2 // Ver.: always -#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_REJECTED_ATTRIBUTE_ID 0x04C3 // Ver.: always -#define ZCL_CHANGE_DEBT_RECEIVED_ATTRIBUTE_ID 0x04C4 // Ver.: always -#define ZCL_CHANGE_DEBT_ACTIONED_ATTRIBUTE_ID 0x04C5 // Ver.: always -#define ZCL_CHANGE_DEBT_CANCELLED_ATTRIBUTE_ID 0x04C6 // Ver.: always -#define ZCL_CHANGE_DEBT_REJECTED_ATTRIBUTE_ID 0x04C7 // Ver.: always -#define ZCL_EMERGENCY_CREDIT_SETUP_RECEIVED_ATTRIBUTE_ID 0x04C8 // Ver.: always -#define ZCL_EMERGENCY_CREDIT_SETUP_ACTIONED_ATTRIBUTE_ID 0x04C9 // Ver.: always -#define ZCL_EMERGENCY_CREDIT_SETUP_CANCELLED_ATTRIBUTE_ID 0x04CA // Ver.: always -#define ZCL_EMERGENCY_CREDIT_SETUP_REJECTED_ATTRIBUTE_ID 0x04CB // Ver.: always -#define ZCL_CONSUMER_TOPUP_RECEIVED_ATTRIBUTE_ID 0x04CC // Ver.: always -#define ZCL_CONSUMER_TOPUP_ACTIONED_ATTRIBUTE_ID 0x04CD // Ver.: always -#define ZCL_CONSUMER_TOPUP_CANCELLED_ATTRIBUTE_ID 0x04CE // Ver.: always -#define ZCL_CONSUMER_TOPUP_REJECTED_ATTRIBUTE_ID 0x04CF // Ver.: always -#define ZCL_CREDIT_ADJUSTMENT_RECEIVED_ATTRIBUTE_ID 0x04D0 // Ver.: always -#define ZCL_CREDIT_ADJUSTMENT_ACTIONED_ATTRIBUTE_ID 0x04D1 // Ver.: always -#define ZCL_CREDIT_ADJUSTMENT_CANCELLED_ATTRIBUTE_ID 0x04D2 // Ver.: always -#define ZCL_CREDIT_ADJUSTMENT_REJECTED_ATTRIBUTE_ID 0x04D3 // Ver.: always -#define ZCL_CHANGE_PAYMENT_MODE_RECEIVED_ATTRIBUTE_ID 0x04D4 // Ver.: always -#define ZCL_CHANGE_PAYMENT_MODE_ACTIONED_ATTRIBUTE_ID 0x04D5 // Ver.: always -#define ZCL_CHANGE_PAYMENT_MODE_CANCELLED_ATTRIBUTE_ID 0x04D6 // Ver.: always -#define ZCL_CHANGE_PAYMENT_MODE_REJECTED_ATTRIBUTE_ID 0x04D7 // Ver.: always -#define ZCL_GET_PREPAY_SNAPSHOT_RECEIVED_ATTRIBUTE_ID 0x04D8 // Ver.: always -#define ZCL_GET_PREPAY_SNAPSHOT_ACTIONED_ATTRIBUTE_ID 0x04D9 // Ver.: always -#define ZCL_GET_PREPAY_SNAPSHOT_CANCELLED_ATTRIBUTE_ID 0x04DA // Ver.: always -#define ZCL_GET_PREPAY_SNAPSHOT_REJECTED_ATTRIBUTE_ID 0x04DB // Ver.: always -#define ZCL_GET_TOPUP_LOG_RECEIVED_ATTRIBUTE_ID 0x04DC // Ver.: always -#define ZCL_GET_TOPUP_LOG_ACTIONED_ATTRIBUTE_ID 0x04DD // Ver.: always -#define ZCL_GET_TOPUP_LOG_CANCELLED_ATTRIBUTE_ID 0x04DE // Ver.: always -#define ZCL_GET_TOPUP_LOG_REJECTED_ATTRIBUTE_ID 0x04DF // Ver.: always -#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_RECEIVED_ATTRIBUTE_ID 0x04E0 // Ver.: always -#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_ACTIONED_ATTRIBUTE_ID 0x04E1 // Ver.: always -#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_CANCELLED_ATTRIBUTE_ID 0x04E2 // Ver.: always -#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_REJECTED_ATTRIBUTE_ID 0x04E3 // Ver.: always -#define ZCL_GET_DEBT_REPAY_LOG_RECEIVED_ATTRIBUTE_ID 0x04E4 // Ver.: always -#define ZCL_GET_DEBT_REPAY_LOG_ACTIONED_ATTRIBUTE_ID 0x04E5 // Ver.: always -#define ZCL_GET_DEBT_REPAY_LOG_CANCELLED_ATTRIBUTE_ID 0x04E6 // Ver.: always -#define ZCL_GET_DEBT_REPAY_LOG_REJECTED_ATTRIBUTE_ID 0x04E7 // Ver.: always -#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_RECEIVED_ATTRIBUTE_ID 0x04E8 // Ver.: always -#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_ACTIONED_ATTRIBUTE_ID 0x04E9 // Ver.: always -#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_CANCELLED_ATTRIBUTE_ID 0x04EA // Ver.: always -#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_REJECTED_ATTRIBUTE_ID 0x04EB // Ver.: always -#define ZCL_SET_OVERALL_DEBT_CAP_RECEIVED_ATTRIBUTE_ID 0x04EC // Ver.: always -#define ZCL_SET_OVERALL_DEBT_CAP_ACTIONED_ATTRIBUTE_ID 0x04ED // Ver.: always -#define ZCL_SET_OVERALL_DEBT_CAP_CANCELLED_ATTRIBUTE_ID 0x04EE // Ver.: always -#define ZCL_SET_OVERALL_DEBT_CAP_REJECTED_ATTRIBUTE_ID 0x04EF // Ver.: always -#define ZCL_CALENDAR_CLUSTER_NOT_FOUND_ATTRIBUTE_ID 0x0500 // Ver.: always -#define ZCL_CALENDAR_CHANGE_PASSIVE_ACTIVATED_ATTRIBUTE_ID 0x0501 // Ver.: always -#define ZCL_CALENDAR_CHANGE_PASSIVE_UPDATED_ATTRIBUTE_ID 0x0502 // Ver.: always -#define ZCL_PUBLISH_CALENDAR_RECEIVED_ATTRIBUTE_ID 0x05C0 // Ver.: always -#define ZCL_PUBLISH_CALENDAR_ACTIONED_ATTRIBUTE_ID 0x05C1 // Ver.: always -#define ZCL_PUBLISH_CALENDAR_CANCELLED_ATTRIBUTE_ID 0x05C2 // Ver.: always -#define ZCL_PUBLISH_CALENDAR_REJECTED_ATTRIBUTE_ID 0x05C3 // Ver.: always -#define ZCL_PUBLISH_DAY_PROFILE_RECEIVED_ATTRIBUTE_ID 0x05C4 // Ver.: always -#define ZCL_PUBLISH_DAY_PROFILE_ACTIONED_ATTRIBUTE_ID 0x05C5 // Ver.: always -#define ZCL_PUBLISH_DAY_PROFILE_CANCELLED_ATTRIBUTE_ID 0x05C6 // Ver.: always -#define ZCL_PUBLISH_DAY_PROFILE_REJECTED_ATTRIBUTE_ID 0x05C7 // Ver.: always -#define ZCL_PUBLISH_WEEK_PROFILE_RECEIVED_ATTRIBUTE_ID 0x05C8 // Ver.: always -#define ZCL_PUBLISH_WEEK_PROFILE_ACTIONED_ATTRIBUTE_ID 0x05C9 // Ver.: always -#define ZCL_PUBLISH_WEEK_PROFILE_CANCELLED_ATTRIBUTE_ID 0x05CA // Ver.: always -#define ZCL_PUBLISH_WEEK_PROFILE_REJECTED_ATTRIBUTE_ID 0x05CB // Ver.: always -#define ZCL_PUBLISH_SEASONS_RECEIVED_ATTRIBUTE_ID 0x05CC // Ver.: always -#define ZCL_PUBLISH_SEASONS_ACTIONED_ATTRIBUTE_ID 0x05CD // Ver.: always -#define ZCL_PUBLISH_SEASONS_CANCELLED_ATTRIBUTE_ID 0x05CE // Ver.: always -#define ZCL_PUBLISH_SEASONS_REJECTED_ATTRIBUTE_ID 0x05CF // Ver.: always -#define ZCL_PUBLISH_SPECIAL_DAYS_RECEIVED_ATTRIBUTE_ID 0x05D0 // Ver.: always -#define ZCL_PUBLISH_SPECIAL_DAYS_ACTIONED_ATTRIBUTE_ID 0x05D1 // Ver.: always -#define ZCL_PUBLISH_SPECIAL_DAYS_CANCELLED_ATTRIBUTE_ID 0x05D2 // Ver.: always -#define ZCL_PUBLISH_SPECIAL_DAYS_REJECTED_ATTRIBUTE_ID 0x05D3 // Ver.: always -#define ZCL_PASSWORD_1_CHANGE_ATTRIBUTE_ID 0x0600 // Ver.: always -#define ZCL_PASSWORD_2_CHANGE_ATTRIBUTE_ID 0x0601 // Ver.: always -#define ZCL_PASSWORD_3_CHANGE_ATTRIBUTE_ID 0x0602 // Ver.: always -#define ZCL_PASSWORD_4_CHANGE_ATTRIBUTE_ID 0x0603 // Ver.: always -#define ZCL_EVENT_LOG_CLEARED_ATTRIBUTE_ID 0x0604 // Ver.: always -#define ZCL_ZIGBEE_APS_TIMEOUT_ATTRIBUTE_ID 0x0610 // Ver.: always -#define ZCL_ZIGBEE_IEEE_TRANSMISSION_FAILURE_OVER_THRESHOLD_ATTRIBUTE_ID 0x0611 // Ver.: always -#define ZCL_ZIGBEE_IEEE_FRAME_CHECK_SEQUENCE_THRESHOLD_ATTRIBUTE_ID 0x0612 // Ver.: always -#define ZCL_ERROR_CERTIFICATE_ATTRIBUTE_ID 0x0613 // Ver.: always -#define ZCL_ERROR_SIGNATURE_ATTRIBUTE_ID 0x0614 // Ver.: always -#define ZCL_ERROR_PROGRAM_STORAGE_ATTRIBUTE_ID 0x0615 // Ver.: always -#define ZCL_PUBLISH_COT_RECEIVED_ATTRIBUTE_ID 0x06C0 // Ver.: always -#define ZCL_PUBLISH_COT_ACTIONED_ATTRIBUTE_ID 0x06C1 // Ver.: always -#define ZCL_PUBLISH_COT_CANCELLED_ATTRIBUTE_ID 0x06C2 // Ver.: always -#define ZCL_PUBLISH_COT_REJECTED_ATTRIBUTE_ID 0x06C3 // Ver.: always -#define ZCL_PUBLISH_COS_RECEIVED_ATTRIBUTE_ID 0x06C4 // Ver.: always -#define ZCL_PUBLISH_COS_ACTIONED_ATTRIBUTE_ID 0x06C5 // Ver.: always -#define ZCL_PUBLISH_COS_CANCELLED_ATTRIBUTE_ID 0x06C6 // Ver.: always -#define ZCL_PUBLISH_COS_REJECTED_ATTRIBUTE_ID 0x06C7 // Ver.: always -#define ZCL_CHANGE_PASSWORD_RECEIVED_ATTRIBUTE_ID 0x06C8 // Ver.: always -#define ZCL_CHANGE_PASSWORD_ACTIONED_ATTRIBUTE_ID 0x06C9 // Ver.: always -#define ZCL_CHANGE_PASSWORD_CANCELLED_ATTRIBUTE_ID 0x06CA // Ver.: always -#define ZCL_CHANGE_PASSWORD_REJECTED_ATTRIBUTE_ID 0x06CB // Ver.: always -#define ZCL_SET_EVENT_CONFIGURATION_RECEIVED_ATTRIBUTE_ID 0x06CC // Ver.: always -#define ZCL_SET_EVENT_CONFIGURATION_ACTIONED_ATTRIBUTE_ID 0x06CD // Ver.: always -#define ZCL_SET_EVENT_CONFIGURATION_CANCELLED_ATTRIBUTE_ID 0x06CE // Ver.: always -#define ZCL_SET_EVENT_CONFIGURATION_REJECTED_ATTRIBUTE_ID 0x06CF // Ver.: always -#define ZCL_UPDATE_SITE_ID_RECEIVED_ATTRIBUTE_ID 0x06D0 // Ver.: always -#define ZCL_UPDATE_SITE_ID_ACTIONED_ATTRIBUTE_ID 0x06D1 // Ver.: always -#define ZCL_UPDATE_SITE_ID_CANCELLED_ATTRIBUTE_ID 0x06D2 // Ver.: always -#define ZCL_UPDATE_SITE_ID_REJECTED_ATTRIBUTE_ID 0x06D3 // Ver.: always -#define ZCL_UPDATE_CIN_RECEIVED_ATTRIBUTE_ID 0x06D4 // Ver.: always -#define ZCL_UPDATE_CIN_ACTIONED_ATTRIBUTE_ID 0x06D5 // Ver.: always -#define ZCL_UPDATE_CIN_CANCELLED_ATTRIBUTE_ID 0x06D6 // Ver.: always -#define ZCL_UPDATE_CIN_REJECTED_ATTRIBUTE_ID 0x06D7 // Ver.: always -#define ZCL_TUNNELING_CLUSTER_NOT_FOUND_ATTRIBUTE_ID 0x0700 // Ver.: always -#define ZCL_UNSUPPORTED_PROTOCOL_ATTRIBUTE_ID 0x0701 // Ver.: always -#define ZCL_INCORRECT_PROTOCOL_ATTRIBUTE_ID 0x0702 // Ver.: always -#define ZCL_REQUEST_TUNNEL_COMMAND_RECEIVED_ATTRIBUTE_ID 0x07C0 // Ver.: always -#define ZCL_REQUEST_TUNNEL_COMMAND_REJECTED_ATTRIBUTE_ID 0x07C1 // Ver.: always -#define ZCL_REQUEST_TUNNEL_COMMAND_GENERATED_ATTRIBUTE_ID 0x07C2 // Ver.: always -#define ZCL_CLOSE_TUNNEL_COMMAND_RECEIVED_ATTRIBUTE_ID 0x07C3 // Ver.: always -#define ZCL_CLOSE_TUNNEL_COMMAND_REJECTED_ATTRIBUTE_ID 0x07C4 // Ver.: always -#define ZCL_CLOSE_TUNNEL_COMMAND_GENERATED_ATTRIBUTE_ID 0x07C5 // Ver.: always -#define ZCL_TRANSFER_DATA_COMMAND_RECEIVED_ATTRIBUTE_ID 0x07C6 // Ver.: always -#define ZCL_TRANSFER_DATA_COMMAND_REJECTED_ATTRIBUTE_ID 0x07C7 // Ver.: always -#define ZCL_TRANSFER_DATA_COMMAND_GENERATED_ATTRIBUTE_ID 0x07C8 // Ver.: always -#define ZCL_TRANSFER_DATA_ERROR_COMMAND_RECEIVED_ATTRIBUTE_ID 0x07C9 // Ver.: always -#define ZCL_TRANSFER_DATA_ERROR_COMMAND_REJECTED_ATTRIBUTE_ID 0x07CA // Ver.: always -#define ZCL_TRANSFER_DATA_ERROR_COMMAND_GENERATED_ATTRIBUTE_ID 0x07CB // Ver.: always -#define ZCL_ACK_TRANSFER_DATA_COMMAND_RECEIVED_ATTRIBUTE_ID 0x07CC // Ver.: always -#define ZCL_ACK_TRANSFER_DATA_COMMAND_REJECTED_ATTRIBUTE_ID 0x07CD // Ver.: always -#define ZCL_ACK_TRANSFER_DATA_COMMAND_GENERATED_ATTRIBUTE_ID 0x07CE // Ver.: always -#define ZCL_READY_DATA_COMMAND_RECEIVED_ATTRIBUTE_ID 0x07CF // Ver.: always -#define ZCL_READY_DATA_COMMAND_REJECTED_ATTRIBUTE_ID 0x07D0 // Ver.: always -#define ZCL_READY_DATA_COMMAND_GENERATED_ATTRIBUTE_ID 0x07D1 // Ver.: always -#define ZCL_GET_SUPPORTED_TUNNEL_PROTOCOLS_COMMAND_RECEIVED_ATTRIBUTE_ID 0x07D2 // Ver.: always -#define ZCL_GET_SUPPORTED_TUNNEL_PROTOCOLS_COMMAND_REJECTED_ATTRIBUTE_ID 0x07D3 // Ver.: always -#define ZCL_GET_SUPPORTED_TUNNEL_PROTOCOLS_COMMAND_GENERATED_ATTRIBUTE_ID 0x07D4 // Ver.: always -#define ZCL_FIRMWARE_READY_FOR_ACTIVATION_ATTRIBUTE_ID 0x0800 // Ver.: always -#define ZCL_FIRMWARE_ACTIVATED_ATTRIBUTE_ID 0x0801 // Ver.: always -#define ZCL_FIRMWARE_ACTIVATION_FAILURE_ATTRIBUTE_ID 0x0802 // Ver.: always -#define ZCL_PATCH_READY_FOR_ACTIVATION_ATTRIBUTE_ID 0x0803 // Ver.: always -#define ZCL_PATCH_ACTIVATED_ATTRIBUTE_ID 0x0804 // Ver.: always -#define ZCL_PATCH_FAILURE_ATTRIBUTE_ID 0x0805 // Ver.: always -#define ZCL_IMAGE_NOTIFY_COMMAND_RECEIVED_ATTRIBUTE_ID 0x08C0 // Ver.: always -#define ZCL_IMAGE_NOTIFY_COMMAND_REJECTED_ATTRIBUTE_ID 0x08C1 // Ver.: always -#define ZCL_QUERY_NEXT_IMAGE_REQUEST_GENERATED_ATTRIBUTE_ID 0x08C2 // Ver.: always -#define ZCL_QUERY_NEXT_IMAGE_RESPONSE_RECEIVED_ATTRIBUTE_ID 0x08C3 // Ver.: always -#define ZCL_QUERY_NEXT_IMAGE_RESPONSE_REJECTED_ATTRIBUTE_ID 0x08C4 // Ver.: always -#define ZCL_IMAGE_BLOCK_REQUEST_GENERATED_ATTRIBUTE_ID 0x08C5 // Ver.: always -#define ZCL_IMAGE_PAGE_REQUEST_GENERATED_ATTRIBUTE_ID 0x08C6 // Ver.: always -#define ZCL_IMAGE_BLOCK_RESPONSE_RECEIVED_ATTRIBUTE_ID 0x08C7 // Ver.: always -#define ZCL_IMAGE_BLOCK_RESPONSE_REJECTED_ATTRIBUTE_ID 0x08C8 // Ver.: always -#define ZCL_UPGRADE_END_REQUEST_GENERATED_ATTRIBUTE_ID 0x08C9 // Ver.: always -#define ZCL_UPGRADE_END_RESPONSE_RECEIVED_ATTRIBUTE_ID 0x08CA // Ver.: always -#define ZCL_UPGRADE_END_RESPONSE_REJECTED_ATTRIBUTE_ID 0x08CB // Ver.: always -#define ZCL_QUERY_SPECIFIC_FILE_REQUEST_GENERATED_ATTRIBUTE_ID 0x08CC // Ver.: always -#define ZCL_QUERY_SPECIFIC_FILE_RESPONSE_RECEIVED_ATTRIBUTE_ID 0x08CD // Ver.: always -#define ZCL_QUERY_SPECIFIC_FILE_RESPONSE_REJECTED_ATTRIBUTE_ID 0x08CE // Ver.: always -#define ZCL_DEVICE_MANAGEMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DEVICE_MANAGEMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_PROVIDER_ID_CLIENT_ATTRIBUTE_ID (0x0000) +#define ZCL_RECEIVED_PROVIDER_ID_CLIENT_ATTRIBUTE_ID (0x0010) +#define ZCL_TOU_TARIFF_ACTIVATION_ATTRIBUTE_ID (0x0100) +#define ZCL_BLOCK_TARIFF_ACTIVATED_ATTRIBUTE_ID (0x0101) +#define ZCL_BLOCK_TOU_TARIFF_ACTIVATED_ATTRIBUTE_ID (0x0102) +#define ZCL_SINGLE_TARIFF_RATE_ACTIVATED_ATTRIBUTE_ID (0x0103) +#define ZCL_ASYNCHRONOUS_BILLING_OCCURRED_ATTRIBUTE_ID (0x0104) +#define ZCL_SYNCHRONOUS_BILLING_OCCURRED_ATTRIBUTE_ID (0x0105) +#define ZCL_TARIFF_NOT_SUPPORTED_ATTRIBUTE_ID (0x0106) +#define ZCL_PRICE_CLUSTER_NOT_FOUND_ATTRIBUTE_ID (0x0107) +#define ZCL_CURRENCY_CHANGE_PASSIVE_ACTIVATED_ATTRIBUTE_ID (0x0108) +#define ZCL_CURRENCY_CHANGE_PASSIVE_UPDATED_ATTRIBUTE_ID (0x0109) +#define ZCL_PRICE_MATRIX_PASSIVE_ACTIVATED_ATTRIBUTE_ID (0x010A) +#define ZCL_PRICE_MATRIX_PASSIVE_UPDATED_ATTRIBUTE_ID (0x010B) +#define ZCL_TARIFF_CHANGE_PASSIVE_ACTIVATED_ATTRIBUTE_ID (0x010C) +#define ZCL_TARIFF_CHANGE_PASSIVE_UPDATED_ATTRIBUTE_ID (0x010D) +#define ZCL_PUBLISH_PRICE_RECEIVED_ATTRIBUTE_ID (0x01B0) +#define ZCL_PUBLISH_PRICE_ACTIONED_ATTRIBUTE_ID (0x01B1) +#define ZCL_PUBLISH_PRICE_CANCELLED_ATTRIBUTE_ID (0x01B2) +#define ZCL_PUBLISH_PRICE_REJECTED_ATTRIBUTE_ID (0x01B3) +#define ZCL_PUBLISH_TARIFF_INFO_RECEIVED_ATTRIBUTE_ID (0x01B4) +#define ZCL_PUBLISH_TARIFF_INFO_ACTIONED_ATTRIBUTE_ID (0x01B5) +#define ZCL_PUBLISH_TARIFF_INFO_CANCELLED_ATTRIBUTE_ID (0x01B6) +#define ZCL_PUBLISH_TARIFF_INFO_REJECTED_ATTRIBUTE_ID (0x01B7) +#define ZCL_PUBLISH_PRICE_MATRIX_RECEIVED_ATTRIBUTE_ID (0x01B8) +#define ZCL_PUBLISH_PRICE_MATRIX_ACTIONED_ATTRIBUTE_ID (0x01B9) +#define ZCL_PUBLISH_PRICE_MATRIX_CANCELLED_ATTRIBUTE_ID (0x01BA) +#define ZCL_PUBLISH_PRICE_MATRIX_REJECTED_ATTRIBUTE_ID (0x01BB) +#define ZCL_PUBLISH_BLOCK_THRESHOLDS_RECEIVED_ATTRIBUTE_ID (0x01BC) +#define ZCL_PUBLISH_BLOCK_THRESHOLDS_ACTIONED_ATTRIBUTE_ID (0x01BD) +#define ZCL_PUBLISH_BLOCK_THRESHOLDS_CANCELLED_ATTRIBUTE_ID (0x01BE) +#define ZCL_PUBLISH_BLOCK_THRESHOLDS_REJECTED_ATTRIBUTE_ID (0x01BF) +#define ZCL_PUBLISH_CALORIFIC_VALUE_RECEIVED_ATTRIBUTE_ID (0x01C0) +#define ZCL_PUBLISH_CALORIFIC_VALUE_ACTIONED_ATTRIBUTE_ID (0x01C1) +#define ZCL_PUBLISH_CALORIFIC_VALUE_CANCELLED_ATTRIBUTE_ID (0x01C2) +#define ZCL_PUBLISH_CALORIFIC_VALUE_REJECTED_ATTRIBUTE_ID (0x01C3) +#define ZCL_PUBLISH_CONVERSION_FACTOR_RECEIVED_ATTRIBUTE_ID (0x01C4) +#define ZCL_PUBLISH_CONVERSION_FACTOR_ACTIONED_ATTRIBUTE_ID (0x01C5) +#define ZCL_PUBLISH_CONVERSION_FACTOR_CANCELLED_ATTRIBUTE_ID (0x01C6) +#define ZCL_PUBLISH_CONVERSION_FACTOR_REJECTED_ATTRIBUTE_ID (0x01C7) +#define ZCL_PUBLISH_CO2_VALUE_RECEIVED_ATTRIBUTE_ID (0x01C8) +#define ZCL_PUBLISH_CO2_VALUE_ACTIONED_ATTRIBUTE_ID (0x01C9) +#define ZCL_PUBLISH_CO2_VALUE_CANCELLED_ATTRIBUTE_ID (0x01CA) +#define ZCL_PUBLISH_CO2_VALUE_REJECTED_ATTRIBUTE_ID (0x01CB) +#define ZCL_PUBLISH_CPP_EVENT_RECEIVED_ATTRIBUTE_ID (0x01CC) +#define ZCL_PUBLISH_CPP_EVENT_ACTIONED_ATTRIBUTE_ID (0x01CD) +#define ZCL_PUBLISH_CPP_EVENT_CANCELLED_ATTRIBUTE_ID (0x01CE) +#define ZCL_PUBLISH_CPP_EVENT_REJECTED_ATTRIBUTE_ID (0x01CF) +#define ZCL_PUBLISH_TIER_LABELS_RECEIVED_ATTRIBUTE_ID (0x01D0) +#define ZCL_PUBLISH_TIER_LABELS_ACTIONED_ATTRIBUTE_ID (0x01D1) +#define ZCL_PUBLISH_TIER_LABELS_CANCELLED_ATTRIBUTE_ID (0x01D2) +#define ZCL_PUBLISH_TIER_LABELS_REJECTED_ATTRIBUTE_ID (0x01D3) +#define ZCL_PUBLISH_BILLING_PERIOD_RECEIVED_ATTRIBUTE_ID (0x01D4) +#define ZCL_PUBLISH_BILLING_PERIOD_ACTIONED_ATTRIBUTE_ID (0x01D5) +#define ZCL_PUBLISH_BILLING_PERIOD_CANCELLED_ATTRIBUTE_ID (0x01D6) +#define ZCL_PUBLISH_BILLING_PERIOD_REJECTED_ATTRIBUTE_ID (0x01D7) +#define ZCL_PUBLISH_CONSOLIDATED_BILL_RECEIVED_ATTRIBUTE_ID (0x01D8) +#define ZCL_PUBLISH_CONSOLIDATED_BILL_ACTIONED_ATTRIBUTE_ID (0x01D9) +#define ZCL_PUBLISH_CONSOLIDATED_BILL_CANCELLED_ATTRIBUTE_ID (0x01DA) +#define ZCL_PUBLISH_CONSOLIDATED_BILL_REJECTED_ATTRIBUTE_ID (0x01DB) +#define ZCL_PUBLISH_BLOCK_PERIOD_RECEIVED_ATTRIBUTE_ID (0x01DC) +#define ZCL_PUBLISH_BLOCK_PERIOD_ACTIONED_ATTRIBUTE_ID (0x01DD) +#define ZCL_PUBLISH_BLOCK_PERIOD_CANCELLED_ATTRIBUTE_ID (0x01DE) +#define ZCL_PUBLISH_BLOCK_PERIOD_REJECTED_ATTRIBUTE_ID (0x01DF) +#define ZCL_PUBLISH_CREDIT_PAYMENT_INFO_RECEIVED_ATTRIBUTE_ID (0x01E0) +#define ZCL_PUBLISH_CREDIT_PAYMENT_INFO_ACTIONED_ATTRIBUTE_ID (0x01E1) +#define ZCL_PUBLISH_CREDIT_PAYMENT_INFO_CANCELLED_ATTRIBUTE_ID (0x01E2) +#define ZCL_PUBLISH_CREDIT_PAYMENT_INFO_REJECTED_ATTRIBUTE_ID (0x01E3) +#define ZCL_PUBLISH_CURRENCY_CONVERSION_RECEIVED_ATTRIBUTE_ID (0x01E4) +#define ZCL_PUBLISH_CURRENCY_CONVERSION_ACTIONED_ATTRIBUTE_ID (0x01E5) +#define ZCL_PUBLISH_CURRENCY_CONVERSION_CANCELLED_ATTRIBUTE_ID (0x01E6) +#define ZCL_PUBLISH_CURRENCY_CONVERSION_REJECTED_ATTRIBUTE_ID (0x01E7) +#define ZCL_CHECK_METER_ATTRIBUTE_ID (0x0200) +#define ZCL_LOW_BATTERY_ATTRIBUTE_ID (0x0201) +#define ZCL_TAMPER_DETECT_ATTRIBUTE_ID (0x0202) +#define ZCL_DEVICE_MANAGEMENT_SUPPLY_STATUS_ATTRIBUTE_ID (0x0203) +#define ZCL_SUPPLY_QUALITY_ATTRIBUTE_ID (0x0204) +#define ZCL_LEAK_DETECT_ATTRIBUTE_ID (0x0205) +#define ZCL_SERVICE_DISCONNECT_ATTRIBUTE_ID (0x0206) +#define ZCL_REVERSE_FLOW_GENERAL_ATTRIBUTE_ID (0x0207) +#define ZCL_METER_COVER_REMOVED_ATTRIBUTE_ID (0x0208) +#define ZCL_METER_COVER_CLOSED_ATTRIBUTE_ID (0x0209) +#define ZCL_STRONG_MAGNETIC_FIELD_ATTRIBUTE_ID (0x020A) +#define ZCL_NO_STRONG_MAGNETIC_FIELD_ATTRIBUTE_ID (0x020B) +#define ZCL_BATTERY_FAILURE_ATTRIBUTE_ID (0x020C) +#define ZCL_PROGRAM_MEMORY_ERROR_ATTRIBUTE_ID (0x020D) +#define ZCL_RAM_ERROR_ATTRIBUTE_ID (0x020E) +#define ZCL_NV_MEMORY_ERROR_ATTRIBUTE_ID (0x020F) +#define ZCL_LOW_VOLTAGE_L1_ATTRIBUTE_ID (0x0210) +#define ZCL_HIGH_VOLTAGE_L1_ATTRIBUTE_ID (0x0211) +#define ZCL_LOW_VOLTAGE_L2_ATTRIBUTE_ID (0x0212) +#define ZCL_HIGH_VOLTAGE_L2_ATTRIBUTE_ID (0x0213) +#define ZCL_LOW_VOLTAGE_L3_ATTRIBUTE_ID (0x0214) +#define ZCL_HIGH_VOLTAGE_L3_ATTRIBUTE_ID (0x0215) +#define ZCL_OVER_CURRENT_L1_ATTRIBUTE_ID (0x0216) +#define ZCL_OVER_CURRENT_L2_ATTRIBUTE_ID (0x0217) +#define ZCL_OVER_CURRENT_L3_ATTRIBUTE_ID (0x0218) +#define ZCL_FREQUENCY_TOO_LOW_L1_ATTRIBUTE_ID (0x0219) +#define ZCL_FREQUENCY_TOO_HIGH_L1_ATTRIBUTE_ID (0x021A) +#define ZCL_FREQUENCY_TOO_LOW_L2_ATTRIBUTE_ID (0x021B) +#define ZCL_FREQUENCY_TOO_HIGH_L2_ATTRIBUTE_ID (0x021C) +#define ZCL_FREQUENCY_TOO_LOW_L3_ATTRIBUTE_ID (0x021D) +#define ZCL_FREQUENCY_TOO_HIGH_L3_ATTRIBUTE_ID (0x021E) +#define ZCL_GROUND_FAULT_ATTRIBUTE_ID (0x021F) +#define ZCL_ELECTRIC_TAMPER_DETECT_ATTRIBUTE_ID (0x0220) +#define ZCL_INCORRECT_POLARITY_ATTRIBUTE_ID (0x0221) +#define ZCL_CURRENT_NO_VOLTAGE_ATTRIBUTE_ID (0x0222) +#define ZCL_UNDER_VOLTAGE_ATTRIBUTE_ID (0x0223) +#define ZCL_OVER_VOLTAGE_ATTRIBUTE_ID (0x0224) +#define ZCL_NORMAL_VOLTAGE_ATTRIBUTE_ID (0x0225) +#define ZCL_PF_BELOW_THRESHOLD_ATTRIBUTE_ID (0x0226) +#define ZCL_PF_ABOVE_THRESHOLD_ATTRIBUTE_ID (0x0227) +#define ZCL_TERMINAL_COVER_REMOVED_ATTRIBUTE_ID (0x0228) +#define ZCL_TERMINAL_COVER_CLOSED_ATTRIBUTE_ID (0x0229) +#define ZCL_BURST_DETECT_ATTRIBUTE_ID (0x0230) +#define ZCL_PRESSURE_TOO_LOW_ATTRIBUTE_ID (0x0231) +#define ZCL_PRESSURE_TOO_HIGH_ATTRIBUTE_ID (0x0232) +#define ZCL_FLOW_SENSOR_COMMUNICATION_ERROR_ATTRIBUTE_ID (0x0233) +#define ZCL_FLOW_SENSOR_MEASUREMENT_FAULT_ATTRIBUTE_ID (0x0234) +#define ZCL_FLOW_SENSOR_REVERSE_FLOW_ATTRIBUTE_ID (0x0235) +#define ZCL_FLOW_SENSOR_AIR_DETECT_ATTRIBUTE_ID (0x0236) +#define ZCL_PIPE_EMPTY_ATTRIBUTE_ID (0x0237) +#define ZCL_INLET_TEMP_SENSOR_FAULT_ATTRIBUTE_ID (0x0250) +#define ZCL_OUTLET_TEMP_SENSOR_FAULT_ATTRIBUTE_ID (0x0251) +#define ZCL_REVERSE_FLOW_ATTRIBUTE_ID (0x0260) +#define ZCL_TILT_TAMPER_ATTRIBUTE_ID (0x0261) +#define ZCL_BATTERY_COVER_REMOVED_ATTRIBUTE_ID (0x0262) +#define ZCL_BATTERY_COVER_CLOSED_ATTRIBUTE_ID (0x0263) +#define ZCL_EXCESS_FLOW_ATTRIBUTE_ID (0x0264) +#define ZCL_TILT_TAMPER_ENABLED_ATTRIBUTE_ID (0x0265) +#define ZCL_MEASUREMENT_SYSTEM_ERROR_ATTRIBUTE_ID (0x0270) +#define ZCL_WATCHDOG_ERROR_ATTRIBUTE_ID (0x0271) +#define ZCL_SUPPLY_DISCONNECT_FAILURE_ATTRIBUTE_ID (0x0272) +#define ZCL_SUPPLY_CONNECT_FAILURE_ATTRIBUTE_ID (0x0273) +#define ZCL_MEASUREMENT_SOFTWARE_CHANGED_ATTRIBUTE_ID (0x0274) +#define ZCL_DST_ENABLED_ATTRIBUTE_ID (0x0275) +#define ZCL_DST_DISABLED_ATTRIBUTE_ID (0x0276) +#define ZCL_CLOCK_ADJ_BACKWARD_ATTRIBUTE_ID (0x0277) +#define ZCL_CLOCK_ADJ_FORWARD_ATTRIBUTE_ID (0x0278) +#define ZCL_CLOCK_INVALID_ATTRIBUTE_ID (0x0279) +#define ZCL_COMMUNICATION_ERROR_HAN_ATTRIBUTE_ID (0x027A) +#define ZCL_COMMUNICATION_OK_HAN_ATTRIBUTE_ID (0x027B) +#define ZCL_METER_FRAUD_ATTEMPT_ATTRIBUTE_ID (0x027C) +#define ZCL_POWER_LOSS_ATTRIBUTE_ID (0x027D) +#define ZCL_UNUSUAL_HAN_TRAFFIC_ATTRIBUTE_ID (0x027E) +#define ZCL_UNEXPECTED_CLOCK_CHANGE_ATTRIBUTE_ID (0x027F) +#define ZCL_COMMS_USING_UNAUTHENTICATED_COMPONENT_ATTRIBUTE_ID (0x0280) +#define ZCL_METERING_ERROR_REG_CLEAR_ATTRIBUTE_ID (0x0281) +#define ZCL_METERING_ALARM_REG_CLEAR_ATTRIBUTE_ID (0x0282) +#define ZCL_UNEXPECTED_HW_RESET_ATTRIBUTE_ID (0x0283) +#define ZCL_UNEXPECTED_PROGRAM_EXECUTION_ATTRIBUTE_ID (0x0284) +#define ZCL_LIMIT_THRESHOLD_EXCEEDED_ATTRIBUTE_ID (0x0285) +#define ZCL_LIMIT_THRESHOLD_OK_ATTRIBUTE_ID (0x0286) +#define ZCL_LIMIT_THRESHOLD_CHANGED_ATTRIBUTE_ID (0x0287) +#define ZCL_MAXIMUM_DEMAND_EXCEEDED_ATTRIBUTE_ID (0x0288) +#define ZCL_PROFILE_CLEARED_ATTRIBUTE_ID (0x0289) +#define ZCL_LOAD_PROFILE_CLEARED_ATTRIBUTE_ID (0x028A) +#define ZCL_BATTERY_WARN_ATTRIBUTE_ID (0x028B) +#define ZCL_WRONG_SIGNATURE_ATTRIBUTE_ID (0x028C) +#define ZCL_NO_SIGNATURE_ATTRIBUTE_ID (0x028D) +#define ZCL_SIGNATURE_NOT_VALID_ATTRIBUTE_ID (0x028E) +#define ZCL_UNAUTHORISE_ACTION_FROM_HAN_ATTRIBUTE_ID (0x028F) +#define ZCL_FAST_POLLING_START_ATTRIBUTE_ID (0x0290) +#define ZCL_FAST_POLLING_END_ATTRIBUTE_ID (0x0291) +#define ZCL_METER_REPORTING_INTERVAL_CHANGED_ATTRIBUTE_ID (0x0292) +#define ZCL_DISCONNECT_TO_LOAD_LIMIT_ATTRIBUTE_ID (0x0293) +#define ZCL_METER_SUPPLY_STATUS_REGISTER_CHANGED_ATTRIBUTE_ID (0x0294) +#define ZCL_METER_ALARM_STATUS_REGISTER_CHANGED_ATTRIBUTE_ID (0x0295) +#define ZCL_EXTENDED_METER_ALARM_STATUS_REGISTER_CHANGED_ATTRIBUTE_ID (0x0296) +#define ZCL_DATA_ACCESS_VIA_LOCAL_PORT_ATTRIBUTE_ID (0x0297) +#define ZCL_CONFIGURE_MIRROR_SUCCESS_ATTRIBUTE_ID (0x0298) +#define ZCL_CONFIGURE_MIRROR_FAILURE_ATTRIBUTE_ID (0x0299) +#define ZCL_CONFIGURE_NOTIFICATION_FLAG_SCHEME_SUCCESS_ATTRIBUTE_ID (0x029A) +#define ZCL_CONFIGURE_NOTIFICATION_FLAG_SCHEME_FAILURE_ATTRIBUTE_ID (0x029B) +#define ZCL_CONFIGURE_NOTIFICATION_FLAGS_SUCCESS_ATTRIBUTE_ID (0x029C) +#define ZCL_CONFIGURE_NOTIFICATION_FLAGS_FAILURE_ATTRIBUTE_ID (0x029D) +#define ZCL_STAY_AWAKE_REQUEST_HAN_ATTRIBUTE_ID (0x029E) +#define ZCL_STAY_AWAKE_REQUEST_WAN_ATTRIBUTE_ID (0x029F) +#define ZCL_MANUFACTURER_SPECIFIC_A_ATTRIBUTE_ID (0x02B0) +#define ZCL_MANUFACTURER_SPECIFIC_B_ATTRIBUTE_ID (0x02B1) +#define ZCL_MANUFACTURER_SPECIFIC_C_ATTRIBUTE_ID (0x02B2) +#define ZCL_MANUFACTURER_SPECIFIC_D_ATTRIBUTE_ID (0x02B3) +#define ZCL_MANUFACTURER_SPECIFIC_E_ATTRIBUTE_ID (0x02B4) +#define ZCL_MANUFACTURER_SPECIFIC_F_ATTRIBUTE_ID (0x02B5) +#define ZCL_MANUFACTURER_SPECIFIC_G_ATTRIBUTE_ID (0x02B6) +#define ZCL_MANUFACTURER_SPECIFIC_H_ATTRIBUTE_ID (0x02B7) +#define ZCL_MANUFACTURER_SPECIFIC_I_ATTRIBUTE_ID (0x02B8) +#define ZCL_GET_PROFILE_COMMAND_RECEIVED_ATTRIBUTE_ID (0x02C0) +#define ZCL_GET_PROFILE_COMMAND_ACTIONED_ATTRIBUTE_ID (0x02C1) +#define ZCL_GET_PROFILE_COMMAND_CANCELLED_ATTRIBUTE_ID (0x02C2) +#define ZCL_GET_PROFILE_COMMAND_REJECTED_ATTRIBUTE_ID (0x02C3) +#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_RECEIVED_ATTRIBUTE_ID (0x02C4) +#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_ACTIONED_ATTRIBUTE_ID (0x02C5) +#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_CANCELLED_ATTRIBUTE_ID (0x02C6) +#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_REJECTED_ATTRIBUTE_ID (0x02C7) +#define ZCL_MIRROR_REMOVED_COMMAND_RECEIVED_ATTRIBUTE_ID (0x02C8) +#define ZCL_MIRROR_REMOVED_COMMAND_ACTIONED_ATTRIBUTE_ID (0x02C9) +#define ZCL_MIRROR_REMOVED_COMMAND_CANCELLED_ATTRIBUTE_ID (0x02CA) +#define ZCL_MIRROR_REMOVED_COMMAND_REJECTED_ATTRIBUTE_ID (0x02CB) +#define ZCL_GET_SNAPSHOT_COMMAND_RECEIVED_ATTRIBUTE_ID (0x02CC) +#define ZCL_GET_SNAPSHOT_COMMAND_ACTIONED_ATTRIBUTE_ID (0x02CD) +#define ZCL_GET_SNAPSHOT_COMMAND_CANCELLED_ATTRIBUTE_ID (0x02CE) +#define ZCL_GET_SNAPSHOT_COMMAND_REJECTED_ATTRIBUTE_ID (0x02CF) +#define ZCL_TAKE_SNAPSHOT_COMMAND_RECEIVED_ATTRIBUTE_ID (0x02D0) +#define ZCL_TAKE_SNAPSHOT_COMMAND_ACTIONED_ATTRIBUTE_ID (0x02D1) +#define ZCL_TAKE_SNAPSHOT_COMMAND_CANCELLED_ATTRIBUTE_ID (0x02D2) +#define ZCL_TAKE_SNAPSHOT_COMMAND_REJECTED_ATTRIBUTE_ID (0x02D3) +#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_RECEIVED_ATTRIBUTE_ID (0x02D4) +#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_ACTIONED_ATTRIBUTE_ID (0x02D5) +#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_CANCELLED_ATTRIBUTE_ID (0x02D6) +#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_REJECTED_ATTRIBUTE_ID (0x02D7) +#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_RECEIVED_ATTRIBUTE_ID (0x02D8) +#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_ACTIONED_ATTRIBUTE_ID (0x02D9) +#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_CANCELLED_ATTRIBUTE_ID (0x02DA) +#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_REJECTED_ATTRIBUTE_ID (0x02DB) +#define ZCL_START_SAMPLING_COMMAND_RECEIVED_ATTRIBUTE_ID (0x02DC) +#define ZCL_START_SAMPLING_COMMAND_ACTIONED_ATTRIBUTE_ID (0x02DD) +#define ZCL_START_SAMPLING_COMMAND_CANCELLED_ATTRIBUTE_ID (0x02DE) +#define ZCL_START_SAMPLING_COMMAND_REJECTED_ATTRIBUTE_ID (0x02DF) +#define ZCL_GET_SAMPLED_DATA_COMMAND_RECEIVED_ATTRIBUTE_ID (0x02E0) +#define ZCL_GET_SAMPLED_DATA_COMMAND_ACTIONED_ATTRIBUTE_ID (0x02E1) +#define ZCL_GET_SAMPLED_DATA_COMMAND_CANCELLED_ATTRIBUTE_ID (0x02E2) +#define ZCL_GET_SAMPLED_DATA_COMMAND_REJECTED_ATTRIBUTE_ID (0x02E3) +#define ZCL_SUPPLY_ON_ATTRIBUTE_ID (0x02E4) +#define ZCL_SUPPLY_ARMED_ATTRIBUTE_ID (0x02E5) +#define ZCL_SUPPLY_OFF_ATTRIBUTE_ID (0x02E6) +#define ZCL_DISCONNECTED_DUE_TO_TAMPER_DETECTED_ATTRIBUTE_ID (0x02E7) +#define ZCL_MANUAL_DISCONNECT_ATTRIBUTE_ID (0x02E8) +#define ZCL_MANUAL_CONNECT_ATTRIBUTE_ID (0x02E9) +#define ZCL_REMOTE_DISCONNECTION_ATTRIBUTE_ID (0x02EA) +#define ZCL_REMOTE_CONNECT_ATTRIBUTE_ID (0x02EB) +#define ZCL_LOCAL_DISCONNECTION_ATTRIBUTE_ID (0x02EC) +#define ZCL_LOCAL_CONNECT_ATTRIBUTE_ID (0x02ED) +#define ZCL_CHANGE_SUPPLY_RECEIVED_ATTRIBUTE_ID (0x02EE) +#define ZCL_CHANGE_SUPPLY_ACTIONED_ATTRIBUTE_ID (0x02EF) +#define ZCL_CHANGE_SUPPLY_CANCELLED_ATTRIBUTE_ID (0x02F0) +#define ZCL_CHANGE_SUPPLY_REJECTED_ATTRIBUTE_ID (0x02F1) +#define ZCL_LOCAL_CHANGE_SUPPLY_RECEIVED_ATTRIBUTE_ID (0x02F2) +#define ZCL_LOCAL_CHANGE_SUPPLY_ACTIONED_ATTRIBUTE_ID (0x02F3) +#define ZCL_LOCAL_CHANGE_SUPPLY_CANCELLED_ATTRIBUTE_ID (0x02F4) +#define ZCL_LOCAL_CHANGE_SUPPLY_REJECTED_ATTRIBUTE_ID (0x02F5) +#define ZCL_PUBLISH_UNCONTROLLED_FLOW_THRESHOLD_RECEIVED_ATTRIBUTE_ID (0x02F6) +#define ZCL_PUBLISH_UNCONTROLLED_FLOW_THRESHOLD_ACTIONED_ATTRIBUTE_ID (0x02F7) +#define ZCL_PUBLISH_UNCONTROLLED_FLOW_THRESHOLD_CANCELLED_ATTRIBUTE_ID (0x02F8) +#define ZCL_PUBLISH_UNCONTROLLED_FLOW_THRESHOLD_REJECTED_ATTRIBUTE_ID (0x02F9) +#define ZCL_MESSAGE_CONFIRMATION_SENT_ATTRIBUTE_ID (0x0300) +#define ZCL_DISPLAY_MESSAGE_RECEIVED_ATTRIBUTE_ID (0x03C0) +#define ZCL_DISPLAY_MESSAGE_ACTIONED_ATTRIBUTE_ID (0x03C1) +#define ZCL_DISPLAY_MESSAGE_CANCELLED_ATTRIBUTE_ID (0x03C2) +#define ZCL_DISPLAY_MESSAGE_REJECTED_ATTRIBUTE_ID (0x03C3) +#define ZCL_CANCEL_MESSAGE_RECEIVED_ATTRIBUTE_ID (0x03C4) +#define ZCL_CANCEL_MESSAGE_ACTIONED_ATTRIBUTE_ID (0x03C5) +#define ZCL_CANCEL_MESSAGE_CANCELLED_ATTRIBUTE_ID (0x03C6) +#define ZCL_CANCEL_MESSAGE_REJECTED_ATTRIBUTE_ID (0x03C7) +#define ZCL_LOW_CREDIT_ATTRIBUTE_ID (0x0400) +#define ZCL_NO_CREDIT_ATTRIBUTE_ID (0x0401) +#define ZCL_CREDIT_EXHAUSTED_ATTRIBUTE_ID (0x0402) +#define ZCL_EMERGENCY_CREDIT_ENABLED_ATTRIBUTE_ID (0x0403) +#define ZCL_EMERGENCY_CREDIT_EXHAUSTED_ATTRIBUTE_ID (0x0404) +#define ZCL_PREPAY_IHD_LOW_CREDIT_WARNING_ATTRIBUTE_ID (0x0405) +#define ZCL_PHYSICAL_ATTACK_ON_THE_PREPAY_METER_ATTRIBUTE_ID (0x0420) +#define ZCL_ELECTRONIC_ATTACK_ON_THE_PREPAY_METER_ATTRIBUTE_ID (0x0421) +#define ZCL_DISCOUNT_APPLIED_ATTRIBUTE_ID (0x0422) +#define ZCL_CREDIT_ADJUSTMENT_ATTRIBUTE_ID (0x0423) +#define ZCL_CREDIT_ADJUST_FAIL_ATTRIBUTE_ID (0x0424) +#define ZCL_DEBT_ADJUSTMENT_ATTRIBUTE_ID (0x0425) +#define ZCL_DEBT_ADJUST_FAIL_ATTRIBUTE_ID (0x0426) +#define ZCL_MODE_CHANGE_ATTRIBUTE_ID (0x0427) +#define ZCL_TOPUP_CODE_ERROR_ATTRIBUTE_ID (0x0428) +#define ZCL_TOPUP_ALREADY_USED_ATTRIBUTE_ID (0x0429) +#define ZCL_TOPUP_CODE_INVALID_ATTRIBUTE_ID (0x042A) +#define ZCL_TOPUP_ACCEPTED_VIA_REMOTE_ATTRIBUTE_ID (0x042B) +#define ZCL_TOPUP_ACCEPTED_VIA_MANUAL_ENTRY_ATTRIBUTE_ID (0x042C) +#define ZCL_FRIENDLY_CREDIT_IN_USE_ATTRIBUTE_ID (0x042D) +#define ZCL_FRIENDLY_CREDIT_END_WARNING_ATTRIBUTE_ID (0x042E) +#define ZCL_FRIENDLY_CREDIT_PERIOD_END_ATTRIBUTE_ID (0x042F) +#define ZCL_PREPAY_ERROR_REG_CLEAR_ATTRIBUTE_ID (0x0430) +#define ZCL_PREPAY_ALARM_REG_CLEAR_ATTRIBUTE_ID (0x0431) +#define ZCL_PREPAY_CLUSTER_NOT_FOUND_ATTRIBUTE_ID (0x0432) +#define ZCL_TOPUP_VALUE_TOO_LARGE_ATTRIBUTE_ID (0x0433) +#define ZCL_MODE_CREDIT_2_PREPAY_ATTRIBUTE_ID (0x0441) +#define ZCL_MODE_PREPAY_2_CREDIT_ATTRIBUTE_ID (0x0442) +#define ZCL_MODE_DEFAULT_ATTRIBUTE_ID (0x0443) +#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_RECEIVED_ATTRIBUTE_ID (0x04C0) +#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_ACTIONED_ATTRIBUTE_ID (0x04C1) +#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_CANCELLED_ATTRIBUTE_ID (0x04C2) +#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_REJECTED_ATTRIBUTE_ID (0x04C3) +#define ZCL_CHANGE_DEBT_RECEIVED_ATTRIBUTE_ID (0x04C4) +#define ZCL_CHANGE_DEBT_ACTIONED_ATTRIBUTE_ID (0x04C5) +#define ZCL_CHANGE_DEBT_CANCELLED_ATTRIBUTE_ID (0x04C6) +#define ZCL_CHANGE_DEBT_REJECTED_ATTRIBUTE_ID (0x04C7) +#define ZCL_EMERGENCY_CREDIT_SETUP_RECEIVED_ATTRIBUTE_ID (0x04C8) +#define ZCL_EMERGENCY_CREDIT_SETUP_ACTIONED_ATTRIBUTE_ID (0x04C9) +#define ZCL_EMERGENCY_CREDIT_SETUP_CANCELLED_ATTRIBUTE_ID (0x04CA) +#define ZCL_EMERGENCY_CREDIT_SETUP_REJECTED_ATTRIBUTE_ID (0x04CB) +#define ZCL_CONSUMER_TOPUP_RECEIVED_ATTRIBUTE_ID (0x04CC) +#define ZCL_CONSUMER_TOPUP_ACTIONED_ATTRIBUTE_ID (0x04CD) +#define ZCL_CONSUMER_TOPUP_CANCELLED_ATTRIBUTE_ID (0x04CE) +#define ZCL_CONSUMER_TOPUP_REJECTED_ATTRIBUTE_ID (0x04CF) +#define ZCL_CREDIT_ADJUSTMENT_RECEIVED_ATTRIBUTE_ID (0x04D0) +#define ZCL_CREDIT_ADJUSTMENT_ACTIONED_ATTRIBUTE_ID (0x04D1) +#define ZCL_CREDIT_ADJUSTMENT_CANCELLED_ATTRIBUTE_ID (0x04D2) +#define ZCL_CREDIT_ADJUSTMENT_REJECTED_ATTRIBUTE_ID (0x04D3) +#define ZCL_CHANGE_PAYMENT_MODE_RECEIVED_ATTRIBUTE_ID (0x04D4) +#define ZCL_CHANGE_PAYMENT_MODE_ACTIONED_ATTRIBUTE_ID (0x04D5) +#define ZCL_CHANGE_PAYMENT_MODE_CANCELLED_ATTRIBUTE_ID (0x04D6) +#define ZCL_CHANGE_PAYMENT_MODE_REJECTED_ATTRIBUTE_ID (0x04D7) +#define ZCL_GET_PREPAY_SNAPSHOT_RECEIVED_ATTRIBUTE_ID (0x04D8) +#define ZCL_GET_PREPAY_SNAPSHOT_ACTIONED_ATTRIBUTE_ID (0x04D9) +#define ZCL_GET_PREPAY_SNAPSHOT_CANCELLED_ATTRIBUTE_ID (0x04DA) +#define ZCL_GET_PREPAY_SNAPSHOT_REJECTED_ATTRIBUTE_ID (0x04DB) +#define ZCL_GET_TOPUP_LOG_RECEIVED_ATTRIBUTE_ID (0x04DC) +#define ZCL_GET_TOPUP_LOG_ACTIONED_ATTRIBUTE_ID (0x04DD) +#define ZCL_GET_TOPUP_LOG_CANCELLED_ATTRIBUTE_ID (0x04DE) +#define ZCL_GET_TOPUP_LOG_REJECTED_ATTRIBUTE_ID (0x04DF) +#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_RECEIVED_ATTRIBUTE_ID (0x04E0) +#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_ACTIONED_ATTRIBUTE_ID (0x04E1) +#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_CANCELLED_ATTRIBUTE_ID (0x04E2) +#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_REJECTED_ATTRIBUTE_ID (0x04E3) +#define ZCL_GET_DEBT_REPAY_LOG_RECEIVED_ATTRIBUTE_ID (0x04E4) +#define ZCL_GET_DEBT_REPAY_LOG_ACTIONED_ATTRIBUTE_ID (0x04E5) +#define ZCL_GET_DEBT_REPAY_LOG_CANCELLED_ATTRIBUTE_ID (0x04E6) +#define ZCL_GET_DEBT_REPAY_LOG_REJECTED_ATTRIBUTE_ID (0x04E7) +#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_RECEIVED_ATTRIBUTE_ID (0x04E8) +#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_ACTIONED_ATTRIBUTE_ID (0x04E9) +#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_CANCELLED_ATTRIBUTE_ID (0x04EA) +#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_REJECTED_ATTRIBUTE_ID (0x04EB) +#define ZCL_SET_OVERALL_DEBT_CAP_RECEIVED_ATTRIBUTE_ID (0x04EC) +#define ZCL_SET_OVERALL_DEBT_CAP_ACTIONED_ATTRIBUTE_ID (0x04ED) +#define ZCL_SET_OVERALL_DEBT_CAP_CANCELLED_ATTRIBUTE_ID (0x04EE) +#define ZCL_SET_OVERALL_DEBT_CAP_REJECTED_ATTRIBUTE_ID (0x04EF) +#define ZCL_CALENDAR_CLUSTER_NOT_FOUND_ATTRIBUTE_ID (0x0500) +#define ZCL_CALENDAR_CHANGE_PASSIVE_ACTIVATED_ATTRIBUTE_ID (0x0501) +#define ZCL_CALENDAR_CHANGE_PASSIVE_UPDATED_ATTRIBUTE_ID (0x0502) +#define ZCL_PUBLISH_CALENDAR_RECEIVED_ATTRIBUTE_ID (0x05C0) +#define ZCL_PUBLISH_CALENDAR_ACTIONED_ATTRIBUTE_ID (0x05C1) +#define ZCL_PUBLISH_CALENDAR_CANCELLED_ATTRIBUTE_ID (0x05C2) +#define ZCL_PUBLISH_CALENDAR_REJECTED_ATTRIBUTE_ID (0x05C3) +#define ZCL_PUBLISH_DAY_PROFILE_RECEIVED_ATTRIBUTE_ID (0x05C4) +#define ZCL_PUBLISH_DAY_PROFILE_ACTIONED_ATTRIBUTE_ID (0x05C5) +#define ZCL_PUBLISH_DAY_PROFILE_CANCELLED_ATTRIBUTE_ID (0x05C6) +#define ZCL_PUBLISH_DAY_PROFILE_REJECTED_ATTRIBUTE_ID (0x05C7) +#define ZCL_PUBLISH_WEEK_PROFILE_RECEIVED_ATTRIBUTE_ID (0x05C8) +#define ZCL_PUBLISH_WEEK_PROFILE_ACTIONED_ATTRIBUTE_ID (0x05C9) +#define ZCL_PUBLISH_WEEK_PROFILE_CANCELLED_ATTRIBUTE_ID (0x05CA) +#define ZCL_PUBLISH_WEEK_PROFILE_REJECTED_ATTRIBUTE_ID (0x05CB) +#define ZCL_PUBLISH_SEASONS_RECEIVED_ATTRIBUTE_ID (0x05CC) +#define ZCL_PUBLISH_SEASONS_ACTIONED_ATTRIBUTE_ID (0x05CD) +#define ZCL_PUBLISH_SEASONS_CANCELLED_ATTRIBUTE_ID (0x05CE) +#define ZCL_PUBLISH_SEASONS_REJECTED_ATTRIBUTE_ID (0x05CF) +#define ZCL_PUBLISH_SPECIAL_DAYS_RECEIVED_ATTRIBUTE_ID (0x05D0) +#define ZCL_PUBLISH_SPECIAL_DAYS_ACTIONED_ATTRIBUTE_ID (0x05D1) +#define ZCL_PUBLISH_SPECIAL_DAYS_CANCELLED_ATTRIBUTE_ID (0x05D2) +#define ZCL_PUBLISH_SPECIAL_DAYS_REJECTED_ATTRIBUTE_ID (0x05D3) +#define ZCL_PASSWORD_1_CHANGE_ATTRIBUTE_ID (0x0600) +#define ZCL_PASSWORD_2_CHANGE_ATTRIBUTE_ID (0x0601) +#define ZCL_PASSWORD_3_CHANGE_ATTRIBUTE_ID (0x0602) +#define ZCL_PASSWORD_4_CHANGE_ATTRIBUTE_ID (0x0603) +#define ZCL_EVENT_LOG_CLEARED_ATTRIBUTE_ID (0x0604) +#define ZCL_ZIGBEE_APS_TIMEOUT_ATTRIBUTE_ID (0x0610) +#define ZCL_ZIGBEE_IEEE_TRANSMISSION_FAILURE_OVER_THRESHOLD_ATTRIBUTE_ID (0x0611) +#define ZCL_ZIGBEE_IEEE_FRAME_CHECK_SEQUENCE_THRESHOLD_ATTRIBUTE_ID (0x0612) +#define ZCL_ERROR_CERTIFICATE_ATTRIBUTE_ID (0x0613) +#define ZCL_ERROR_SIGNATURE_ATTRIBUTE_ID (0x0614) +#define ZCL_ERROR_PROGRAM_STORAGE_ATTRIBUTE_ID (0x0615) +#define ZCL_PUBLISH_COT_RECEIVED_ATTRIBUTE_ID (0x06C0) +#define ZCL_PUBLISH_COT_ACTIONED_ATTRIBUTE_ID (0x06C1) +#define ZCL_PUBLISH_COT_CANCELLED_ATTRIBUTE_ID (0x06C2) +#define ZCL_PUBLISH_COT_REJECTED_ATTRIBUTE_ID (0x06C3) +#define ZCL_PUBLISH_COS_RECEIVED_ATTRIBUTE_ID (0x06C4) +#define ZCL_PUBLISH_COS_ACTIONED_ATTRIBUTE_ID (0x06C5) +#define ZCL_PUBLISH_COS_CANCELLED_ATTRIBUTE_ID (0x06C6) +#define ZCL_PUBLISH_COS_REJECTED_ATTRIBUTE_ID (0x06C7) +#define ZCL_CHANGE_PASSWORD_RECEIVED_ATTRIBUTE_ID (0x06C8) +#define ZCL_CHANGE_PASSWORD_ACTIONED_ATTRIBUTE_ID (0x06C9) +#define ZCL_CHANGE_PASSWORD_CANCELLED_ATTRIBUTE_ID (0x06CA) +#define ZCL_CHANGE_PASSWORD_REJECTED_ATTRIBUTE_ID (0x06CB) +#define ZCL_SET_EVENT_CONFIGURATION_RECEIVED_ATTRIBUTE_ID (0x06CC) +#define ZCL_SET_EVENT_CONFIGURATION_ACTIONED_ATTRIBUTE_ID (0x06CD) +#define ZCL_SET_EVENT_CONFIGURATION_CANCELLED_ATTRIBUTE_ID (0x06CE) +#define ZCL_SET_EVENT_CONFIGURATION_REJECTED_ATTRIBUTE_ID (0x06CF) +#define ZCL_UPDATE_SITE_ID_RECEIVED_ATTRIBUTE_ID (0x06D0) +#define ZCL_UPDATE_SITE_ID_ACTIONED_ATTRIBUTE_ID (0x06D1) +#define ZCL_UPDATE_SITE_ID_CANCELLED_ATTRIBUTE_ID (0x06D2) +#define ZCL_UPDATE_SITE_ID_REJECTED_ATTRIBUTE_ID (0x06D3) +#define ZCL_UPDATE_CIN_RECEIVED_ATTRIBUTE_ID (0x06D4) +#define ZCL_UPDATE_CIN_ACTIONED_ATTRIBUTE_ID (0x06D5) +#define ZCL_UPDATE_CIN_CANCELLED_ATTRIBUTE_ID (0x06D6) +#define ZCL_UPDATE_CIN_REJECTED_ATTRIBUTE_ID (0x06D7) +#define ZCL_TUNNELING_CLUSTER_NOT_FOUND_ATTRIBUTE_ID (0x0700) +#define ZCL_UNSUPPORTED_PROTOCOL_ATTRIBUTE_ID (0x0701) +#define ZCL_INCORRECT_PROTOCOL_ATTRIBUTE_ID (0x0702) +#define ZCL_REQUEST_TUNNEL_COMMAND_RECEIVED_ATTRIBUTE_ID (0x07C0) +#define ZCL_REQUEST_TUNNEL_COMMAND_REJECTED_ATTRIBUTE_ID (0x07C1) +#define ZCL_REQUEST_TUNNEL_COMMAND_GENERATED_ATTRIBUTE_ID (0x07C2) +#define ZCL_CLOSE_TUNNEL_COMMAND_RECEIVED_ATTRIBUTE_ID (0x07C3) +#define ZCL_CLOSE_TUNNEL_COMMAND_REJECTED_ATTRIBUTE_ID (0x07C4) +#define ZCL_CLOSE_TUNNEL_COMMAND_GENERATED_ATTRIBUTE_ID (0x07C5) +#define ZCL_TRANSFER_DATA_COMMAND_RECEIVED_ATTRIBUTE_ID (0x07C6) +#define ZCL_TRANSFER_DATA_COMMAND_REJECTED_ATTRIBUTE_ID (0x07C7) +#define ZCL_TRANSFER_DATA_COMMAND_GENERATED_ATTRIBUTE_ID (0x07C8) +#define ZCL_TRANSFER_DATA_ERROR_COMMAND_RECEIVED_ATTRIBUTE_ID (0x07C9) +#define ZCL_TRANSFER_DATA_ERROR_COMMAND_REJECTED_ATTRIBUTE_ID (0x07CA) +#define ZCL_TRANSFER_DATA_ERROR_COMMAND_GENERATED_ATTRIBUTE_ID (0x07CB) +#define ZCL_ACK_TRANSFER_DATA_COMMAND_RECEIVED_ATTRIBUTE_ID (0x07CC) +#define ZCL_ACK_TRANSFER_DATA_COMMAND_REJECTED_ATTRIBUTE_ID (0x07CD) +#define ZCL_ACK_TRANSFER_DATA_COMMAND_GENERATED_ATTRIBUTE_ID (0x07CE) +#define ZCL_READY_DATA_COMMAND_RECEIVED_ATTRIBUTE_ID (0x07CF) +#define ZCL_READY_DATA_COMMAND_REJECTED_ATTRIBUTE_ID (0x07D0) +#define ZCL_READY_DATA_COMMAND_GENERATED_ATTRIBUTE_ID (0x07D1) +#define ZCL_GET_SUPPORTED_TUNNEL_PROTOCOLS_COMMAND_RECEIVED_ATTRIBUTE_ID (0x07D2) +#define ZCL_GET_SUPPORTED_TUNNEL_PROTOCOLS_COMMAND_REJECTED_ATTRIBUTE_ID (0x07D3) +#define ZCL_GET_SUPPORTED_TUNNEL_PROTOCOLS_COMMAND_GENERATED_ATTRIBUTE_ID (0x07D4) +#define ZCL_FIRMWARE_READY_FOR_ACTIVATION_ATTRIBUTE_ID (0x0800) +#define ZCL_FIRMWARE_ACTIVATED_ATTRIBUTE_ID (0x0801) +#define ZCL_FIRMWARE_ACTIVATION_FAILURE_ATTRIBUTE_ID (0x0802) +#define ZCL_PATCH_READY_FOR_ACTIVATION_ATTRIBUTE_ID (0x0803) +#define ZCL_PATCH_ACTIVATED_ATTRIBUTE_ID (0x0804) +#define ZCL_PATCH_FAILURE_ATTRIBUTE_ID (0x0805) +#define ZCL_IMAGE_NOTIFY_COMMAND_RECEIVED_ATTRIBUTE_ID (0x08C0) +#define ZCL_IMAGE_NOTIFY_COMMAND_REJECTED_ATTRIBUTE_ID (0x08C1) +#define ZCL_QUERY_NEXT_IMAGE_REQUEST_GENERATED_ATTRIBUTE_ID (0x08C2) +#define ZCL_QUERY_NEXT_IMAGE_RESPONSE_RECEIVED_ATTRIBUTE_ID (0x08C3) +#define ZCL_QUERY_NEXT_IMAGE_RESPONSE_REJECTED_ATTRIBUTE_ID (0x08C4) +#define ZCL_IMAGE_BLOCK_REQUEST_GENERATED_ATTRIBUTE_ID (0x08C5) +#define ZCL_IMAGE_PAGE_REQUEST_GENERATED_ATTRIBUTE_ID (0x08C6) +#define ZCL_IMAGE_BLOCK_RESPONSE_RECEIVED_ATTRIBUTE_ID (0x08C7) +#define ZCL_IMAGE_BLOCK_RESPONSE_REJECTED_ATTRIBUTE_ID (0x08C8) +#define ZCL_UPGRADE_END_REQUEST_GENERATED_ATTRIBUTE_ID (0x08C9) +#define ZCL_UPGRADE_END_RESPONSE_RECEIVED_ATTRIBUTE_ID (0x08CA) +#define ZCL_UPGRADE_END_RESPONSE_REJECTED_ATTRIBUTE_ID (0x08CB) +#define ZCL_QUERY_SPECIFIC_FILE_REQUEST_GENERATED_ATTRIBUTE_ID (0x08CC) +#define ZCL_QUERY_SPECIFIC_FILE_RESPONSE_RECEIVED_ATTRIBUTE_ID (0x08CD) +#define ZCL_QUERY_SPECIFIC_FILE_RESPONSE_REJECTED_ATTRIBUTE_ID (0x08CE) +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_PROVIDER_ID_SERVER_ATTRIBUTE_ID 0x0100 // Ver.: always -#define ZCL_PROVIDER_NAME_ATTRIBUTE_ID 0x0101 // Ver.: always -#define ZCL_PROVIDER_CONTACT_DETAILS_ATTRIBUTE_ID 0x0102 // Ver.: always -#define ZCL_PROPOSED_PROVIDER_ID_ATTRIBUTE_ID 0x0110 // Ver.: always -#define ZCL_PROPOSED_PROVIDER_NAME_ATTRIBUTE_ID 0x0111 // Ver.: always -#define ZCL_PROPOSED_PROVIDER_CHANGE_DATE_TIME_ATTRIBUTE_ID 0x0112 // Ver.: always -#define ZCL_PROPOSED_PROVIDER_CHANGE_CONTROL_ATTRIBUTE_ID 0x0113 // Ver.: always -#define ZCL_RECEIVED_PROVIDER_ID_SERVER_ATTRIBUTE_ID 0x0120 // Ver.: always -#define ZCL_RECEIVED_PROVIDER_NAME_ATTRIBUTE_ID 0x0121 // Ver.: always -#define ZCL_RECEIVED_PROVIDER_CONTACT_DETAILS_ATTRIBUTE_ID 0x0122 // Ver.: always -#define ZCL_RECEIVED_PROPOSED_PROVIDER_ID_ATTRIBUTE_ID 0x0130 // Ver.: always -#define ZCL_RECEIVED_PROPOSED_PROVIDER_NAME_ATTRIBUTE_ID 0x0131 // Ver.: always -#define ZCL_RECEIVED_PROPOSED_PROVIDER_CHANGE_DATE_TIME_ATTRIBUTE_ID 0x0132 // Ver.: always -#define ZCL_RECEIVED_PROPOSED_PROVIDER_CHANGE_CONTROL_ATTRIBUTE_ID 0x0133 // Ver.: always -#define ZCL_CHANGE_OF_TENANCY_UPDATE_DATE_TIME_ATTRIBUTE_ID 0x0200 // Ver.: always -#define ZCL_PROPOSED_TENANCY_CHANGE_CONTROL_ATTRIBUTE_ID 0x0201 // Ver.: always -#define ZCL_WAN_STATUS_ATTRIBUTE_ID 0x0300 // Ver.: always -#define ZCL_LOW_MEDIUM_THRESHOLD_ATTRIBUTE_ID 0x0400 // Ver.: always -#define ZCL_MEDIUM_HIGH_THRESHOLD_ATTRIBUTE_ID 0x0401 // Ver.: always -#define ZCL_DEVICE_MANAGEMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DEVICE_MANAGEMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Events -// Cluster specification level: se-1.2b-15-0131-02 +#define ZCL_PROVIDER_ID_SERVER_ATTRIBUTE_ID (0x0100) +#define ZCL_PROVIDER_NAME_ATTRIBUTE_ID (0x0101) +#define ZCL_PROVIDER_CONTACT_DETAILS_ATTRIBUTE_ID (0x0102) +#define ZCL_PROPOSED_PROVIDER_ID_ATTRIBUTE_ID (0x0110) +#define ZCL_PROPOSED_PROVIDER_NAME_ATTRIBUTE_ID (0x0111) +#define ZCL_PROPOSED_PROVIDER_CHANGE_DATE_TIME_ATTRIBUTE_ID (0x0112) +#define ZCL_PROPOSED_PROVIDER_CHANGE_CONTROL_ATTRIBUTE_ID (0x0113) +#define ZCL_RECEIVED_PROVIDER_ID_SERVER_ATTRIBUTE_ID (0x0120) +#define ZCL_RECEIVED_PROVIDER_NAME_ATTRIBUTE_ID (0x0121) +#define ZCL_RECEIVED_PROVIDER_CONTACT_DETAILS_ATTRIBUTE_ID (0x0122) +#define ZCL_RECEIVED_PROPOSED_PROVIDER_ID_ATTRIBUTE_ID (0x0130) +#define ZCL_RECEIVED_PROPOSED_PROVIDER_NAME_ATTRIBUTE_ID (0x0131) +#define ZCL_RECEIVED_PROPOSED_PROVIDER_CHANGE_DATE_TIME_ATTRIBUTE_ID (0x0132) +#define ZCL_RECEIVED_PROPOSED_PROVIDER_CHANGE_CONTROL_ATTRIBUTE_ID (0x0133) +#define ZCL_CHANGE_OF_TENANCY_UPDATE_DATE_TIME_ATTRIBUTE_ID (0x0200) +#define ZCL_PROPOSED_TENANCY_CHANGE_CONTROL_ATTRIBUTE_ID (0x0201) +#define ZCL_WAN_STATUS_ATTRIBUTE_ID (0x0300) +#define ZCL_LOW_MEDIUM_THRESHOLD_ATTRIBUTE_ID (0x0400) +#define ZCL_MEDIUM_HIGH_THRESHOLD_ATTRIBUTE_ID (0x0401) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Events // Client attributes -#define ZCL_EVENTS_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_EVENTS_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_EVENTS_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_EVENTS_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: MDU Pairing -// Cluster specification level: se-1.2b-15-0131-02 +// Attribute ids for cluster: MDU Pairing // Client attributes -#define ZCL_MDU_PAIRING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_MDU_PAIRING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_MDU_PAIRING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_MDU_PAIRING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Sub-GHz -// Cluster specification level: se-1.2b-15-0131-02 +// Attribute ids for cluster: Sub-GHz // Client attributes -#define ZCL_SUB_GHZ_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SUB_GHZ_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_SUB_GHZ_CLUSTER_CHANNEL_CHANGE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SUB_GHZ_CLUSTER_PAGE_28_CHANNEL_MASK_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SUB_GHZ_CLUSTER_PAGE_29_CHANNEL_MASK_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_SUB_GHZ_CLUSTER_PAGE_30_CHANNEL_MASK_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_SUB_GHZ_CLUSTER_PAGE_31_CHANNEL_MASK_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_SUB_GHZ_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SUB_GHZ_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_SUB_GHZ_CLUSTER_CHANNEL_CHANGE_ATTRIBUTE_ID (0x0000) +#define ZCL_SUB_GHZ_CLUSTER_PAGE_28_CHANNEL_MASK_ATTRIBUTE_ID (0x0001) +#define ZCL_SUB_GHZ_CLUSTER_PAGE_29_CHANNEL_MASK_ATTRIBUTE_ID (0x0002) +#define ZCL_SUB_GHZ_CLUSTER_PAGE_30_CHANNEL_MASK_ATTRIBUTE_ID (0x0003) +#define ZCL_SUB_GHZ_CLUSTER_PAGE_31_CHANNEL_MASK_ATTRIBUTE_ID (0x0004) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Key Establishment -// Cluster specification level: zcl-7.0-07-5123-07 +// Attribute ids for cluster: Key Establishment // Client attributes -#define ZCL_KEY_ESTABLISHMENT_SUITE_CLIENT_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_KEY_ESTABLISHMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_KEY_ESTABLISHMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_KEY_ESTABLISHMENT_SUITE_CLIENT_ATTRIBUTE_ID (0x0000) +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_KEY_ESTABLISHMENT_SUITE_SERVER_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_KEY_ESTABLISHMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_KEY_ESTABLISHMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_KEY_ESTABLISHMENT_SUITE_SERVER_ATTRIBUTE_ID (0x0000) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Information -// Cluster specification level: ta-1.0-07-5307-07 +// Attribute ids for cluster: Information // Client attributes -#define ZCL_INFORMATION_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_INFORMATION_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_NODE_DESCRIPTION_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_DELIVERY_ENABLE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_PUSH_INFORMATION_TIMER_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_ENABLE_SECURE_CONFIGURATION_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_NUMBER_OF_CONTENTS_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_CONTENT_ROOT_ID_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_INFORMATION_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_INFORMATION_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Data Sharing -// Cluster specification level: ta-1.0-07-5307-07 +#define ZCL_NODE_DESCRIPTION_ATTRIBUTE_ID (0x0000) +#define ZCL_DELIVERY_ENABLE_ATTRIBUTE_ID (0x0001) +#define ZCL_PUSH_INFORMATION_TIMER_ATTRIBUTE_ID (0x0002) +#define ZCL_ENABLE_SECURE_CONFIGURATION_ATTRIBUTE_ID (0x0003) +#define ZCL_NUMBER_OF_CONTENTS_ATTRIBUTE_ID (0x0010) +#define ZCL_CONTENT_ROOT_ID_ATTRIBUTE_ID (0x0011) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Data Sharing // Client attributes -#define ZCL_DATA_SHARING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DATA_SHARING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_DEVICE_NAME_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_DEVICE_DESCRIPTION_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_DATA_SHARING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DATA_SHARING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_DEVICE_NAME_ATTRIBUTE_ID (0x0000) +#define ZCL_DEVICE_DESCRIPTION_ATTRIBUTE_ID (0x0001) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Gaming -// Cluster specification level: ta-1.0-07-5307-07 +// Attribute ids for cluster: Gaming // Client attributes -#define ZCL_GAMING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_GAMING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_PLAYER_NAME_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_NB_OF_GAMES_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_LIST_OF_GAMES_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_ANNOUNCEMENT_INTERVAL_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_GAME_ID_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_NAME_OF_GAME_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_GAME_MASTER_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_GAMING_STATUS_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_CURRENT_NB_OF_PLAYERS_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_LIST_OF_CURRENT_PLAYERS_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_MAX_NB_OF_PLAYERS_ATTRIBUTE_ID 0x0016 // Ver.: always -#define ZCL_MIN_NB_OF_PLAYERS_ATTRIBUTE_ID 0x0017 // Ver.: always -#define ZCL_CURRENT_GAME_LEVEL_ATTRIBUTE_ID 0x0018 // Ver.: always -#define ZCL_SCORE_OF_THIS_PLAYER_ATTRIBUTE_ID 0x0019 // Ver.: always -#define ZCL_TIMER1_ATTRIBUTE_ID 0x001A // Ver.: always -#define ZCL_TIMER2_ATTRIBUTE_ID 0x001B // Ver.: always -#define ZCL_TIMER3_ATTRIBUTE_ID 0x001C // Ver.: always -#define ZCL_COUNTER1_ATTRIBUTE_ID 0x001D // Ver.: always -#define ZCL_COUNTER2_ATTRIBUTE_ID 0x001E // Ver.: always -#define ZCL_DOWNLOADABLE_ATTRIBUTE_ID 0x001F // Ver.: always -#define ZCL_GAMING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_GAMING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Data Rate Control -// Cluster specification level: ta-1.0-07-5307-07 +#define ZCL_PLAYER_NAME_ATTRIBUTE_ID (0x0000) +#define ZCL_NB_OF_GAMES_ATTRIBUTE_ID (0x0001) +#define ZCL_LIST_OF_GAMES_ATTRIBUTE_ID (0x0002) +#define ZCL_ANNOUNCEMENT_INTERVAL_ATTRIBUTE_ID (0x0003) +#define ZCL_GAME_ID_ATTRIBUTE_ID (0x0010) +#define ZCL_NAME_OF_GAME_ATTRIBUTE_ID (0x0011) +#define ZCL_GAME_MASTER_ATTRIBUTE_ID (0x0012) +#define ZCL_GAMING_STATUS_ATTRIBUTE_ID (0x0013) +#define ZCL_CURRENT_NB_OF_PLAYERS_ATTRIBUTE_ID (0x0014) +#define ZCL_LIST_OF_CURRENT_PLAYERS_ATTRIBUTE_ID (0x0015) +#define ZCL_MAX_NB_OF_PLAYERS_ATTRIBUTE_ID (0x0016) +#define ZCL_MIN_NB_OF_PLAYERS_ATTRIBUTE_ID (0x0017) +#define ZCL_CURRENT_GAME_LEVEL_ATTRIBUTE_ID (0x0018) +#define ZCL_SCORE_OF_THIS_PLAYER_ATTRIBUTE_ID (0x0019) +#define ZCL_TIMER1_ATTRIBUTE_ID (0x001A) +#define ZCL_TIMER2_ATTRIBUTE_ID (0x001B) +#define ZCL_TIMER3_ATTRIBUTE_ID (0x001C) +#define ZCL_COUNTER1_ATTRIBUTE_ID (0x001D) +#define ZCL_COUNTER2_ATTRIBUTE_ID (0x001E) +#define ZCL_DOWNLOADABLE_ATTRIBUTE_ID (0x001F) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Data Rate Control // Client attributes -#define ZCL_DATA_RATE_CONTROL_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DATA_RATE_CONTROL_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_AVERAGE_LATENCY_REQUIREMENT_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_MAX_LATENCY_REQUIREMENT_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_BANDWIDTH_REQUIREMENT_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_DATA_RATE_CONTROL_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DATA_RATE_CONTROL_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_AVERAGE_LATENCY_REQUIREMENT_ATTRIBUTE_ID (0x0000) +#define ZCL_MAX_LATENCY_REQUIREMENT_ATTRIBUTE_ID (0x0001) +#define ZCL_BANDWIDTH_REQUIREMENT_ATTRIBUTE_ID (0x0002) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Voice over ZigBee -// Cluster specification level: ta-1.0-07-5307-07 +// Attribute ids for cluster: Voice over ZigBee // Client attributes -#define ZCL_VOICE_OVER_ZIGBEE_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_VOICE_OVER_ZIGBEE_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_CODEC_TYPE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SAMPLING_FREQUENCY_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_CODEC_RATE_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_ESTABLISHMENT_TIMEOUT_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_CODEC_TYPE_SUB1_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_CODEC_TYPE_SUB2_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_CODEC_TYPE_SUB3_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_COMPRESSION_TYPE_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_COMPRESSION_RATE_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_OPTION_FLAGS_ATTRIBUTE_ID 0x0009 // Ver.: always -#define ZCL_THRESHOLD_ATTRIBUTE_ID 0x000A // Ver.: always -#define ZCL_VOICE_OVER_ZIGBEE_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_VOICE_OVER_ZIGBEE_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Chatting -// Cluster specification level: ta-1.0-07-5307-07 +#define ZCL_CODEC_TYPE_ATTRIBUTE_ID (0x0000) +#define ZCL_SAMPLING_FREQUENCY_ATTRIBUTE_ID (0x0001) +#define ZCL_CODEC_RATE_ATTRIBUTE_ID (0x0002) +#define ZCL_ESTABLISHMENT_TIMEOUT_ATTRIBUTE_ID (0x0003) +#define ZCL_CODEC_TYPE_SUB1_ATTRIBUTE_ID (0x0004) +#define ZCL_CODEC_TYPE_SUB2_ATTRIBUTE_ID (0x0005) +#define ZCL_CODEC_TYPE_SUB3_ATTRIBUTE_ID (0x0006) +#define ZCL_COMPRESSION_TYPE_ATTRIBUTE_ID (0x0007) +#define ZCL_COMPRESSION_RATE_ATTRIBUTE_ID (0x0008) +#define ZCL_OPTION_FLAGS_ATTRIBUTE_ID (0x0009) +#define ZCL_THRESHOLD_ATTRIBUTE_ID (0x000A) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Chatting // Client attributes -#define ZCL_CHATTING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHATTING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_U_ID_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_NICKNAME_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_C_ID_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_NAME_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_ENABLE_ADD_CHAT_ATTRIBUTE_ID 0x0020 // Ver.: always -#define ZCL_CHATTING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_CHATTING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_U_ID_ATTRIBUTE_ID (0x0000) +#define ZCL_NICKNAME_ATTRIBUTE_ID (0x0001) +#define ZCL_C_ID_ATTRIBUTE_ID (0x0010) +#define ZCL_NAME_ATTRIBUTE_ID (0x0011) +#define ZCL_ENABLE_ADD_CHAT_ATTRIBUTE_ID (0x0020) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Payment -// Cluster specification level: ta-1.0-07-5307-07 +// Attribute ids for cluster: Payment // Client attributes -#define ZCL_PAYMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PAYMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_PAYMENT_USER_ID_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_USER_TYPE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_PAYMENT_SERVICE_ID_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_PAYMENT_SERVICE_PROVIDER_ID_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_TOTEM_ID_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_CURRENCY_ATTRIBUTE_ID 0x0020 // Ver.: always -#define ZCL_PRICE_TRAILING_DIGIT_ATTRIBUTE_ID 0x0021 // Ver.: always -#define ZCL_PRICE_ATTRIBUTE_ID 0x0022 // Ver.: always -#define ZCL_GOOD_ID_ATTRIBUTE_ID 0x0030 // Ver.: always -#define ZCL_SERIAL_NUMBER_ATTRIBUTE_ID 0x0031 // Ver.: always -#define ZCL_PAYMENT_TIMESTAMP_ATTRIBUTE_ID 0x0032 // Ver.: always -#define ZCL_TRANS_ID_ATTRIBUTE_ID 0x0033 // Ver.: always -#define ZCL_TRANS_STATUS_ATTRIBUTE_ID 0x0034 // Ver.: always -#define ZCL_PAYMENT_STATUS_ATTRIBUTE_ID 0x0035 // Ver.: always -#define ZCL_PAYMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_PAYMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Billing -// Cluster specification level: ta-1.0-07-5307-07 +#define ZCL_PAYMENT_USER_ID_ATTRIBUTE_ID (0x0000) +#define ZCL_USER_TYPE_ATTRIBUTE_ID (0x0001) +#define ZCL_PAYMENT_SERVICE_ID_ATTRIBUTE_ID (0x0010) +#define ZCL_PAYMENT_SERVICE_PROVIDER_ID_ATTRIBUTE_ID (0x0011) +#define ZCL_TOTEM_ID_ATTRIBUTE_ID (0x0012) +#define ZCL_CURRENCY_ATTRIBUTE_ID (0x0020) +#define ZCL_PRICE_TRAILING_DIGIT_ATTRIBUTE_ID (0x0021) +#define ZCL_PRICE_ATTRIBUTE_ID (0x0022) +#define ZCL_GOOD_ID_ATTRIBUTE_ID (0x0030) +#define ZCL_SERIAL_NUMBER_ATTRIBUTE_ID (0x0031) +#define ZCL_PAYMENT_TIMESTAMP_ATTRIBUTE_ID (0x0032) +#define ZCL_TRANS_ID_ATTRIBUTE_ID (0x0033) +#define ZCL_TRANS_STATUS_ATTRIBUTE_ID (0x0034) +#define ZCL_PAYMENT_STATUS_ATTRIBUTE_ID (0x0035) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Billing // Client attributes -#define ZCL_BILLING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BILLING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_USER_ID_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SERVICE_ID_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_SERVICE_PROVIDER_ID_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_SESSION_INTERVAL_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_TIMESTAMP_ATTRIBUTE_ID 0x0020 // Ver.: always -#define ZCL_DURATION_ATTRIBUTE_ID 0x0021 // Ver.: always -#define ZCL_BILLING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_BILLING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Appliance Identification -// Cluster specification level: UNKNOWN +#define ZCL_USER_ID_ATTRIBUTE_ID (0x0000) +#define ZCL_SERVICE_ID_ATTRIBUTE_ID (0x0010) +#define ZCL_SERVICE_PROVIDER_ID_ATTRIBUTE_ID (0x0011) +#define ZCL_SESSION_INTERVAL_ATTRIBUTE_ID (0x0012) +#define ZCL_TIMESTAMP_ATTRIBUTE_ID (0x0020) +#define ZCL_DURATION_ATTRIBUTE_ID (0x0021) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Appliance Identification // Client attributes -#define ZCL_APPLIANCE_IDENTIFICATION_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_APPLIANCE_IDENTIFICATION_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_BASIC_IDENTIFICATION_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_APPLIANCE_COMPANY_NAME_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_COMPANY_ID_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_BRAND_NAME_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_BRAND_ID_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_APPLIANCE_MODEL_ATTRIBUTE_ID 0x0014 // Ver.: always -#define ZCL_APPLIANCE_PART_NUMBER_ATTRIBUTE_ID 0x0015 // Ver.: always -#define ZCL_APPLIANCE_PRODUCT_REVISION_ATTRIBUTE_ID 0x0016 // Ver.: always -#define ZCL_APPLIANCE_SOFTWARE_REVISION_ATTRIBUTE_ID 0x0017 // Ver.: always -#define ZCL_PRODUCT_TYPE_NAME_ATTRIBUTE_ID 0x0018 // Ver.: always -#define ZCL_PRODUCT_TYPE_ID_ATTRIBUTE_ID 0x0019 // Ver.: always -#define ZCL_CECED_SPECIFICATION_VERSION_ATTRIBUTE_ID 0x001A // Ver.: always -#define ZCL_APPLIANCE_IDENTIFICATION_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_APPLIANCE_IDENTIFICATION_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Meter Identification -// Cluster specification level: UNKNOWN +#define ZCL_BASIC_IDENTIFICATION_ATTRIBUTE_ID (0x0000) +#define ZCL_APPLIANCE_COMPANY_NAME_ATTRIBUTE_ID (0x0010) +#define ZCL_COMPANY_ID_ATTRIBUTE_ID (0x0011) +#define ZCL_BRAND_NAME_ATTRIBUTE_ID (0x0012) +#define ZCL_BRAND_ID_ATTRIBUTE_ID (0x0013) +#define ZCL_APPLIANCE_MODEL_ATTRIBUTE_ID (0x0014) +#define ZCL_APPLIANCE_PART_NUMBER_ATTRIBUTE_ID (0x0015) +#define ZCL_APPLIANCE_PRODUCT_REVISION_ATTRIBUTE_ID (0x0016) +#define ZCL_APPLIANCE_SOFTWARE_REVISION_ATTRIBUTE_ID (0x0017) +#define ZCL_PRODUCT_TYPE_NAME_ATTRIBUTE_ID (0x0018) +#define ZCL_PRODUCT_TYPE_ID_ATTRIBUTE_ID (0x0019) +#define ZCL_CECED_SPECIFICATION_VERSION_ATTRIBUTE_ID (0x001A) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Meter Identification // Client attributes -#define ZCL_METER_IDENTIFICATION_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_METER_IDENTIFICATION_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_METER_COMPANY_NAME_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_METER_TYPE_ID_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_DATA_QUALITY_ID_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_CUSTOMER_NAME_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_METER_MODEL_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_METER_PART_NUMBER_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_METER_PRODUCT_REVISION_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_METER_SOFTWARE_REVISION_ATTRIBUTE_ID 0x000A // Ver.: always -#define ZCL_UTILITY_NAME_ATTRIBUTE_ID 0x000B // Ver.: always -#define ZCL_POD_ATTRIBUTE_ID 0x000C // Ver.: always -#define ZCL_AVAILABLE_POWER_ATTRIBUTE_ID 0x000D // Ver.: always -#define ZCL_POWER_THRESHOLD_ATTRIBUTE_ID 0x000E // Ver.: always -#define ZCL_METER_IDENTIFICATION_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_METER_IDENTIFICATION_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Appliance Events and Alert -// Cluster specification level: UNKNOWN +#define ZCL_METER_COMPANY_NAME_ATTRIBUTE_ID (0x0000) +#define ZCL_METER_TYPE_ID_ATTRIBUTE_ID (0x0001) +#define ZCL_DATA_QUALITY_ID_ATTRIBUTE_ID (0x0004) +#define ZCL_CUSTOMER_NAME_ATTRIBUTE_ID (0x0005) +#define ZCL_METER_MODEL_ATTRIBUTE_ID (0x0006) +#define ZCL_METER_PART_NUMBER_ATTRIBUTE_ID (0x0007) +#define ZCL_METER_PRODUCT_REVISION_ATTRIBUTE_ID (0x0008) +#define ZCL_METER_SOFTWARE_REVISION_ATTRIBUTE_ID (0x000A) +#define ZCL_UTILITY_NAME_ATTRIBUTE_ID (0x000B) +#define ZCL_POD_ATTRIBUTE_ID (0x000C) +#define ZCL_AVAILABLE_POWER_ATTRIBUTE_ID (0x000D) +#define ZCL_POWER_THRESHOLD_ATTRIBUTE_ID (0x000E) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Appliance Events and Alert // Client attributes -#define ZCL_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Appliance Statistics -// Cluster specification level: UNKNOWN +// Attribute ids for cluster: Appliance Statistics // Client attributes -#define ZCL_APPLIANCE_STATISTICS_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_APPLIANCE_STATISTICS_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_LOG_MAX_SIZE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_LOG_QUEUE_MAX_SIZE_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_APPLIANCE_STATISTICS_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_APPLIANCE_STATISTICS_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_LOG_MAX_SIZE_ATTRIBUTE_ID (0x0000) +#define ZCL_LOG_QUEUE_MAX_SIZE_ATTRIBUTE_ID (0x0001) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Electrical Measurement -// Cluster specification level: UNKNOWN +// Attribute ids for cluster: Electrical Measurement // Client attributes -#define ZCL_ELECTRICAL_MEASUREMENT_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ELECTRICAL_MEASUREMENT_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_MEASUREMENT_TYPE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_DC_VOLTAGE_ATTRIBUTE_ID 0x0100 // Ver.: always -#define ZCL_DC_VOLTAGE_MIN_ATTRIBUTE_ID 0x0101 // Ver.: always -#define ZCL_DC_VOLTAGE_MAX_ATTRIBUTE_ID 0x0102 // Ver.: always -#define ZCL_DC_CURRENT_ATTRIBUTE_ID 0x0103 // Ver.: always -#define ZCL_DC_CURRENT_MIN_ATTRIBUTE_ID 0x0104 // Ver.: always -#define ZCL_DC_CURRENT_MAX_ATTRIBUTE_ID 0x0105 // Ver.: always -#define ZCL_DC_POWER_ATTRIBUTE_ID 0x0106 // Ver.: always -#define ZCL_DC_POWER_MIN_ATTRIBUTE_ID 0x0107 // Ver.: always -#define ZCL_DC_POWER_MAX_ATTRIBUTE_ID 0x0108 // Ver.: always -#define ZCL_DC_VOLTAGE_MULTIPLIER_ATTRIBUTE_ID 0x0200 // Ver.: always -#define ZCL_DC_VOLTAGE_DIVISOR_ATTRIBUTE_ID 0x0201 // Ver.: always -#define ZCL_DC_CURRENT_MULTIPLIER_ATTRIBUTE_ID 0x0202 // Ver.: always -#define ZCL_DC_CURRENT_DIVISOR_ATTRIBUTE_ID 0x0203 // Ver.: always -#define ZCL_DC_POWER_MULTIPLIER_ATTRIBUTE_ID 0x0204 // Ver.: always -#define ZCL_DC_POWER_DIVISOR_ATTRIBUTE_ID 0x0205 // Ver.: always -#define ZCL_AC_FREQUENCY_ATTRIBUTE_ID 0x0300 // Ver.: always -#define ZCL_AC_FREQUENCY_MIN_ATTRIBUTE_ID 0x0301 // Ver.: always -#define ZCL_AC_FREQUENCY_MAX_ATTRIBUTE_ID 0x0302 // Ver.: always -#define ZCL_NEUTRAL_CURRENT_ATTRIBUTE_ID 0x0303 // Ver.: always -#define ZCL_TOTAL_ACTIVE_POWER_ATTRIBUTE_ID 0x0304 // Ver.: always -#define ZCL_TOTAL_REACTIVE_POWER_ATTRIBUTE_ID 0x0305 // Ver.: always -#define ZCL_TOTAL_APPARENT_POWER_ATTRIBUTE_ID 0x0306 // Ver.: always -#define ZCL_MEASURED_1ST_HARMONIC_CURRENT_ATTRIBUTE_ID 0x0307 // Ver.: always -#define ZCL_MEASURED_3RD_HARMONIC_CURRENT_ATTRIBUTE_ID 0x0308 // Ver.: always -#define ZCL_MEASURED_5TH_HARMONIC_CURRENT_ATTRIBUTE_ID 0x0309 // Ver.: always -#define ZCL_MEASURED_7TH_HARMONIC_CURRENT_ATTRIBUTE_ID 0x030A // Ver.: always -#define ZCL_MEASURED_9TH_HARMONIC_CURRENT_ATTRIBUTE_ID 0x030B // Ver.: always -#define ZCL_MEASURED_11TH_HARMONIC_CURRENT_ATTRIBUTE_ID 0x030C // Ver.: always -#define ZCL_MEASURED_PHASE_1ST_HARMONIC_CURRENT_ATTRIBUTE_ID 0x030D // Ver.: always -#define ZCL_MEASURED_PHASE_3RD_HARMONIC_CURRENT_ATTRIBUTE_ID 0x030E // Ver.: always -#define ZCL_MEASURED_PHASE_5TH_HARMONIC_CURRENT_ATTRIBUTE_ID 0x030F // Ver.: always -#define ZCL_MEASURED_PHASE_7TH_HARMONIC_CURRENT_ATTRIBUTE_ID 0x0310 // Ver.: always -#define ZCL_MEASURED_PHASE_9TH_HARMONIC_CURRENT_ATTRIBUTE_ID 0x0311 // Ver.: always -#define ZCL_MEASURED_PHASE_11TH_HARMONIC_CURRENT_ATTRIBUTE_ID 0x0312 // Ver.: always -#define ZCL_AC_FREQUENCY_MULTIPLIER_ATTRIBUTE_ID 0x0400 // Ver.: always -#define ZCL_AC_FREQUENCY_DIVISOR_ATTRIBUTE_ID 0x0401 // Ver.: always -#define ZCL_POWER_MULTIPLIER_ATTRIBUTE_ID 0x0402 // Ver.: always -#define ZCL_POWER_DIVISOR_ATTRIBUTE_ID 0x0403 // Ver.: always -#define ZCL_HARMONIC_CURRENT_MULTIPLIER_ATTRIBUTE_ID 0x0404 // Ver.: always -#define ZCL_PHASE_HARMONIC_CURRENT_MULTIPLIER_ATTRIBUTE_ID 0x0405 // Ver.: always -#define ZCL_INSTANTANEOUS_VOLTAGE_ATTRIBUTE_ID 0x0500 // Ver.: always -#define ZCL_INSTANTANEOUS_LINE_CURRENT_ATTRIBUTE_ID 0x0501 // Ver.: always -#define ZCL_INSTANTANEOUS_ACTIVE_CURRENT_ATTRIBUTE_ID 0x0502 // Ver.: always -#define ZCL_INSTANTANEOUS_REACTIVE_CURRENT_ATTRIBUTE_ID 0x0503 // Ver.: always -#define ZCL_INSTANTANEOUS_POWER_ATTRIBUTE_ID 0x0504 // Ver.: always -#define ZCL_RMS_VOLTAGE_ATTRIBUTE_ID 0x0505 // Ver.: always -#define ZCL_RMS_VOLTAGE_MIN_ATTRIBUTE_ID 0x0506 // Ver.: always -#define ZCL_RMS_VOLTAGE_MAX_ATTRIBUTE_ID 0x0507 // Ver.: always -#define ZCL_RMS_CURRENT_ATTRIBUTE_ID 0x0508 // Ver.: always -#define ZCL_RMS_CURRENT_MIN_ATTRIBUTE_ID 0x0509 // Ver.: always -#define ZCL_RMS_CURRENT_MAX_ATTRIBUTE_ID 0x050A // Ver.: always -#define ZCL_ACTIVE_POWER_ATTRIBUTE_ID 0x050B // Ver.: always -#define ZCL_ACTIVE_POWER_MIN_ATTRIBUTE_ID 0x050C // Ver.: always -#define ZCL_ACTIVE_POWER_MAX_ATTRIBUTE_ID 0x050D // Ver.: always -#define ZCL_REACTIVE_POWER_ATTRIBUTE_ID 0x050E // Ver.: always -#define ZCL_APPARENT_POWER_ATTRIBUTE_ID 0x050F // Ver.: always -#define ZCL_AC_POWER_FACTOR_ATTRIBUTE_ID 0x0510 // Ver.: always -#define ZCL_AVERAGE_RMS_VOLTAGE_MEASUREMENT_PERIOD_ATTRIBUTE_ID 0x0511 // Ver.: always -#define ZCL_AVERAGE_RMS_UNDER_VOLTAGE_COUNTER_ATTRIBUTE_ID 0x0513 // Ver.: always -#define ZCL_RMS_EXTREME_OVER_VOLTAGE_PERIOD_ATTRIBUTE_ID 0x0514 // Ver.: always -#define ZCL_RMS_EXTREME_UNDER_VOLTAGE_PERIOD_ATTRIBUTE_ID 0x0515 // Ver.: always -#define ZCL_RMS_VOLTAGE_SAG_PERIOD_ATTRIBUTE_ID 0x0516 // Ver.: always -#define ZCL_RMS_VOLTAGE_SWELL_PERIOD_ATTRIBUTE_ID 0x0517 // Ver.: always -#define ZCL_AC_VOLTAGE_MULTIPLIER_ATTRIBUTE_ID 0x0600 // Ver.: always -#define ZCL_AC_VOLTAGE_DIVISOR_ATTRIBUTE_ID 0x0601 // Ver.: always -#define ZCL_AC_CURRENT_MULTIPLIER_ATTRIBUTE_ID 0x0602 // Ver.: always -#define ZCL_AC_CURRENT_DIVISOR_ATTRIBUTE_ID 0x0603 // Ver.: always -#define ZCL_AC_POWER_MULTIPLIER_ATTRIBUTE_ID 0x0604 // Ver.: always -#define ZCL_AC_POWER_DIVISOR_ATTRIBUTE_ID 0x0605 // Ver.: always -#define ZCL_DC_OVERLOAD_ALARMS_MASK_ATTRIBUTE_ID 0x0700 // Ver.: always -#define ZCL_DC_VOLTAGE_OVERLOAD_ATTRIBUTE_ID 0x0701 // Ver.: always -#define ZCL_DC_CURRENT_OVERLOAD_ATTRIBUTE_ID 0x0702 // Ver.: always -#define ZCL_AC_OVERLOAD_ALARMS_MASK_ATTRIBUTE_ID 0x0800 // Ver.: always -#define ZCL_AC_VOLTAGE_OVERLOAD_ATTRIBUTE_ID 0x0801 // Ver.: always -#define ZCL_AC_CURRENT_OVERLOAD_ATTRIBUTE_ID 0x0802 // Ver.: always -#define ZCL_AC_POWER_OVERLOAD_ATTRIBUTE_ID 0x0803 // Ver.: always -#define ZCL_AC_REACTIVE_POWER_OVERLOAD_ATTRIBUTE_ID 0x0804 // Ver.: always -#define ZCL_AVERAGE_RMS_OVER_VOLTAGE_ATTRIBUTE_ID 0x0805 // Ver.: always -#define ZCL_AVERAGE_RMS_UNDER_VOLTAGE_ATTRIBUTE_ID 0x0806 // Ver.: always -#define ZCL_RMS_EXTREME_OVER_VOLTAGE_ATTRIBUTE_ID 0x0807 // Ver.: always -#define ZCL_RMS_EXTREME_UNDER_VOLTAGE_ATTRIBUTE_ID 0x0808 // Ver.: always -#define ZCL_RMS_VOLTAGE_SAG_ATTRIBUTE_ID 0x0809 // Ver.: always -#define ZCL_RMS_VOLTAGE_SWELL_ATTRIBUTE_ID 0x080A // Ver.: always -#define ZCL_LINE_CURRENT_PHASE_B_ATTRIBUTE_ID 0x0901 // Ver.: always -#define ZCL_ACTIVE_CURRENT_PHASE_B_ATTRIBUTE_ID 0x0902 // Ver.: always -#define ZCL_REACTIVE_CURRENT_PHASE_B_ATTRIBUTE_ID 0x0903 // Ver.: always -#define ZCL_RMS_VOLTAGE_PHASE_B_ATTRIBUTE_ID 0x0905 // Ver.: always -#define ZCL_RMS_VOLTAGE_MIN_PHASE_B_ATTRIBUTE_ID 0x0906 // Ver.: always -#define ZCL_RMS_VOLTAGE_MAX_PHASE_B_ATTRIBUTE_ID 0x0907 // Ver.: always -#define ZCL_RMS_CURRENT_PHASE_B_ATTRIBUTE_ID 0x0908 // Ver.: always -#define ZCL_RMS_CURRENT_MIN_PHASE_B_ATTRIBUTE_ID 0x0909 // Ver.: always -#define ZCL_RMS_CURRENT_MAX_PHASE_B_ATTRIBUTE_ID 0x090A // Ver.: always -#define ZCL_ACTIVE_POWER_PHASE_B_ATTRIBUTE_ID 0x090B // Ver.: always -#define ZCL_ACTIVE_POWER_MIN_PHASE_B_ATTRIBUTE_ID 0x090C // Ver.: always -#define ZCL_ACTIVE_POWER_MAX_PHASE_B_ATTRIBUTE_ID 0x090D // Ver.: always -#define ZCL_REACTIVE_POWER_PHASE_B_ATTRIBUTE_ID 0x090E // Ver.: always -#define ZCL_APPARENT_POWER_PHASE_B_ATTRIBUTE_ID 0x090F // Ver.: always -#define ZCL_POWER_FACTOR_PHASE_B_ATTRIBUTE_ID 0x0910 // Ver.: always -#define ZCL_AVERAGE_RMS_VOLTAGE_MEASUREMENT_PERIOD_PHASE_B_ATTRIBUTE_ID 0x0911 // Ver.: always -#define ZCL_AVERAGE_RMS_OVER_VOLTAGE_COUNTER_PHASE_B_ATTRIBUTE_ID 0x0912 // Ver.: always -#define ZCL_AVERAGE_RMS_UNDER_VOLTAGE_COUNTER_PHASE_B_ATTRIBUTE_ID 0x0913 // Ver.: always -#define ZCL_RMS_EXTREME_OVER_VOLTAGE_PERIOD_PHASE_B_ATTRIBUTE_ID 0x0914 // Ver.: always -#define ZCL_RMS_EXTREME_UNDER_VOLTAGE_PERIOD_PHASE_B_ATTRIBUTE_ID 0x0915 // Ver.: always -#define ZCL_RMS_VOLTAGE_SAG_PERIOD_PHASE_B_ATTRIBUTE_ID 0x0916 // Ver.: always -#define ZCL_RMS_VOLTAGE_SWELL_PERIOD_PHASE_B_ATTRIBUTE_ID 0x0917 // Ver.: always -#define ZCL_LINE_CURRENT_PHASE_C_ATTRIBUTE_ID 0x0A01 // Ver.: always -#define ZCL_ACTIVE_CURRENT_PHASE_C_ATTRIBUTE_ID 0x0A02 // Ver.: always -#define ZCL_REACTIVE_CURRENT_PHASE_C_ATTRIBUTE_ID 0x0A03 // Ver.: always -#define ZCL_RMS_VOLTAGE_PHASE_C_ATTRIBUTE_ID 0x0A05 // Ver.: always -#define ZCL_RMS_VOLTAGE_MIN_PHASE_C_ATTRIBUTE_ID 0x0A06 // Ver.: always -#define ZCL_RMS_VOLTAGE_MAX_PHASE_C_ATTRIBUTE_ID 0x0A07 // Ver.: always -#define ZCL_RMS_CURRENT_PHASE_C_ATTRIBUTE_ID 0x0A08 // Ver.: always -#define ZCL_RMS_CURRENT_MIN_PHASE_C_ATTRIBUTE_ID 0x0A09 // Ver.: always -#define ZCL_RMS_CURRENT_MAX_PHASE_C_ATTRIBUTE_ID 0x0A0A // Ver.: always -#define ZCL_ACTIVE_POWER_PHASE_C_ATTRIBUTE_ID 0x0A0B // Ver.: always -#define ZCL_ACTIVE_POWER_MIN_PHASE_C_ATTRIBUTE_ID 0x0A0C // Ver.: always -#define ZCL_ACTIVE_POWER_MAX_PHASE_C_ATTRIBUTE_ID 0x0A0D // Ver.: always -#define ZCL_REACTIVE_POWER_PHASE_C_ATTRIBUTE_ID 0x0A0E // Ver.: always -#define ZCL_APPARENT_POWER_PHASE_C_ATTRIBUTE_ID 0x0A0F // Ver.: always -#define ZCL_POWER_FACTOR_PHASE_C_ATTRIBUTE_ID 0x0A10 // Ver.: always -#define ZCL_AVERAGE_RMS_VOLTAGE_MEASUREMENT_PERIOD_PHASE_C_ATTRIBUTE_ID 0x0A11 // Ver.: always -#define ZCL_AVERAGE_RMS_OVER_VOLTAGE_COUNTER_PHASE_C_ATTRIBUTE_ID 0x0A12 // Ver.: always -#define ZCL_AVERAGE_RMS_UNDER_VOLTAGE_COUNTER_PHASE_C_ATTRIBUTE_ID 0x0A13 // Ver.: always -#define ZCL_RMS_EXTREME_OVER_VOLTAGE_PERIOD_PHASE_C_ATTRIBUTE_ID 0x0A14 // Ver.: always -#define ZCL_RMS_EXTREME_UNDER_VOLTAGE_PERIOD_PHASE_C_ATTRIBUTE_ID 0x0A15 // Ver.: always -#define ZCL_RMS_VOLTAGE_SAG_PERIOD_PHASE_C_ATTRIBUTE_ID 0x0A16 // Ver.: always -#define ZCL_RMS_VOLTAGE_SWELL_PERIOD_PHASE_C_ATTRIBUTE_ID 0x0A17 // Ver.: always -#define ZCL_ELECTRICAL_MEASUREMENT_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ELECTRICAL_MEASUREMENT_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: Diagnostics -// Cluster specification level: UNKNOWN +#define ZCL_MEASUREMENT_TYPE_ATTRIBUTE_ID (0x0000) +#define ZCL_DC_VOLTAGE_ATTRIBUTE_ID (0x0100) +#define ZCL_DC_VOLTAGE_MIN_ATTRIBUTE_ID (0x0101) +#define ZCL_DC_VOLTAGE_MAX_ATTRIBUTE_ID (0x0102) +#define ZCL_DC_CURRENT_ATTRIBUTE_ID (0x0103) +#define ZCL_DC_CURRENT_MIN_ATTRIBUTE_ID (0x0104) +#define ZCL_DC_CURRENT_MAX_ATTRIBUTE_ID (0x0105) +#define ZCL_DC_POWER_ATTRIBUTE_ID (0x0106) +#define ZCL_DC_POWER_MIN_ATTRIBUTE_ID (0x0107) +#define ZCL_DC_POWER_MAX_ATTRIBUTE_ID (0x0108) +#define ZCL_DC_VOLTAGE_MULTIPLIER_ATTRIBUTE_ID (0x0200) +#define ZCL_DC_VOLTAGE_DIVISOR_ATTRIBUTE_ID (0x0201) +#define ZCL_DC_CURRENT_MULTIPLIER_ATTRIBUTE_ID (0x0202) +#define ZCL_DC_CURRENT_DIVISOR_ATTRIBUTE_ID (0x0203) +#define ZCL_DC_POWER_MULTIPLIER_ATTRIBUTE_ID (0x0204) +#define ZCL_DC_POWER_DIVISOR_ATTRIBUTE_ID (0x0205) +#define ZCL_AC_FREQUENCY_ATTRIBUTE_ID (0x0300) +#define ZCL_AC_FREQUENCY_MIN_ATTRIBUTE_ID (0x0301) +#define ZCL_AC_FREQUENCY_MAX_ATTRIBUTE_ID (0x0302) +#define ZCL_NEUTRAL_CURRENT_ATTRIBUTE_ID (0x0303) +#define ZCL_TOTAL_ACTIVE_POWER_ATTRIBUTE_ID (0x0304) +#define ZCL_TOTAL_REACTIVE_POWER_ATTRIBUTE_ID (0x0305) +#define ZCL_TOTAL_APPARENT_POWER_ATTRIBUTE_ID (0x0306) +#define ZCL_MEASURED_1_ST_HARMONIC_CURRENT_ATTRIBUTE_ID (0x0307) +#define ZCL_MEASURED_3_RD_HARMONIC_CURRENT_ATTRIBUTE_ID (0x0308) +#define ZCL_MEASURED_5_TH_HARMONIC_CURRENT_ATTRIBUTE_ID (0x0309) +#define ZCL_MEASURED_7_TH_HARMONIC_CURRENT_ATTRIBUTE_ID (0x030A) +#define ZCL_MEASURED_9_TH_HARMONIC_CURRENT_ATTRIBUTE_ID (0x030B) +#define ZCL_MEASURED_11_TH_HARMONIC_CURRENT_ATTRIBUTE_ID (0x030C) +#define ZCL_MEASURED_PHASE_1_ST_HARMONIC_CURRENT_ATTRIBUTE_ID (0x030D) +#define ZCL_MEASURED_PHASE_3_RD_HARMONIC_CURRENT_ATTRIBUTE_ID (0x030E) +#define ZCL_MEASURED_PHASE_5_TH_HARMONIC_CURRENT_ATTRIBUTE_ID (0x030F) +#define ZCL_MEASURED_PHASE_7_TH_HARMONIC_CURRENT_ATTRIBUTE_ID (0x0310) +#define ZCL_MEASURED_PHASE_9_TH_HARMONIC_CURRENT_ATTRIBUTE_ID (0x0311) +#define ZCL_MEASURED_PHASE_11_TH_HARMONIC_CURRENT_ATTRIBUTE_ID (0x0312) +#define ZCL_AC_FREQUENCY_MULTIPLIER_ATTRIBUTE_ID (0x0400) +#define ZCL_AC_FREQUENCY_DIVISOR_ATTRIBUTE_ID (0x0401) +#define ZCL_POWER_MULTIPLIER_ATTRIBUTE_ID (0x0402) +#define ZCL_POWER_DIVISOR_ATTRIBUTE_ID (0x0403) +#define ZCL_HARMONIC_CURRENT_MULTIPLIER_ATTRIBUTE_ID (0x0404) +#define ZCL_PHASE_HARMONIC_CURRENT_MULTIPLIER_ATTRIBUTE_ID (0x0405) +#define ZCL_INSTANTANEOUS_VOLTAGE_ATTRIBUTE_ID (0x0500) +#define ZCL_INSTANTANEOUS_LINE_CURRENT_ATTRIBUTE_ID (0x0501) +#define ZCL_INSTANTANEOUS_ACTIVE_CURRENT_ATTRIBUTE_ID (0x0502) +#define ZCL_INSTANTANEOUS_REACTIVE_CURRENT_ATTRIBUTE_ID (0x0503) +#define ZCL_INSTANTANEOUS_POWER_ATTRIBUTE_ID (0x0504) +#define ZCL_RMS_VOLTAGE_ATTRIBUTE_ID (0x0505) +#define ZCL_RMS_VOLTAGE_MIN_ATTRIBUTE_ID (0x0506) +#define ZCL_RMS_VOLTAGE_MAX_ATTRIBUTE_ID (0x0507) +#define ZCL_RMS_CURRENT_ATTRIBUTE_ID (0x0508) +#define ZCL_RMS_CURRENT_MIN_ATTRIBUTE_ID (0x0509) +#define ZCL_RMS_CURRENT_MAX_ATTRIBUTE_ID (0x050A) +#define ZCL_ACTIVE_POWER_ATTRIBUTE_ID (0x050B) +#define ZCL_ACTIVE_POWER_MIN_ATTRIBUTE_ID (0x050C) +#define ZCL_ACTIVE_POWER_MAX_ATTRIBUTE_ID (0x050D) +#define ZCL_REACTIVE_POWER_ATTRIBUTE_ID (0x050E) +#define ZCL_APPARENT_POWER_ATTRIBUTE_ID (0x050F) +#define ZCL_AC_POWER_FACTOR_ATTRIBUTE_ID (0x0510) +#define ZCL_AVERAGE_RMS_VOLTAGE_MEASUREMENT_PERIOD_ATTRIBUTE_ID (0x0511) +#define ZCL_AVERAGE_RMS_UNDER_VOLTAGE_COUNTER_ATTRIBUTE_ID (0x0513) +#define ZCL_RMS_EXTREME_OVER_VOLTAGE_PERIOD_ATTRIBUTE_ID (0x0514) +#define ZCL_RMS_EXTREME_UNDER_VOLTAGE_PERIOD_ATTRIBUTE_ID (0x0515) +#define ZCL_RMS_VOLTAGE_SAG_PERIOD_ATTRIBUTE_ID (0x0516) +#define ZCL_RMS_VOLTAGE_SWELL_PERIOD_ATTRIBUTE_ID (0x0517) +#define ZCL_AC_VOLTAGE_MULTIPLIER_ATTRIBUTE_ID (0x0600) +#define ZCL_AC_VOLTAGE_DIVISOR_ATTRIBUTE_ID (0x0601) +#define ZCL_AC_CURRENT_MULTIPLIER_ATTRIBUTE_ID (0x0602) +#define ZCL_AC_CURRENT_DIVISOR_ATTRIBUTE_ID (0x0603) +#define ZCL_AC_POWER_MULTIPLIER_ATTRIBUTE_ID (0x0604) +#define ZCL_AC_POWER_DIVISOR_ATTRIBUTE_ID (0x0605) +#define ZCL_DC_OVERLOAD_ALARMS_MASK_ATTRIBUTE_ID (0x0700) +#define ZCL_DC_VOLTAGE_OVERLOAD_ATTRIBUTE_ID (0x0701) +#define ZCL_DC_CURRENT_OVERLOAD_ATTRIBUTE_ID (0x0702) +#define ZCL_AC_OVERLOAD_ALARMS_MASK_ATTRIBUTE_ID (0x0800) +#define ZCL_AC_VOLTAGE_OVERLOAD_ATTRIBUTE_ID (0x0801) +#define ZCL_AC_CURRENT_OVERLOAD_ATTRIBUTE_ID (0x0802) +#define ZCL_AC_POWER_OVERLOAD_ATTRIBUTE_ID (0x0803) +#define ZCL_AC_REACTIVE_POWER_OVERLOAD_ATTRIBUTE_ID (0x0804) +#define ZCL_AVERAGE_RMS_OVER_VOLTAGE_ATTRIBUTE_ID (0x0805) +#define ZCL_AVERAGE_RMS_UNDER_VOLTAGE_ATTRIBUTE_ID (0x0806) +#define ZCL_RMS_EXTREME_OVER_VOLTAGE_ATTRIBUTE_ID (0x0807) +#define ZCL_RMS_EXTREME_UNDER_VOLTAGE_ATTRIBUTE_ID (0x0808) +#define ZCL_RMS_VOLTAGE_SAG_ATTRIBUTE_ID (0x0809) +#define ZCL_RMS_VOLTAGE_SWELL_ATTRIBUTE_ID (0x080A) +#define ZCL_LINE_CURRENT_PHASE_B_ATTRIBUTE_ID (0x0901) +#define ZCL_ACTIVE_CURRENT_PHASE_B_ATTRIBUTE_ID (0x0902) +#define ZCL_REACTIVE_CURRENT_PHASE_B_ATTRIBUTE_ID (0x0903) +#define ZCL_RMS_VOLTAGE_PHASE_B_ATTRIBUTE_ID (0x0905) +#define ZCL_RMS_VOLTAGE_MIN_PHASE_B_ATTRIBUTE_ID (0x0906) +#define ZCL_RMS_VOLTAGE_MAX_PHASE_B_ATTRIBUTE_ID (0x0907) +#define ZCL_RMS_CURRENT_PHASE_B_ATTRIBUTE_ID (0x0908) +#define ZCL_RMS_CURRENT_MIN_PHASE_B_ATTRIBUTE_ID (0x0909) +#define ZCL_RMS_CURRENT_MAX_PHASE_B_ATTRIBUTE_ID (0x090A) +#define ZCL_ACTIVE_POWER_PHASE_B_ATTRIBUTE_ID (0x090B) +#define ZCL_ACTIVE_POWER_MIN_PHASE_B_ATTRIBUTE_ID (0x090C) +#define ZCL_ACTIVE_POWER_MAX_PHASE_B_ATTRIBUTE_ID (0x090D) +#define ZCL_REACTIVE_POWER_PHASE_B_ATTRIBUTE_ID (0x090E) +#define ZCL_APPARENT_POWER_PHASE_B_ATTRIBUTE_ID (0x090F) +#define ZCL_POWER_FACTOR_PHASE_B_ATTRIBUTE_ID (0x0910) +#define ZCL_AVERAGE_RMS_VOLTAGE_MEASUREMENT_PERIOD_PHASE_B_ATTRIBUTE_ID (0x0911) +#define ZCL_AVERAGE_RMS_OVER_VOLTAGE_COUNTER_PHASE_B_ATTRIBUTE_ID (0x0912) +#define ZCL_AVERAGE_RMS_UNDER_VOLTAGE_COUNTER_PHASE_B_ATTRIBUTE_ID (0x0913) +#define ZCL_RMS_EXTREME_OVER_VOLTAGE_PERIOD_PHASE_B_ATTRIBUTE_ID (0x0914) +#define ZCL_RMS_EXTREME_UNDER_VOLTAGE_PERIOD_PHASE_B_ATTRIBUTE_ID (0x0915) +#define ZCL_RMS_VOLTAGE_SAG_PERIOD_PHASE_B_ATTRIBUTE_ID (0x0916) +#define ZCL_RMS_VOLTAGE_SWELL_PERIOD_PHASE_B_ATTRIBUTE_ID (0x0917) +#define ZCL_LINE_CURRENT_PHASE_C_ATTRIBUTE_ID (0x0A01) +#define ZCL_ACTIVE_CURRENT_PHASE_C_ATTRIBUTE_ID (0x0A02) +#define ZCL_REACTIVE_CURRENT_PHASE_C_ATTRIBUTE_ID (0x0A03) +#define ZCL_RMS_VOLTAGE_PHASE_C_ATTRIBUTE_ID (0x0A05) +#define ZCL_RMS_VOLTAGE_MIN_PHASE_C_ATTRIBUTE_ID (0x0A06) +#define ZCL_RMS_VOLTAGE_MAX_PHASE_C_ATTRIBUTE_ID (0x0A07) +#define ZCL_RMS_CURRENT_PHASE_C_ATTRIBUTE_ID (0x0A08) +#define ZCL_RMS_CURRENT_MIN_PHASE_C_ATTRIBUTE_ID (0x0A09) +#define ZCL_RMS_CURRENT_MAX_PHASE_C_ATTRIBUTE_ID (0x0A0A) +#define ZCL_ACTIVE_POWER_PHASE_C_ATTRIBUTE_ID (0x0A0B) +#define ZCL_ACTIVE_POWER_MIN_PHASE_C_ATTRIBUTE_ID (0x0A0C) +#define ZCL_ACTIVE_POWER_MAX_PHASE_C_ATTRIBUTE_ID (0x0A0D) +#define ZCL_REACTIVE_POWER_PHASE_C_ATTRIBUTE_ID (0x0A0E) +#define ZCL_APPARENT_POWER_PHASE_C_ATTRIBUTE_ID (0x0A0F) +#define ZCL_POWER_FACTOR_PHASE_C_ATTRIBUTE_ID (0x0A10) +#define ZCL_AVERAGE_RMS_VOLTAGE_MEASUREMENT_PERIOD_PHASE_C_ATTRIBUTE_ID (0x0A11) +#define ZCL_AVERAGE_RMS_OVER_VOLTAGE_COUNTER_PHASE_C_ATTRIBUTE_ID (0x0A12) +#define ZCL_AVERAGE_RMS_UNDER_VOLTAGE_COUNTER_PHASE_C_ATTRIBUTE_ID (0x0A13) +#define ZCL_RMS_EXTREME_OVER_VOLTAGE_PERIOD_PHASE_C_ATTRIBUTE_ID (0x0A14) +#define ZCL_RMS_EXTREME_UNDER_VOLTAGE_PERIOD_PHASE_C_ATTRIBUTE_ID (0x0A15) +#define ZCL_RMS_VOLTAGE_SAG_PERIOD_PHASE_C_ATTRIBUTE_ID (0x0A16) +#define ZCL_RMS_VOLTAGE_SWELL_PERIOD_PHASE_C_ATTRIBUTE_ID (0x0A17) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: Diagnostics // Client attributes -#define ZCL_DIAGNOSTICS_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DIAGNOSTICS_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_NUMBER_OF_RESETS_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_PERSISTENT_MEMORY_WRITES_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_MAC_RX_BCAST_ATTRIBUTE_ID 0x0100 // Ver.: always -#define ZCL_MAC_TX_BCAST_ATTRIBUTE_ID 0x0101 // Ver.: always -#define ZCL_MAC_RX_UCAST_ATTRIBUTE_ID 0x0102 // Ver.: always -#define ZCL_MAC_TX_UCAST_ATTRIBUTE_ID 0x0103 // Ver.: always -#define ZCL_MAC_TX_UCAST_RETRY_ATTRIBUTE_ID 0x0104 // Ver.: always -#define ZCL_MAC_TX_UCAST_FAIL_ATTRIBUTE_ID 0x0105 // Ver.: always -#define ZCL_APS_RX_BCAST_ATTRIBUTE_ID 0x0106 // Ver.: always -#define ZCL_APS_TX_BCAST_ATTRIBUTE_ID 0x0107 // Ver.: always -#define ZCL_APS_RX_UCAST_ATTRIBUTE_ID 0x0108 // Ver.: always -#define ZCL_APS_UCAST_SUCCESS_ATTRIBUTE_ID 0x0109 // Ver.: always -#define ZCL_APS_TX_UCAST_RETRY_ATTRIBUTE_ID 0x010A // Ver.: always -#define ZCL_APS_TX_UCAST_FAIL_ATTRIBUTE_ID 0x010B // Ver.: always -#define ZCL_ROUTE_DISC_INITIATED_ATTRIBUTE_ID 0x010C // Ver.: always -#define ZCL_NEIGHBOR_ADDED_ATTRIBUTE_ID 0x010D // Ver.: always -#define ZCL_NEIGHBOR_REMOVED_ATTRIBUTE_ID 0x010E // Ver.: always -#define ZCL_NEIGHBOR_STALE_ATTRIBUTE_ID 0x010F // Ver.: always -#define ZCL_JOIN_INDICATION_ATTRIBUTE_ID 0x0110 // Ver.: always -#define ZCL_CHILD_MOVED_ATTRIBUTE_ID 0x0111 // Ver.: always -#define ZCL_NWK_FC_FAILURE_ATTRIBUTE_ID 0x0112 // Ver.: always -#define ZCL_APS_FC_FAILURE_ATTRIBUTE_ID 0x0113 // Ver.: always -#define ZCL_APS_UNAUTHORIZED_KEY_ATTRIBUTE_ID 0x0114 // Ver.: always -#define ZCL_NWK_DECRYPT_FAILURE_ATTRIBUTE_ID 0x0115 // Ver.: always -#define ZCL_APS_DECRYPT_FAILURE_ATTRIBUTE_ID 0x0116 // Ver.: always -#define ZCL_PACKET_BUFFER_ALLOC_FAILURES_ATTRIBUTE_ID 0x0117 // Ver.: always -#define ZCL_RELAYED_UNICAST_ATTRIBUTE_ID 0x0118 // Ver.: always -#define ZCL_PHY_TO_MAC_QUEUE_LIMIT_REACHED_ATTRIBUTE_ID 0x0119 // Ver.: always -#define ZCL_PACKET_VALIDATE_DROP_COUNT_ATTRIBUTE_ID 0x011A // Ver.: always -#define ZCL_AVERAGE_MAC_RETRY_PER_APS_MSG_SENT_ATTRIBUTE_ID 0x011B // Ver.: always -#define ZCL_LAST_MESSAGE_LQI_ATTRIBUTE_ID 0x011C // Ver.: always -#define ZCL_LAST_MESSAGE_RSSI_ATTRIBUTE_ID 0x011D // Ver.: always -#define ZCL_DIAGNOSTICS_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_DIAGNOSTICS_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -// Attribute types for cluster: ZLL Commissioning -// Cluster specification level: zll-1.0-11-0037-10 +#define ZCL_NUMBER_OF_RESETS_ATTRIBUTE_ID (0x0000) +#define ZCL_PERSISTENT_MEMORY_WRITES_ATTRIBUTE_ID (0x0001) +#define ZCL_MAC_RX_BCAST_ATTRIBUTE_ID (0x0100) +#define ZCL_MAC_TX_BCAST_ATTRIBUTE_ID (0x0101) +#define ZCL_MAC_RX_UCAST_ATTRIBUTE_ID (0x0102) +#define ZCL_MAC_TX_UCAST_ATTRIBUTE_ID (0x0103) +#define ZCL_MAC_TX_UCAST_RETRY_ATTRIBUTE_ID (0x0104) +#define ZCL_MAC_TX_UCAST_FAIL_ATTRIBUTE_ID (0x0105) +#define ZCL_APS_RX_BCAST_ATTRIBUTE_ID (0x0106) +#define ZCL_APS_TX_BCAST_ATTRIBUTE_ID (0x0107) +#define ZCL_APS_RX_UCAST_ATTRIBUTE_ID (0x0108) +#define ZCL_APS_UCAST_SUCCESS_ATTRIBUTE_ID (0x0109) +#define ZCL_APS_TX_UCAST_RETRY_ATTRIBUTE_ID (0x010A) +#define ZCL_APS_TX_UCAST_FAIL_ATTRIBUTE_ID (0x010B) +#define ZCL_ROUTE_DISC_INITIATED_ATTRIBUTE_ID (0x010C) +#define ZCL_NEIGHBOR_ADDED_ATTRIBUTE_ID (0x010D) +#define ZCL_NEIGHBOR_REMOVED_ATTRIBUTE_ID (0x010E) +#define ZCL_NEIGHBOR_STALE_ATTRIBUTE_ID (0x010F) +#define ZCL_JOIN_INDICATION_ATTRIBUTE_ID (0x0110) +#define ZCL_CHILD_MOVED_ATTRIBUTE_ID (0x0111) +#define ZCL_NWK_FC_FAILURE_ATTRIBUTE_ID (0x0112) +#define ZCL_APS_FC_FAILURE_ATTRIBUTE_ID (0x0113) +#define ZCL_APS_UNAUTHORIZED_KEY_ATTRIBUTE_ID (0x0114) +#define ZCL_NWK_DECRYPT_FAILURE_ATTRIBUTE_ID (0x0115) +#define ZCL_APS_DECRYPT_FAILURE_ATTRIBUTE_ID (0x0116) +#define ZCL_PACKET_BUFFER_ALLOC_FAILURES_ATTRIBUTE_ID (0x0117) +#define ZCL_RELAYED_UNICAST_ATTRIBUTE_ID (0x0118) +#define ZCL_PHY_TO_MAC_QUEUE_LIMIT_REACHED_ATTRIBUTE_ID (0x0119) +#define ZCL_PACKET_VALIDATE_DROP_COUNT_ATTRIBUTE_ID (0x011A) +#define ZCL_AVERAGE_MAC_RETRY_PER_APS_MSG_SENT_ATTRIBUTE_ID (0x011B) +#define ZCL_LAST_MESSAGE_LQI_ATTRIBUTE_ID (0x011C) +#define ZCL_LAST_MESSAGE_RSSI_ATTRIBUTE_ID (0x011D) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) + +// Attribute ids for cluster: ZLL Commissioning // Client attributes -#define ZCL_ZLL_COMMISSIONING_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ZLL_COMMISSIONING_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ZLL_COMMISSIONING_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_ZLL_COMMISSIONING_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Sample Mfg Specific Cluster -// Cluster specification level: UNKNOWN +// Attribute ids for cluster: Sample Mfg Specific Cluster // Client attributes -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ATTRIBUTE_ONE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_ATTRIBUTE_TWO_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_ATTRIBUTE_ONE_ATTRIBUTE_ID (0x0000) +#define ZCL_ATTRIBUTE_TWO_ATTRIBUTE_ID (0x0001) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Sample Mfg Specific Cluster 2 -// Cluster specification level: UNKNOWN +// Attribute ids for cluster: Sample Mfg Specific Cluster 2 // Client attributes -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_2_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_2_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_ATTRIBUTE_THREE_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_ATTRIBUTE_FOUR_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_2_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_2_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_ATTRIBUTE_THREE_ATTRIBUTE_ID (0x0000) +#define ZCL_ATTRIBUTE_FOUR_ATTRIBUTE_ID (0x0001) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: Configuration Cluster -// Cluster specification level: UNKNOWN +// Attribute ids for cluster: Configuration Cluster // Client attributes -#define ZCL_OTA_CONFIGURATION_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OTA_CONFIGURATION_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_TOKENS_LOCKED_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_OTA_CONFIGURATION_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_OTA_CONFIGURATION_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_TOKENS_LOCKED_ATTRIBUTE_ID (0x0000) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: MFGLIB Cluster -// Cluster specification level: UNKNOWN +// Attribute ids for cluster: MFGLIB Cluster // Client attributes -#define ZCL_MFGLIB_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_MFGLIB_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_PACKETS_RECEIVED_ATTRIBUTE_ID 0x0000 // Ver.: always -#define ZCL_SAVED_RSSI_ATTRIBUTE_ID 0x0001 // Ver.: always -#define ZCL_SAVED_LQI_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_MFGLIB_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_MFGLIB_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_PACKETS_RECEIVED_ATTRIBUTE_ID (0x0000) +#define ZCL_SAVED_RSSI_ATTRIBUTE_ID (0x0001) +#define ZCL_SAVED_LQI_ATTRIBUTE_ID (0x0002) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) -// Attribute types for cluster: SL Works With All Hubs -// Cluster specification level: UNKNOWN +// Attribute ids for cluster: SL Works With All Hubs // Client attributes -#define ZCL_SL_WWAH_CLUSTER_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SL_WWAH_CLUSTER_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 +#define ZCL_CLUSTER_REVISION_CLIENT_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_CLIENT_ATTRIBUTE_ID (0xFFFE) // Server attributes -#define ZCL_SL_DISABLE_OTA_DOWNGRADES_ATTRIBUTE_ID 0x0002 // Ver.: always -#define ZCL_SL_MGMT_LEAVE_WITHOUT_REJOIN_ENABLED_ATTRIBUTE_ID 0x0003 // Ver.: always -#define ZCL_SL_NWK_RETRY_COUNT_ATTRIBUTE_ID 0x0004 // Ver.: always -#define ZCL_SL_MAC_RETRY_COUNT_ATTRIBUTE_ID 0x0005 // Ver.: always -#define ZCL_SL_ROUTER_CHECKIN_ENABLED_ATTRIBUTE_ID 0x0006 // Ver.: always -#define ZCL_SL_TOUCHLINK_INTERPAN_ENABLED_ATTRIBUTE_ID 0x0007 // Ver.: always -#define ZCL_SL_WWAH_PARENT_CLASSIFICATION_ENABLED_ATTRIBUTE_ID 0x0008 // Ver.: always -#define ZCL_SL_WWAH_APP_EVENT_RETRY_ENABLED_ATTRIBUTE_ID 0x0009 // Ver.: always -#define ZCL_SL_WWAH_APP_EVENT_RETRY_QUEUE_SIZE_ATTRIBUTE_ID 0x000A // Ver.: always -#define ZCL_SL_WWAH_REJOIN_ENABLED_ATTRIBUTE_ID 0x000B // Ver.: always -#define ZCL_SL_MAC_POLL_FAILURE_WAIT_TIME_ATTRIBUTE_ID 0x000C // Ver.: always -#define ZCL_SL_CONFIGURATION_MODE_ENABLED_ATTRIBUTE_ID 0x000D // Ver.: always -#define ZCL_SL_CURRENT_DEBUG_REPORT_ID_ATTRIBUTE_ID 0x000E // Ver.: always -#define ZCL_SL_TC_SECURITY_ON_NTWK_KEY_ROTATION_ENABLED_ATTRIBUTE_ID 0x000F // Ver.: always -#define ZCL_SL_WWAH_BAD_PARENT_RECOVERY_ENABLED_ATTRIBUTE_ID 0x0010 // Ver.: always -#define ZCL_SL_PENDING_NETWORK_UPDATE_CHANNEL_ATTRIBUTE_ID 0x0011 // Ver.: always -#define ZCL_SL_PENDING_NETWORK_UPDATE_PANID_ATTRIBUTE_ID 0x0012 // Ver.: always -#define ZCL_SL_OTA_MAX_OFFLINE_DURATION_ATTRIBUTE_ID 0x0013 // Ver.: always -#define ZCL_SL_WWAH_CLUSTER_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID 0xFFFD // Ver.: since zcl-6.0-15-02017-001 -#define ZCL_SL_WWAH_CLUSTER_REPORTING_STATUS_SERVER_ATTRIBUTE_ID 0xFFFE // Ver.: since zcl-6.0-15-02017-001 - -#endif // SILABS_EMBER_AF_ATTRIBUTE_ID +#define ZCL_SL_DISABLE_OTA_DOWNGRADES_ATTRIBUTE_ID (0x0002) +#define ZCL_SL_MGMT_LEAVE_WITHOUT_REJOIN_ENABLED_ATTRIBUTE_ID (0x0003) +#define ZCL_SL_NWK_RETRY_COUNT_ATTRIBUTE_ID (0x0004) +#define ZCL_SL_MAC_RETRY_COUNT_ATTRIBUTE_ID (0x0005) +#define ZCL_SL_ROUTER_CHECKIN_ENABLED_ATTRIBUTE_ID (0x0006) +#define ZCL_SL_TOUCHLINK_INTERPAN_ENABLED_ATTRIBUTE_ID (0x0007) +#define ZCL_SL_WWAH_PARENT_CLASSIFICATION_ENABLED_ATTRIBUTE_ID (0x0008) +#define ZCL_SL_WWAH_APP_EVENT_RETRY_ENABLED_ATTRIBUTE_ID (0x0009) +#define ZCL_SL_WWAH_APP_EVENT_RETRY_QUEUE_SIZE_ATTRIBUTE_ID (0x000A) +#define ZCL_SL_WWAH_REJOIN_ENABLED_ATTRIBUTE_ID (0x000B) +#define ZCL_SL_MAC_POLL_FAILURE_WAIT_TIME_ATTRIBUTE_ID (0x000C) +#define ZCL_SL_CONFIGURATION_MODE_ENABLED_ATTRIBUTE_ID (0x000D) +#define ZCL_SL_CURRENT_DEBUG_REPORT_ID_ATTRIBUTE_ID (0x000E) +#define ZCL_SL_TC_SECURITY_ON_NTWK_KEY_ROTATION_ENABLED_ATTRIBUTE_ID (0x000F) +#define ZCL_SL_WWAH_BAD_PARENT_RECOVERY_ENABLED_ATTRIBUTE_ID (0x0010) +#define ZCL_SL_PENDING_NETWORK_UPDATE_CHANNEL_ATTRIBUTE_ID (0x0011) +#define ZCL_SL_PENDING_NETWORK_UPDATE_PANID_ATTRIBUTE_ID (0x0012) +#define ZCL_SL_OTA_MAX_OFFLINE_DURATION_ATTRIBUTE_ID (0x0013) +#define ZCL_CLUSTER_REVISION_SERVER_ATTRIBUTE_ID (0xFFFD) +#define ZCL_REPORTING_STATUS_SERVER_ATTRIBUTE_ID (0xFFFE) diff --git a/examples/lighting-app/lighting-common/gen/attribute-size.h b/examples/lighting-app/lighting-common/gen/attribute-size.h index 8ab0dae3944631..8d8659ee7ece2e 100644 --- a/examples/lighting-app/lighting-common/gen/attribute-size.h +++ b/examples/lighting-app/lighting-common/gen/attribute-size.h @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,19 +15,20 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_ATTRIBUTE_SIZE -#define SILABS_ATTRIBUTE_SIZE +// Prevent multiple inclusion +#pragma once -// Used ZCL attribute type sizes -ZCL_BITMAP16_ATTRIBUTE_TYPE, 2, ZCL_BITMAP24_ATTRIBUTE_TYPE, 3, ZCL_BITMAP32_ATTRIBUTE_TYPE, 4, ZCL_BITMAP48_ATTRIBUTE_TYPE, 6, - ZCL_BITMAP64_ATTRIBUTE_TYPE, 8, ZCL_BITMAP8_ATTRIBUTE_TYPE, 1, ZCL_BOOLEAN_ATTRIBUTE_TYPE, 1, ZCL_DATA8_ATTRIBUTE_TYPE, 1, - ZCL_ENUM16_ATTRIBUTE_TYPE, 2, ZCL_ENUM8_ATTRIBUTE_TYPE, 1, ZCL_FLOAT_SINGLE_ATTRIBUTE_TYPE, 4, ZCL_IEEE_ADDRESS_ATTRIBUTE_TYPE, - 8, ZCL_INT16S_ATTRIBUTE_TYPE, 2, ZCL_INT16U_ATTRIBUTE_TYPE, 2, ZCL_INT24S_ATTRIBUTE_TYPE, 3, ZCL_INT24U_ATTRIBUTE_TYPE, 3, - ZCL_INT32S_ATTRIBUTE_TYPE, 4, ZCL_INT32U_ATTRIBUTE_TYPE, 4, ZCL_INT48U_ATTRIBUTE_TYPE, 6, ZCL_INT56U_ATTRIBUTE_TYPE, 7, - ZCL_INT8S_ATTRIBUTE_TYPE, 1, ZCL_INT8U_ATTRIBUTE_TYPE, 1, ZCL_SECURITY_KEY_ATTRIBUTE_TYPE, 16, ZCL_UTC_TIME_ATTRIBUTE_TYPE, 4, -#endif // SILABS_ATTRIBUTE_SIZE +// ZCL attribute sizes +ZCL_DATA8_ATTRIBUTE_TYPE, 1, ZCL_DATA16_ATTRIBUTE_TYPE, 2, ZCL_DATA24_ATTRIBUTE_TYPE, 3, ZCL_DATA32_ATTRIBUTE_TYPE, 4, + ZCL_DATA40_ATTRIBUTE_TYPE, 5, ZCL_DATA48_ATTRIBUTE_TYPE, 6, ZCL_DATA56_ATTRIBUTE_TYPE, 7, ZCL_DATA64_ATTRIBUTE_TYPE, 8, + ZCL_BOOLEAN_ATTRIBUTE_TYPE, 1, ZCL_BITMAP8_ATTRIBUTE_TYPE, 1, ZCL_BITMAP16_ATTRIBUTE_TYPE, 2, ZCL_BITMAP24_ATTRIBUTE_TYPE, 3, + ZCL_BITMAP32_ATTRIBUTE_TYPE, 4, ZCL_BITMAP40_ATTRIBUTE_TYPE, 5, ZCL_BITMAP48_ATTRIBUTE_TYPE, 6, ZCL_BITMAP56_ATTRIBUTE_TYPE, 7, + ZCL_BITMAP64_ATTRIBUTE_TYPE, 8, ZCL_INT8U_ATTRIBUTE_TYPE, 1, ZCL_INT16U_ATTRIBUTE_TYPE, 2, ZCL_INT24U_ATTRIBUTE_TYPE, 3, + ZCL_INT32U_ATTRIBUTE_TYPE, 4, ZCL_INT40U_ATTRIBUTE_TYPE, 5, ZCL_INT48U_ATTRIBUTE_TYPE, 6, ZCL_INT56U_ATTRIBUTE_TYPE, 7, + ZCL_INT64U_ATTRIBUTE_TYPE, 8, ZCL_INT8S_ATTRIBUTE_TYPE, 1, ZCL_INT16S_ATTRIBUTE_TYPE, 2, ZCL_INT24S_ATTRIBUTE_TYPE, 3, + ZCL_INT32S_ATTRIBUTE_TYPE, 4, ZCL_INT40S_ATTRIBUTE_TYPE, 5, ZCL_INT48S_ATTRIBUTE_TYPE, 6, ZCL_INT56S_ATTRIBUTE_TYPE, 7, + ZCL_INT64S_ATTRIBUTE_TYPE, 8, ZCL_ENUM8_ATTRIBUTE_TYPE, 1, ZCL_ENUM16_ATTRIBUTE_TYPE, 2, ZCL_FLOAT_SEMI_ATTRIBUTE_TYPE, 2, + ZCL_FLOAT_SINGLE_ATTRIBUTE_TYPE, 4, ZCL_FLOAT_DOUBLE_ATTRIBUTE_TYPE, 8, ZCL_TIME_OF_DAY_ATTRIBUTE_TYPE, 4, + ZCL_DATE_ATTRIBUTE_TYPE, 4, ZCL_UTC_TIME_ATTRIBUTE_TYPE, 4, ZCL_CLUSTER_ID_ATTRIBUTE_TYPE, 2, ZCL_ATTRIBUTE_ID_ATTRIBUTE_TYPE, + 2, ZCL_BACNET_OID_ATTRIBUTE_TYPE, 4, ZCL_IEEE_ADDRESS_ATTRIBUTE_TYPE, 8, ZCL_SECURITY_KEY_ATTRIBUTE_TYPE, 16, diff --git a/examples/lighting-app/lighting-common/gen/attribute-type.h b/examples/lighting-app/lighting-common/gen/attribute-type.h index 35879dabb2ed6e..bc5d1bae34b365 100644 --- a/examples/lighting-app/lighting-common/gen/attribute-type.h +++ b/examples/lighting-app/lighting-common/gen/attribute-type.h @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,13 +15,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_EMBER_AF_ATTRIBUTE_TYPES -#define SILABS_EMBER_AF_ATTRIBUTE_TYPES +// Prevent multiple inclusion +#pragma once // ZCL attribute types enum @@ -97,7 +77,5 @@ enum ZCL_BACNET_OID_ATTRIBUTE_TYPE = 0xEA, // BACnet OID ZCL_IEEE_ADDRESS_ATTRIBUTE_TYPE = 0xF0, // IEEE address ZCL_SECURITY_KEY_ATTRIBUTE_TYPE = 0xF1, // 128-bit security key - ZCL_UNKNOWN_ATTRIBUTE_TYPE = 0xFF // Unknown - + ZCL_UNKNOWN_ATTRIBUTE_TYPE = 0xFF, // Unknown }; -#endif // SILABS_EMBER_AF_ATTRIBUTE_TYPES diff --git a/examples/lighting-app/lighting-common/gen/call-command-handler.cpp b/examples/lighting-app/lighting-common/gen/call-command-handler.cpp index 60dd259ac4f510..1a4559065fdcda 100644 --- a/examples/lighting-app/lighting-common/gen/call-command-handler.cpp +++ b/examples/lighting-app/lighting-common/gen/call-command-handler.cpp @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,26 +15,6 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// This is a set of generated functions that parse the -// the incomming message, and call appropriate command handler. - -// #include PLATFORM_HEADER -#ifdef EZSP_HOST -// Includes needed for ember related functions for the EZSP host -#include "app/util/ezsp/ezsp-protocol.h" -#include "app/util/ezsp/ezsp-utils.h" -#include "app/util/ezsp/ezsp.h" -#include "app/util/ezsp/serial-interface.h" -#include "stack/include/ember-types.h" -#include "stack/include/error.h" -#else -// Includes needed for ember related functions for the EM250 -// #include "stack/include/ember.h" -#endif // EZSP_HOST #include @@ -62,6 +26,9 @@ using namespace chip; +EmberAfStatus emberAfLevelControlClusterServerCommandParse(EmberAfClusterCommand * cmd); +EmberAfStatus emberAfOnOffClusterServerCommandParse(EmberAfClusterCommand * cmd); + static EmberAfStatus status(bool wasHandled, bool clusterExists, bool mfgSpecific) { if (wasHandled) @@ -74,7 +41,7 @@ static EmberAfStatus status(bool wasHandled, bool clusterExists, bool mfgSpecifi } else if (clusterExists) { - return EMBER_ZCL_STATUS_UNSUP_CLUSTER_COMMAND; + return EMBER_ZCL_STATUS_UNSUP_COMMAND; } else { @@ -101,12 +68,12 @@ EmberAfStatus emberAfClusterSpecificCommandParse(EmberAfClusterCommand * cmd) { switch (cmd->apsFrame->clusterId) { - case ZCL_ON_OFF_CLUSTER_ID: - result = emberAfOnOffClusterServerCommandParse(cmd); - break; case ZCL_LEVEL_CONTROL_CLUSTER_ID: result = emberAfLevelControlClusterServerCommandParse(cmd); break; + case ZCL_ON_OFF_CLUSTER_ID: + result = emberAfOnOffClusterServerCommandParse(cmd); + break; default: // Unrecognized cluster ID, error status will apply. break; @@ -115,27 +82,141 @@ EmberAfStatus emberAfClusterSpecificCommandParse(EmberAfClusterCommand * cmd) return result; } -// Cluster: On/off, server -EmberAfStatus emberAfOnOffClusterServerCommandParse(EmberAfClusterCommand * cmd) +// Cluster specific command parsing + +EmberAfStatus emberAfLevelControlClusterServerCommandParse(EmberAfClusterCommand * cmd) { bool wasHandled = false; + if (!cmd->mfgSpecific) { switch (cmd->commandId) { - case ZCL_OFF_COMMAND_ID: { - // Command is fixed length: 0 - wasHandled = emberAfOnOffClusterOffCallback(); + case ZCL_MOVE_COMMAND_ID: { + uint32_t payloadOffset = cmd->payloadStartIndex; + uint8_t moveMode; + uint8_t rate; + uint8_t optionMask; + uint8_t optionOverride; + + moveMode = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + rate = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + optionMask = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + optionOverride = (*(uint8_t *) (cmd->buffer + payloadOffset)); + + wasHandled = emberAfLevelControlClusterMoveCallback(moveMode, rate, optionMask, optionOverride); break; } - case ZCL_ON_COMMAND_ID: { - // Command is fixed length: 0 - wasHandled = emberAfOnOffClusterOnCallback(); + case ZCL_MOVE_TO_LEVEL_COMMAND_ID: { + uint32_t payloadOffset = cmd->payloadStartIndex; + uint8_t level; + uint16_t transitionTime; + uint8_t optionMask; + uint8_t optionOverride; + + level = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + transitionTime = (*(uint16_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint16_t); + + optionMask = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + optionOverride = (*(uint8_t *) (cmd->buffer + payloadOffset)); + + wasHandled = emberAfLevelControlClusterMoveToLevelCallback(level, transitionTime, optionMask, optionOverride); break; } - case ZCL_TOGGLE_COMMAND_ID: { - // Command is fixed length: 0 - wasHandled = emberAfOnOffClusterToggleCallback(); + case ZCL_MOVE_TO_LEVEL_WITH_ON_OFF_COMMAND_ID: { + uint32_t payloadOffset = cmd->payloadStartIndex; + uint8_t level; + uint16_t transitionTime; + + level = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + transitionTime = (*(uint16_t *) (cmd->buffer + payloadOffset)); + + wasHandled = emberAfLevelControlClusterMoveToLevelWithOnOffCallback(level, transitionTime); + break; + } + case ZCL_MOVE_WITH_ON_OFF_COMMAND_ID: { + uint32_t payloadOffset = cmd->payloadStartIndex; + uint8_t moveMode; + uint8_t rate; + + moveMode = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + rate = (*(uint8_t *) (cmd->buffer + payloadOffset)); + + wasHandled = emberAfLevelControlClusterMoveWithOnOffCallback(moveMode, rate); + break; + } + case ZCL_STEP_COMMAND_ID: { + uint32_t payloadOffset = cmd->payloadStartIndex; + uint8_t stepMode; + uint8_t stepSize; + uint16_t transitionTime; + uint8_t optionMask; + uint8_t optionOverride; + + stepMode = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + stepSize = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + transitionTime = (*(uint16_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint16_t); + + optionMask = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + optionOverride = (*(uint8_t *) (cmd->buffer + payloadOffset)); + + wasHandled = emberAfLevelControlClusterStepCallback(stepMode, stepSize, transitionTime, optionMask, optionOverride); + break; + } + case ZCL_STEP_WITH_ON_OFF_COMMAND_ID: { + uint32_t payloadOffset = cmd->payloadStartIndex; + uint8_t stepMode; + uint8_t stepSize; + uint16_t transitionTime; + + stepMode = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + stepSize = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + transitionTime = (*(uint16_t *) (cmd->buffer + payloadOffset)); + + wasHandled = emberAfLevelControlClusterStepWithOnOffCallback(stepMode, stepSize, transitionTime); + break; + } + case ZCL_STOP_COMMAND_ID: { + uint32_t payloadOffset = cmd->payloadStartIndex; + uint8_t optionMask; + uint8_t optionOverride; + + optionMask = (*(uint8_t *) (cmd->buffer + payloadOffset)); + payloadOffset += sizeof(uint8_t); + + optionOverride = (*(uint8_t *) (cmd->buffer + payloadOffset)); + + wasHandled = emberAfLevelControlClusterStopCallback(optionMask, optionOverride); + break; + } + case ZCL_STOP_WITH_ON_OFF_COMMAND_ID: { + wasHandled = emberAfLevelControlClusterStopWithOnOffCallback(); break; } default: { @@ -146,231 +227,24 @@ EmberAfStatus emberAfOnOffClusterServerCommandParse(EmberAfClusterCommand * cmd) } return status(wasHandled, true, cmd->mfgSpecific); } - -// Cluster: Level Control, server -EmberAfStatus emberAfLevelControlClusterServerCommandParse(EmberAfClusterCommand * cmd) +EmberAfStatus emberAfOnOffClusterServerCommandParse(EmberAfClusterCommand * cmd) { bool wasHandled = false; + if (!cmd->mfgSpecific) { switch (cmd->commandId) { - case ZCL_MOVE_TO_LEVEL_COMMAND_ID: { - uint16_t payloadOffset = cmd->payloadStartIndex; - uint8_t level; // Ver.: always - uint16_t transitionTime; // Ver.: always - uint8_t optionMask; // Ver.: since zcl6-errata-14-0129-15 - uint8_t optionOverride; // Ver.: since zcl6-errata-14-0129-15 - // Command is not a fixed length - if (cmd->bufLen < payloadOffset + 1u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - level = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - if (cmd->bufLen < payloadOffset + 2u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - transitionTime = emberAfGetInt16u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 2u; - if ((cmd->bufLen < payloadOffset + 1u)) - { - // Argument is not always present: - // - it is present only in versions higher than: zcl6-errata-14-0129-15 - optionMask = 0xFF; - } - else - { - optionMask = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - } - if ((cmd->bufLen < payloadOffset + 1u)) - { - // Argument is not always present: - // - it is present only in versions higher than: zcl6-errata-14-0129-15 - optionOverride = 0xFF; - } - else - { - optionOverride = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - } - wasHandled = emberAfLevelControlClusterMoveToLevelCallback(level, transitionTime, optionMask, optionOverride); - break; - } - case ZCL_MOVE_COMMAND_ID: { - uint16_t payloadOffset = cmd->payloadStartIndex; - uint8_t moveMode; // Ver.: always - uint8_t rate; // Ver.: always - uint8_t optionMask; // Ver.: since zcl6-errata-14-0129-15 - uint8_t optionOverride; // Ver.: since zcl6-errata-14-0129-15 - // Command is not a fixed length - if (cmd->bufLen < payloadOffset + 1u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - moveMode = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - if (cmd->bufLen < payloadOffset + 1u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - rate = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - if ((cmd->bufLen < payloadOffset + 1u)) - { - // Argument is not always present: - // - it is present only in versions higher than: zcl6-errata-14-0129-15 - optionMask = 0xFF; - } - else - { - optionMask = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - } - if ((cmd->bufLen < payloadOffset + 1u)) - { - // Argument is not always present: - // - it is present only in versions higher than: zcl6-errata-14-0129-15 - optionOverride = 0xFF; - } - else - { - optionOverride = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - } - wasHandled = emberAfLevelControlClusterMoveCallback(moveMode, rate, optionMask, optionOverride); - break; - } - case ZCL_STEP_COMMAND_ID: { - uint16_t payloadOffset = cmd->payloadStartIndex; - uint8_t stepMode; // Ver.: always - uint8_t stepSize; // Ver.: always - uint16_t transitionTime; // Ver.: always - uint8_t optionMask; // Ver.: since zcl6-errata-14-0129-15 - uint8_t optionOverride; // Ver.: since zcl6-errata-14-0129-15 - // Command is not a fixed length - if (cmd->bufLen < payloadOffset + 1u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - stepMode = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - if (cmd->bufLen < payloadOffset + 1u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - stepSize = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - if (cmd->bufLen < payloadOffset + 2u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - transitionTime = emberAfGetInt16u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 2u; - if ((cmd->bufLen < payloadOffset + 1u)) - { - // Argument is not always present: - // - it is present only in versions higher than: zcl6-errata-14-0129-15 - optionMask = 0xFF; - } - else - { - optionMask = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - } - if ((cmd->bufLen < payloadOffset + 1u)) - { - // Argument is not always present: - // - it is present only in versions higher than: zcl6-errata-14-0129-15 - optionOverride = 0xFF; - } - else - { - optionOverride = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - } - wasHandled = emberAfLevelControlClusterStepCallback(stepMode, stepSize, transitionTime, optionMask, optionOverride); - break; - } - case ZCL_STOP_COMMAND_ID: { - uint16_t payloadOffset = cmd->payloadStartIndex; - uint8_t optionMask; // Ver.: since zcl6-errata-14-0129-15 - uint8_t optionOverride; // Ver.: since zcl6-errata-14-0129-15 - // Command is not a fixed length - if ((cmd->bufLen < payloadOffset + 1u)) - { - // Argument is not always present: - // - it is present only in versions higher than: zcl6-errata-14-0129-15 - optionMask = 0xFF; - } - else - { - optionMask = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - } - if ((cmd->bufLen < payloadOffset + 1u)) - { - // Argument is not always present: - // - it is present only in versions higher than: zcl6-errata-14-0129-15 - optionOverride = 0xFF; - } - else - { - optionOverride = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - } - wasHandled = emberAfLevelControlClusterStopCallback(optionMask, optionOverride); - break; - } - case ZCL_MOVE_TO_LEVEL_WITH_ON_OFF_COMMAND_ID: { - uint16_t payloadOffset = cmd->payloadStartIndex; - uint8_t level; // Ver.: always - uint16_t transitionTime; // Ver.: always - // Command is fixed length: 3 - if (cmd->bufLen < payloadOffset + 3u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - level = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - transitionTime = emberAfGetInt16u(cmd->buffer, payloadOffset, cmd->bufLen); - wasHandled = emberAfLevelControlClusterMoveToLevelWithOnOffCallback(level, transitionTime); - break; - } - case ZCL_MOVE_WITH_ON_OFF_COMMAND_ID: { - uint16_t payloadOffset = cmd->payloadStartIndex; - uint8_t moveMode; // Ver.: always - uint8_t rate; // Ver.: always - // Command is fixed length: 2 - if (cmd->bufLen < payloadOffset + 2u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - moveMode = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - rate = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - wasHandled = emberAfLevelControlClusterMoveWithOnOffCallback(moveMode, rate); + case ZCL_OFF_COMMAND_ID: { + wasHandled = emberAfOnOffClusterOffCallback(); break; } - case ZCL_STEP_WITH_ON_OFF_COMMAND_ID: { - uint16_t payloadOffset = cmd->payloadStartIndex; - uint8_t stepMode; // Ver.: always - uint8_t stepSize; // Ver.: always - uint16_t transitionTime; // Ver.: always - // Command is fixed length: 4 - if (cmd->bufLen < payloadOffset + 4u) - { - return EMBER_ZCL_STATUS_MALFORMED_COMMAND; - } - stepMode = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - stepSize = emberAfGetInt8u(cmd->buffer, payloadOffset, cmd->bufLen); - payloadOffset += 1u; - transitionTime = emberAfGetInt16u(cmd->buffer, payloadOffset, cmd->bufLen); - wasHandled = emberAfLevelControlClusterStepWithOnOffCallback(stepMode, stepSize, transitionTime); + case ZCL_ON_COMMAND_ID: { + wasHandled = emberAfOnOffClusterOnCallback(); break; } - case ZCL_STOP_WITH_ON_OFF_COMMAND_ID: { - // Command is fixed length: 0 - wasHandled = emberAfLevelControlClusterStopWithOnOffCallback(); + case ZCL_TOGGLE_COMMAND_ID: { + wasHandled = emberAfOnOffClusterToggleCallback(); break; } default: { diff --git a/examples/lighting-app/lighting-common/gen/call-command-handler.h b/examples/lighting-app/lighting-common/gen/call-command-handler.h index 94460a9a29918c..c1b06642f07ac9 100644 --- a/examples/lighting-app/lighting-common/gen/call-command-handler.h +++ b/examples/lighting-app/lighting-common/gen/call-command-handler.h @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,23 +15,8 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_EMBER_AF_COMMAND_PARSE_HEADER -#define SILABS_EMBER_AF_COMMAND_PARSE_HEADER +// Prevent multiple inclusion +#pragma once #include "af-types.h" - -// This is a set of generated prototype for functions that parse the -// the incomming message, and call appropriate command handler. - -// Cluster: On/off, server -EmberAfStatus emberAfOnOffClusterServerCommandParse(EmberAfClusterCommand * cmd); - -// Cluster: Level Control, server -EmberAfStatus emberAfLevelControlClusterServerCommandParse(EmberAfClusterCommand * cmd); - -#endif // SILABS_EMBER_AF_COMMAND_PARSE_HEADER diff --git a/examples/lighting-app/lighting-common/gen/callback-stub.cpp b/examples/lighting-app/lighting-common/gen/callback-stub.cpp index f7bb7ea00477c6..232854b0ab82d5 100644 --- a/examples/lighting-app/lighting-common/gen/callback-stub.cpp +++ b/examples/lighting-app/lighting-common/gen/callback-stub.cpp @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,20 +15,39 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// -// This c file provides stubs for all callbacks. These stubs -// will be used in the case where user defined implementations -// of the callbacks have not been provided. -#include "af.h" -#include -//#include "hal/hal.h" -//#include EMBER_AF_API_NETWORK_STEERING +#include "callback.h" +#include "cluster-id.h" using namespace chip; +// Cluster Init Functions +void emberAfClusterInitCallback(EndpointId endpoint, ClusterId clusterId) +{ + switch (clusterId) + { + case ZCL_LEVEL_CONTROL_CLUSTER_ID: + emberAfLevelControlClusterInitCallback(endpoint); + break; + case ZCL_ON_OFF_CLUSTER_ID: + emberAfOnOffClusterInitCallback(endpoint); + break; + default: + // Unrecognized cluster ID + break; + } +} + +void __attribute__((weak)) emberAfLevelControlClusterInitCallback(EndpointId endpoint) +{ + // To prevent warning + (void) endpoint; +} + +// +// Non-Cluster Related Callbacks +// + /** @brief Add To Current App Tasks * * This function is only useful to sleepy end devices. This function will note @@ -58,6 +61,20 @@ using namespace chip; */ void emberAfAddToCurrentAppTasksCallback(EmberAfApplicationTask tasks) {} +/** @brief Remove From Current App Tasks + * + * This function is only useful to sleepy end devices. This function will + * remove the passed item from the set of tasks the application has outstanding + * (e.g. message sent requiring APS acknwoledgement). This will affect how the + * application behaves with regard to sleeping and polling. Removing the item + * from the list of outstanding tasks may allow the device to sleep longer and + * poll less frequently. If there are other outstanding tasks the system may + * still have to stay away and poll more often. + * + * @param tasks Ver.: always + */ +void emberAfRemoveFromCurrentAppTasksCallback(EmberAfApplicationTask tasks) {} + /** @brief Allow Network Write Attribute * * This function is called by the application framework before it writes an @@ -130,30 +147,6 @@ bool emberAfAttributeWriteAccessCallback(EndpointId endpoint, ClusterId clusterI return true; } -/** @brief Groups Cluster Clear Group Table - * - * This function is called by the framework when the application should clear - * the group table. - * - * @param endpoint The endpoint. Ver.: always - */ -void emberAfGroupsClusterClearGroupTableCallback(EndpointId endpoint) {} - -/** @brief Key Establishment Cluster Client Command Received - * - * This function is called by the application framework when a server-to-client - * key establishment command is received but has yet to be handled by the - * framework code. This function should return a bool value indicating whether - * the command has been handled by the application code and should not be - * further processed by the framework. - * - * @param cmd Ver.: always - */ -bool emberAfKeyEstablishmentClusterClientCommandReceivedCallback(EmberAfClusterCommand * cmd) -{ - return false; -} - /** @brief Default Response * * This function is called by the application framework when a Default Response @@ -237,29 +230,110 @@ bool emberAfDiscoverCommandsReceivedResponseCallback(ClusterId clusterId, uint16 return false; } -/** @brief Eeprom Init +/** @brief Pre Command Received + * + * This callback is the second in the Application Framework's message processing + * chain. At this point in the processing of incoming over-the-air messages, the + * application has determined that the incoming message is a ZCL command. It + * parses enough of the message to populate an EmberAfClusterCommand struct. The + * Application Framework defines this struct value in a local scope to the + * command processing but also makes it available through a global pointer + * called emberAfCurrentCommand, in app/framework/util/util.c. When command + * processing is complete, this pointer is cleared. + * + * @param cmd Ver.: always + */ +bool emberAfPreCommandReceivedCallback(EmberAfClusterCommand * cmd) +{ + return false; +} + +/** @brief Pre Message Send + * + * This function is called by the framework when it is about to pass a message + * to the stack primitives for sending. This message may or may not be ZCL, + * ZDO, or some other protocol. This is called prior to + any ZigBee + * fragmentation that may be done. If the function returns true it is assumed + * the callback has consumed and processed the message. The callback must also + * set the EmberStatus status code to be passed back to the caller. The + * framework will do no further processing on the message. + If the + * function returns false then it is assumed that the callback has not processed + * the mesasge and the framework will continue to process accordingly. + * + * @param messageStruct The structure containing the parameters of the APS + * message to be sent. Ver.: always + * @param status A pointer to the status code value that will be returned to the + * caller. Ver.: always + */ +bool emberAfPreMessageSendCallback(EmberAfMessageStruct * messageStruct, EmberStatus * status) +{ + return false; +} + +/** @brief Message Sent * - * Tells the system to initialize the EEPROM if it is not already initialized. + * This function is called by the application framework from the message sent + * handler, when it is informed by the stack regarding the message sent status. + * All of the values passed to the emberMessageSentHandler are passed on to this + * callback. This provides an opportunity for the application to verify that its + * message has been sent successfully and take the appropriate action. This + * callback should return a bool value of true or false. A value of true + * indicates that the message sent notification has been handled and should not + * be handled by the application framework. * + * @param type Ver.: always + * @param indexOrDestination Ver.: always + * @param apsFrame Ver.: always + * @param msgLen Ver.: always + * @param message Ver.: always + * @param status Ver.: always */ -void emberAfEepromInitCallback(void) {} +bool emberAfMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, EmberApsFrame * apsFrame, + uint16_t msgLen, uint8_t * message, EmberStatus status) +{ + return false; +} -/** @brief Eeprom Note Initialized State +/** @brief Pre Attribute Change * - * Records the state of the EEPROM so that an intelligent driver (like the - * EEPROM plugin) can re-initialize the driver prior to any calls to it. + * This function is called by the application framework before it changes an + * attribute value. The value passed into this callback is the value to which + * the attribute is to be set by the framework. The application should return + * ::EMBER_ZCL_STATUS_SUCCESS to permit the change or any other ::EmberAfStatus + * to reject it. * - * @param state The state of the EEPROM, false=re-initalization needed, - * true=no-re-init needed Ver.: always + * @param endpoint Ver.: always + * @param clusterId Ver.: always + * @param attributeId Ver.: always + * @param mask Ver.: always + * @param manufacturerCode Ver.: always + * @param type Ver.: always + * @param size Ver.: always + * @param value Ver.: always */ -void emberAfEepromNoteInitializedStateCallback(bool state) {} +EmberAfStatus emberAfPreAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId, AttributeId attributeId, uint8_t mask, + uint16_t manufacturerCode, uint8_t type, uint8_t size, uint8_t * value) +{ + return EMBER_ZCL_STATUS_SUCCESS; +} -/** @brief Eeprom Shutdown +/** @brief Read Attributes Response * - * Tells the system to shutdown the EEPROM if it is not already shutdown. + * This function is called by the application framework when a Read Attributes + * Response command is received from an external device. The application should + * return true if the message was processed or false if it was not. * + * @param clusterId The cluster identifier of this response. Ver.: always + * @param buffer Buffer containing the list of read attribute status records. + * Ver.: always + * @param bufLen The length in bytes of the list. Ver.: always */ -void emberAfEepromShutdownCallback(void) {} +bool emberAfReadAttributesResponseCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen) +{ + return false; +} /** @brief External Attribute Read * @@ -304,6 +378,22 @@ EmberAfStatus emberAfExternalAttributeReadCallback(EndpointId endpoint, ClusterI return EMBER_ZCL_STATUS_FAILURE; } +/** @brief Write Attributes Response + * + * This function is called by the application framework when a Write Attributes + * Response command is received from an external device. The application should + * return true if the message was processed or false if it was not. + * + * @param clusterId The cluster identifier of this response. Ver.: always + * @param buffer Buffer containing the list of write attribute status records. + * Ver.: always + * @param bufLen The length in bytes of the list. Ver.: always + */ +bool emberAfWriteAttributesResponseCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen) +{ + return false; +} + /** @brief External Attribute Write * * This function is called whenever the Application Framework needs to write an @@ -357,82 +447,20 @@ EmberAfStatus emberAfExternalAttributeWriteCallback(EndpointId endpoint, Cluster return EMBER_ZCL_STATUS_FAILURE; } -/** @brief Find Unused Pan Id And Form - * - * This function is called by the framework to search for an unused PAN id and - * form a new network. The application should return EMBER_SUCCESS if the - * operation was initiated successfully. - * - */ -EmberStatus emberAfFindUnusedPanIdAndFormCallback(void) -{ - return EMBER_LIBRARY_NOT_PRESENT; -} - -/** @brief Get Current App Tasks - * - * This function is only useful to sleepy end devices. This function will - * return the set of tasks the application has outstanding. These tasks affect - * how the application behaves with regard to sleeping and polling. - * - */ -EmberAfApplicationTask emberAfGetCurrentAppTasksCallback(void) -{ - return 0; -} - -/** @brief Get Current Poll Control - * - * This function will retrieve the current poll control that the system is using - * for the current network. This is determined by examining all the scheduled - * events and obtaining the most restrictive poll control context across all - * events. The most restrictive poll control is EMBER_AF_SHORT_POLL followed by - * EMBER_AF_LONG_POLL. - * - */ -EmberAfEventPollControl emberAfGetCurrentPollControlCallback(void) -{ - return EMBER_AF_LONG_POLL; -} - -/** @brief Get Current Poll Interval Ms - * - * This function is only useful to end devices. This function will return the - * current poll interval (in milliseconds) for the current network. This - * interval is the maximum amount of time a child is currently waiting between - * polls of its parent. - * - */ -uint32_t emberAfGetCurrentPollIntervalMsCallback(void) -{ - return 0; -} - -/** @brief Get Current Poll Interval Qs - * - * This function is only useful to end devices. This function will return the - * current poll interval (in quarter seconds) for the current network. This - * interval is the maximum amount of time a child is currently waiting between - * polls of its parent. - * - */ -uint32_t emberAfGetCurrentPollIntervalQsCallback(void) -{ - return 0; -} - -/** @brief Get Current Sleep Control +/** @brief Report Attributes * - * This function will retrieve the current sleep control that the system is - * using. This is determined by examining all the scheduled events and - * obtaining the most restrictive sleep control context across all events. The - * most restrictive sleep control is EMBER_AF_STAY_AWAKE followed by - * EMBER_AF_OK_TO_SLEEP. + * This function is called by the application framework when a Report Attributes + * command is received from an external device. The application should return + * true if the message was processed or false if it was not. * + * @param clusterId The cluster identifier of this command. Ver.: always + * @param buffer Buffer containing the list of attribute report records. Ver.: + * always + * @param bufLen The length in bytes of the list. Ver.: always */ -EmberAfEventSleepControl emberAfGetCurrentSleepControlCallback(void) +bool emberAfReportAttributesCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen) { - return EMBER_AF_OK_TO_SLEEP; + return false; } /** @brief Get Current Time @@ -444,77 +472,11 @@ EmberAfEventSleepControl emberAfGetCurrentSleepControlCallback(void) * that device does not have access to real time. * */ -uint32_t emberAfGetCurrentTimeCallback(void) +uint32_t emberAfGetCurrentTimeCallback() { return 0; } -/** @brief Get Default Poll Control - * - * This function will retrieve the default poll control for the current network - * as previously set by emberAfSetDefaultPollControlCallback(). The default - * poll control will limit whether the network can long poll. - * - */ -EmberAfEventPollControl emberAfGetDefaultPollControlCallback(void) -{ - return EMBER_AF_LONG_POLL; -} - -/** @brief Get Default Sleep Control - * - * This function will retrieve the default sleep control the system is using as - * previously set by emberAfSetDefaultSleepControlCallback(). The default sleep - * control will limit whether the device can sleep. - * - */ -EmberAfEventSleepControl emberAfGetDefaultSleepControlCallback(void) -{ - return EMBER_AF_OK_TO_SLEEP; -} - -/** @brief Get Endpoint By Index - * - * Get the endpoint number based on the passed index. By default the framework - * handles this by managing endpoints based on the precompiled configuration - * defined in AppBuilder. This callback can override this behavior at runtime - * and provide additional endpoints or different data than the compiled values. - * If the index is overridden than the callback shall return true and set the - * endpointReturn parameter accordingly. A value of 0xFF means the endpoint - * doesn't exist at that index. - Otherwise false must be returned by the - * callback and the default framework behavior will be executed. This is only - * applicable to the SOC devices. - * - * @param index The index of the endpoint. Ver.: always - * @param endpointReturn The value of endpoint. Ver.: always - */ -bool emberAfGetEndpointByIndexCallback(uint8_t index, uint8_t * endpointReturn) -{ - return false; -} - -/** @brief Get Endpoint Description - * - * This callback is called by the framework whenever it receives a ZDO request - * to enumerate the details about an endpoint. By default the framework - * provides the information based on the precompiled endpoint information as - * defined in AppBuilder. This callback can override that behavior at runtime - * and return different information. If the endpoint information is being - * overridden then the callback must return true. Otherwise it should return - * false, which allows the framework to perform its default behavior. This is - * only applicable to SOC devices. - * - * @param endpoint The endpoint number that is being queried. Ver.: always - * @param result This is a pointer to a data structure where the endpoint - * information is written if the callback is providing the information. Ver.: - * always - */ -bool emberAfGetEndpointDescriptionCallback(EndpointId endpoint, EmberEndpointDescription * result) -{ - return false; -} - /** @brief Get Endpoint Info * * This function is a callback to an application implemented endpoint that @@ -538,240 +500,30 @@ bool emberAfGetEndpointInfoCallback(EndpointId endpoint, uint8_t * returnNetwork return false; } -/** @brief Get Form And Join Extended Pan Id - * - * This callback is called by the framework to get the extended PAN ID used by - * the current network for forming and joining. The extended PAN ID used for - * forming and joining is not necessarily the same extended PAN ID actually in - * use on the network. - * - * @param resultLocation Ver.: always - */ -void emberAfGetFormAndJoinExtendedPanIdCallback(uint8_t * resultLocation) {} - -/** @brief Get Long Poll Interval Ms +/** @brief Get Source Route Overhead * - * This function is only useful to end devices. This function will return the - * long poll interval (in milliseconds) for the current network. This interval - * is the maximum amount of time a child will wait between polls of its parent - * when it is not expecting data. + * This function is called by the framework to determine the overhead required + * in the network frame for source routing to a particular destination. * + * @param destination The node id of the destination Ver.: always */ -uint32_t emberAfGetLongPollIntervalMsCallback(void) +uint8_t emberAfGetSourceRouteOverheadCallback(EmberNodeId destination) { return 0; } -/** @brief Get Long Poll Interval Qs +/** @brief Registration Abort * - * This function is only useful to end devices. This function will return the - * long poll interval (in quarter seconds) for the current network. This - * interval is the maximum amount of time a child will wait between polls of its - * parent when it is not expecting data. + * This callback is called when the device should abort the registration + * process. * */ -uint32_t emberAfGetLongPollIntervalQsCallback(void) -{ - return 0; -} +void emberAfRegistrationAbortCallback() {} -/** @brief Get Short Poll Interval Ms +/** @brief Interpan Send Message * - * This function is only useful to sleepy end devices. This function will - * return the short poll interval (in milliseconds) for the current network. - * This interval is the maximum amount of time a child will wait between polls - * of its parent when it is expecting data. - * - */ -uint16_t emberAfGetShortPollIntervalMsCallback(void) -{ - return 0; -} - -/** @brief Get Short Poll Interval Qs - * - * This function is only useful to sleepy end devices. This function will - * return the short poll interval (in quarter seconds) for the current network. - * This interval is the maximum amount of time a child will wait between polls - * of its parent when it is expecting data. - * - */ -uint16_t emberAfGetShortPollIntervalQsCallback(void) -{ - return 0; -} - -/** @brief Get Source Route Overhead - * - * This function is called by the framework to determine the overhead required - * in the network frame for source routing to a particular destination. - * - * @param destination The node id of the destination Ver.: always - */ -uint8_t emberAfGetSourceRouteOverheadCallback(EmberNodeId destination) -{ - return 0; -} - -/** @brief Get Wake Timeout Bitmask - * - * This function is only useful to sleepy end devices. This function will - * return the wake timeout bitmask for the current network. The bitmask - * determines which tasks will timeout automatically and which tasks require - * manual removal from the task list. - * - */ -EmberAfApplicationTask emberAfGetWakeTimeoutBitmaskCallback(void) -{ - return 0; -} - -/** @brief Get Wake Timeout Ms - * - * This function is only useful to sleepy end devices. This function will - * return the wake timeout (in milliseconds) for the current network. This - * timeout is the maximum amount of time a child will wait for a task in the - * wake bitmask to finish. While waiting, the device will short poll. - * - */ -uint16_t emberAfGetWakeTimeoutMsCallback(void) -{ - return 0; -} - -/** @brief Get Wake Timeout Qs - * - * This function is only useful to sleepy end devices. This function will - * return the wake timeout (in quarter seconds) for the current network. This - * timeout is the maximum amount of time a child will wait for a task in the - * wake bitmask to finish. While waiting, the device will short poll. - * - */ -uint16_t emberAfGetWakeTimeoutQsCallback(void) -{ - return 0; -} - -/** @brief Hal Button Isr - * - * This callback is called by the framework whenever a button is pressed on the - * device. This callback is called within ISR context. - * - * @param button The button which has changed state, either BUTTON0 or BUTTON1 - * as defined in the appropriate BOARD_HEADER. Ver.: always - * @param state The new state of the button referenced by the button parameter, - * either ::BUTTON_PRESSED if the button has been pressed or ::BUTTON_RELEASED - * if the button has been released. Ver.: always - */ -void emberAfHalButtonIsrCallback(uint8_t button, uint8_t state) {} - -/** @brief Incoming Packet Filter - * - * ** REQUIRES INCLUDING THE PACKET-HANDOFF PLUGIN ** - - This is called by - * the Packet Handoff plugin when the stack receives a packet from one of the - * protocol layers specified in ::EmberZigbeePacketType. - - The packetType - * argument is one of the values of the ::EmberZigbeePacketType enum. If the - * stack receives an 802.15.4 MAC beacon, it will call this function with the - * packetType argument set to ::EMBER_ZIGBEE_PACKET_TYPE_BEACON. - - The - * implementation of this callback may alter the data contained in packetData, - * modify options and flags in the auxillary data, or consume the packet itself, - * either sending the message, or discarding it as it sees fit. - * - * @param packetType the type of packet and associated protocol layer Ver.: - * always - * @param packetData flat buffer containing the packet data associated with the - * packet type Ver.: always - * @param size_p a pointer containing the size value of the packet Ver.: always - * @param data auxillary data included with the packet Ver.: always - */ -EmberPacketAction emberAfIncomingPacketFilterCallback(EmberZigbeePacketType packetType, uint8_t * packetData, uint8_t * size_p, - void * data) -{ - return EMBER_ACCEPT_PACKET; -} - -/** @brief Initiate Inter Pan Key Establishment - * - * This function is called by the framework to initiate key establishment with a - * remote device on a different PAN. The application should return - * EMBER_SUCCESS if key establishment was initiated successfully. The - * application should call ::emberAfInterPanKeyEstablishmentCallback as events - * occur. - * - * @param panId The PAN id of the remote device. Ver.: always - * @param eui64 The EUI64 of the remote device. Ver.: always - */ -EmberStatus emberAfInitiateInterPanKeyEstablishmentCallback(EmberPanId panId, const EmberEUI64 eui64) -{ - return EMBER_LIBRARY_NOT_PRESENT; -} - -/** @brief Initiate Key Establishment - * - * This function is called by the framework to initiate key establishment with a - * remote device. The application should return EMBER_SUCCESS if key - * establishment was initiated successfully. The application should call - * ::emberAfKeyEstablishmentCallback as events occur. - * - * @param nodeId The node id of the remote device. Ver.: always - * @param endpoint The endpoint on the remote device. Ver.: always - */ -EmberStatus emberAfInitiateKeyEstablishmentCallback(EmberNodeId nodeId, EndpointId endpoint) -{ - return EMBER_LIBRARY_NOT_PRESENT; -} - -/** @brief Initiate Partner Link Key Exchange - * - * This function is called by the framework to initiate a partner link key - * exchange with a remote device. The application should return EMBER_SUCCESS - * if the partner link key exchange was initiated successfully. When the - * partner link key exchange completes, the application should call the given - * callback. - * - * @param target The node id of the remote device. Ver.: always - * @param endpoint The key establishment endpoint of the remote device. Ver.: - * always - * @param callback The callback that should be called when the partner link key - * exchange completse. Ver.: always - */ -EmberStatus emberAfInitiatePartnerLinkKeyExchangeCallback(EmberNodeId target, uint8_t endpoint, - EmberAfPartnerLinkKeyExchangeCallback * callback) -{ - return EMBER_LIBRARY_NOT_PRESENT; -} - -/** @brief Inter Pan Key Establishment - * - * A callback by the key-establishment code to indicate an event has occurred. - * For error codes this is purely a notification. For non-error status codes - * (besides LINK_KEY_ESTABLISHED), it is the application's chance to allow or - * disallow the operation. If the application returns true then the key - * establishment is allowed to proceed. If it returns false, then key - * establishment is aborted. LINK_KEY_ESTABLISHED is a notification of success. - * - * @param status Ver.: always - * @param amInitiator Ver.: always - * @param panId Ver.: always - * @param eui64 Ver.: always - * @param delayInSeconds Ver.: always - */ -bool emberAfInterPanKeyEstablishmentCallback(EmberAfKeyEstablishmentNotifyMessage status, bool amInitiator, EmberPanId panId, - const EmberEUI64 eui64, uint8_t delayInSeconds) -{ - return true; -} - -/** @brief Interpan Send Message - * - * This function will send a raw MAC message with interpan frame format using - * the passed parameters. + * This function will send a raw MAC message with interpan frame format using + * the passed parameters. * * @param header Interpan header info Ver.: always * @param messageLength The length of the message received or to send Ver.: @@ -783,784 +535,13 @@ EmberStatus emberAfInterpanSendMessageCallback(EmberAfInterpanHeader * header, u return EMBER_LIBRARY_NOT_PRESENT; } -/** @brief Key Establishment - * - * A callback by the key-establishment code to indicate an event has occurred. - * For error codes this is purely a notification. For non-error status codes - * (besides LINK_KEY_ESTABLISHED), it is the application's chance to allow or - * disallow the operation. If the application returns true then the key - * establishment is allowed to proceed. If it returns false, then key - * establishment is aborted. LINK_KEY_ESTABLISHED is a notification of success. - * - * @param status Ver.: always - * @param amInitiator Ver.: always - * @param partnerShortId Ver.: always - * @param delayInSeconds Ver.: always - */ -bool emberAfKeyEstablishmentCallback(EmberAfKeyEstablishmentNotifyMessage status, bool amInitiator, EmberNodeId partnerShortId, - uint8_t delayInSeconds) -{ - return true; -} - -/** @brief Main Init - * - * This function is called from the application's main function. It gives the - * application a chance to do any initialization required at system startup. Any - * code that you would normally put into the top of the application's main() - * routine should be put into this function. This is called before the clusters, - * plugins, and the network are initialized so some functionality is not yet - * available. - Note: No callback in the Application Framework is - * associated with resource cleanup. If you are implementing your application on - * a Unix host where resource cleanup is a consideration, we expect that you - * will use the standard Posix system calls, including the use of atexit() and - * handlers for signals such as SIGTERM, SIGINT, SIGCHLD, SIGPIPE and so on. If - * you use the signal() function to register your signal handler, please mind - * the returned value which may be an Application Framework function. If the - * return value is non-null, please make sure that you call the returned - * function from your handler to avoid negating the resource cleanup of the - * Application Framework itself. - * - */ -void emberAfMainInitCallback(void) {} - -/** @brief Main Start - * - * This function is called at the start of main after the HAL has been - * initialized. The standard main function arguments of argc and argv are - * passed in. However not all platforms have support for main() function - * arguments. Those that do not are passed NULL for argv, therefore argv should - * be checked for NULL before using it. If the callback determines that the - * program must exit, it should return true. The value returned by main() will - * be the value written to the returnCode pointer. Otherwise the callback - * should return false to let normal execution continue. - * - * @param returnCode Ver.: always - * @param argc Ver.: always - * @param argv Ver.: always - */ -bool emberAfMainStartCallback(int * returnCode, int argc, char ** argv) -{ - // NOTE: argc and argv may not be supported on all platforms, so argv MUST be - // checked for NULL before referencing it. On those platforms without argc - // and argv "0" and "NULL" are passed respectively. - - return false; // exit? -} - -/** @brief Main Tick - * - * Whenever main application tick is called, this callback will be called at the - * end of the main tick execution. - * - */ -void emberAfMainTickCallback(void) {} - -/** @brief Mark Buffers - * - * This function is called when the garbage collector runs. Any buffers held by - * the application must be marked. - * - */ -void emberAfMarkBuffersCallback(void) -{ - // emMarkBuffer(&bufferUsed); -} - -/** @brief Message Sent - * - * This function is called by the application framework from the message sent - * handler, when it is informed by the stack regarding the message sent status. - * All of the values passed to the emberMessageSentHandler are passed on to this - * callback. This provides an opportunity for the application to verify that its - * message has been sent successfully and take the appropriate action. This - * callback should return a bool value of true or false. A value of true - * indicates that the message sent notification has been handled and should not - * be handled by the application framework. - * - * @param type Ver.: always - * @param indexOrDestination Ver.: always - * @param apsFrame Ver.: always - * @param msgLen Ver.: always - * @param message Ver.: always - * @param status Ver.: always - */ -bool emberAfMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status) -{ - return false; -} - -/** @brief Ncp Init - * - * This function is called when the network coprocessor is being initialized, - * either at startup or upon reset. It provides applications on opportunity to - * perform additional configuration of the NCP. The function is always called - * twice when the NCP is initialized. In the first invocation, memoryAllocation - * will be true and the application should only issue EZSP commands that affect - * memory allocation on the NCP. For example, tables on the NCP can be resized - * in the first call. In the second invocation, memoryAllocation will be false - * and the application should only issue EZSP commands that do not affect memory - * allocation. For example, tables on the NCP can be populated in the second - * call. This callback is not called on SoCs. - * - * @param memoryAllocation Ver.: always - */ -void emberAfNcpInitCallback(bool memoryAllocation) {} - -/** @brief Ncp Is Awake Isr - * - * This function is called IN ISR CONTEXT. It notes that the NCP is awake after - * sleeping. Care should be taken to do minimal processing in this ISR handler - * function. - * - */ -void emberAfNcpIsAwakeIsrCallback(void) {} - -/** @brief Network Key Update Complete - * - * This is called by the framework when a network key update operation started - * by the trust center is complete. - * - * @param status Ver.: always - */ -void emberAfNetworkKeyUpdateCompleteCallback(EmberStatus status) {} - -/** @brief Outgoing Packet Filter - * - * ** REQUIRES INCLUDING THE PACKET-HANDOFF PLUGIN ** - - This is called by - * the Packet Handoff plugin when the stack prepares to send a packet from one - * of the protocol layers specified in ::EmberZigbeePacketType. - - The - * packetType argument is one of the values of the ::EmberZigbeePacketType enum. - * If the stack receives an 802.15.4 MAC beacon, it will call this function with - * the packetType argument set to ::EMBER_ZIGBEE_PACKET_TYPE_BEACON. - - - * The implementation of this callback may alter the data contained in - * packetData, modify options and flags in the auxillary data, or consume the - * packet itself, either sending the message, or discarding it as it sees fit. - * - * @param packetType the type of packet and associated protocol layer Ver.: - * always - * @param packetData flat buffer containing the packet data associated with the - * packet type Ver.: always - * @param size_p a pointer containing the size value of the packet Ver.: always - * @param data auxillary data included with the packet Ver.: always - */ -EmberPacketAction emberAfOutgoingPacketFilterCallback(EmberZigbeePacketType packetType, uint8_t * packetData, uint8_t * size_p, - void * data) -{ - return EMBER_ACCEPT_PACKET; -} - -/** @brief Partner Link Key Exchange Request - * - * This function is called by the framework on SOC platforms when a remote node - * requests a partner link key exchange. The application should return - * EMBER_SUCCESS to accept the request or any other status to reject it. On - * network coprocessor platforms, this function will not be called because the - * NCP handles partner link key exchange requests based on the binding policy. - * - * @param partner The EUI of the remote node. Ver.: always - */ -EmberZdoStatus emberAfPartnerLinkKeyExchangeRequestCallback(EmberEUI64 partner) -{ - return EMBER_ZDP_NOT_SUPPORTED; -} - -/** @brief Partner Link Key Exchange Response - * - * This function is called by the framework when a remote node requests a - * partner link key exchange. The application should return true to accept the - * request or false to reject it. On network coprocessor platforms, this - * function will not be called because the NCP handles partner link key exchange - * requests based on the binding policy. - * - * @param sender The EUI of the remote node. Ver.: always - * @param status The ZDO response status. Ver.: always - */ -void emberAfPartnerLinkKeyExchangeResponseCallback(EmberNodeId sender, EmberZdoStatus status) {} - -/** @brief Performing Key Establishment - * - * This function is called by the framework to determine if the device is - * performing key establishment. The application should return true if key - * establishment is in progress. - * - */ -bool emberAfPerformingKeyEstablishmentCallback(void) -{ - return false; -} - -/** @brief Get Distributed Key - * - * This callback is fired when the Network Steering plugin needs to set the distributed - * key. The application set the distributed key from Zigbee Alliance thru this callback - * or the network steering will use the default test key. - * - * @param pointer to the distributed key struct - * @return true if the key is loaded successfully, otherwise false. - * level. Ver.: always - */ -bool emberAfPluginNetworkSteeringGetDistributedKeyCallback(EmberKeyData * key) -{ - return false; -} - -/** @brief Get Power For Radio Channel - * - * This callback is fired when the Network Steering plugin needs to set the - * power level. The application has the ability to change the max power level - * used for this particular channel. - * - * @param channel The channel that the plugin is inquiring about the power - * level. Ver.: always - */ -int8_t emberAfPluginNetworkSteeringGetPowerForRadioChannelCallback(uint8_t channel) -{ - return emberAfMaxPowerLevel(); -} - -// Ifdef out the attribute change callback, since we implement it in -// DataModelHandler -#if 0 -/** @brief Post Attribute Change - * - * This function is called by the application framework after it changes an - * attribute value. The value passed into this callback is the value to which - * the attribute was set by the framework. - * - * @param endpoint Ver.: always - * @param clusterId Ver.: always - * @param attributeId Ver.: always - * @param mask Ver.: always - * @param manufacturerCode Ver.: always - * @param type Ver.: always - * @param size Ver.: always - * @param value Ver.: always - */ -void emberAfPostAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId, AttributeId attributeId, uint8_t mask, - uint16_t manufacturerCode, uint8_t type, uint8_t size, uint8_t * value) -{} -#endif - -/** @brief Post Em4 Reset - * - * A callback called by application framework, and implemented by em4 plugin - * - */ -void emberAfPostEm4ResetCallback(void) -{ - return; -} - -/** @brief Pre Attribute Change - * - * This function is called by the application framework before it changes an - * attribute value. The value passed into this callback is the value to which - * the attribute is to be set by the framework. The application should return - * ::EMBER_ZCL_STATUS_SUCCESS to permit the change or any other ::EmberAfStatus - * to reject it. - * - * @param endpoint Ver.: always - * @param clusterId Ver.: always - * @param attributeId Ver.: always - * @param mask Ver.: always - * @param manufacturerCode Ver.: always - * @param type Ver.: always - * @param size Ver.: always - * @param value Ver.: always - */ -EmberAfStatus emberAfPreAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId, AttributeId attributeId, uint8_t mask, - uint16_t manufacturerCode, uint8_t type, uint8_t size, uint8_t * value) -{ - return EMBER_ZCL_STATUS_SUCCESS; -} - -/** @brief Pre Cli Send - * - * This function is called by the framework when it is about to pass a message - * constructed over CLI to the stack primitives for sending. If the function - * returns true it is assumed that the callback has consumed and processed the - * message. The framework will not do any further processing on the message. - - * If the function returns false then it is assumed that the callback has - * not processed the message and the framework will continue to process - * accordingly. - * - * @param apsFrame The structure containing the APS frame Ver.: always - * @param source Source Node Id Ver.: always - * @param destination Destintion Node Id Ver.: always - * @param message Pointer to the message payload Ver.: always - * @param messageLength Length of the message payload Ver.: always - */ -bool emberAfPreCliSendCallback(EmberApsFrame * apsFrame, EmberNodeId source, EmberNodeId destination, uint8_t * message, - uint16_t messageLength) -{ - return false; -} - -/** @brief Pre Command Received - * - * This callback is the second in the Application Framework's message processing - * chain. At this point in the processing of incoming over-the-air messages, the - * application has determined that the incoming message is a ZCL command. It - * parses enough of the message to populate an EmberAfClusterCommand struct. The - * Application Framework defines this struct value in a local scope to the - * command processing but also makes it available through a global pointer - * called emberAfCurrentCommand, in app/framework/util/util.c. When command - * processing is complete, this pointer is cleared. - * - * @param cmd Ver.: always - */ -bool emberAfPreCommandReceivedCallback(EmberAfClusterCommand * cmd) -{ - return false; -} - -/** @brief Pre Message Received - * - * This callback is the first in the Application Framework's message processing - * chain. The Application Framework calls it when a message has been received - * over the air but has not yet been parsed by the ZCL command-handling code. If - * you wish to parse some messages that are completely outside the ZCL - * specification or are not handled by the Application Framework's command - * handling code, you should intercept them for parsing in this callback. - - * This callback returns a Boolean value indicating whether or not the message - * has been handled. If the callback returns a value of true, then the - * Application Framework assumes that the message has been handled and it does - * nothing else with it. If the callback returns a value of false, then the - * application framework continues to process the message as it would with any - * incoming message. - Note: This callback receives a pointer to an - * incoming message struct. This struct allows the application framework to - * provide a unified interface between both Host devices, which receive their - * message through the ezspIncomingMessageHandler, and SoC devices, which - * receive their message through emberIncomingMessageHandler. - * - * @param incomingMessage Ver.: always - */ -bool emberAfPreMessageReceivedCallback(EmberAfIncomingMessage * incomingMessage) -{ - return false; -} - -/** @brief Pre Message Send - * - * This function is called by the framework when it is about to pass a message - * to the stack primitives for sending. This message may or may not be ZCL, - * ZDO, or some other protocol. This is called prior to - any ZigBee - * fragmentation that may be done. If the function returns true it is assumed - * the callback has consumed and processed the message. The callback must also - * set the EmberStatus status code to be passed back to the caller. The - * framework will do no further processing on the message. - If the - * function returns false then it is assumed that the callback has not processed - * the mesasge and the framework will continue to process accordingly. - * - * @param messageStruct The structure containing the parameters of the APS - * message to be sent. Ver.: always - * @param status A pointer to the status code value that will be returned to the - * caller. Ver.: always - */ -bool emberAfPreMessageSendCallback(EmberAfMessageStruct * messageStruct, EmberStatus * status) -{ - return false; -} - -/** @brief Pre Ncp Reset - * - * This function will be called prior to the reset of the NCP by the host. - * - */ -void emberAfPreNcpResetCallback(void) {} - -/** @brief Pre ZDO Message Received - * - * This function passes the application an incoming ZDO message and gives the - * appictation the opportunity to handle it. By default, this callback returns - * false indicating that the incoming ZDO message has not been handled and - * should be handled by the Application Framework. - * - * @param emberNodeId Ver.: always - * @param apsFrame Ver.: always - * @param message Ver.: always - * @param length Ver.: always - */ -bool emberAfPreZDOMessageReceivedCallback(EmberNodeId emberNodeId, EmberApsFrame * apsFrame, uint8_t * message, uint16_t length) -{ - return false; -} - -/** @brief Read Attributes Response - * - * This function is called by the application framework when a Read Attributes - * Response command is received from an external device. The application should - * return true if the message was processed or false if it was not. - * - * @param clusterId The cluster identifier of this response. Ver.: always - * @param buffer Buffer containing the list of read attribute status records. - * Ver.: always - * @param bufLen The length in bytes of the list. Ver.: always - */ -bool emberAfReadAttributesResponseCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen) -{ - return false; -} - -/** @brief Registration Abort - * - * This callback is called when the device should abort the registration - * process. - * - */ -void emberAfRegistrationAbortCallback(void) {} - -/** @brief Registration - * - * This callback is called when the device joins a network and the process of - * registration is complete. This callback provides a success value of true if - * the registration process was successful and a value of false if registration - * failed. - * - * @param success true if registration succeeded, false otherwise. Ver.: always - */ -void emberAfRegistrationCallback(bool success) {} - -/** @brief Registration Start - * - * This callback is called when the device joins a network and the registration - * process should begin. The application should return EMBER_SUCCESS if the - * registration process started successfully. When registration is complete, - * the application should call emberAfRegistrationCallback with an indication of - * success or failure. - * - */ -EmberStatus emberAfRegistrationStartCallback(void) -{ - return EMBER_LIBRARY_NOT_PRESENT; -} - -/** @brief Remote Delete Binding Permission - * - * This function is called by the framework to request permission to service the - * remote delete binding request. Return EMBER_SUCCESS to allow request, - * anything else to disallow request. - * - * @param index index to an Ember binding table entry Ver.: always - */ -EmberStatus emberAfRemoteDeleteBindingPermissionCallback(uint8_t index) -{ - return EMBER_SUCCESS; // default -} - -/** @brief Remote Set Binding Permission - * - * This function is called by the framework to request permission to service the - * remote set binding request. Return EMBER_SUCCESS to allow request, anything - * else to disallow request. - * - * @param entry Ember Binding Tablet Entry Ver.: always - */ -EmberStatus emberAfRemoteSetBindingPermissionCallback(const EmberBindingTableEntry * entry) -{ - return EMBER_SUCCESS; // default -} - -/** @brief Remove From Current App Tasks - * - * This function is only useful to sleepy end devices. This function will - * remove the passed item from the set of tasks the application has outstanding - * (e.g. message sent requiring APS acknwoledgement). This will affect how the - * application behaves with regard to sleeping and polling. Removing the item - * from the list of outstanding tasks may allow the device to sleep longer and - * poll less frequently. If there are other outstanding tasks the system may - * still have to stay away and poll more often. - * - * @param tasks Ver.: always - */ -void emberAfRemoveFromCurrentAppTasksCallback(EmberAfApplicationTask tasks) {} - -/** @brief Report Attributes - * - * This function is called by the application framework when a Report Attributes - * command is received from an external device. The application should return - * true if the message was processed or false if it was not. - * - * @param clusterId The cluster identifier of this command. Ver.: always - * @param buffer Buffer containing the list of attribute report records. Ver.: - * always - * @param bufLen The length in bytes of the list. Ver.: always - */ -bool emberAfReportAttributesCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen) -{ - return false; -} - -/** @brief Scan Error - * - * This is called by the framework on behalf of the form-and-join library to - * notify the application if an error occurs while scanning. See form-and-join - * documentation for more information. - * - * @param status The status of the scan. Ver.: always - */ -void emberAfScanErrorCallback(EmberStatus status) {} - -/** @brief Key Establishment Cluster Server Command Received - * - * This function is called by the application framework when a client-to-server - * key establishment command is received but has yet to be handled by the - * framework code. This function should return a bool value indicating whether - * the command has been handled by the application code and should not be - * further processed by the framework. - * - * @param cmd Ver.: always - */ -bool emberAfKeyEstablishmentClusterServerCommandReceivedCallback(EmberAfClusterCommand * cmd) -{ - return false; -} - -/** @brief Set Default Poll Control - * - * This function will set the default poll control for the current network to - * control whether or not it can long poll. - * - * @param control Ver.: always - */ -void emberAfSetDefaultPollControlCallback(EmberAfEventPollControl control) {} - -/** @brief Set Default Sleep Control - * - * This function will set the default behavior of a sleeping device to control - * whether or not it must stay awake. A device that stays awake does not sleep - * at all. Otherwise, the device can sleep between events when appropriate. - * - * @param control Ver.: always - */ -void emberAfSetDefaultSleepControlCallback(EmberAfEventSleepControl control) {} - -/** @brief Set Form And Join Extended Pan Id - * - * This callback is called by the framework to set the extended PAN ID used by - * the current network for forming and joining. The extended PAN ID used for - * forming and joining is not necessarily the same extended PAN ID actually in - * use on the network. - * - * @param extendedPanId Ver.: always - */ -void emberAfSetFormAndJoinExtendedPanIdCallback(const uint8_t * extendedPanId) {} - -/** @brief Set Long Poll Interval Ms - * - * This function is only useful to end devices. This function will set the long - * poll interval (in milliseconds) for the current network. This interval is - * the maximum amount of time a child will wait between polls of its parent when - * it is not expecting data. - * - * @param longPollIntervalMs Ver.: always - */ -void emberAfSetLongPollIntervalMsCallback(uint32_t longPollIntervalMs) {} - -/** @brief Set Long Poll Interval Qs - * - * This function is only useful to end devices. This function will set the long - * poll interval (in quarter seconds) for the current network. This interval is - * the maximum amount of time a child will wait between polls of its parent when - * it is not expecting data. - * - * @param longPollIntervalQs Ver.: always - */ -void emberAfSetLongPollIntervalQsCallback(uint32_t longPollIntervalQs) {} - -/** @brief Set Short Poll Interval Ms - * - * This function is only useful to sleepy end devices. This function will set - * the short poll interval (in milliseconds) for the current network. This - * interval is the maximum amount of time a child will wait between polls of its - * parent when it is expecting data. - * - * @param shortPollIntervalMs Ver.: always - */ -void emberAfSetShortPollIntervalMsCallback(uint16_t shortPollIntervalMs) {} - -/** @brief Set Short Poll Interval Qs - * - * This function is only useful to sleepy end devices. This function will set - * the short poll interval (in quarter seconds) for the current network. This - * interval is the maximum amount of time a child will wait between polls of its - * parent when it is expecting data. - * - * @param shortPollIntervalQs Ver.: always - */ -void emberAfSetShortPollIntervalQsCallback(uint16_t shortPollIntervalQs) {} - -/** @brief Set Source Route Overhead - * - * This function is called by the framework when it has information about the - * source route overhead to a particular destination. The application may use - * this information to cache the source route overhead. - * - * @param destination The node id of the destination Ver.: always - * @param overhead The overhead in bytes Ver.: always - */ -void emberAfSetSourceRouteOverheadCallback(EmberNodeId destination, uint8_t overhead) {} - -/** @brief Set Time - * - * This callback should be implemented, if the device has access to real time - * clock, and has an ability to update that clock. The application framework - * expects to be passed the utcTime which is the number of seconds since the - * year 2000. Default implementation does nothing. Note: This function used to - * take time in year, month, day, hour, min, sec. We have changed this to - * utcTime in order to conserve code space. - * - * @param utcTime Ver.: always - */ -void emberAfSetTimeCallback(uint32_t utcTime) {} - -/** @brief Set Wake Timeout Bitmask - * - * This function is only useful to sleepy end devices. This function will set - * the wake timeout bitmask for the current network. The bitmask determines - * which tasks will timeout automatically and which tasks require manual removal - * from the task list. - * - * @param tasks Ver.: always - */ -void emberAfSetWakeTimeoutBitmaskCallback(EmberAfApplicationTask tasks) {} - -/** @brief Set Wake Timeout Ms - * - * This function is only useful to sleepy end devices. This function will set - * the wake timeout (in milliseconds) for the current network. This timeout is - * the maximum amount of time a child will wait for a task in the wake bitmask - * to finish. While waiting, the device will short poll. - * - * @param wakeTimeoutMs Ver.: always - */ -void emberAfSetWakeTimeoutMsCallback(uint16_t wakeTimeoutMs) {} - -/** @brief Set Wake Timeout Qs - * - * This function is only useful to sleepy end devices. This function will set - * the wake timeout (in quarter seconds) for the current network. This timeout - * is the maximum amount of time a child will wait for a task in the wake - * bitmask to finish. While waiting, the device will short poll. - * - * @param wakeTimeoutQs Ver.: always - */ -void emberAfSetWakeTimeoutQsCallback(uint16_t wakeTimeoutQs) {} - /** @brief Start Move * * This function is called to initiate the process for a device to move (rejoin) * to a new parent. * */ -bool emberAfStartMoveCallback(void) -{ - return false; -} - -/** @brief Start Search For Joinable Network - * - * This function is called by the framework to search for joinable networks and - * join a network. The application should return EMBER_SUCCESS if the operation - * was initiated successfully. - * - */ -EmberStatus emberAfStartSearchForJoinableNetworkCallback(void) -{ - return EMBER_LIBRARY_NOT_PRESENT; -} - -/** @brief Stop Move - * - * This function is called to cancel a previously scheduled move (rejoin) to a - * new parent. - * - */ -void emberAfStopMoveCallback(void) {} - -/** @brief Trust Center Keepalive Update - * - * This callback is called when the device finishes registration (successfully - * or otherwise) and the trust center keepalive process must be updated. If the - * keepalive process has not been started, then it is started. Otherwise if the - * keepalive is in the process of searching for the TC, it will process the - * result of that Trust Center search operation. - * - * @param registrationComplete Ver.: always - */ -void emberAfTrustCenterKeepaliveUpdateCallback(bool registrationComplete) {} - -/** @brief Unused Pan Id Found - * - * This is called by the framework on behalf of the form-and-join library to - * notify the application of the PAN id and channel found following a call to - * ::emberScanForUnusedPanId(). See form-and-join documentation for more - * information. - * - * @param panId Ver.: always - * @param channel Ver.: always - */ -void emberAfUnusedPanIdFoundCallback(EmberPanId panId, uint8_t channel) {} - -/** @brief Write Attributes Response - * - * This function is called by the application framework when a Write Attributes - * Response command is received from an external device. The application should - * return true if the message was processed or false if it was not. - * - * @param clusterId The cluster identifier of this response. Ver.: always - * @param buffer Buffer containing the list of write attribute status records. - * Ver.: always - * @param bufLen The length in bytes of the list. Ver.: always - */ -bool emberAfWriteAttributesResponseCallback(ClusterId clusterId, uint8_t * buffer, uint16_t bufLen) +bool emberAfStartMoveCallback() { return false; } - -/** @brief Zigbee Key Establishment - * - * A callback to the application to notify it of the status of the request for a - * Link Key. - * - * @param partner partner The IEEE address of the partner device. Or all zeros - * if the Key establishment failed. Ver.: always - * @param status The status of the key establishment. Ver.: always - */ -void emberAfZigbeeKeyEstablishmentCallback(EmberEUI64 partner, EmberKeyStatus status) {} - -/** - * @brief Called whenever the radio is powered off. - */ -void halRadioPowerDownHandler(void) {} - -/** - * @brief Called whenever the radio is powered on. - */ -void halRadioPowerUpHandler(void) {} - -/** - * @brief Called whenever the microcontroller enters/exits a idle/sleep mode - * - * @param enter True if entering idle/sleep, False if exiting - * @param sleepMode Idle/sleep mode - */ -void halSleepCallback(bool enter, SleepModes sleepMode) {} - -void emberAfPluginUpdateTcLinkKeyZigbeeKeyEstablishmentCallback(EmberEUI64 partner, EmberKeyStatus status) {} - -void emberAfPluginNetworkSteeringMarker(void) {} diff --git a/examples/lighting-app/lighting-common/gen/callback.h b/examples/lighting-app/lighting-common/gen/callback.h index 4390edae5eaff4..3172c588538880 100644 --- a/examples/lighting-app/lighting-common/gen/callback.h +++ b/examples/lighting-app/lighting-common/gen/callback.h @@ -1,4 +1,5 @@ -/** + +/* * * Copyright (c) 2020 Project CHIP Authors * @@ -15,43 +16,278 @@ * limitations under the License. */ -/** +// Prevent multiple inclusion +#pragma once + +#include "af-structs.h" +#include "af-types.h" +#include "basic-types.h" + +/** @brief Cluster Init * - * Copyright (c) 2020 Silicon Labs + * This function is called when a specific cluster is initialized. It gives the + * application an opportunity to take care of cluster initialization procedures. + * It is called exactly once for each endpoint where cluster is present. * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at + * @param endpoint Ver.: always + * @param clusterId Ver.: always + */ +void emberAfClusterInitCallback(chip::EndpointId endpoint, chip::ClusterId clusterId); + +// Cluster Init Functions + +/** @brief Level Control Cluster Init * - * http://www.apache.org/licenses/LICENSE-2.0 + * Cluster Init * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. + * @param endpoint Endpoint that is being initialized + */ +void emberAfLevelControlClusterInitCallback(chip::EndpointId endpoint); + +/** @brief On/off Cluster Init + * + * Cluster Init + * + * @param endpoint Endpoint that is being initialized + */ +void emberAfOnOffClusterInitCallback(chip::EndpointId endpoint); + +// Cluster Server/Client Init Functions + +// +// Level Control Cluster server +// + +/** @brief Level Control Cluster Server Init + * + * Server Init + * + * @param endpoint Endpoint that is being initialized + */ +void emberAfLevelControlClusterServerInitCallback(chip::EndpointId endpoint); + +/** @brief Level Control Cluster Server Attribute Changed + * + * Server Attribute Changed + * + * @param endpoint Endpoint that is being initialized + * @param attributeId Attribute that changed + */ +void emberAfLevelControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); + +/** @brief Level Control Cluster Server Manufacturer Specific Attribute Changed + * + * Server Manufacturer Specific Attribute Changed + * + * @param endpoint Endpoint that is being initialized + * @param attributeId Attribute that changed + * @param manufacturerCode Manufacturer Code of the attribute that changed + */ +void emberAfLevelControlClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, + chip::AttributeId attributeId, + uint16_t manufacturerCode); + +/** @brief Level Control Cluster Server Message Sent + * + * Server Message Sent + * + * @param type The type of message sent + * @param indexOrDestination The destination or address to which the message was sent + * @param apsFrame The APS frame for the message + * @param msgLen The length of the message + * @param message The message that was sent + * @param status The status of the sent message + */ +void emberAfLevelControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint64_t indexOrDestination, + EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, + EmberStatus status); + +/** @brief Level Control Cluster Server Pre Attribute Changed + * + * server Pre Attribute Changed + * + * @param endpoint Endpoint that is being initialized + * @param attributeId Attribute to be changed + * @param attributeType Attribute type + * @param size Attribute size + * @param value Attribute value + */ +EmberAfStatus emberAfLevelControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, + EmberAfAttributeType attributeType, uint8_t size, + uint8_t * value); + +/** @brief Level Control Cluster Server Tick + * + * server Tick + * + * @param endpoint Endpoint that is being served */ -// This file is generated by Simplicity Studio. Please do not edit manually. +void emberAfLevelControlClusterServerTickCallback(chip::EndpointId endpoint); + // +// On/off Cluster server // -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_EMBER_AF_CALLBACK_PROTOTYPES -#define SILABS_EMBER_AF_CALLBACK_PROTOTYPES +/** @brief On/off Cluster Server Init + * + * Server Init + * + * @param endpoint Endpoint that is being initialized + */ +void emberAfOnOffClusterServerInitCallback(chip::EndpointId endpoint); + +/** @brief On/off Cluster Server Attribute Changed + * + * Server Attribute Changed + * + * @param endpoint Endpoint that is being initialized + * @param attributeId Attribute that changed + */ +void emberAfOnOffClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); + +/** @brief On/off Cluster Server Manufacturer Specific Attribute Changed + * + * Server Manufacturer Specific Attribute Changed + * + * @param endpoint Endpoint that is being initialized + * @param attributeId Attribute that changed + * @param manufacturerCode Manufacturer Code of the attribute that changed + */ +void emberAfOnOffClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, + uint16_t manufacturerCode); + +/** @brief On/off Cluster Server Message Sent + * + * Server Message Sent + * + * @param type The type of message sent + * @param indexOrDestination The destination or address to which the message was sent + * @param apsFrame The APS frame for the message + * @param msgLen The length of the message + * @param message The message that was sent + * @param status The status of the sent message + */ +void emberAfOnOffClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint64_t indexOrDestination, + EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); + +/** @brief On/off Cluster Server Pre Attribute Changed + * + * server Pre Attribute Changed + * + * @param endpoint Endpoint that is being initialized + * @param attributeId Attribute to be changed + * @param attributeType Attribute type + * @param size Attribute size + * @param value Attribute value + */ +EmberAfStatus emberAfOnOffClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, + EmberAfAttributeType attributeType, uint8_t size, + uint8_t * value); + +/** @brief On/off Cluster Server Tick + * + * server Tick + * + * @param endpoint Endpoint that is being served + */ +void emberAfOnOffClusterServerTickCallback(chip::EndpointId endpoint); + +// Cluster Commands Callback /** - * @addtogroup callback Application Framework callback interface Reference - * This header provides callback function prototypes to interface the - * developer's application code with the Ember Application Framework. - * @{ + * @brief Level Control Cluster Move Command callback + * @param moveMode + * @param rate + * @param optionMask + * @param optionOverride */ -#include "af-types.h" -//#include "hal/hal.h" -//#include EMBER_AF_API_NETWORK_STEERING +bool emberAfLevelControlClusterMoveCallback(uint8_t moveMode, uint8_t rate, uint8_t optionMask, uint8_t optionOverride); + +/** + * @brief Level Control Cluster MoveToLevel Command callback + * @param level + * @param transitionTime + * @param optionMask + * @param optionOverride + */ + +bool emberAfLevelControlClusterMoveToLevelCallback(uint8_t level, uint16_t transitionTime, uint8_t optionMask, + uint8_t optionOverride); + +/** + * @brief Level Control Cluster MoveToLevelWithOnOff Command callback + * @param level + * @param transitionTime + */ + +bool emberAfLevelControlClusterMoveToLevelWithOnOffCallback(uint8_t level, uint16_t transitionTime); + +/** + * @brief Level Control Cluster MoveWithOnOff Command callback + * @param moveMode + * @param rate + */ + +bool emberAfLevelControlClusterMoveWithOnOffCallback(uint8_t moveMode, uint8_t rate); + +/** + * @brief Level Control Cluster Step Command callback + * @param stepMode + * @param stepSize + * @param transitionTime + * @param optionMask + * @param optionOverride + */ + +bool emberAfLevelControlClusterStepCallback(uint8_t stepMode, uint8_t stepSize, uint16_t transitionTime, uint8_t optionMask, + uint8_t optionOverride); + +/** + * @brief Level Control Cluster StepWithOnOff Command callback + * @param stepMode + * @param stepSize + * @param transitionTime + */ + +bool emberAfLevelControlClusterStepWithOnOffCallback(uint8_t stepMode, uint8_t stepSize, uint16_t transitionTime); + +/** + * @brief Level Control Cluster Stop Command callback + * @param optionMask + * @param optionOverride + */ + +bool emberAfLevelControlClusterStopCallback(uint8_t optionMask, uint8_t optionOverride); + +/** + * @brief Level Control Cluster StopWithOnOff Command callback + */ + +bool emberAfLevelControlClusterStopWithOnOffCallback(); + +/** + * @brief On/off Cluster Off Command callback + */ + +bool emberAfOnOffClusterOffCallback(); + +/** + * @brief On/off Cluster On Command callback + */ + +bool emberAfOnOffClusterOnCallback(); + +/** + * @brief On/off Cluster Toggle Command callback + */ + +bool emberAfOnOffClusterToggleCallback(); + +// +// Non-Cluster Related Callbacks +// -/** @name Non-Cluster Related Callbacks */ -// @{ /** @brief Add To Current App Tasks * * This function is only useful to sleepy end devices. This function will note @@ -64,6 +300,21 @@ * @param tasks Ver.: always */ void emberAfAddToCurrentAppTasksCallback(EmberAfApplicationTask tasks); + +/** @brief Remove From Current App Tasks + * + * This function is only useful to sleepy end devices. This function will + * remove the passed item from the set of tasks the application has outstanding + * (e.g. message sent requiring APS acknwoledgement). This will affect how the + * application behaves with regard to sleeping and polling. Removing the item + * from the list of outstanding tasks may allow the device to sleep longer and + * poll less frequently. If there are other outstanding tasks the system may + * still have to stay away and poll more often. + * + * @param tasks Ver.: always + */ +void emberAfRemoveFromCurrentAppTasksCallback(EmberAfApplicationTask tasks); + /** @brief Allow Network Write Attribute * * This function is called by the application framework before it writes an @@ -100,6 +351,7 @@ void emberAfAddToCurrentAppTasksCallback(EmberAfApplicationTask tasks); EmberAfAttributeWritePermission emberAfAllowNetworkWriteAttributeCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, chip::AttributeId attributeId, uint8_t mask, uint16_t manufacturerCode, uint8_t * value, uint8_t type); + /** @brief Attribute Read Access * * This function is called whenever the Application Framework needs to check @@ -112,6 +364,7 @@ EmberAfAttributeWritePermission emberAfAllowNetworkWriteAttributeCallback(chip:: */ bool emberAfAttributeReadAccessCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, uint16_t manufacturerCode, chip::AttributeId attributeId); + /** @brief Attribute Write Access * * This function is called whenever the Application Framework needs to check @@ -124,23 +377,7 @@ bool emberAfAttributeReadAccessCallback(chip::EndpointId endpoint, chip::Cluster */ bool emberAfAttributeWriteAccessCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, uint16_t manufacturerCode, chip::AttributeId attributeId); -/** @brief Clear Report Table - * - * This function is called by the framework when the application should clear - * the report table. - * - */ -EmberStatus emberAfClearReportTableCallback(void); -/** @brief Cluster Init - * - * This function is called when a specific cluster is initialized. It gives the - * application an opportunity to take care of cluster initialization procedures. - * It is called exactly once for each endpoint where cluster is present. - * - * @param endpoint Ver.: always - * @param clusterId Ver.: always - */ -void emberAfClusterInitCallback(chip::EndpointId endpoint, chip::ClusterId clusterId); + /** @brief Default Response * * This function is called by the application framework when a Default Response @@ -154,6 +391,7 @@ void emberAfClusterInitCallback(chip::EndpointId endpoint, chip::ClusterId clust * detected in the received command. Ver.: always */ bool emberAfDefaultResponseCallback(chip::ClusterId clusterId, chip::CommandId commandId, EmberAfStatus status); + /** @brief Discover Attributes Response * * This function is called by the application framework when a Discover @@ -176,6 +414,7 @@ bool emberAfDefaultResponseCallback(chip::ClusterId clusterId, chip::CommandId c */ bool emberAfDiscoverAttributesResponseCallback(chip::ClusterId clusterId, bool discoveryComplete, uint8_t * buffer, uint16_t bufLen, bool extended); + /** @brief Discover Commands Generated Response * * This function is called by the framework when Discover Commands Generated @@ -192,6 +431,7 @@ bool emberAfDiscoverAttributesResponseCallback(chip::ClusterId clusterId, bool d */ bool emberAfDiscoverCommandsGeneratedResponseCallback(chip::ClusterId clusterId, uint16_t manufacturerCode, bool discoveryComplete, chip::CommandId * commandIds, uint16_t commandIdCount); + /** @brief Discover Commands Received Response * * This function is called by the framework when Discover Commands Received @@ -208,37 +448,116 @@ bool emberAfDiscoverCommandsGeneratedResponseCallback(chip::ClusterId clusterId, */ bool emberAfDiscoverCommandsReceivedResponseCallback(chip::ClusterId clusterId, uint16_t manufacturerCode, bool discoveryComplete, chip::CommandId * commandIds, uint16_t commandIdCount); -/** @brief Eeprom Init + +/** @brief Pre Command Received * - * Tells the system to initialize the EEPROM if it is not already initialized. + * This callback is the second in the Application Framework's message processing + * chain. At this point in the processing of incoming over-the-air messages, the + * application has determined that the incoming message is a ZCL command. It + * parses enough of the message to populate an EmberAfClusterCommand struct. The + * Application Framework defines this struct value in a local scope to the + * command processing but also makes it available through a global pointer + * called emberAfCurrentCommand, in app/framework/util/util.c. When command + * processing is complete, this pointer is cleared. * + * @param cmd Ver.: always */ -void emberAfEepromInitCallback(void); -/** @brief Eeprom Note Initialized State +bool emberAfPreCommandReceivedCallback(EmberAfClusterCommand * cmd); + +/** @brief Pre Message Send * - * Records the state of the EEPROM so that an intelligent driver (like the - * EEPROM plugin) can re-initialize the driver prior to any calls to it. + * This function is called by the framework when it is about to pass a message + * to the stack primitives for sending. This message may or may not be ZCL, + * ZDO, or some other protocol. This is called prior to + any ZigBee + * fragmentation that may be done. If the function returns true it is assumed + * the callback has consumed and processed the message. The callback must also + * set the EmberStatus status code to be passed back to the caller. The + * framework will do no further processing on the message. + If the + * function returns false then it is assumed that the callback has not processed + * the mesasge and the framework will continue to process accordingly. * - * @param state The state of the EEPROM, false=re-initalization needed, - * true=no-re-init needed Ver.: always + * @param messageStruct The structure containing the parameters of the APS + * message to be sent. Ver.: always + * @param status A pointer to the status code value that will be returned to the + * caller. Ver.: always */ -void emberAfEepromNoteInitializedStateCallback(bool state); -/** @brief Eeprom Shutdown +bool emberAfPreMessageSendCallback(EmberAfMessageStruct * messageStruct, EmberStatus * status); + +/** @brief Message Sent * - * Tells the system to shutdown the EEPROM if it is not already shutdown. + * This function is called by the application framework from the message sent + * handler, when it is informed by the stack regarding the message sent status. + * All of the values passed to the emberMessageSentHandler are passed on to this + * callback. This provides an opportunity for the application to verify that its + * message has been sent successfully and take the appropriate action. This + * callback should return a bool value of true or false. A value of true + * indicates that the message sent notification has been handled and should not + * be handled by the application framework. * + * @param type Ver.: always + * @param indexOrDestination Ver.: always + * @param apsFrame Ver.: always + * @param msgLen Ver.: always + * @param message Ver.: always + * @param status Ver.: always */ -void emberAfEepromShutdownCallback(void); -/** @brief Energy Scan Result - * - * This is called by the low-level stack code when an 802.15.4 energy scan - * completes. +bool emberAfMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, EmberApsFrame * apsFrame, + uint16_t msgLen, uint8_t * message, EmberStatus status); + +/** @brief Pre Attribute Change * - * @param channel The channel where the energy scan took place. Ver.: always - * @param rssi The receive signal strength indicator for the channel. Ver.: - * always + * This function is called by the application framework before it changes an + * attribute value. The value passed into this callback is the value to which + * the attribute is to be set by the framework. The application should return + * ::EMBER_ZCL_STATUS_SUCCESS to permit the change or any other ::EmberAfStatus + * to reject it. + * + * @param endpoint Ver.: always + * @param clusterId Ver.: always + * @param attributeId Ver.: always + * @param mask Ver.: always + * @param manufacturerCode Ver.: always + * @param type Ver.: always + * @param size Ver.: always + * @param value Ver.: always + */ +EmberAfStatus emberAfPreAttributeChangeCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, chip::AttributeId attributeId, + uint8_t mask, uint16_t manufacturerCode, uint8_t type, uint8_t size, + uint8_t * value); + +/** @brief Post Attribute Change + * + * This function is called by the application framework after it changes an + * attribute value. The value passed into this callback is the value to which + * the attribute was set by the framework. + * + * @param endpoint Ver.: always + * @param clusterId Ver.: always + * @param attributeId Ver.: always + * @param mask Ver.: always + * @param manufacturerCode Ver.: always + * @param type Ver.: always + * @param size Ver.: always + * @param value Ver.: always + */ +void emberAfPostAttributeChangeCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, chip::AttributeId attributeId, + uint8_t mask, uint16_t manufacturerCode, uint8_t type, uint8_t size, uint8_t * value); + +/** @brief Read Attributes Response + * + * This function is called by the application framework when a Read Attributes + * Response command is received from an external device. The application should + * return true if the message was processed or false if it was not. + * + * @param clusterId The cluster identifier of this response. Ver.: always + * @param buffer Buffer containing the list of read attribute status records. + * Ver.: always + * @param bufLen The length in bytes of the list. Ver.: always */ -void emberAfEnergyScanResultCallback(uint8_t channel, int8_t rssi); +bool emberAfReadAttributesResponseCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen); + /** @brief External Attribute Read * * Like emberAfExternalAttributeWriteCallback above, this function is called @@ -278,6 +597,20 @@ void emberAfEnergyScanResultCallback(uint8_t channel, int8_t rssi); EmberAfStatus emberAfExternalAttributeReadCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, EmberAfAttributeMetadata * attributeMetadata, uint16_t manufacturerCode, uint8_t * buffer, uint16_t maxReadLength); + +/** @brief Write Attributes Response + * + * This function is called by the application framework when a Write Attributes + * Response command is received from an external device. The application should + * return true if the message was processed or false if it was not. + * + * @param clusterId The cluster identifier of this response. Ver.: always + * @param buffer Buffer containing the list of write attribute status records. + * Ver.: always + * @param bufLen The length in bytes of the list. Ver.: always + */ +bool emberAfWriteAttributesResponseCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen); + /** @brief External Attribute Write * * This function is called whenever the Application Framework needs to write an @@ -327,60 +660,20 @@ EmberAfStatus emberAfExternalAttributeReadCallback(chip::EndpointId endpoint, ch EmberAfStatus emberAfExternalAttributeWriteCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, EmberAfAttributeMetadata * attributeMetadata, uint16_t manufacturerCode, uint8_t * buffer); -/** @brief Find Unused Pan Id And Form - * - * This function is called by the framework to search for an unused PAN id and - * form a new network. The application should return EMBER_SUCCESS if the - * operation was initiated successfully. - * - */ -EmberStatus emberAfFindUnusedPanIdAndFormCallback(void); -/** @brief Get Current App Tasks - * - * This function is only useful to sleepy end devices. This function will - * return the set of tasks the application has outstanding. These tasks affect - * how the application behaves with regard to sleeping and polling. - * - */ -EmberAfApplicationTask emberAfGetCurrentAppTasksCallback(void); -/** @brief Get Current Poll Control - * - * This function will retrieve the current poll control that the system is using - * for the current network. This is determined by examining all the scheduled - * events and obtaining the most restrictive poll control context across all - * events. The most restrictive poll control is EMBER_AF_SHORT_POLL followed by - * EMBER_AF_LONG_POLL. - * - */ -EmberAfEventPollControl emberAfGetCurrentPollControlCallback(void); -/** @brief Get Current Poll Interval Ms - * - * This function is only useful to end devices. This function will return the - * current poll interval (in milliseconds) for the current network. This - * interval is the maximum amount of time a child is currently waiting between - * polls of its parent. - * - */ -uint32_t emberAfGetCurrentPollIntervalMsCallback(void); -/** @brief Get Current Poll Interval Qs - * - * This function is only useful to end devices. This function will return the - * current poll interval (in quarter seconds) for the current network. This - * interval is the maximum amount of time a child is currently waiting between - * polls of its parent. - * - */ -uint32_t emberAfGetCurrentPollIntervalQsCallback(void); -/** @brief Get Current Sleep Control + +/** @brief Report Attributes * - * This function will retrieve the current sleep control that the system is - * using. This is determined by examining all the scheduled events and - * obtaining the most restrictive sleep control context across all events. The - * most restrictive sleep control is EMBER_AF_STAY_AWAKE followed by - * EMBER_AF_OK_TO_SLEEP. + * This function is called by the application framework when a Report Attributes + * command is received from an external device. The application should return + * true if the message was processed or false if it was not. * + * @param clusterId The cluster identifier of this command. Ver.: always + * @param buffer Buffer containing the list of attribute report records. Ver.: + * always + * @param bufLen The length in bytes of the list. Ver.: always */ -EmberAfEventSleepControl emberAfGetCurrentSleepControlCallback(void); +bool emberAfReportAttributesCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen); + /** @brief Get Current Time * * This callback is called when device attempts to get current time from the @@ -390,57 +683,8 @@ EmberAfEventSleepControl emberAfGetCurrentSleepControlCallback(void); * that device does not have access to real time. * */ -uint32_t emberAfGetCurrentTimeCallback(void); -/** @brief Get Default Poll Control - * - * This function will retrieve the default poll control for the current network - * as previously set by emberAfSetDefaultPollControlCallback(). The default - * poll control will limit whether the network can long poll. - * - */ -EmberAfEventPollControl emberAfGetDefaultPollControlCallback(void); -/** @brief Get Default Sleep Control - * - * This function will retrieve the default sleep control the system is using as - * previously set by emberAfSetDefaultSleepControlCallback(). The default sleep - * control will limit whether the device can sleep. - * - */ -EmberAfEventSleepControl emberAfGetDefaultSleepControlCallback(void); -/** @brief Get Endpoint By Index - * - * Get the endpoint number based on the passed index. By default the framework - * handles this by managing endpoints based on the precompiled configuration - * defined in AppBuilder. This callback can override this behavior at runtime - * and provide additional endpoints or different data than the compiled values. - * If the index is overridden than the callback shall return true and set the - * endpointReturn parameter accordingly. A value of 0xFF means the endpoint - * doesn't exist at that index. - Otherwise false must be returned by the - * callback and the default framework behavior will be executed. This is only - * applicable to the SOC devices. - * - * @param index The index of the endpoint. Ver.: always - * @param endpointReturn The value of endpoint. Ver.: always - */ -bool emberAfGetEndpointByIndexCallback(uint8_t index, uint8_t * endpointReturn); -/** @brief Get Endpoint Description - * - * This callback is called by the framework whenever it receives a ZDO request - * to enumerate the details about an endpoint. By default the framework - * provides the information based on the precompiled endpoint information as - * defined in AppBuilder. This callback can override that behavior at runtime - * and return different information. If the endpoint information is being - * overridden then the callback must return true. Otherwise it should return - * false, which allows the framework to perform its default behavior. This is - * only applicable to SOC devices. - * - * @param endpoint The endpoint number that is being queried. Ver.: always - * @param result This is a pointer to a data structure where the endpoint - * information is written if the callback is providing the information. Ver.: - * always - */ -bool emberAfGetEndpointDescriptionCallback(chip::EndpointId endpoint, EmberEndpointDescription * result); +uint32_t emberAfGetCurrentTimeCallback(); + /** @brief Get Endpoint Info * * This function is a callback to an application implemented endpoint that @@ -460,52 +704,7 @@ bool emberAfGetEndpointDescriptionCallback(chip::EndpointId endpoint, EmberEndpo */ bool emberAfGetEndpointInfoCallback(chip::EndpointId endpoint, uint8_t * returnNetworkIndex, EmberAfEndpointInfoStruct * returnEndpointInfo); -/** @brief Get Form And Join Extended Pan Id - * - * This callback is called by the framework to get the extended PAN ID used by - * the current network for forming and joining. The extended PAN ID used for - * forming and joining is not necessarily the same extended PAN ID actually in - * use on the network. - * - * @param resultLocation Ver.: always - */ -void emberAfGetFormAndJoinExtendedPanIdCallback(uint8_t * resultLocation); -/** @brief Get Long Poll Interval Ms - * - * This function is only useful to end devices. This function will return the - * long poll interval (in milliseconds) for the current network. This interval - * is the maximum amount of time a child will wait between polls of its parent - * when it is not expecting data. - * - */ -uint32_t emberAfGetLongPollIntervalMsCallback(void); -/** @brief Get Long Poll Interval Qs - * - * This function is only useful to end devices. This function will return the - * long poll interval (in quarter seconds) for the current network. This - * interval is the maximum amount of time a child will wait between polls of its - * parent when it is not expecting data. - * - */ -uint32_t emberAfGetLongPollIntervalQsCallback(void); -/** @brief Get Short Poll Interval Ms - * - * This function is only useful to sleepy end devices. This function will - * return the short poll interval (in milliseconds) for the current network. - * This interval is the maximum amount of time a child will wait between polls - * of its parent when it is expecting data. - * - */ -uint16_t emberAfGetShortPollIntervalMsCallback(void); -/** @brief Get Short Poll Interval Qs - * - * This function is only useful to sleepy end devices. This function will - * return the short poll interval (in quarter seconds) for the current network. - * This interval is the maximum amount of time a child will wait between polls - * of its parent when it is expecting data. - * - */ -uint16_t emberAfGetShortPollIntervalQsCallback(void); + /** @brief Get Source Route Overhead * * This function is called by the framework to determine the overhead required @@ -514,128 +713,15 @@ uint16_t emberAfGetShortPollIntervalQsCallback(void); * @param destination The node id of the destination Ver.: always */ uint8_t emberAfGetSourceRouteOverheadCallback(EmberNodeId destination); -/** @brief Get Wake Timeout Bitmask - * - * This function is only useful to sleepy end devices. This function will - * return the wake timeout bitmask for the current network. The bitmask - * determines which tasks will timeout automatically and which tasks require - * manual removal from the task list. - * - */ -EmberAfApplicationTask emberAfGetWakeTimeoutBitmaskCallback(void); -/** @brief Get Wake Timeout Ms - * - * This function is only useful to sleepy end devices. This function will - * return the wake timeout (in milliseconds) for the current network. This - * timeout is the maximum amount of time a child will wait for a task in the - * wake bitmask to finish. While waiting, the device will short poll. - * - */ -uint16_t emberAfGetWakeTimeoutMsCallback(void); -/** @brief Get Wake Timeout Qs - * - * This function is only useful to sleepy end devices. This function will - * return the wake timeout (in quarter seconds) for the current network. This - * timeout is the maximum amount of time a child will wait for a task in the - * wake bitmask to finish. While waiting, the device will short poll. - * - */ -uint16_t emberAfGetWakeTimeoutQsCallback(void); -/** @brief Hal Button Isr - * - * This callback is called by the framework whenever a button is pressed on the - * device. This callback is called within ISR context. - * - * @param button The button which has changed state, either BUTTON0 or BUTTON1 - * as defined in the appropriate BOARD_HEADER. Ver.: always - * @param state The new state of the button referenced by the button parameter, - * either ::BUTTON_PRESSED if the button has been pressed or ::BUTTON_RELEASED - * if the button has been released. Ver.: always - */ -void emberAfHalButtonIsrCallback(uint8_t button, uint8_t state); -/** @brief Incoming Packet Filter - * - * ** REQUIRES INCLUDING THE PACKET-HANDOFF PLUGIN ** - - This is called by - * the Packet Handoff plugin when the stack receives a packet from one of the - * protocol layers specified in ::EmberZigbeePacketType. - The packetType - * argument is one of the values of the ::EmberZigbeePacketType enum. If the - * stack receives an 802.15.4 MAC beacon, it will call this function with the - * packetType argument set to ::EMBER_ZIGBEE_PACKET_TYPE_BEACON. - - The - * implementation of this callback may alter the data contained in packetData, - * modify options and flags in the auxillary data, or consume the packet itself, - * either sending the message, or discarding it as it sees fit. - * - * @param packetType the type of packet and associated protocol layer Ver.: - * always - * @param packetData flat buffer containing the packet data associated with the - * packet type Ver.: always - * @param size_p a pointer containing the size value of the packet Ver.: always - * @param data auxillary data included with the packet Ver.: always - */ -EmberPacketAction emberAfIncomingPacketFilterCallback(EmberZigbeePacketType packetType, uint8_t * packetData, uint8_t * size_p, - void * data); -/** @brief Initiate Inter Pan Key Establishment - * - * This function is called by the framework to initiate key establishment with a - * remote device on a different PAN. The application should return - * EMBER_SUCCESS if key establishment was initiated successfully. The - * application should call ::emberAfInterPanKeyEstablishmentCallback as events - * occur. - * - * @param panId The PAN id of the remote device. Ver.: always - * @param eui64 The EUI64 of the remote device. Ver.: always - */ -EmberStatus emberAfInitiateInterPanKeyEstablishmentCallback(EmberPanId panId, const EmberEUI64 eui64); -/** @brief Initiate Key Establishment - * - * This function is called by the framework to initiate key establishment with a - * remote device. The application should return EMBER_SUCCESS if key - * establishment was initiated successfully. The application should call - * ::emberAfKeyEstablishmentCallback as events occur. - * - * @param nodeId The node id of the remote device. Ver.: always - * @param endpoint The endpoint on the remote device. Ver.: always - */ -EmberStatus emberAfInitiateKeyEstablishmentCallback(EmberNodeId nodeId, chip::EndpointId endpoint); -/** @brief Initiate Partner Link Key Exchange - * - * This function is called by the framework to initiate a partner link key - * exchange with a remote device. The application should return EMBER_SUCCESS - * if the partner link key exchange was initiated successfully. When the - * partner link key exchange completes, the application should call the given - * callback. - * - * @param target The node id of the remote device. Ver.: always - * @param endpoint The key establishment endpoint of the remote device. Ver.: - * always - * @param callback The callback that should be called when the partner link key - * exchange completse. Ver.: always - */ -EmberStatus emberAfInitiatePartnerLinkKeyExchangeCallback(EmberNodeId target, uint8_t endpoint, - EmberAfPartnerLinkKeyExchangeCallback * callback); -/** @brief Inter Pan Key Establishment +/** @brief Registration Abort * - * A callback by the key-establishment code to indicate an event has occurred. - * For error codes this is purely a notification. For non-error status codes - * (besides LINK_KEY_ESTABLISHED), it is the application's chance to allow or - * disallow the operation. If the application returns true then the key - * establishment is allowed to proceed. If it returns false, then key - * establishment is aborted. LINK_KEY_ESTABLISHED is a notification of success. + * This callback is called when the device should abort the registration + * process. * - * @param status Ver.: always - * @param amInitiator Ver.: always - * @param panId Ver.: always - * @param eui64 Ver.: always - * @param delayInSeconds Ver.: always */ -bool emberAfInterPanKeyEstablishmentCallback(EmberAfKeyEstablishmentNotifyMessage status, bool amInitiator, EmberPanId panId, - const EmberEUI64 eui64, uint8_t delayInSeconds); +void emberAfRegistrationAbortCallback(); + /** @brief Interpan Send Message * * This function will send a raw MAC message with interpan frame format using @@ -647,22864 +733,11 @@ bool emberAfInterPanKeyEstablishmentCallback(EmberAfKeyEstablishmentNotifyMessag * @param message The message data received or to send. Ver.: always */ EmberStatus emberAfInterpanSendMessageCallback(EmberAfInterpanHeader * header, uint16_t messageLength, uint8_t * message); -/** @brief Key Establishment - * - * A callback by the key-establishment code to indicate an event has occurred. - * For error codes this is purely a notification. For non-error status codes - * (besides LINK_KEY_ESTABLISHED), it is the application's chance to allow or - * disallow the operation. If the application returns true then the key - * establishment is allowed to proceed. If it returns false, then key - * establishment is aborted. LINK_KEY_ESTABLISHED is a notification of success. - * - * @param status Ver.: always - * @param amInitiator Ver.: always - * @param partnerShortId Ver.: always - * @param delayInSeconds Ver.: always - */ -bool emberAfKeyEstablishmentCallback(EmberAfKeyEstablishmentNotifyMessage status, bool amInitiator, EmberNodeId partnerShortId, - uint8_t delayInSeconds); -/** @brief Main Init - * - * This function is called from the application's main function. It gives the - * application a chance to do any initialization required at system startup. Any - * code that you would normally put into the top of the application's main() - * routine should be put into this function. This is called before the clusters, - * plugins, and the network are initialized so some functionality is not yet - * available. - Note: No callback in the Application Framework is - * associated with resource cleanup. If you are implementing your application on - * a Unix host where resource cleanup is a consideration, we expect that you - * will use the standard Posix system calls, including the use of atexit() and - * handlers for signals such as SIGTERM, SIGINT, SIGCHLD, SIGPIPE and so on. If - * you use the signal() function to register your signal handler, please mind - * the returned value which may be an Application Framework function. If the - * return value is non-null, please make sure that you call the returned - * function from your handler to avoid negating the resource cleanup of the - * Application Framework itself. - * - */ -void emberAfMainInitCallback(void); -/** @brief Main Start - * - * This function is called at the start of main after the HAL has been - * initialized. The standard main function arguments of argc and argv are - * passed in. However not all platforms have support for main() function - * arguments. Those that do not are passed NULL for argv, therefore argv should - * be checked for NULL before using it. If the callback determines that the - * program must exit, it should return true. The value returned by main() will - * be the value written to the returnCode pointer. Otherwise the callback - * should return false to let normal execution continue. - * - * @param returnCode Ver.: always - * @param argc Ver.: always - * @param argv Ver.: always - */ -bool emberAfMainStartCallback(int * returnCode, int argc, char ** argv); -/** @brief Main Tick - * - * Whenever main application tick is called, this callback will be called at the - * end of the main tick execution. - * - */ -void emberAfMainTickCallback(void); -/** @brief Mark Buffers - * - * This function is called when the garbage collector runs. Any buffers held by - * the application must be marked. - * - */ -void emberAfMarkBuffersCallback(void); -/** @brief Message Sent - * - * This function is called by the application framework from the message sent - * handler, when it is informed by the stack regarding the message sent status. - * All of the values passed to the emberMessageSentHandler are passed on to this - * callback. This provides an opportunity for the application to verify that its - * message has been sent successfully and take the appropriate action. This - * callback should return a bool value of true or false. A value of true - * indicates that the message sent notification has been handled and should not - * be handled by the application framework. - * - * @param type Ver.: always - * @param indexOrDestination Ver.: always - * @param apsFrame Ver.: always - * @param msgLen Ver.: always - * @param message Ver.: always - * @param status Ver.: always - */ -bool emberAfMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Ncp Init - * - * This function is called when the network coprocessor is being initialized, - * either at startup or upon reset. It provides applications on opportunity to - * perform additional configuration of the NCP. The function is always called - * twice when the NCP is initialized. In the first invocation, memoryAllocation - * will be true and the application should only issue EZSP commands that affect - * memory allocation on the NCP. For example, tables on the NCP can be resized - * in the first call. In the second invocation, memoryAllocation will be false - * and the application should only issue EZSP commands that do not affect memory - * allocation. For example, tables on the NCP can be populated in the second - * call. This callback is not called on SoCs. - * - * @param memoryAllocation Ver.: always - */ -void emberAfNcpInitCallback(bool memoryAllocation); -/** @brief Ncp Is Awake Isr - * - * This function is called IN ISR CONTEXT. It notes that the NCP is awake after - * sleeping. Care should be taken to do minimal processing in this ISR handler - * function. - * - */ -void emberAfNcpIsAwakeIsrCallback(void); -/** @brief Network Found - * - * This callback is generated when an active scan finds a 802.15.4 network. - * - * @param networkFound A struct containing information about the network found. - * Ver.: always - * @param lqi The link quality indication of the network found. Ver.: always - * @param rssi The received signal strength indication of the network found. - * Ver.: always - */ -void emberAfNetworkFoundCallback(EmberZigbeeNetwork * networkFound, uint8_t lqi, int8_t rssi); -/** @brief Network Key Update Complete - * - * This is called by the framework when a network key update operation started - * by the trust center is complete. - * - * @param status Ver.: always - */ -void emberAfNetworkKeyUpdateCompleteCallback(EmberStatus status); -/** @brief Outgoing Packet Filter - * - * ** REQUIRES INCLUDING THE PACKET-HANDOFF PLUGIN ** - - This is called by - * the Packet Handoff plugin when the stack prepares to send a packet from one - * of the protocol layers specified in ::EmberZigbeePacketType. - The - * packetType argument is one of the values of the ::EmberZigbeePacketType enum. - * If the stack receives an 802.15.4 MAC beacon, it will call this function with - * the packetType argument set to ::EMBER_ZIGBEE_PACKET_TYPE_BEACON. - - - * The implementation of this callback may alter the data contained in - * packetData, modify options and flags in the auxillary data, or consume the - * packet itself, either sending the message, or discarding it as it sees fit. - * - * @param packetType the type of packet and associated protocol layer Ver.: - * always - * @param packetData flat buffer containing the packet data associated with the - * packet type Ver.: always - * @param size_p a pointer containing the size value of the packet Ver.: always - * @param data auxillary data included with the packet Ver.: always - */ -EmberPacketAction emberAfOutgoingPacketFilterCallback(EmberZigbeePacketType packetType, uint8_t * packetData, uint8_t * size_p, - void * data); -/** @brief Partner Link Key Exchange Request - * - * This function is called by the framework on SOC platforms when a remote node - * requests a partner link key exchange. The application should return - * EMBER_SUCCESS to accept the request or any other status to reject it. On - * network coprocessor platforms, this function will not be called because the - * NCP handles partner link key exchange requests based on the binding policy. - * - * @param partner The EUI of the remote node. Ver.: always - */ -EmberZdoStatus emberAfPartnerLinkKeyExchangeRequestCallback(EmberEUI64 partner); -/** @brief Partner Link Key Exchange Response - * - * This function is called by the framework when a remote node requests a - * partner link key exchange. The application should return true to accept the - * request or false to reject it. On network coprocessor platforms, this - * function will not be called because the NCP handles partner link key exchange - * requests based on the binding policy. - * - * @param sender The EUI of the remote node. Ver.: always - * @param status The ZDO response status. Ver.: always - */ -void emberAfPartnerLinkKeyExchangeResponseCallback(EmberNodeId sender, EmberZdoStatus status); -/** @brief Performing Key Establishment - * - * This function is called by the framework to determine if the device is - * performing key establishment. The application should return true if key - * establishment is in progress. - * - */ -bool emberAfPerformingKeyEstablishmentCallback(void); -/** @brief Post Attribute Change - * - * This function is called by the application framework after it changes an - * attribute value. The value passed into this callback is the value to which - * the attribute was set by the framework. - * - * @param endpoint Ver.: always - * @param clusterId Ver.: always - * @param attributeId Ver.: always - * @param mask Ver.: always - * @param manufacturerCode Ver.: always - * @param type Ver.: always - * @param size Ver.: always - * @param value Ver.: always - */ -void emberAfPostAttributeChangeCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, chip::AttributeId attributeId, - uint8_t mask, uint16_t manufacturerCode, uint8_t type, uint8_t size, uint8_t * value); -/** @brief Post Em4 Reset +/** @brief Start Move * - * A callback called by application framework, and implemented by em4 plugin + * This function is called to initiate the process for a device to move (rejoin) + * to a new parent. * */ -void emberAfPostEm4ResetCallback(void); -/** @brief Pre Attribute Change - * - * This function is called by the application framework before it changes an - * attribute value. The value passed into this callback is the value to which - * the attribute is to be set by the framework. The application should return - * ::EMBER_ZCL_STATUS_SUCCESS to permit the change or any other ::EmberAfStatus - * to reject it. - * - * @param endpoint Ver.: always - * @param clusterId Ver.: always - * @param attributeId Ver.: always - * @param mask Ver.: always - * @param manufacturerCode Ver.: always - * @param type Ver.: always - * @param size Ver.: always - * @param value Ver.: always - */ -EmberAfStatus emberAfPreAttributeChangeCallback(chip::EndpointId endpoint, chip::ClusterId clusterId, chip::AttributeId attributeId, - uint8_t mask, uint16_t manufacturerCode, uint8_t type, uint8_t size, - uint8_t * value); -/** @brief Pre Cli Send - * - * This function is called by the framework when it is about to pass a message - * constructed over CLI to the stack primitives for sending. If the function - * returns true it is assumed that the callback has consumed and processed the - * message. The framework will not do any further processing on the message. - - * If the function returns false then it is assumed that the callback has - * not processed the message and the framework will continue to process - * accordingly. - * - * @param apsFrame The structure containing the APS frame Ver.: always - * @param source Source Node Id Ver.: always - * @param destination Destintion Node Id Ver.: always - * @param message Pointer to the message payload Ver.: always - * @param messageLength Length of the message payload Ver.: always - */ -bool emberAfPreCliSendCallback(EmberApsFrame * apsFrame, EmberNodeId source, EmberNodeId destination, uint8_t * message, - uint16_t messageLength); -/** @brief Pre Command Received - * - * This callback is the second in the Application Framework's message processing - * chain. At this point in the processing of incoming over-the-air messages, the - * application has determined that the incoming message is a ZCL command. It - * parses enough of the message to populate an EmberAfClusterCommand struct. The - * Application Framework defines this struct value in a local scope to the - * command processing but also makes it available through a global pointer - * called emberAfCurrentCommand, in app/framework/util/util.c. When command - * processing is complete, this pointer is cleared. - * - * @param cmd Ver.: always - */ -bool emberAfPreCommandReceivedCallback(EmberAfClusterCommand * cmd); -/** @brief Pre Message Received - * - * This callback is the first in the Application Framework's message processing - * chain. The Application Framework calls it when a message has been received - * over the air but has not yet been parsed by the ZCL command-handling code. If - * you wish to parse some messages that are completely outside the ZCL - * specification or are not handled by the Application Framework's command - * handling code, you should intercept them for parsing in this callback. - - * This callback returns a Boolean value indicating whether or not the message - * has been handled. If the callback returns a value of true, then the - * Application Framework assumes that the message has been handled and it does - * nothing else with it. If the callback returns a value of false, then the - * application framework continues to process the message as it would with any - * incoming message. - Note: This callback receives a pointer to an - * incoming message struct. This struct allows the application framework to - * provide a unified interface between both Host devices, which receive their - * message through the ezspIncomingMessageHandler, and SoC devices, which - * receive their message through emberIncomingMessageHandler. - * - * @param incomingMessage Ver.: always - */ -bool emberAfPreMessageReceivedCallback(EmberAfIncomingMessage * incomingMessage); -/** @brief Pre Message Send - * - * This function is called by the framework when it is about to pass a message - * to the stack primitives for sending. This message may or may not be ZCL, - * ZDO, or some other protocol. This is called prior to - any ZigBee - * fragmentation that may be done. If the function returns true it is assumed - * the callback has consumed and processed the message. The callback must also - * set the EmberStatus status code to be passed back to the caller. The - * framework will do no further processing on the message. - If the - * function returns false then it is assumed that the callback has not processed - * the mesasge and the framework will continue to process accordingly. - * - * @param messageStruct The structure containing the parameters of the APS - * message to be sent. Ver.: always - * @param status A pointer to the status code value that will be returned to the - * caller. Ver.: always - */ -bool emberAfPreMessageSendCallback(EmberAfMessageStruct * messageStruct, EmberStatus * status); -/** @brief Pre Ncp Reset - * - * This function will be called prior to the reset of the NCP by the host. - * - */ -void emberAfPreNcpResetCallback(void); -/** @brief Pre ZDO Message Received - * - * This function passes the application an incoming ZDO message and gives the - * appictation the opportunity to handle it. By default, this callback returns - * false indicating that the incoming ZDO message has not been handled and - * should be handled by the Application Framework. - * - * @param emberNodeId Ver.: always - * @param apsFrame Ver.: always - * @param message Ver.: always - * @param length Ver.: always - */ -bool emberAfPreZDOMessageReceivedCallback(EmberNodeId emberNodeId, EmberApsFrame * apsFrame, uint8_t * message, uint16_t length); -/** @brief Read Attributes Response - * - * This function is called by the application framework when a Read Attributes - * Response command is received from an external device. The application should - * return true if the message was processed or false if it was not. - * - * @param clusterId The cluster identifier of this response. Ver.: always - * @param buffer Buffer containing the list of read attribute status records. - * Ver.: always - * @param bufLen The length in bytes of the list. Ver.: always - */ -bool emberAfReadAttributesResponseCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen); -/** @brief Registration Abort - * - * This callback is called when the device should abort the registration - * process. - * - */ -void emberAfRegistrationAbortCallback(void); -/** @brief Registration - * - * This callback is called when the device joins a network and the process of - * registration is complete. This callback provides a success value of true if - * the registration process was successful and a value of false if registration - * failed. - * - * @param success true if registration succeeded, false otherwise. Ver.: always - */ -void emberAfRegistrationCallback(bool success); -/** @brief Registration Start - * - * This callback is called when the device joins a network and the registration - * process should begin. The application should return EMBER_SUCCESS if the - * registration process started successfully. When registration is complete, - * the application should call emberAfRegistrationCallback with an indication of - * success or failure. - * - */ -EmberStatus emberAfRegistrationStartCallback(void); -/** @brief Remote Delete Binding Permission - * - * This function is called by the framework to request permission to service the - * remote delete binding request. Return EMBER_SUCCESS to allow request, - * anything else to disallow request. - * - * @param index index to an Ember binding table entry Ver.: always - */ -EmberStatus emberAfRemoteDeleteBindingPermissionCallback(uint8_t index); -/** @brief Remote Set Binding Permission - * - * This function is called by the framework to request permission to service the - * remote set binding request. Return EMBER_SUCCESS to allow request, anything - * else to disallow request. - * - * @param entry Ember Binding Tablet Entry Ver.: always - */ -EmberStatus emberAfRemoteSetBindingPermissionCallback(const EmberBindingTableEntry * entry); -/** @brief Remove From Current App Tasks - * - * This function is only useful to sleepy end devices. This function will - * remove the passed item from the set of tasks the application has outstanding - * (e.g. message sent requiring APS acknwoledgement). This will affect how the - * application behaves with regard to sleeping and polling. Removing the item - * from the list of outstanding tasks may allow the device to sleep longer and - * poll less frequently. If there are other outstanding tasks the system may - * still have to stay away and poll more often. - * - * @param tasks Ver.: always - */ -void emberAfRemoveFromCurrentAppTasksCallback(EmberAfApplicationTask tasks); -/** @brief Report Attributes - * - * This function is called by the application framework when a Report Attributes - * command is received from an external device. The application should return - * true if the message was processed or false if it was not. - * - * @param clusterId The cluster identifier of this command. Ver.: always - * @param buffer Buffer containing the list of attribute report records. Ver.: - * always - * @param bufLen The length in bytes of the list. Ver.: always - */ -bool emberAfReportAttributesCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen); -/** @brief Scan Complete - * - * This is called by the low-level stack code when an 802.15.4 active scan - * completes. - * - * @param channel If the status indicates an error, the channel on which the - * error occurred. Otherwise it is undefined for EMBER_SUCCESS. Ver.: always - * @param status The status of the scan. Ver.: always - */ -void emberAfScanCompleteCallback(uint8_t channel, EmberStatus status); -/** @brief Scan Error - * - * This is called by the framework on behalf of the form-and-join library to - * notify the application if an error occurs while scanning. See form-and-join - * documentation for more information. - * - * @param status The status of the scan. Ver.: always - */ -void emberAfScanErrorCallback(EmberStatus status); -/** @brief Set Default Poll Control - * - * This function will set the default poll control for the current network to - * control whether or not it can long poll. - * - * @param control Ver.: always - */ -void emberAfSetDefaultPollControlCallback(EmberAfEventPollControl control); -/** @brief Set Default Sleep Control - * - * This function will set the default behavior of a sleeping device to control - * whether or not it must stay awake. A device that stays awake does not sleep - * at all. Otherwise, the device can sleep between events when appropriate. - * - * @param control Ver.: always - */ -void emberAfSetDefaultSleepControlCallback(EmberAfEventSleepControl control); -/** @brief Set Form And Join Extended Pan Id - * - * This callback is called by the framework to set the extended PAN ID used by - * the current network for forming and joining. The extended PAN ID used for - * forming and joining is not necessarily the same extended PAN ID actually in - * use on the network. - * - * @param extendedPanId Ver.: always - */ -void emberAfSetFormAndJoinExtendedPanIdCallback(const uint8_t * extendedPanId); -/** @brief Set Long Poll Interval Ms - * - * This function is only useful to end devices. This function will set the long - * poll interval (in milliseconds) for the current network. This interval is - * the maximum amount of time a child will wait between polls of its parent when - * it is not expecting data. - * - * @param longPollIntervalMs Ver.: always - */ -void emberAfSetLongPollIntervalMsCallback(uint32_t longPollIntervalMs); -/** @brief Set Long Poll Interval Qs - * - * This function is only useful to end devices. This function will set the long - * poll interval (in quarter seconds) for the current network. This interval is - * the maximum amount of time a child will wait between polls of its parent when - * it is not expecting data. - * - * @param longPollIntervalQs Ver.: always - */ -void emberAfSetLongPollIntervalQsCallback(uint32_t longPollIntervalQs); -/** @brief Set Short Poll Interval Ms - * - * This function is only useful to sleepy end devices. This function will set - * the short poll interval (in milliseconds) for the current network. This - * interval is the maximum amount of time a child will wait between polls of its - * parent when it is expecting data. - * - * @param shortPollIntervalMs Ver.: always - */ -void emberAfSetShortPollIntervalMsCallback(uint16_t shortPollIntervalMs); -/** @brief Set Short Poll Interval Qs - * - * This function is only useful to sleepy end devices. This function will set - * the short poll interval (in quarter seconds) for the current network. This - * interval is the maximum amount of time a child will wait between polls of its - * parent when it is expecting data. - * - * @param shortPollIntervalQs Ver.: always - */ -void emberAfSetShortPollIntervalQsCallback(uint16_t shortPollIntervalQs); -/** @brief Set Source Route Overhead - * - * This function is called by the framework when it has information about the - * source route overhead to a particular destination. The application may use - * this information to cache the source route overhead. - * - * @param destination The node id of the destination Ver.: always - * @param overhead The overhead in bytes Ver.: always - */ -void emberAfSetSourceRouteOverheadCallback(EmberNodeId destination, uint8_t overhead); -/** @brief Set Time - * - * This callback should be implemented, if the device has access to real time - * clock, and has an ability to update that clock. The application framework - * expects to be passed the utcTime which is the number of seconds since the - * year 2000. Default implementation does nothing. Note: This function used to - * take time in year, month, day, hour, min, sec. We have changed this to - * utcTime in order to conserve code space. - * - * @param utcTime Ver.: always - */ -void emberAfSetTimeCallback(uint32_t utcTime); -/** @brief Set Wake Timeout Bitmask - * - * This function is only useful to sleepy end devices. This function will set - * the wake timeout bitmask for the current network. The bitmask determines - * which tasks will timeout automatically and which tasks require manual removal - * from the task list. - * - * @param tasks Ver.: always - */ -void emberAfSetWakeTimeoutBitmaskCallback(EmberAfApplicationTask tasks); -/** @brief Set Wake Timeout Ms - * - * This function is only useful to sleepy end devices. This function will set - * the wake timeout (in milliseconds) for the current network. This timeout is - * the maximum amount of time a child will wait for a task in the wake bitmask - * to finish. While waiting, the device will short poll. - * - * @param wakeTimeoutMs Ver.: always - */ -void emberAfSetWakeTimeoutMsCallback(uint16_t wakeTimeoutMs); -/** @brief Set Wake Timeout Qs - * - * This function is only useful to sleepy end devices. This function will set - * the wake timeout (in quarter seconds) for the current network. This timeout - * is the maximum amount of time a child will wait for a task in the wake - * bitmask to finish. While waiting, the device will short poll. - * - * @param wakeTimeoutQs Ver.: always - */ -void emberAfSetWakeTimeoutQsCallback(uint16_t wakeTimeoutQs); -/** @brief Stack Status - * - * This function is called by the application framework from the stack status - * handler. This callbacks provides applications an opportunity to be notified - * of changes to the stack status and take appropriate action. The return code - * from this callback is ignored by the framework. The framework will always - * process the stack status after the callback returns. - * - * @param status Ver.: always - */ -bool emberAfStackStatusCallback(EmberStatus status); -/** @brief Start Move - * - * This function is called to initiate the process for a device to move (rejoin) - * to a new parent. - * - */ -bool emberAfStartMoveCallback(void); -/** @brief Start Search For Joinable Network - * - * This function is called by the framework to search for joinable networks and - * join a network. The application should return EMBER_SUCCESS if the operation - * was initiated successfully. - * - */ -EmberStatus emberAfStartSearchForJoinableNetworkCallback(void); -/** @brief Stop Move - * - * This function is called to cancel a previously scheduled move (rejoin) to a - * new parent. - * - */ -void emberAfStopMoveCallback(void); -/** @brief Trust Center Keepalive Update - * - * This callback is called when the device finishes registration (successfully - * or otherwise) and the trust center keepalive process must be updated. If the - * keepalive process has not been started, then it is started. Otherwise if the - * keepalive is in the process of searching for the TC, it will process the - * result of that Trust Center search operation. - * - * @param registrationComplete Ver.: always - */ -void emberAfTrustCenterKeepaliveUpdateCallback(bool registrationComplete); -/** @brief Unused Pan Id Found - * - * This is called by the framework on behalf of the form-and-join library to - * notify the application of the PAN id and channel found following a call to - * ::emberScanForUnusedPanId(). See form-and-join documentation for more - * information. - * - * @param panId Ver.: always - * @param channel Ver.: always - */ -void emberAfUnusedPanIdFoundCallback(EmberPanId panId, uint8_t channel); -/** @brief Write Attributes Response - * - * This function is called by the application framework when a Write Attributes - * Response command is received from an external device. The application should - * return true if the message was processed or false if it was not. - * - * @param clusterId The cluster identifier of this response. Ver.: always - * @param buffer Buffer containing the list of write attribute status records. - * Ver.: always - * @param bufLen The length in bytes of the list. Ver.: always - */ -bool emberAfWriteAttributesResponseCallback(chip::ClusterId clusterId, uint8_t * buffer, uint16_t bufLen); -/** @brief Zigbee Key Establishment - * - * A callback to the application to notify it of the status of the request for a - * Link Key. - * - * @param partner partner The IEEE address of the partner device. Or all zeros - * if the Key establishment failed. Ver.: always - * @param status The status of the key establishment. Ver.: always - */ -void emberAfZigbeeKeyEstablishmentCallback(EmberEUI64 partner, EmberKeyStatus status); -/** @} END Non-Cluster Related Callbacks */ - -/** @name Basic Cluster Callbacks */ -// @{ - -/** @brief Basic Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBasicClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Basic Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBasicClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Basic Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBasicClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Basic Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBasicClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Basic Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBasicClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Basic Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBasicClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Basic Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBasicClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Basic Cluster Get Locales Supported - * - * - * - * @param startLocale Ver.: always - * @param maxLocalesRequested Ver.: always - */ -bool emberAfBasicClusterGetLocalesSupportedCallback(uint8_t * startLocale, uint8_t maxLocalesRequested); -/** @brief Basic Cluster Get Locales Supported Response - * - * - * - * @param discoveryComplete Ver.: always - * @param localeSupported Ver.: always - */ -bool emberAfBasicClusterGetLocalesSupportedResponseCallback(uint8_t discoveryComplete, uint8_t * localeSupported); -/** @brief Basic Cluster Reset To Factory Defaults - * - * - * - */ -bool emberAfBasicClusterResetToFactoryDefaultsCallback(void); -/** @brief Basic Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBasicClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Basic Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBasicClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Basic Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBasicClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Basic Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBasicClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Basic Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBasicClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Basic Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBasicClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Basic Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBasicClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Basic Cluster Callbacks */ - -/** @name Power Configuration Cluster Callbacks */ -// @{ - -/** @brief Power Configuration Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPowerConfigClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Power Configuration Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPowerConfigClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Power Configuration Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPowerConfigClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Power Configuration Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPowerConfigClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Power Configuration Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPowerConfigClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Power Configuration Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPowerConfigClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Power Configuration Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPowerConfigClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Power Configuration Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPowerConfigClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Power Configuration Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPowerConfigClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Power Configuration Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPowerConfigClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Power Configuration Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPowerConfigClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Power Configuration Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPowerConfigClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Power Configuration Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPowerConfigClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Power Configuration Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPowerConfigClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Power Configuration Cluster Callbacks */ - -/** @name Device Temperature Configuration Cluster Callbacks */ -// @{ - -/** @brief Device Temperature Configuration Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDeviceTempClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Device Temperature Configuration Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDeviceTempClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Device Temperature Configuration Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDeviceTempClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Device Temperature Configuration Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDeviceTempClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Device Temperature Configuration Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDeviceTempClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Device Temperature Configuration Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDeviceTempClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Device Temperature Configuration Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDeviceTempClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Device Temperature Configuration Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDeviceTempClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Device Temperature Configuration Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDeviceTempClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Device Temperature Configuration Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDeviceTempClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Device Temperature Configuration Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDeviceTempClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Device Temperature Configuration Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDeviceTempClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Device Temperature Configuration Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDeviceTempClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Device Temperature Configuration Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDeviceTempClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Device Temperature Configuration Cluster Callbacks */ - -/** @name Identify Cluster Callbacks */ -// @{ - -/** @brief Identify Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIdentifyClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Identify Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIdentifyClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Identify Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIdentifyClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Identify Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIdentifyClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Identify Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIdentifyClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Identify Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIdentifyClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Identify Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIdentifyClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Identify Cluster E Z Mode Invoke - * - * - * - * @param action Ver.: always - */ -bool emberAfIdentifyClusterEZModeInvokeCallback(uint8_t action); -/** @brief Identify Cluster Identify - * - * - * - * @param identifyTime Ver.: always - */ -bool emberAfIdentifyClusterIdentifyCallback(uint16_t identifyTime); -/** @brief Identify Cluster Identify Query - * - * - * - */ -bool emberAfIdentifyClusterIdentifyQueryCallback(void); -/** @brief Identify Cluster Identify Query Response - * - * - * - * @param timeout Ver.: always - */ -bool emberAfIdentifyClusterIdentifyQueryResponseCallback(uint16_t timeout); -/** @brief Identify Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIdentifyClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Identify Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIdentifyClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Identify Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIdentifyClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Identify Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIdentifyClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Identify Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIdentifyClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Identify Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIdentifyClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Identify Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIdentifyClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Identify Cluster Trigger Effect - * - * - * - * @param effectId Ver.: always - * @param effectVariant Ver.: always - */ -bool emberAfIdentifyClusterTriggerEffectCallback(uint8_t effectId, uint8_t effectVariant); -/** @brief Identify Cluster Update Commission State - * - * - * - * @param action Ver.: always - * @param commissionStateMask Ver.: always - */ -bool emberAfIdentifyClusterUpdateCommissionStateCallback(uint8_t action, uint8_t commissionStateMask); - -/** @} END Identify Cluster Callbacks */ - -/** @name Groups Cluster Callbacks */ -// @{ - -/** @brief Groups Cluster Clear Group Table - * - * This function is called by the framework when the application should clear - * the group table. - * - * @param endpoint The endpoint. Ver.: always - */ -void emberAfGroupsClusterClearGroupTableCallback(chip::EndpointId endpoint); -/** @brief Groups Cluster Add Group - * - * - * - * @param groupId Ver.: always - * @param groupName Ver.: always - */ -bool emberAfGroupsClusterAddGroupCallback(chip::GroupId groupId, uint8_t * groupName); -/** @brief Groups Cluster Add Group If Identifying - * - * - * - * @param groupId Ver.: always - * @param groupName Ver.: always - */ -bool emberAfGroupsClusterAddGroupIfIdentifyingCallback(chip::GroupId groupId, uint8_t * groupName); -/** @brief Groups Cluster Add Group Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - */ -bool emberAfGroupsClusterAddGroupResponseCallback(uint8_t status, chip::GroupId groupId); -/** @brief Groups Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfGroupsClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Groups Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfGroupsClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Groups Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfGroupsClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Groups Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfGroupsClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Groups Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfGroupsClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Groups Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfGroupsClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Groups Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfGroupsClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Groups Cluster Get Group Membership - * - * - * - * @param groupCount Ver.: always - * @param groupList Ver.: always - */ -bool emberAfGroupsClusterGetGroupMembershipCallback(uint8_t groupCount, uint8_t * groupList); -/** @brief Groups Cluster Get Group Membership Response - * - * - * - * @param capacity Ver.: always - * @param groupCount Ver.: always - * @param groupList Ver.: always - */ -bool emberAfGroupsClusterGetGroupMembershipResponseCallback(uint8_t capacity, uint8_t groupCount, uint8_t * groupList); -/** @brief Groups Cluster Remove All Groups - * - * - * - */ -bool emberAfGroupsClusterRemoveAllGroupsCallback(void); -/** @brief Groups Cluster Remove Group - * - * - * - * @param groupId Ver.: always - */ -bool emberAfGroupsClusterRemoveGroupCallback(chip::GroupId groupId); -/** @brief Groups Cluster Remove Group Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - */ -bool emberAfGroupsClusterRemoveGroupResponseCallback(uint8_t status, chip::GroupId groupId); -/** @brief Groups Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfGroupsClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Groups Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfGroupsClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Groups Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfGroupsClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Groups Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfGroupsClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Groups Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfGroupsClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Groups Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfGroupsClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Groups Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfGroupsClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Groups Cluster View Group - * - * - * - * @param groupId Ver.: always - */ -bool emberAfGroupsClusterViewGroupCallback(chip::GroupId groupId); -/** @brief Groups Cluster View Group Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - * @param groupName Ver.: always - */ -bool emberAfGroupsClusterViewGroupResponseCallback(uint8_t status, chip::GroupId groupId, uint8_t * groupName); - -/** @} END Groups Cluster Callbacks */ - -/** @name Scenes Cluster Callbacks */ -// @{ - -/** @brief Scenes Cluster ClearSceneTable - * - * This function is called by the framework when the application should clear - * the scene table. - * - * @param endpoint The endpoint. Ver.: always - */ -void emberAfScenesClusterClearSceneTableCallback(chip::EndpointId endpoint); -/** @brief Scenes Cluster Add Scene - * - * - * - * @param groupId Ver.: always - * @param sceneId Ver.: always - * @param transitionTime Ver.: always - * @param sceneName Ver.: always - * @param extensionFieldSets Ver.: always - */ -bool emberAfScenesClusterAddSceneCallback(chip::GroupId groupId, uint8_t sceneId, uint16_t transitionTime, uint8_t * sceneName, - uint8_t * extensionFieldSets); -/** @brief Scenes Cluster Add Scene Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - * @param sceneId Ver.: always - */ -bool emberAfScenesClusterAddSceneResponseCallback(uint8_t status, chip::GroupId groupId, uint8_t sceneId); -/** @brief Scenes Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfScenesClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Scenes Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfScenesClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Scenes Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfScenesClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Scenes Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfScenesClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Scenes Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfScenesClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Scenes Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfScenesClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Scenes Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfScenesClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Scenes Cluster Copy Scene - * - * - * - * @param mode Ver.: always - * @param groupIdFrom Ver.: always - * @param sceneIdFrom Ver.: always - * @param groupIdTo Ver.: always - * @param sceneIdTo Ver.: always - */ -bool emberAfScenesClusterCopySceneCallback(uint8_t mode, uint16_t groupIdFrom, uint8_t sceneIdFrom, uint16_t groupIdTo, - uint8_t sceneIdTo); -/** @brief Scenes Cluster Copy Scene Response - * - * - * - * @param status Ver.: always - * @param groupIdFrom Ver.: always - * @param sceneIdFrom Ver.: always - */ -bool emberAfScenesClusterCopySceneResponseCallback(uint8_t status, uint16_t groupIdFrom, uint8_t sceneIdFrom); -/** @brief Scenes Cluster Enhanced Add Scene - * - * - * - * @param groupId Ver.: always - * @param sceneId Ver.: always - * @param transitionTime Ver.: always - * @param sceneName Ver.: always - * @param extensionFieldSets Ver.: always - */ -bool emberAfScenesClusterEnhancedAddSceneCallback(chip::GroupId groupId, uint8_t sceneId, uint16_t transitionTime, - uint8_t * sceneName, uint8_t * extensionFieldSets); -/** @brief Scenes Cluster Enhanced Add Scene Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - * @param sceneId Ver.: always - */ -bool emberAfScenesClusterEnhancedAddSceneResponseCallback(uint8_t status, chip::GroupId groupId, uint8_t sceneId); -/** @brief Scenes Cluster Enhanced View Scene - * - * - * - * @param groupId Ver.: always - * @param sceneId Ver.: always - */ -bool emberAfScenesClusterEnhancedViewSceneCallback(chip::GroupId groupId, uint8_t sceneId); -/** @brief Scenes Cluster Enhanced View Scene Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - * @param sceneId Ver.: always - * @param transitionTime Ver.: always - * @param sceneName Ver.: always - * @param extensionFieldSets Ver.: always - */ -bool emberAfScenesClusterEnhancedViewSceneResponseCallback(uint8_t status, chip::GroupId groupId, uint8_t sceneId, - uint16_t transitionTime, uint8_t * sceneName, - uint8_t * extensionFieldSets); -/** @brief Scenes Cluster Get Scene Membership - * - * - * - * @param groupId Ver.: always - */ -bool emberAfScenesClusterGetSceneMembershipCallback(chip::GroupId groupId); -/** @brief Scenes Cluster Get Scene Membership Response - * - * - * - * @param status Ver.: always - * @param capacity Ver.: always - * @param groupId Ver.: always - * @param sceneCount Ver.: always - * @param sceneList Ver.: always - */ -bool emberAfScenesClusterGetSceneMembershipResponseCallback(uint8_t status, uint8_t capacity, chip::GroupId groupId, - uint8_t sceneCount, uint8_t * sceneList); -/** @brief Scenes Cluster Recall Scene - * - * - * - * @param groupId Ver.: always - * @param sceneId Ver.: always - * @param transitionTime Ver.: since zcl-7.0-07-5123-07 - */ -bool emberAfScenesClusterRecallSceneCallback(chip::GroupId groupId, uint8_t sceneId, uint16_t transitionTime); -/** @brief Scenes Cluster Remove All Scenes - * - * - * - * @param groupId Ver.: always - */ -bool emberAfScenesClusterRemoveAllScenesCallback(chip::GroupId groupId); -/** @brief Scenes Cluster Remove All Scenes Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - */ -bool emberAfScenesClusterRemoveAllScenesResponseCallback(uint8_t status, chip::GroupId groupId); -/** @brief Scenes Cluster Remove Scene - * - * - * - * @param groupId Ver.: always - * @param sceneId Ver.: always - */ -bool emberAfScenesClusterRemoveSceneCallback(chip::GroupId groupId, uint8_t sceneId); -/** @brief Scenes Cluster Remove Scene Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - * @param sceneId Ver.: always - */ -bool emberAfScenesClusterRemoveSceneResponseCallback(uint8_t status, chip::GroupId groupId, uint8_t sceneId); -/** @brief Scenes Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfScenesClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Scenes Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfScenesClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Scenes Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfScenesClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Scenes Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfScenesClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Scenes Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfScenesClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Scenes Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfScenesClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Scenes Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfScenesClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Scenes Cluster Store Scene - * - * - * - * @param groupId Ver.: always - * @param sceneId Ver.: always - */ -bool emberAfScenesClusterStoreSceneCallback(chip::GroupId groupId, uint8_t sceneId); -/** @brief Scenes Cluster Store Scene Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - * @param sceneId Ver.: always - */ -bool emberAfScenesClusterStoreSceneResponseCallback(uint8_t status, chip::GroupId groupId, uint8_t sceneId); -/** @brief Scenes Cluster View Scene - * - * - * - * @param groupId Ver.: always - * @param sceneId Ver.: always - */ -bool emberAfScenesClusterViewSceneCallback(chip::GroupId groupId, uint8_t sceneId); -/** @brief Scenes Cluster View Scene Response - * - * - * - * @param status Ver.: always - * @param groupId Ver.: always - * @param sceneId Ver.: always - * @param transitionTime Ver.: always - * @param sceneName Ver.: always - * @param extensionFieldSets Ver.: always - */ -bool emberAfScenesClusterViewSceneResponseCallback(uint8_t status, chip::GroupId groupId, uint8_t sceneId, uint16_t transitionTime, - uint8_t * sceneName, uint8_t * extensionFieldSets); -/** @} END Scenes Cluster Callbacks */ - -/** @name On/off Cluster Callbacks */ -// @{ -/** @brief On/off Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOnOffClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief On/off Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOnOffClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief On/off Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOnOffClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief On/off Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOnOffClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief On/off Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOnOffClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief On/off Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOnOffClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief On/off Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOnOffClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief On/off Cluster Off - * - * - * - */ -bool emberAfOnOffClusterOffCallback(void); -/** @brief On/off Cluster Off With Effect - * - * - * - * @param effectId Ver.: always - * @param effectVariant Ver.: always - */ -bool emberAfOnOffClusterOffWithEffectCallback(uint8_t effectId, uint8_t effectVariant); -/** @brief On/off Cluster On - * - * - * - */ -bool emberAfOnOffClusterOnCallback(void); -/** @brief On/off Cluster On With Recall Global Scene - * - * - * - */ -bool emberAfOnOffClusterOnWithRecallGlobalSceneCallback(void); -/** @brief On/off Cluster On With Timed Off - * - * - * - * @param onOffControl Ver.: always - * @param onTime Ver.: always - * @param offWaitTime Ver.: always - */ -bool emberAfOnOffClusterOnWithTimedOffCallback(uint8_t onOffControl, uint16_t onTime, uint16_t offWaitTime); -/** @brief On/off Cluster Sample Mfg Specific Off With Transition - * - * - * - */ -bool emberAfOnOffClusterSampleMfgSpecificOffWithTransitionCallback(void); -/** @brief On/off Cluster Sample Mfg Specific On With Transition2 - * - * - * - */ -bool emberAfOnOffClusterSampleMfgSpecificOnWithTransition2Callback(void); -/** @brief On/off Cluster Sample Mfg Specific On With Transition - * - * - * - */ -bool emberAfOnOffClusterSampleMfgSpecificOnWithTransitionCallback(void); -/** @brief On/off Cluster Sample Mfg Specific Toggle With Transition2 - * - * - * - */ -bool emberAfOnOffClusterSampleMfgSpecificToggleWithTransition2Callback(void); -/** @brief On/off Cluster Sample Mfg Specific Toggle With Transition - * - * - * - */ -bool emberAfOnOffClusterSampleMfgSpecificToggleWithTransitionCallback(void); -/** @brief On/off Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOnOffClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief On/off Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOnOffClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief On/off Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOnOffClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief On/off Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOnOffClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief On/off Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOnOffClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief On/off Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOnOffClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief On/off Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOnOffClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief On/off Cluster Toggle - * - * - * - */ -bool emberAfOnOffClusterToggleCallback(void); -/** @} END On/off Cluster Callbacks */ - -/** @name On/off Switch Configuration Cluster Callbacks */ -// @{ - -/** @brief On/off Switch Configuration Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOnOffSwitchConfigClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief On/off Switch Configuration Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOnOffSwitchConfigClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief On/off Switch Configuration Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOnOffSwitchConfigClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief On/off Switch Configuration Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOnOffSwitchConfigClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief On/off Switch Configuration Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOnOffSwitchConfigClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief On/off Switch Configuration Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOnOffSwitchConfigClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief On/off Switch Configuration Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOnOffSwitchConfigClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief On/off Switch Configuration Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOnOffSwitchConfigClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief On/off Switch Configuration Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOnOffSwitchConfigClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief On/off Switch Configuration Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOnOffSwitchConfigClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief On/off Switch Configuration Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOnOffSwitchConfigClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief On/off Switch Configuration Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOnOffSwitchConfigClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief On/off Switch Configuration Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOnOffSwitchConfigClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief On/off Switch Configuration Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOnOffSwitchConfigClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END On/off Switch Configuration Cluster Callbacks */ - -/** @name Level Control Cluster Callbacks */ -// @{ - -/** @brief Level Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfLevelControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Level Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfLevelControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Level Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfLevelControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Level Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfLevelControlClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Level Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfLevelControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Level Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfLevelControlClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Level Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfLevelControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Level Control Cluster Move - * - * - * - * @param moveMode Ver.: always - * @param rate Ver.: always - * @param optionMask Ver.: since zcl6-errata-14-0129-15 - * @param optionOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfLevelControlClusterMoveCallback(uint8_t moveMode, uint8_t rate, uint8_t optionMask, uint8_t optionOverride); -/** @brief Level Control Cluster Move To Level - * - * - * - * @param level Ver.: always - * @param transitionTime Ver.: always - * @param optionMask Ver.: since zcl6-errata-14-0129-15 - * @param optionOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfLevelControlClusterMoveToLevelCallback(uint8_t level, uint16_t transitionTime, uint8_t optionMask, - uint8_t optionOverride); -/** @brief Level Control Cluster Move To Level With On Off - * - * - * - * @param level Ver.: always - * @param transitionTime Ver.: always - */ -bool emberAfLevelControlClusterMoveToLevelWithOnOffCallback(uint8_t level, uint16_t transitionTime); -/** @brief Level Control Cluster Move With On Off - * - * - * - * @param moveMode Ver.: always - * @param rate Ver.: always - */ -bool emberAfLevelControlClusterMoveWithOnOffCallback(uint8_t moveMode, uint8_t rate); -/** @brief Level Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfLevelControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Level Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfLevelControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Level Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfLevelControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Level Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfLevelControlClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Level Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfLevelControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Level Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfLevelControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Level Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfLevelControlClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Level Control Cluster Step - * - * - * - * @param stepMode Ver.: always - * @param stepSize Ver.: always - * @param transitionTime Ver.: always - * @param optionMask Ver.: since zcl6-errata-14-0129-15 - * @param optionOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfLevelControlClusterStepCallback(uint8_t stepMode, uint8_t stepSize, uint16_t transitionTime, uint8_t optionMask, - uint8_t optionOverride); -/** @brief Level Control Cluster Step With On Off - * - * - * - * @param stepMode Ver.: always - * @param stepSize Ver.: always - * @param transitionTime Ver.: always - */ -bool emberAfLevelControlClusterStepWithOnOffCallback(uint8_t stepMode, uint8_t stepSize, uint16_t transitionTime); -/** @brief Level Control Cluster Stop - * - * - * - * @param optionMask Ver.: since zcl6-errata-14-0129-15 - * @param optionOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfLevelControlClusterStopCallback(uint8_t optionMask, uint8_t optionOverride); -/** @brief Level Control Cluster Stop With On Off - * - * - * - */ -bool emberAfLevelControlClusterStopWithOnOffCallback(void); - -/** @} END Level Control Cluster Callbacks */ - -/** @name Alarms Cluster Callbacks */ -// @{ - -/** @brief Alarms Cluster Alarm - * - * - * - * @param alarmCode Ver.: always - * @param clusterId Ver.: always - */ -bool emberAfAlarmClusterAlarmCallback(uint8_t alarmCode, chip::ClusterId clusterId); -/** @brief Alarms Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfAlarmClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Alarms Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfAlarmClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Alarms Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfAlarmClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Alarms Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfAlarmClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Alarms Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfAlarmClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Alarms Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfAlarmClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Alarms Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfAlarmClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Alarms Cluster Get Alarm - * - * - * - */ -bool emberAfAlarmClusterGetAlarmCallback(void); -/** @brief Alarms Cluster Get Alarm Response - * - * - * - * @param status Ver.: always - * @param alarmCode Ver.: always - * @param clusterId Ver.: always - * @param timeStamp Ver.: always - */ -bool emberAfAlarmClusterGetAlarmResponseCallback(uint8_t status, uint8_t alarmCode, chip::ClusterId clusterId, uint32_t timeStamp); -/** @brief Alarms Cluster Reset Alarm - * - * - * - * @param alarmCode Ver.: always - * @param clusterId Ver.: always - */ -bool emberAfAlarmClusterResetAlarmCallback(uint8_t alarmCode, chip::ClusterId clusterId); -/** @brief Alarms Cluster Reset Alarm Log - * - * - * - */ -bool emberAfAlarmClusterResetAlarmLogCallback(void); -/** @brief Alarms Cluster Reset All Alarms - * - * - * - */ -bool emberAfAlarmClusterResetAllAlarmsCallback(void); -/** @brief Alarms Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfAlarmClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Alarms Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfAlarmClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Alarms Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfAlarmClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Alarms Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfAlarmClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Alarms Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfAlarmClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Alarms Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfAlarmClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Alarms Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfAlarmClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Alarms Cluster Callbacks */ - -/** @name Time Cluster Callbacks */ -// @{ - -/** @brief Time Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTimeClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Time Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTimeClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Time Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTimeClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Time Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTimeClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Time Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTimeClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Time Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTimeClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Time Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTimeClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Time Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTimeClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Time Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTimeClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Time Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTimeClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Time Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTimeClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Time Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTimeClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Time Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTimeClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Time Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTimeClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Time Cluster Callbacks */ - -/** @name RSSI Location Cluster Callbacks */ -// @{ - -/** @brief RSSI Location Cluster Anchor Node Announce - * - * - * - * @param anchorNodeIeeeAddress Ver.: always - * @param coordinate1 Ver.: always - * @param coordinate2 Ver.: always - * @param coordinate3 Ver.: always - */ -bool emberAfRssiLocationClusterAnchorNodeAnnounceCallback(uint8_t * anchorNodeIeeeAddress, int16_t coordinate1, int16_t coordinate2, - int16_t coordinate3); -/** @brief RSSI Location Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfRssiLocationClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief RSSI Location Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfRssiLocationClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief RSSI Location Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfRssiLocationClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief RSSI Location Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfRssiLocationClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief RSSI Location Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfRssiLocationClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief RSSI Location Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfRssiLocationClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief RSSI Location Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfRssiLocationClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief RSSI Location Cluster Compact Location Data Notification - * - * - * - * @param locationType Ver.: always - * @param coordinate1 Ver.: always - * @param coordinate2 Ver.: always - * @param coordinate3 Ver.: always - * @param qualityMeasure Ver.: always - * @param locationAge Ver.: always - */ -bool emberAfRssiLocationClusterCompactLocationDataNotificationCallback(uint8_t locationType, int16_t coordinate1, - int16_t coordinate2, int16_t coordinate3, - uint8_t qualityMeasure, uint16_t locationAge); -/** @brief RSSI Location Cluster Device Configuration Response - * - * - * - * @param status Ver.: always - * @param power Ver.: always - * @param pathLossExponent Ver.: always - * @param calculationPeriod Ver.: always - * @param numberRssiMeasurements Ver.: always - * @param reportingPeriod Ver.: always - */ -bool emberAfRssiLocationClusterDeviceConfigurationResponseCallback(uint8_t status, int16_t power, uint16_t pathLossExponent, - uint16_t calculationPeriod, uint8_t numberRssiMeasurements, - uint16_t reportingPeriod); -/** @brief RSSI Location Cluster Get Device Configuration - * - * - * - * @param targetAddress Ver.: always - */ -bool emberAfRssiLocationClusterGetDeviceConfigurationCallback(uint8_t * targetAddress); -/** @brief RSSI Location Cluster Get Location Data - * - * - * - * @param flags Ver.: always - * @param numberResponses Ver.: always - * @param targetAddress Ver.: always - */ -bool emberAfRssiLocationClusterGetLocationDataCallback(uint8_t flags, uint8_t numberResponses, uint8_t * targetAddress); -/** @brief RSSI Location Cluster Location Data Notification - * - * - * - * @param locationType Ver.: always - * @param coordinate1 Ver.: always - * @param coordinate2 Ver.: always - * @param coordinate3 Ver.: always - * @param power Ver.: always - * @param pathLossExponent Ver.: always - * @param locationMethod Ver.: always - * @param qualityMeasure Ver.: always - * @param locationAge Ver.: always - */ -bool emberAfRssiLocationClusterLocationDataNotificationCallback(uint8_t locationType, int16_t coordinate1, int16_t coordinate2, - int16_t coordinate3, int16_t power, uint16_t pathLossExponent, - uint8_t locationMethod, uint8_t qualityMeasure, - uint16_t locationAge); -/** @brief RSSI Location Cluster Location Data Response - * - * - * - * @param status Ver.: always - * @param locationType Ver.: always - * @param coordinate1 Ver.: always - * @param coordinate2 Ver.: always - * @param coordinate3 Ver.: always - * @param power Ver.: always - * @param pathLossExponent Ver.: always - * @param locationMethod Ver.: always - * @param qualityMeasure Ver.: always - * @param locationAge Ver.: always - */ -bool emberAfRssiLocationClusterLocationDataResponseCallback(uint8_t status, uint8_t locationType, int16_t coordinate1, - int16_t coordinate2, int16_t coordinate3, int16_t power, - uint16_t pathLossExponent, uint8_t locationMethod, - uint8_t qualityMeasure, uint16_t locationAge); -/** @brief RSSI Location Cluster Report Rssi Measurements - * - * - * - * @param measuringDevice Ver.: always - * @param neighbors Ver.: always - * @param neighborsInfo Ver.: always - */ -bool emberAfRssiLocationClusterReportRssiMeasurementsCallback(uint8_t * measuringDevice, uint8_t neighbors, - uint8_t * neighborsInfo); -/** @brief RSSI Location Cluster Request Own Location - * - * - * - * @param blindNode Ver.: always - */ -bool emberAfRssiLocationClusterRequestOwnLocationCallback(uint8_t * blindNode); -/** @brief RSSI Location Cluster Rssi Ping - * - * - * - * @param locationType Ver.: always - */ -bool emberAfRssiLocationClusterRssiPingCallback(uint8_t locationType); -/** @brief RSSI Location Cluster Rssi Request - * - * - * - */ -bool emberAfRssiLocationClusterRssiRequestCallback(void); -/** @brief RSSI Location Cluster Rssi Response - * - * - * - * @param replyingDevice Ver.: always - * @param coordinate1 Ver.: always - * @param coordinate2 Ver.: always - * @param coordinate3 Ver.: always - * @param rssi Ver.: always - * @param numberRssiMeasurements Ver.: always - */ -bool emberAfRssiLocationClusterRssiResponseCallback(uint8_t * replyingDevice, int16_t coordinate1, int16_t coordinate2, - int16_t coordinate3, int8_t rssi, uint8_t numberRssiMeasurements); -/** @brief RSSI Location Cluster Send Pings - * - * - * - * @param targetAddress Ver.: always - * @param numberRssiMeasurements Ver.: always - * @param calculationPeriod Ver.: always - */ -bool emberAfRssiLocationClusterSendPingsCallback(uint8_t * targetAddress, uint8_t numberRssiMeasurements, - uint16_t calculationPeriod); -/** @brief RSSI Location Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfRssiLocationClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief RSSI Location Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfRssiLocationClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief RSSI Location Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfRssiLocationClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief RSSI Location Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfRssiLocationClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief RSSI Location Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfRssiLocationClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief RSSI Location Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfRssiLocationClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief RSSI Location Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfRssiLocationClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief RSSI Location Cluster Set Absolute Location - * - * - * - * @param coordinate1 Ver.: always - * @param coordinate2 Ver.: always - * @param coordinate3 Ver.: always - * @param power Ver.: always - * @param pathLossExponent Ver.: always - */ -bool emberAfRssiLocationClusterSetAbsoluteLocationCallback(int16_t coordinate1, int16_t coordinate2, int16_t coordinate3, - int16_t power, uint16_t pathLossExponent); -/** @brief RSSI Location Cluster Set Device Configuration - * - * - * - * @param power Ver.: always - * @param pathLossExponent Ver.: always - * @param calculationPeriod Ver.: always - * @param numberRssiMeasurements Ver.: always - * @param reportingPeriod Ver.: always - */ -bool emberAfRssiLocationClusterSetDeviceConfigurationCallback(int16_t power, uint16_t pathLossExponent, uint16_t calculationPeriod, - uint8_t numberRssiMeasurements, uint16_t reportingPeriod); - -/** @} END RSSI Location Cluster Callbacks */ - -/** @name Binary Input (Basic) Cluster Callbacks */ -// @{ - -/** @brief Binary Input (Basic) Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBinaryInputBasicClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Binary Input (Basic) Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBinaryInputBasicClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Binary Input (Basic) Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBinaryInputBasicClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Binary Input (Basic) Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBinaryInputBasicClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Binary Input (Basic) Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBinaryInputBasicClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Binary Input (Basic) Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBinaryInputBasicClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Binary Input (Basic) Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBinaryInputBasicClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Binary Input (Basic) Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBinaryInputBasicClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Binary Input (Basic) Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBinaryInputBasicClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Binary Input (Basic) Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBinaryInputBasicClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Binary Input (Basic) Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBinaryInputBasicClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Binary Input (Basic) Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBinaryInputBasicClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Binary Input (Basic) Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBinaryInputBasicClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Binary Input (Basic) Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBinaryInputBasicClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Binary Input (Basic) Cluster Callbacks */ - -/** @name Commissioning Cluster Callbacks */ -// @{ - -/** @brief Commissioning Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCommissioningClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Commissioning Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCommissioningClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Commissioning Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCommissioningClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Commissioning Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCommissioningClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Commissioning Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCommissioningClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Commissioning Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCommissioningClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Commissioning Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCommissioningClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Commissioning Cluster Reset Startup Parameters - * - * - * - * @param options Ver.: always - * @param index Ver.: always - */ -bool emberAfCommissioningClusterResetStartupParametersCallback(uint8_t options, uint8_t index); -/** @brief Commissioning Cluster Reset Startup Parameters Response - * - * - * - * @param status Ver.: always - */ -bool emberAfCommissioningClusterResetStartupParametersResponseCallback(uint8_t status); -/** @brief Commissioning Cluster Restart Device - * - * - * - * @param options Ver.: always - * @param delay Ver.: always - * @param jitter Ver.: always - */ -bool emberAfCommissioningClusterRestartDeviceCallback(uint8_t options, uint8_t delay, uint8_t jitter); -/** @brief Commissioning Cluster Restart Device Response - * - * - * - * @param status Ver.: always - */ -bool emberAfCommissioningClusterRestartDeviceResponseCallback(uint8_t status); -/** @brief Commissioning Cluster Restore Startup Parameters - * - * - * - * @param options Ver.: always - * @param index Ver.: always - */ -bool emberAfCommissioningClusterRestoreStartupParametersCallback(uint8_t options, uint8_t index); -/** @brief Commissioning Cluster Restore Startup Parameters Response - * - * - * - * @param status Ver.: always - */ -bool emberAfCommissioningClusterRestoreStartupParametersResponseCallback(uint8_t status); -/** @brief Commissioning Cluster Save Startup Parameters - * - * - * - * @param options Ver.: always - * @param index Ver.: always - */ -bool emberAfCommissioningClusterSaveStartupParametersCallback(uint8_t options, uint8_t index); -/** @brief Commissioning Cluster Save Startup Parameters Response - * - * - * - * @param status Ver.: always - */ -bool emberAfCommissioningClusterSaveStartupParametersResponseCallback(uint8_t status); -/** @brief Commissioning Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCommissioningClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Commissioning Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCommissioningClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Commissioning Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCommissioningClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Commissioning Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCommissioningClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Commissioning Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCommissioningClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Commissioning Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCommissioningClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Commissioning Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCommissioningClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Commissioning Cluster Callbacks */ - -/** @name Partition Cluster Callbacks */ -// @{ - -/** @brief Partition Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPartitionClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Partition Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPartitionClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Partition Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPartitionClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Partition Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPartitionClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Partition Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPartitionClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Partition Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPartitionClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Partition Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPartitionClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Partition Cluster Multiple Ack - * - * - * - * @param ackOptions Ver.: always - * @param firstFrameIdAndNackList Ver.: always - */ -bool emberAfPartitionClusterMultipleAckCallback(uint8_t ackOptions, uint8_t * firstFrameIdAndNackList); -/** @brief Partition Cluster Read Handshake Param - * - * - * - * @param partitionedClusterId Ver.: always - * @param attributeList Ver.: always - */ -bool emberAfPartitionClusterReadHandshakeParamCallback(uint16_t partitionedClusterId, uint8_t * attributeList); -/** @brief Partition Cluster Read Handshake Param Response - * - * - * - * @param partitionedClusterId Ver.: always - * @param readAttributeStatusRecords Ver.: always - */ -bool emberAfPartitionClusterReadHandshakeParamResponseCallback(uint16_t partitionedClusterId, uint8_t * readAttributeStatusRecords); -/** @brief Partition Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPartitionClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Partition Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPartitionClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Partition Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPartitionClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Partition Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPartitionClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Partition Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPartitionClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Partition Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPartitionClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Partition Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPartitionClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Partition Cluster Transfer Partitioned Frame - * - * - * - * @param fragmentationOptions Ver.: always - * @param partitionedIndicatorAndFrame Ver.: always - */ -bool emberAfPartitionClusterTransferPartitionedFrameCallback(uint8_t fragmentationOptions, uint8_t * partitionedIndicatorAndFrame); -/** @brief Partition Cluster Write Handshake Param - * - * - * - * @param partitionedClusterId Ver.: always - * @param writeAttributeRecords Ver.: always - */ -bool emberAfPartitionClusterWriteHandshakeParamCallback(uint16_t partitionedClusterId, uint8_t * writeAttributeRecords); - -/** @} END Partition Cluster Callbacks */ - -/** @name Over the Air Bootloading Cluster Callbacks */ -// @{ - -/** @brief Over the Air Bootloading Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOtaBootloadClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Over the Air Bootloading Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOtaBootloadClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Over the Air Bootloading Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOtaBootloadClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Over the Air Bootloading Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOtaBootloadClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Over the Air Bootloading Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOtaBootloadClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Over the Air Bootloading Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOtaBootloadClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Over the Air Bootloading Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOtaBootloadClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Over the Air Bootloading Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOtaBootloadClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Over the Air Bootloading Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOtaBootloadClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Over the Air Bootloading Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOtaBootloadClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Over the Air Bootloading Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOtaBootloadClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Over the Air Bootloading Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOtaBootloadClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Over the Air Bootloading Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOtaBootloadClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Over the Air Bootloading Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOtaBootloadClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Over the Air Bootloading Cluster Callbacks */ - -/** @name Power Profile Cluster Callbacks */ -// @{ - -/** @brief Power Profile Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPowerProfileClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Power Profile Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPowerProfileClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Power Profile Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPowerProfileClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Power Profile Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPowerProfileClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Power Profile Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPowerProfileClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Power Profile Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPowerProfileClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Power Profile Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPowerProfileClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Power Profile Cluster Energy Phases Schedule Notification - * - * - * - * @param powerProfileId Ver.: always - * @param numOfScheduledPhases Ver.: always - * @param scheduledPhases Ver.: always - */ -bool emberAfPowerProfileClusterEnergyPhasesScheduleNotificationCallback(uint8_t powerProfileId, uint8_t numOfScheduledPhases, - uint8_t * scheduledPhases); -/** @brief Power Profile Cluster Energy Phases Schedule Request - * - * - * - * @param powerProfileId Ver.: always - */ -bool emberAfPowerProfileClusterEnergyPhasesScheduleRequestCallback(uint8_t powerProfileId); -/** @brief Power Profile Cluster Energy Phases Schedule Response - * - * - * - * @param powerProfileId Ver.: always - * @param numOfScheduledPhases Ver.: always - * @param scheduledPhases Ver.: always - */ -bool emberAfPowerProfileClusterEnergyPhasesScheduleResponseCallback(uint8_t powerProfileId, uint8_t numOfScheduledPhases, - uint8_t * scheduledPhases); -/** @brief Power Profile Cluster Energy Phases Schedule State Notification - * - * - * - * @param powerProfileId Ver.: always - * @param numOfScheduledPhases Ver.: always - * @param scheduledPhases Ver.: always - */ -bool emberAfPowerProfileClusterEnergyPhasesScheduleStateNotificationCallback(uint8_t powerProfileId, uint8_t numOfScheduledPhases, - uint8_t * scheduledPhases); -/** @brief Power Profile Cluster Energy Phases Schedule State Request - * - * - * - * @param powerProfileId Ver.: always - */ -bool emberAfPowerProfileClusterEnergyPhasesScheduleStateRequestCallback(uint8_t powerProfileId); -/** @brief Power Profile Cluster Energy Phases Schedule State Response - * - * - * - * @param powerProfileId Ver.: always - * @param numOfScheduledPhases Ver.: always - * @param scheduledPhases Ver.: always - */ -bool emberAfPowerProfileClusterEnergyPhasesScheduleStateResponseCallback(uint8_t powerProfileId, uint8_t numOfScheduledPhases, - uint8_t * scheduledPhases); -/** @brief Power Profile Cluster Get Overall Schedule Price - * - * - * - */ -bool emberAfPowerProfileClusterGetOverallSchedulePriceCallback(void); -/** @brief Power Profile Cluster Get Overall Schedule Price Response - * - * - * - * @param currency Ver.: always - * @param price Ver.: always - * @param priceTrailingDigit Ver.: always - */ -bool emberAfPowerProfileClusterGetOverallSchedulePriceResponseCallback(uint16_t currency, uint32_t price, - uint8_t priceTrailingDigit); -/** @brief Power Profile Cluster Get Power Profile Price - * - * - * - * @param powerProfileId Ver.: always - */ -bool emberAfPowerProfileClusterGetPowerProfilePriceCallback(uint8_t powerProfileId); -/** @brief Power Profile Cluster Get Power Profile Price Extended - * - * - * - * @param options Ver.: always - * @param powerProfileId Ver.: always - * @param powerProfileStartTime Ver.: always - */ -bool emberAfPowerProfileClusterGetPowerProfilePriceExtendedCallback(uint8_t options, uint8_t powerProfileId, - uint16_t powerProfileStartTime); -/** @brief Power Profile Cluster Get Power Profile Price Extended Response - * - * - * - * @param powerProfileId Ver.: always - * @param currency Ver.: always - * @param price Ver.: always - * @param priceTrailingDigit Ver.: always - */ -bool emberAfPowerProfileClusterGetPowerProfilePriceExtendedResponseCallback(uint8_t powerProfileId, uint16_t currency, - uint32_t price, uint8_t priceTrailingDigit); -/** @brief Power Profile Cluster Get Power Profile Price Response - * - * - * - * @param powerProfileId Ver.: always - * @param currency Ver.: always - * @param price Ver.: always - * @param priceTrailingDigit Ver.: always - */ -bool emberAfPowerProfileClusterGetPowerProfilePriceResponseCallback(uint8_t powerProfileId, uint16_t currency, uint32_t price, - uint8_t priceTrailingDigit); -/** @brief Power Profile Cluster Power Profile Notification - * - * - * - * @param totalProfileNum Ver.: always - * @param powerProfileId Ver.: always - * @param numOfTransferredPhases Ver.: always - * @param transferredPhases Ver.: always - */ -bool emberAfPowerProfileClusterPowerProfileNotificationCallback(uint8_t totalProfileNum, uint8_t powerProfileId, - uint8_t numOfTransferredPhases, uint8_t * transferredPhases); -/** @brief Power Profile Cluster Power Profile Request - * - * - * - * @param powerProfileId Ver.: always - */ -bool emberAfPowerProfileClusterPowerProfileRequestCallback(uint8_t powerProfileId); -/** @brief Power Profile Cluster Power Profile Response - * - * - * - * @param totalProfileNum Ver.: always - * @param powerProfileId Ver.: always - * @param numOfTransferredPhases Ver.: always - * @param transferredPhases Ver.: always - */ -bool emberAfPowerProfileClusterPowerProfileResponseCallback(uint8_t totalProfileNum, uint8_t powerProfileId, - uint8_t numOfTransferredPhases, uint8_t * transferredPhases); -/** @brief Power Profile Cluster Power Profile Schedule Constraints Notification - * - * - * - * @param powerProfileId Ver.: always - * @param startAfter Ver.: always - * @param stopBefore Ver.: always - */ -bool emberAfPowerProfileClusterPowerProfileScheduleConstraintsNotificationCallback(uint8_t powerProfileId, uint16_t startAfter, - uint16_t stopBefore); -/** @brief Power Profile Cluster Power Profile Schedule Constraints Request - * - * - * - * @param powerProfileId Ver.: always - */ -bool emberAfPowerProfileClusterPowerProfileScheduleConstraintsRequestCallback(uint8_t powerProfileId); -/** @brief Power Profile Cluster Power Profile Schedule Constraints Response - * - * - * - * @param powerProfileId Ver.: always - * @param startAfter Ver.: always - * @param stopBefore Ver.: always - */ -bool emberAfPowerProfileClusterPowerProfileScheduleConstraintsResponseCallback(uint8_t powerProfileId, uint16_t startAfter, - uint16_t stopBefore); -/** @brief Power Profile Cluster Power Profile State Request - * - * - * - */ -bool emberAfPowerProfileClusterPowerProfileStateRequestCallback(void); -/** @brief Power Profile Cluster Power Profile State Response - * - * - * - * @param powerProfileCount Ver.: always - * @param powerProfileRecords Ver.: always - */ -bool emberAfPowerProfileClusterPowerProfileStateResponseCallback(uint8_t powerProfileCount, uint8_t * powerProfileRecords); -/** @brief Power Profile Cluster Power Profiles State Notification - * - * - * - * @param powerProfileCount Ver.: always - * @param powerProfileRecords Ver.: always - */ -bool emberAfPowerProfileClusterPowerProfilesStateNotificationCallback(uint8_t powerProfileCount, uint8_t * powerProfileRecords); -/** @brief Power Profile Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPowerProfileClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Power Profile Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPowerProfileClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Power Profile Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPowerProfileClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Power Profile Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPowerProfileClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Power Profile Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPowerProfileClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Power Profile Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPowerProfileClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Power Profile Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPowerProfileClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Power Profile Cluster Callbacks */ - -/** @name Appliance Control Cluster Callbacks */ -// @{ - -/** @brief Appliance Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfApplianceControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Appliance Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfApplianceControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Appliance Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfApplianceControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Appliance Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfApplianceControlClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Appliance Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfApplianceControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Appliance Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfApplianceControlClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Appliance Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfApplianceControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Appliance Control Cluster Execution Of A Command - * - * - * - * @param commandId Ver.: always - */ -bool emberAfApplianceControlClusterExecutionOfACommandCallback(chip::CommandId commandId); -/** @brief Appliance Control Cluster Overload Pause - * - * - * - */ -bool emberAfApplianceControlClusterOverloadPauseCallback(void); -/** @brief Appliance Control Cluster Overload Pause Resume - * - * - * - */ -bool emberAfApplianceControlClusterOverloadPauseResumeCallback(void); -/** @brief Appliance Control Cluster Overload Warning - * - * - * - * @param warningEvent Ver.: always - */ -bool emberAfApplianceControlClusterOverloadWarningCallback(uint8_t warningEvent); -/** @brief Appliance Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfApplianceControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Appliance Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfApplianceControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Appliance Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfApplianceControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Appliance Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfApplianceControlClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Appliance Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfApplianceControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Appliance Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfApplianceControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Appliance Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfApplianceControlClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Appliance Control Cluster Signal State - * - * - * - */ -bool emberAfApplianceControlClusterSignalStateCallback(void); -/** @brief Appliance Control Cluster Signal State Notification - * - * - * - * @param applianceStatus Ver.: always - * @param remoteEnableFlagsAndDeviceStatus2 Ver.: always - * @param applianceStatus2 Ver.: always - */ -bool emberAfApplianceControlClusterSignalStateNotificationCallback(uint8_t applianceStatus, - uint8_t remoteEnableFlagsAndDeviceStatus2, - uint32_t applianceStatus2); -/** @brief Appliance Control Cluster Signal State Response - * - * - * - * @param applianceStatus Ver.: always - * @param remoteEnableFlagsAndDeviceStatus2 Ver.: always - * @param applianceStatus2 Ver.: always - */ -bool emberAfApplianceControlClusterSignalStateResponseCallback(uint8_t applianceStatus, uint8_t remoteEnableFlagsAndDeviceStatus2, - uint32_t applianceStatus2); -/** @brief Appliance Control Cluster Write Functions - * - * - * - * @param functionId Ver.: always - * @param functionDataType Ver.: always - * @param functionData Ver.: always - */ -bool emberAfApplianceControlClusterWriteFunctionsCallback(uint16_t functionId, uint8_t functionDataType, uint8_t * functionData); - -/** @} END Appliance Control Cluster Callbacks */ - -/** @name Poll Control Cluster Callbacks */ -// @{ - -/** @brief Poll Control Cluster Check In - * - * - * - */ -bool emberAfPollControlClusterCheckInCallback(void); -/** @brief Poll Control Cluster Check In Response - * - * - * - * @param startFastPolling Ver.: always - * @param fastPollTimeout Ver.: always - */ -bool emberAfPollControlClusterCheckInResponseCallback(uint8_t startFastPolling, uint16_t fastPollTimeout); -/** @brief Poll Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPollControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Poll Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPollControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Poll Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPollControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Poll Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPollControlClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Poll Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPollControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Poll Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPollControlClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Poll Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPollControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Poll Control Cluster Fast Poll Stop - * - * - * - */ -bool emberAfPollControlClusterFastPollStopCallback(void); -/** @brief Poll Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPollControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Poll Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPollControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Poll Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPollControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Poll Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPollControlClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Poll Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPollControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Poll Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPollControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Poll Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPollControlClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Poll Control Cluster Set Long Poll Interval - * - * - * - * @param newLongPollInterval Ver.: always - */ -bool emberAfPollControlClusterSetLongPollIntervalCallback(uint32_t newLongPollInterval); -/** @brief Poll Control Cluster Set Short Poll Interval - * - * - * - * @param newShortPollInterval Ver.: always - */ -bool emberAfPollControlClusterSetShortPollIntervalCallback(uint16_t newShortPollInterval); - -/** @} END Poll Control Cluster Callbacks */ - -/** @name Green Power Cluster Callbacks */ -// @{ - -/** @brief Green Power Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfGreenPowerClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Green Power Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfGreenPowerClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Green Power Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfGreenPowerClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Green Power Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfGreenPowerClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Green Power Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfGreenPowerClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Green Power Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfGreenPowerClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Green Power Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfGreenPowerClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Green Power Cluster Gp Commissioning Notification - * - * - * - * @param options Ver.: since gp-1.0-09-5499-24 - * @param gpdSrcId Ver.: since gp-1.0-09-5499-24 - * @param gpdIeee Ver.: since gp-1.0-09-5499-24 - * @param endpoint Ver.: since gp-1.0-09-5499-24 - * @param gpdSecurityFrameCounter Ver.: since gp-1.0-09-5499-24 - * @param gpdCommandId Ver.: since gp-1.0-09-5499-24 - * @param gpdCommandPayload Ver.: since gp-1.0-09-5499-24 - * @param gppShortAddress Ver.: since gp-1.0-09-5499-24 - * @param gppLink Ver.: since gp-1.0-09-5499-24 - * @param mic Ver.: since gp-1.0-09-5499-24 - */ -bool emberAfGreenPowerClusterGpCommissioningNotificationCallback(uint16_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, - chip::EndpointId endpoint, uint32_t gpdSecurityFrameCounter, - uint8_t gpdCommandId, uint8_t * gpdCommandPayload, - uint16_t gppShortAddress, uint8_t gppLink, uint32_t mic); -/** @brief Green Power Cluster Gp Notification - * - * - * - * @param options Ver.: since gp-1.0-09-5499-24 - * @param gpdSrcId Ver.: since gp-1.0-09-5499-24 - * @param gpdIeee Ver.: since gp-1.0-09-5499-24 - * @param gpdEndpoint Ver.: since gp-1.0-09-5499-24 - * @param gpdSecurityFrameCounter Ver.: since gp-1.0-09-5499-24 - * @param gpdCommandId Ver.: since gp-1.0-09-5499-24 - * @param gpdCommandPayload Ver.: since gp-1.0-09-5499-24 - * @param gppShortAddress Ver.: since gp-1.0-09-5499-24 - * @param gppDistance Ver.: since gp-1.0-09-5499-24 - */ -bool emberAfGreenPowerClusterGpNotificationCallback(uint16_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, uint8_t gpdEndpoint, - uint32_t gpdSecurityFrameCounter, uint8_t gpdCommandId, - uint8_t * gpdCommandPayload, uint16_t gppShortAddress, uint8_t gppDistance); -/** @brief Green Power Cluster Gp Notification Response - * - * - * - * @param options Ver.: since gp-1.0-09-5499-24 - * @param gpdSrcId Ver.: since gp-1.0-09-5499-24 - * @param gpdIeee Ver.: since gp-1.0-09-5499-24 - * @param endpoint Ver.: since gp-1.0-09-5499-24 - * @param gpdSecurityFrameCounter Ver.: since gp-1.0-09-5499-24 - */ -bool emberAfGreenPowerClusterGpNotificationResponseCallback(uint8_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, uint8_t endpoint, - uint32_t gpdSecurityFrameCounter); -/** @brief Green Power Cluster Gp Pairing - * - * - * - * @param options Ver.: since gp-1.0-09-5499-24 - * @param gpdSrcId Ver.: since gp-1.0-09-5499-24 - * @param gpdIeee Ver.: since gp-1.0-09-5499-24 - * @param endpoint Ver.: since gp-1.0-09-5499-24 - * @param sinkIeeeAddress Ver.: since gp-1.0-09-5499-24 - * @param sinkNwkAddress Ver.: since gp-1.0-09-5499-24 - * @param sinkGroupId Ver.: since gp-1.0-09-5499-24 - * @param deviceId Ver.: since gp-1.0-09-5499-24 - * @param gpdSecurityFrameCounter Ver.: since gp-1.0-09-5499-24 - * @param gpdKey Ver.: since gp-1.0-09-5499-24 - * @param assignedAlias Ver.: since gp-1.0-09-5499-24 - * @param groupcastRadius Ver.: since gp-1.0-09-5499-24 - */ -bool emberAfGreenPowerClusterGpPairingCallback(uint32_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, uint8_t endpoint, - uint8_t * sinkIeeeAddress, uint16_t sinkNwkAddress, uint16_t sinkGroupId, - uint8_t deviceId, uint32_t gpdSecurityFrameCounter, uint8_t * gpdKey, - uint16_t assignedAlias, uint8_t groupcastRadius); -/** @brief Green Power Cluster Gp Pairing Configuration - * - * - * - * @param actions Ver.: since gp-1.0-09-5499-24 - * @param options Ver.: since gp-1.0-09-5499-24 - * @param gpdSrcId Ver.: since gp-1.0-09-5499-24 - * @param gpdIeee Ver.: since gp-1.0-09-5499-24 - * @param endpoint Ver.: since gp-1.0-09-5499-24 - * @param deviceId Ver.: since gp-1.0-09-5499-24 - * @param groupListCount Ver.: since gp-1.0-09-5499-24 - * @param groupList Ver.: since gp-1.0-09-5499-24 - * @param gpdAssignedAlias Ver.: since gp-1.0-09-5499-24 - * @param groupcastRadius Ver.: since gp-1.0-15-2014-05-CCB2180 - * @param securityOptions Ver.: since gp-1.0-09-5499-24 - * @param gpdSecurityFrameCounter Ver.: since gp-1.0-09-5499-24 - * @param gpdSecurityKey Ver.: since gp-1.0-09-5499-24 - * @param numberOfPairedEndpoints Ver.: since gp-1.0-09-5499-24 - * @param pairedEndpoints Ver.: since gp-1.0-09-5499-24 - * @param applicationInformation Ver.: always - * @param manufacturerId Ver.: always - * @param modeId Ver.: always - * @param numberOfGpdCommands Ver.: always - * @param gpdCommandIdList Ver.: always - * @param clusterIdListCount Ver.: always - * @param clusterListServer Ver.: always - * @param clusterListClient Ver.: always - * @param switchInformationLength Ver.: always - * @param switchConfiguration Ver.: always - * @param currentContactStatus Ver.: always - * @param totalNumberOfReports Ver.: always - * @param numberOfReports Ver.: always - * @param reportDescriptor Ver.: always - */ -bool emberAfGreenPowerClusterGpPairingConfigurationCallback( - uint8_t actions, uint16_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, chip::EndpointId endpoint, uint8_t deviceId, - uint8_t groupListCount, uint8_t * groupList, uint16_t gpdAssignedAlias, uint8_t groupcastRadius, uint8_t securityOptions, - uint32_t gpdSecurityFrameCounter, uint8_t * gpdSecurityKey, uint8_t numberOfPairedEndpoints, uint8_t * pairedEndpoints, - uint8_t applicationInformation, uint16_t manufacturerId, uint16_t modeId, uint8_t numberOfGpdCommands, - uint8_t * gpdCommandIdList, uint8_t clusterIdListCount, uint8_t * clusterListServer, uint8_t * clusterListClient, - uint8_t switchInformationLength, uint8_t switchConfiguration, uint8_t currentContactStatus, uint8_t totalNumberOfReports, - uint8_t numberOfReports, uint8_t * reportDescriptor); -/** @brief Green Power Cluster Gp Pairing Search - * - * - * - * @param options Ver.: since gp-1.0-09-5499-24 - * @param gpdSrcId Ver.: since gp-1.0-09-5499-24 - * @param gpdIeee Ver.: since gp-1.0-09-5499-24 - * @param endpoint Ver.: always - */ -bool emberAfGreenPowerClusterGpPairingSearchCallback(uint16_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, - chip::EndpointId endpoint); -/** @brief Green Power Cluster Gp Proxy Commissioning Mode - * - * - * - * @param options Ver.: since gp-1.0-09-5499-24 - * @param commissioningWindow Ver.: since gp-1.0-15-02014-011 - * @param channel Ver.: since gp-1.0-09-5499-24 - */ -bool emberAfGreenPowerClusterGpProxyCommissioningModeCallback(uint8_t options, uint16_t commissioningWindow, uint8_t channel); -/** @brief Green Power Cluster Gp Proxy Table Request - * - * - * - * @param options Ver.: always - * @param gpdSrcId Ver.: always - * @param gpdIeee Ver.: always - * @param endpoint Ver.: always - * @param index Ver.: always - */ -bool emberAfGreenPowerClusterGpProxyTableRequestCallback(uint8_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, uint8_t endpoint, - uint8_t index); -/** @brief Green Power Cluster Gp Proxy Table Response - * - * - * - * @param status Ver.: always - * @param totalNumberOfNonEmptyProxyTableEntries Ver.: always - * @param startIndex Ver.: always - * @param entriesCount Ver.: always - * @param proxyTableEntries Ver.: always - */ -bool emberAfGreenPowerClusterGpProxyTableResponseCallback(uint8_t status, uint8_t totalNumberOfNonEmptyProxyTableEntries, - uint8_t startIndex, uint8_t entriesCount, uint8_t * proxyTableEntries); -/** @brief Green Power Cluster Gp Response - * - * - * - * @param options Ver.: since gp-1.0-09-5499-24 - * @param tempMasterShortAddress Ver.: since gp-1.0-09-5499-24 - * @param tempMasterTxChannel Ver.: since gp-1.0-09-5499-24 - * @param gpdSrcId Ver.: since gp-1.0-09-5499-24 - * @param gpdIeee Ver.: since gp-1.0-09-5499-24 - * @param endpoint Ver.: always - * @param gpdCommandId Ver.: since gp-1.0-09-5499-24 - * @param gpdCommandPayload Ver.: always - */ -bool emberAfGreenPowerClusterGpResponseCallback(uint8_t options, uint16_t tempMasterShortAddress, uint8_t tempMasterTxChannel, - uint32_t gpdSrcId, uint8_t * gpdIeee, chip::EndpointId endpoint, - uint8_t gpdCommandId, uint8_t * gpdCommandPayload); -/** @brief Green Power Cluster Gp Sink Commissioning Mode - * - * - * - * @param options Ver.: always - * @param gpmAddrForSecurity Ver.: always - * @param gpmAddrForPairing Ver.: always - * @param sinkEndpoint Ver.: always - */ -bool emberAfGreenPowerClusterGpSinkCommissioningModeCallback(uint8_t options, uint16_t gpmAddrForSecurity, - uint16_t gpmAddrForPairing, uint8_t sinkEndpoint); -/** @brief Green Power Cluster Gp Sink Table Request - * - * - * - * @param options Ver.: always - * @param gpdSrcId Ver.: always - * @param gpdIeee Ver.: always - * @param endpoint Ver.: always - * @param index Ver.: always - */ -bool emberAfGreenPowerClusterGpSinkTableRequestCallback(uint8_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, uint8_t endpoint, - uint8_t index); -/** @brief Green Power Cluster Gp Sink Table Response - * - * - * - * @param status Ver.: always - * @param totalNumberofNonEmptySinkTableEntries Ver.: always - * @param startIndex Ver.: always - * @param sinkTableEntriesCount Ver.: always - * @param sinkTableEntries Ver.: always - */ -bool emberAfGreenPowerClusterGpSinkTableResponseCallback(uint8_t status, uint8_t totalNumberofNonEmptySinkTableEntries, - uint8_t startIndex, uint8_t sinkTableEntriesCount, - uint8_t * sinkTableEntries); -/** @brief Green Power Cluster Gp Translation Table Request - * - * - * - * @param startIndex Ver.: since gp-1.0-09-5499-24 - */ -bool emberAfGreenPowerClusterGpTranslationTableRequestCallback(uint8_t startIndex); -/** @brief Green Power Cluster Gp Translation Table Response - * - * - * - * @param status Ver.: since gp-1.0-09-5499-24 - * @param options Ver.: since gp-1.0-09-5499-24 - * @param totalNumberOfEntries Ver.: since gp-1.0-09-5499-24 - * @param startIndex Ver.: since gp-1.0-09-5499-24 - * @param entriesCount Ver.: since gp-1.0-09-5499-24 - * @param translationTableList Ver.: since gp-1.0-09-5499-24 - */ -bool emberAfGreenPowerClusterGpTranslationTableResponseCallback(uint8_t status, uint8_t options, uint8_t totalNumberOfEntries, - uint8_t startIndex, uint8_t entriesCount, - uint8_t * translationTableList); -/** @brief Green Power Cluster Gp Translation Table Update - * - * - * - * @param options Ver.: since gp-1.0-09-5499-24 - * @param gpdSrcId Ver.: since gp-1.0-09-5499-24 - * @param gpdIeee Ver.: since gp-1.0-09-5499-24 - * @param endpoint Ver.: since gp-1.0-09-5499-24 - * @param translations Ver.: since gp-1.0-09-5499-24 - */ -bool emberAfGreenPowerClusterGpTranslationTableUpdateCallback(uint16_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, - chip::EndpointId endpoint, uint8_t * translations); -/** @brief Green Power Cluster Gp Tunneling Stop - * - * - * - * @param options Ver.: since gp-1.0-09-5499-24 - * @param gpdSrcId Ver.: since gp-1.0-09-5499-24 - * @param gpdIeee Ver.: since gp-1.0-09-5499-24 - * @param endpoint Ver.: since gp-1.0-09-5499-24 - * @param gpdSecurityFrameCounter Ver.: since gp-1.0-09-5499-24 - * @param gppShortAddress Ver.: since gp-1.0-09-5499-24 - * @param gppDistance Ver.: since gp-1.0-09-5499-24 - */ -bool emberAfGreenPowerClusterGpTunnelingStopCallback(uint8_t options, uint32_t gpdSrcId, uint8_t * gpdIeee, uint8_t endpoint, - uint32_t gpdSecurityFrameCounter, uint16_t gppShortAddress, - int8_t gppDistance); -/** @brief Green Power Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfGreenPowerClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Green Power Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfGreenPowerClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Green Power Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfGreenPowerClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Green Power Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfGreenPowerClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Green Power Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfGreenPowerClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Green Power Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfGreenPowerClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Green Power Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfGreenPowerClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Green Power Cluster Callbacks */ - -/** @name Keep-Alive Cluster Callbacks */ -// @{ - -/** @brief Keep-Alive Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfKeepaliveClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Keep-Alive Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfKeepaliveClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Keep-Alive Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfKeepaliveClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Keep-Alive Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfKeepaliveClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Keep-Alive Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfKeepaliveClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Keep-Alive Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfKeepaliveClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Keep-Alive Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfKeepaliveClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Keep-Alive Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfKeepaliveClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Keep-Alive Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfKeepaliveClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Keep-Alive Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfKeepaliveClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Keep-Alive Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfKeepaliveClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Keep-Alive Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfKeepaliveClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Keep-Alive Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfKeepaliveClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Keep-Alive Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfKeepaliveClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Keep-Alive Cluster Callbacks */ - -/** @name Shade Configuration Cluster Callbacks */ -// @{ - -/** @brief Shade Configuration Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfShadeConfigClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Shade Configuration Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfShadeConfigClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Shade Configuration Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfShadeConfigClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Shade Configuration Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfShadeConfigClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Shade Configuration Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfShadeConfigClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Shade Configuration Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfShadeConfigClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Shade Configuration Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfShadeConfigClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Shade Configuration Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfShadeConfigClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Shade Configuration Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfShadeConfigClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Shade Configuration Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfShadeConfigClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Shade Configuration Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfShadeConfigClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Shade Configuration Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfShadeConfigClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Shade Configuration Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfShadeConfigClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Shade Configuration Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfShadeConfigClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Shade Configuration Cluster Callbacks */ - -/** @name Door Lock Cluster Callbacks */ -// @{ - -/** @brief Door Lock Cluster Clear All Pins - * - * - * - */ -bool emberAfDoorLockClusterClearAllPinsCallback(void); -/** @brief Door Lock Cluster Clear All Pins Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterClearAllPinsResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Clear All Rfids - * - * - * - */ -bool emberAfDoorLockClusterClearAllRfidsCallback(void); -/** @brief Door Lock Cluster Clear All Rfids Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterClearAllRfidsResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Clear Holiday Schedule - * - * - * - * @param scheduleId Ver.: always - */ -bool emberAfDoorLockClusterClearHolidayScheduleCallback(uint8_t scheduleId); -/** @brief Door Lock Cluster Clear Holiday Schedule Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterClearHolidayScheduleResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Clear Pin - * - * - * - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterClearPinCallback(uint16_t userId); -/** @brief Door Lock Cluster Clear Pin Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterClearPinResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Clear Rfid - * - * - * - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterClearRfidCallback(uint16_t userId); -/** @brief Door Lock Cluster Clear Rfid Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterClearRfidResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Clear Weekday Schedule - * - * - * - * @param scheduleId Ver.: always - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterClearWeekdayScheduleCallback(uint8_t scheduleId, uint16_t userId); -/** @brief Door Lock Cluster Clear Weekday Schedule Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterClearWeekdayScheduleResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Clear Yearday Schedule - * - * - * - * @param scheduleId Ver.: always - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterClearYeardayScheduleCallback(uint8_t scheduleId, uint16_t userId); -/** @brief Door Lock Cluster Clear Yearday Schedule Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterClearYeardayScheduleResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDoorLockClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Door Lock Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDoorLockClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Door Lock Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDoorLockClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Door Lock Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDoorLockClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Door Lock Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDoorLockClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Door Lock Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDoorLockClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Door Lock Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDoorLockClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Door Lock Cluster Get Holiday Schedule - * - * - * - * @param scheduleId Ver.: always - */ -bool emberAfDoorLockClusterGetHolidayScheduleCallback(uint8_t scheduleId); -/** @brief Door Lock Cluster Get Holiday Schedule Response - * - * - * - * @param scheduleId Ver.: always - * @param status Ver.: always - * @param localStartTime Ver.: since ha-1.2-05-3520-29 - * @param localEndTime Ver.: since ha-1.2-05-3520-29 - * @param operatingModeDuringHoliday Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfDoorLockClusterGetHolidayScheduleResponseCallback(uint8_t scheduleId, uint8_t status, uint32_t localStartTime, - uint32_t localEndTime, uint8_t operatingModeDuringHoliday); -/** @brief Door Lock Cluster Get Log Record - * - * - * - * @param logIndex Ver.: always - */ -bool emberAfDoorLockClusterGetLogRecordCallback(uint16_t logIndex); -/** @brief Door Lock Cluster Get Log Record Response - * - * - * - * @param logEntryId Ver.: always - * @param timestamp Ver.: always - * @param eventType Ver.: always - * @param source Ver.: always - * @param eventIdOrAlarmCode Ver.: always - * @param userId Ver.: always - * @param pin Ver.: always - */ -bool emberAfDoorLockClusterGetLogRecordResponseCallback(uint16_t logEntryId, uint32_t timestamp, uint8_t eventType, uint8_t source, - uint8_t eventIdOrAlarmCode, uint16_t userId, uint8_t * pin); -/** @brief Door Lock Cluster Get Pin - * - * - * - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterGetPinCallback(uint16_t userId); -/** @brief Door Lock Cluster Get Pin Response - * - * - * - * @param userId Ver.: always - * @param userStatus Ver.: always - * @param userType Ver.: always - * @param pin Ver.: always - */ -bool emberAfDoorLockClusterGetPinResponseCallback(uint16_t userId, uint8_t userStatus, uint8_t userType, uint8_t * pin); -/** @brief Door Lock Cluster Get Rfid - * - * - * - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterGetRfidCallback(uint16_t userId); -/** @brief Door Lock Cluster Get Rfid Response - * - * - * - * @param userId Ver.: always - * @param userStatus Ver.: always - * @param userType Ver.: always - * @param rfid Ver.: always - */ -bool emberAfDoorLockClusterGetRfidResponseCallback(uint16_t userId, uint8_t userStatus, uint8_t userType, uint8_t * rfid); -/** @brief Door Lock Cluster Get User Status - * - * - * - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterGetUserStatusCallback(uint16_t userId); -/** @brief Door Lock Cluster Get User Status Response - * - * - * - * @param userId Ver.: always - * @param status Ver.: always - */ -bool emberAfDoorLockClusterGetUserStatusResponseCallback(uint16_t userId, uint8_t status); -/** @brief Door Lock Cluster Get User Type - * - * - * - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterGetUserTypeCallback(uint16_t userId); -/** @brief Door Lock Cluster Get User Type Response - * - * - * - * @param userId Ver.: always - * @param userType Ver.: always - */ -bool emberAfDoorLockClusterGetUserTypeResponseCallback(uint16_t userId, uint8_t userType); -/** @brief Door Lock Cluster Get Weekday Schedule - * - * - * - * @param scheduleId Ver.: always - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterGetWeekdayScheduleCallback(uint8_t scheduleId, uint16_t userId); -/** @brief Door Lock Cluster Get Weekday Schedule Response - * - * - * - * @param scheduleId Ver.: always - * @param userId Ver.: always - * @param status Ver.: always - * @param daysMask Ver.: since ha-1.2-05-3520-29 - * @param startHour Ver.: since ha-1.2-05-3520-29 - * @param startMinute Ver.: since ha-1.2-05-3520-29 - * @param endHour Ver.: since ha-1.2-05-3520-29 - * @param endMinute Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfDoorLockClusterGetWeekdayScheduleResponseCallback(uint8_t scheduleId, uint16_t userId, uint8_t status, uint8_t daysMask, - uint8_t startHour, uint8_t startMinute, uint8_t endHour, - uint8_t endMinute); -/** @brief Door Lock Cluster Get Yearday Schedule - * - * - * - * @param scheduleId Ver.: always - * @param userId Ver.: always - */ -bool emberAfDoorLockClusterGetYeardayScheduleCallback(uint8_t scheduleId, uint16_t userId); -/** @brief Door Lock Cluster Get Yearday Schedule Response - * - * - * - * @param scheduleId Ver.: always - * @param userId Ver.: always - * @param status Ver.: always - * @param localStartTime Ver.: since ha-1.2-05-3520-29 - * @param localEndTime Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfDoorLockClusterGetYeardayScheduleResponseCallback(uint8_t scheduleId, uint16_t userId, uint8_t status, - uint32_t localStartTime, uint32_t localEndTime); -/** @brief Door Lock Cluster Lock Door - * - * - * - * @param PIN Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfDoorLockClusterLockDoorCallback(uint8_t * PIN); -/** @brief Door Lock Cluster Lock Door Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterLockDoorResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Operation Event Notification - * - * - * - * @param source Ver.: always - * @param eventCode Ver.: always - * @param userId Ver.: always - * @param pin Ver.: always - * @param timeStamp Ver.: always - * @param data Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfDoorLockClusterOperationEventNotificationCallback(uint8_t source, uint8_t eventCode, uint16_t userId, uint8_t * pin, - uint32_t timeStamp, uint8_t * data); -/** @brief Door Lock Cluster Programming Event Notification - * - * - * - * @param source Ver.: always - * @param eventCode Ver.: always - * @param userId Ver.: always - * @param pin Ver.: always - * @param userType Ver.: always - * @param userStatus Ver.: always - * @param timeStamp Ver.: always - * @param data Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfDoorLockClusterProgrammingEventNotificationCallback(uint8_t source, uint8_t eventCode, uint16_t userId, uint8_t * pin, - uint8_t userType, uint8_t userStatus, uint32_t timeStamp, - uint8_t * data); -/** @brief Door Lock Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDoorLockClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Door Lock Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDoorLockClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Door Lock Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDoorLockClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Door Lock Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDoorLockClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Door Lock Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDoorLockClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Door Lock Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDoorLockClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Door Lock Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDoorLockClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Door Lock Cluster Set Holiday Schedule - * - * - * - * @param scheduleId Ver.: always - * @param localStartTime Ver.: always - * @param localEndTime Ver.: always - * @param operatingModeDuringHoliday Ver.: always - */ -bool emberAfDoorLockClusterSetHolidayScheduleCallback(uint8_t scheduleId, uint32_t localStartTime, uint32_t localEndTime, - uint8_t operatingModeDuringHoliday); -/** @brief Door Lock Cluster Set Holiday Schedule Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterSetHolidayScheduleResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Set Pin - * - * - * - * @param userId Ver.: always - * @param userStatus Ver.: always - * @param userType Ver.: always - * @param pin Ver.: always - */ -bool emberAfDoorLockClusterSetPinCallback(uint16_t userId, uint8_t userStatus, uint8_t userType, uint8_t * pin); -/** @brief Door Lock Cluster Set Pin Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterSetPinResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Set Rfid - * - * - * - * @param userId Ver.: always - * @param userStatus Ver.: always - * @param userType Ver.: always - * @param id Ver.: always - */ -bool emberAfDoorLockClusterSetRfidCallback(uint16_t userId, uint8_t userStatus, uint8_t userType, uint8_t * id); -/** @brief Door Lock Cluster Set Rfid Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterSetRfidResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Set User Status - * - * - * - * @param userId Ver.: always - * @param userStatus Ver.: always - */ -bool emberAfDoorLockClusterSetUserStatusCallback(uint16_t userId, uint8_t userStatus); -/** @brief Door Lock Cluster Set User Status Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterSetUserStatusResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Set User Type - * - * - * - * @param userId Ver.: always - * @param userType Ver.: always - */ -bool emberAfDoorLockClusterSetUserTypeCallback(uint16_t userId, uint8_t userType); -/** @brief Door Lock Cluster Set User Type Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterSetUserTypeResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Set Weekday Schedule - * - * - * - * @param scheduleId Ver.: always - * @param userId Ver.: always - * @param daysMask Ver.: always - * @param startHour Ver.: always - * @param startMinute Ver.: always - * @param endHour Ver.: always - * @param endMinute Ver.: always - */ -bool emberAfDoorLockClusterSetWeekdayScheduleCallback(uint8_t scheduleId, uint16_t userId, uint8_t daysMask, uint8_t startHour, - uint8_t startMinute, uint8_t endHour, uint8_t endMinute); -/** @brief Door Lock Cluster Set Weekday Schedule Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterSetWeekdayScheduleResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Set Yearday Schedule - * - * - * - * @param scheduleId Ver.: always - * @param userId Ver.: always - * @param localStartTime Ver.: always - * @param localEndTime Ver.: always - */ -bool emberAfDoorLockClusterSetYeardayScheduleCallback(uint8_t scheduleId, uint16_t userId, uint32_t localStartTime, - uint32_t localEndTime); -/** @brief Door Lock Cluster Set Yearday Schedule Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterSetYeardayScheduleResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Toggle - * - * - * - * @param pin Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfDoorLockClusterToggleCallback(uint8_t * pin); -/** @brief Door Lock Cluster Toggle Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterToggleResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Unlock Door - * - * - * - * @param PIN Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfDoorLockClusterUnlockDoorCallback(uint8_t * PIN); -/** @brief Door Lock Cluster Unlock Door Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterUnlockDoorResponseCallback(uint8_t status); -/** @brief Door Lock Cluster Unlock With Timeout - * - * - * - * @param timeoutInSeconds Ver.: always - * @param pin Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfDoorLockClusterUnlockWithTimeoutCallback(uint16_t timeoutInSeconds, uint8_t * pin); -/** @brief Door Lock Cluster Unlock With Timeout Response - * - * - * - * @param status Ver.: always - */ -bool emberAfDoorLockClusterUnlockWithTimeoutResponseCallback(uint8_t status); - -/** @} END Door Lock Cluster Callbacks */ - -/** @name Window Covering Cluster Callbacks */ -// @{ - -/** @brief Window Covering Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfWindowCoveringClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Window Covering Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfWindowCoveringClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Window Covering Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfWindowCoveringClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Window Covering Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfWindowCoveringClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Window Covering Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfWindowCoveringClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Window Covering Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfWindowCoveringClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Window Covering Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfWindowCoveringClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Window Covering Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfWindowCoveringClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Window Covering Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfWindowCoveringClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Window Covering Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfWindowCoveringClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Window Covering Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfWindowCoveringClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Window Covering Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfWindowCoveringClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Window Covering Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfWindowCoveringClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Window Covering Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfWindowCoveringClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Window Covering Cluster Window Covering Down Close - * - * - * - */ -bool emberAfWindowCoveringClusterWindowCoveringDownCloseCallback(void); -/** @brief Window Covering Cluster Window Covering Go To Lift Percentage - * - * - * - * @param percentageLiftValue Ver.: always - */ -bool emberAfWindowCoveringClusterWindowCoveringGoToLiftPercentageCallback(uint8_t percentageLiftValue); -/** @brief Window Covering Cluster Window Covering Go To Lift Value - * - * - * - * @param liftValue Ver.: always - */ -bool emberAfWindowCoveringClusterWindowCoveringGoToLiftValueCallback(uint16_t liftValue); -/** @brief Window Covering Cluster Window Covering Go To Tilt Percentage - * - * - * - * @param percentageTiltValue Ver.: always - */ -bool emberAfWindowCoveringClusterWindowCoveringGoToTiltPercentageCallback(uint8_t percentageTiltValue); -/** @brief Window Covering Cluster Window Covering Go To Tilt Value - * - * - * - * @param tiltValue Ver.: always - */ -bool emberAfWindowCoveringClusterWindowCoveringGoToTiltValueCallback(uint16_t tiltValue); -/** @brief Window Covering Cluster Window Covering Stop - * - * - * - */ -bool emberAfWindowCoveringClusterWindowCoveringStopCallback(void); -/** @brief Window Covering Cluster Window Covering Up Open - * - * - * - */ -bool emberAfWindowCoveringClusterWindowCoveringUpOpenCallback(void); - -/** @} END Window Covering Cluster Callbacks */ - -/** @name Barrier Control Cluster Callbacks */ -// @{ - -/** @brief Barrier Control Cluster Barrier Control Go To Percent - * - * - * - * @param percentOpen Ver.: always - */ -bool emberAfBarrierControlClusterBarrierControlGoToPercentCallback(uint8_t percentOpen); -/** @brief Barrier Control Cluster Barrier Control Stop - * - * - * - */ -bool emberAfBarrierControlClusterBarrierControlStopCallback(void); -/** @brief Barrier Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBarrierControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Barrier Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBarrierControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Barrier Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBarrierControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Barrier Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBarrierControlClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Barrier Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBarrierControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Barrier Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBarrierControlClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Barrier Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBarrierControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Barrier Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBarrierControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Barrier Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBarrierControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Barrier Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBarrierControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Barrier Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBarrierControlClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Barrier Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBarrierControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Barrier Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBarrierControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Barrier Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBarrierControlClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Barrier Control Cluster Callbacks */ - -/** @name Pump Configuration and Control Cluster Callbacks */ -// @{ - -/** @brief Pump Configuration and Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPumpConfigControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Pump Configuration and Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPumpConfigControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Pump Configuration and Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPumpConfigControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Pump Configuration and Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPumpConfigControlClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Pump Configuration and Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPumpConfigControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Pump Configuration and Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPumpConfigControlClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Pump Configuration and Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPumpConfigControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Pump Configuration and Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPumpConfigControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Pump Configuration and Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPumpConfigControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Pump Configuration and Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPumpConfigControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Pump Configuration and Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPumpConfigControlClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Pump Configuration and Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPumpConfigControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Pump Configuration and Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPumpConfigControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Pump Configuration and Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPumpConfigControlClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Pump Configuration and Control Cluster Callbacks */ - -/** @name Thermostat Cluster Callbacks */ -// @{ - -/** @brief Thermostat Cluster Clear Weekly Schedule - * - * - * - */ -bool emberAfThermostatClusterClearWeeklyScheduleCallback(void); -/** @brief Thermostat Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfThermostatClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Thermostat Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfThermostatClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Thermostat Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfThermostatClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Thermostat Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfThermostatClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Thermostat Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfThermostatClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Thermostat Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfThermostatClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Thermostat Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfThermostatClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Thermostat Cluster Current Weekly Schedule - * - * - * - * @param numberOfTransitionsForSequence Ver.: always - * @param dayOfWeekForSequence Ver.: always - * @param modeForSequence Ver.: always - * @param payload Ver.: always - */ -bool emberAfThermostatClusterCurrentWeeklyScheduleCallback(uint8_t numberOfTransitionsForSequence, uint8_t dayOfWeekForSequence, - uint8_t modeForSequence, uint8_t * payload); -/** @brief Thermostat Cluster Get Relay Status Log - * - * - * - */ -bool emberAfThermostatClusterGetRelayStatusLogCallback(void); -/** @brief Thermostat Cluster Get Weekly Schedule - * - * - * - * @param daysToReturn Ver.: always - * @param modeToReturn Ver.: always - */ -bool emberAfThermostatClusterGetWeeklyScheduleCallback(uint8_t daysToReturn, uint8_t modeToReturn); -/** @brief Thermostat Cluster Relay Status Log - * - * - * - * @param timeOfDay Ver.: always - * @param relayStatus Ver.: always - * @param localTemperature Ver.: always - * @param humidityInPercentage Ver.: always - * @param setpoint Ver.: always - * @param unreadEntries Ver.: always - */ -bool emberAfThermostatClusterRelayStatusLogCallback(uint16_t timeOfDay, uint16_t relayStatus, int16_t localTemperature, - uint8_t humidityInPercentage, int16_t setpoint, uint16_t unreadEntries); -/** @brief Thermostat Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfThermostatClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Thermostat Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfThermostatClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Thermostat Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfThermostatClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Thermostat Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfThermostatClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Thermostat Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfThermostatClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Thermostat Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfThermostatClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Thermostat Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfThermostatClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Thermostat Cluster Set Weekly Schedule - * - * - * - * @param numberOfTransitionsForSequence Ver.: always - * @param dayOfWeekForSequence Ver.: always - * @param modeForSequence Ver.: always - * @param payload Ver.: always - */ -bool emberAfThermostatClusterSetWeeklyScheduleCallback(uint8_t numberOfTransitionsForSequence, uint8_t dayOfWeekForSequence, - uint8_t modeForSequence, uint8_t * payload); -/** @brief Thermostat Cluster Setpoint Raise Lower - * - * - * - * @param mode Ver.: always - * @param amount Ver.: always - */ -bool emberAfThermostatClusterSetpointRaiseLowerCallback(uint8_t mode, int8_t amount); - -/** @} END Thermostat Cluster Callbacks */ - -/** @name Fan Control Cluster Callbacks */ -// @{ - -/** @brief Fan Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfFanControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Fan Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfFanControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Fan Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfFanControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Fan Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfFanControlClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Fan Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfFanControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Fan Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfFanControlClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Fan Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfFanControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Fan Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfFanControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Fan Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfFanControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Fan Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfFanControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Fan Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfFanControlClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Fan Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfFanControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Fan Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfFanControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Fan Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfFanControlClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Fan Control Cluster Callbacks */ - -/** @name Dehumidification Control Cluster Callbacks */ -// @{ - -/** @brief Dehumidification Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDehumidControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Dehumidification Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDehumidControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Dehumidification Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDehumidControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Dehumidification Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDehumidControlClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Dehumidification Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDehumidControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Dehumidification Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDehumidControlClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Dehumidification Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDehumidControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Dehumidification Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDehumidControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Dehumidification Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDehumidControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Dehumidification Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDehumidControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Dehumidification Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDehumidControlClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Dehumidification Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDehumidControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Dehumidification Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDehumidControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Dehumidification Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDehumidControlClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Dehumidification Control Cluster Callbacks */ - -/** @name Thermostat User Interface Configuration Cluster Callbacks */ -// @{ - -/** @brief Thermostat User Interface Configuration Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfThermostatUiConfigClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Thermostat User Interface Configuration Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfThermostatUiConfigClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Thermostat User Interface Configuration Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfThermostatUiConfigClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Thermostat User Interface Configuration Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfThermostatUiConfigClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Thermostat User Interface Configuration Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfThermostatUiConfigClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Thermostat User Interface Configuration Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfThermostatUiConfigClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Thermostat User Interface Configuration Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfThermostatUiConfigClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Thermostat User Interface Configuration Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfThermostatUiConfigClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Thermostat User Interface Configuration Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfThermostatUiConfigClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Thermostat User Interface Configuration Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfThermostatUiConfigClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Thermostat User Interface Configuration Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfThermostatUiConfigClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Thermostat User Interface Configuration Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfThermostatUiConfigClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Thermostat User Interface Configuration Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfThermostatUiConfigClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Thermostat User Interface Configuration Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfThermostatUiConfigClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Thermostat User Interface Configuration Cluster Callbacks */ - -/** @name Color Control Cluster Callbacks */ -// @{ - -/** @brief Color Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfColorControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Color Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfColorControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Color Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfColorControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Color Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfColorControlClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Color Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfColorControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Color Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfColorControlClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Color Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfColorControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Color Control Cluster Color Loop Set - * - * - * - * @param updateFlags Ver.: always - * @param action Ver.: always - * @param direction Ver.: always - * @param time Ver.: always - * @param startHue Ver.: always - */ -bool emberAfColorControlClusterColorLoopSetCallback(uint8_t updateFlags, uint8_t action, uint8_t direction, uint16_t time, - uint16_t startHue); -/** @brief Color Control Cluster Enhanced Move Hue - * - * - * - * @param moveMode Ver.: always - * @param rate Ver.: always - */ -bool emberAfColorControlClusterEnhancedMoveHueCallback(uint8_t moveMode, uint16_t rate); -/** @brief Color Control Cluster Enhanced Move To Hue And Saturation - * - * - * - * @param enhancedHue Ver.: always - * @param saturation Ver.: always - * @param transitionTime Ver.: always - */ -bool emberAfColorControlClusterEnhancedMoveToHueAndSaturationCallback(uint16_t enhancedHue, uint8_t saturation, - uint16_t transitionTime); -/** @brief Color Control Cluster Enhanced Move To Hue - * - * - * - * @param enhancedHue Ver.: always - * @param direction Ver.: always - * @param transitionTime Ver.: always - */ -bool emberAfColorControlClusterEnhancedMoveToHueCallback(uint16_t enhancedHue, uint8_t direction, uint16_t transitionTime); -/** @brief Color Control Cluster Enhanced Step Hue - * - * - * - * @param stepMode Ver.: always - * @param stepSize Ver.: always - * @param transitionTime Ver.: always - */ -bool emberAfColorControlClusterEnhancedStepHueCallback(uint8_t stepMode, uint16_t stepSize, uint16_t transitionTime); -/** @brief Color Control Cluster Move Color - * - * - * - * @param rateX Ver.: always - * @param rateY Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterMoveColorCallback(int16_t rateX, int16_t rateY, uint8_t optionsMask, uint8_t optionsOverride); -/** @brief Color Control Cluster Move Color Temperature - * - * - * - * @param moveMode Ver.: always - * @param rate Ver.: always - * @param colorTemperatureMinimum Ver.: always - * @param colorTemperatureMaximum Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterMoveColorTemperatureCallback(uint8_t moveMode, uint16_t rate, uint16_t colorTemperatureMinimum, - uint16_t colorTemperatureMaximum, uint8_t optionsMask, - uint8_t optionsOverride); -/** @brief Color Control Cluster Move Hue - * - * - * - * @param moveMode Ver.: always - * @param rate Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterMoveHueCallback(uint8_t moveMode, uint8_t rate, uint8_t optionsMask, uint8_t optionsOverride); -/** @brief Color Control Cluster Move Saturation - * - * - * - * @param moveMode Ver.: always - * @param rate Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterMoveSaturationCallback(uint8_t moveMode, uint8_t rate, uint8_t optionsMask, uint8_t optionsOverride); -/** @brief Color Control Cluster Move To Color - * - * - * - * @param colorX Ver.: always - * @param colorY Ver.: always - * @param transitionTime Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterMoveToColorCallback(uint16_t colorX, uint16_t colorY, uint16_t transitionTime, uint8_t optionsMask, - uint8_t optionsOverride); -/** @brief Color Control Cluster Move To Color Temperature - * - * - * - * @param colorTemperature Ver.: always - * @param transitionTime Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterMoveToColorTemperatureCallback(uint16_t colorTemperature, uint16_t transitionTime, - uint8_t optionsMask, uint8_t optionsOverride); -/** @brief Color Control Cluster Move To Hue And Saturation - * - * - * - * @param hue Ver.: always - * @param saturation Ver.: always - * @param transitionTime Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterMoveToHueAndSaturationCallback(uint8_t hue, uint8_t saturation, uint16_t transitionTime, - uint8_t optionsMask, uint8_t optionsOverride); -/** @brief Color Control Cluster Move To Hue - * - * - * - * @param hue Ver.: always - * @param direction Ver.: always - * @param transitionTime Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterMoveToHueCallback(uint8_t hue, uint8_t direction, uint16_t transitionTime, uint8_t optionsMask, - uint8_t optionsOverride); -/** @brief Color Control Cluster Move To Saturation - * - * - * - * @param saturation Ver.: always - * @param transitionTime Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterMoveToSaturationCallback(uint8_t saturation, uint16_t transitionTime, uint8_t optionsMask, - uint8_t optionsOverride); -/** @brief Color Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfColorControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Color Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfColorControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Color Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfColorControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Color Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfColorControlClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Color Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfColorControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Color Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfColorControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Color Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfColorControlClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Color Control Cluster Step Color - * - * - * - * @param stepX Ver.: always - * @param stepY Ver.: always - * @param transitionTime Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterStepColorCallback(int16_t stepX, int16_t stepY, uint16_t transitionTime, uint8_t optionsMask, - uint8_t optionsOverride); -/** @brief Color Control Cluster Step Color Temperature - * - * - * - * @param stepMode Ver.: always - * @param stepSize Ver.: always - * @param transitionTime Ver.: always - * @param colorTemperatureMinimum Ver.: always - * @param colorTemperatureMaximum Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterStepColorTemperatureCallback(uint8_t stepMode, uint16_t stepSize, uint16_t transitionTime, - uint16_t colorTemperatureMinimum, uint16_t colorTemperatureMaximum, - uint8_t optionsMask, uint8_t optionsOverride); -/** @brief Color Control Cluster Step Hue - * - * - * - * @param stepMode Ver.: always - * @param stepSize Ver.: always - * @param transitionTime Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterStepHueCallback(uint8_t stepMode, uint8_t stepSize, uint8_t transitionTime, uint8_t optionsMask, - uint8_t optionsOverride); -/** @brief Color Control Cluster Step Saturation - * - * - * - * @param stepMode Ver.: always - * @param stepSize Ver.: always - * @param transitionTime Ver.: always - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterStepSaturationCallback(uint8_t stepMode, uint8_t stepSize, uint8_t transitionTime, - uint8_t optionsMask, uint8_t optionsOverride); -/** @brief Color Control Cluster Stop Move Step - * - * - * - * @param optionsMask Ver.: since zcl6-errata-14-0129-15 - * @param optionsOverride Ver.: since zcl6-errata-14-0129-15 - */ -bool emberAfColorControlClusterStopMoveStepCallback(uint8_t optionsMask, uint8_t optionsOverride); - -/** @} END Color Control Cluster Callbacks */ - -/** @name Ballast Configuration Cluster Callbacks */ -// @{ - -/** @brief Ballast Configuration Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBallastConfigurationClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Ballast Configuration Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBallastConfigurationClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Ballast Configuration Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBallastConfigurationClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Ballast Configuration Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBallastConfigurationClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Ballast Configuration Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBallastConfigurationClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Ballast Configuration Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBallastConfigurationClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Ballast Configuration Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBallastConfigurationClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Ballast Configuration Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBallastConfigurationClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Ballast Configuration Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBallastConfigurationClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Ballast Configuration Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBallastConfigurationClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Ballast Configuration Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBallastConfigurationClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Ballast Configuration Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBallastConfigurationClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Ballast Configuration Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBallastConfigurationClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Ballast Configuration Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBallastConfigurationClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Ballast Configuration Cluster Callbacks */ - -/** @name Illuminance Measurement Cluster Callbacks */ -// @{ - -/** @brief Illuminance Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIllumMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Illuminance Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIllumMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Illuminance Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIllumMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Illuminance Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIllumMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Illuminance Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIllumMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Illuminance Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIllumMeasurementClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Illuminance Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIllumMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Illuminance Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIllumMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Illuminance Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIllumMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Illuminance Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIllumMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Illuminance Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIllumMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Illuminance Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIllumMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Illuminance Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIllumMeasurementClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Illuminance Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIllumMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Illuminance Measurement Cluster Callbacks */ - -/** @name Illuminance Level Sensing Cluster Callbacks */ -// @{ - -/** @brief Illuminance Level Sensing Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIllumLevelSensingClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Illuminance Level Sensing Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIllumLevelSensingClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Illuminance Level Sensing Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIllumLevelSensingClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Illuminance Level Sensing Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIllumLevelSensingClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Illuminance Level Sensing Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIllumLevelSensingClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Illuminance Level Sensing Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIllumLevelSensingClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Illuminance Level Sensing Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIllumLevelSensingClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Illuminance Level Sensing Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIllumLevelSensingClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Illuminance Level Sensing Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIllumLevelSensingClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Illuminance Level Sensing Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIllumLevelSensingClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Illuminance Level Sensing Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIllumLevelSensingClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Illuminance Level Sensing Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIllumLevelSensingClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Illuminance Level Sensing Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIllumLevelSensingClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Illuminance Level Sensing Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIllumLevelSensingClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Illuminance Level Sensing Cluster Callbacks */ - -/** @name Temperature Measurement Cluster Callbacks */ -// @{ - -/** @brief Temperature Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTempMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Temperature Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTempMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Temperature Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTempMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Temperature Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTempMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Temperature Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTempMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Temperature Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTempMeasurementClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Temperature Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTempMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Temperature Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTempMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Temperature Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTempMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Temperature Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTempMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Temperature Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTempMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Temperature Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTempMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Temperature Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTempMeasurementClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Temperature Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTempMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Temperature Measurement Cluster Callbacks */ - -/** @name Pressure Measurement Cluster Callbacks */ -// @{ - -/** @brief Pressure Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPressureMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Pressure Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPressureMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Pressure Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPressureMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Pressure Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPressureMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Pressure Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPressureMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Pressure Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPressureMeasurementClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Pressure Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPressureMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Pressure Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPressureMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Pressure Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPressureMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Pressure Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPressureMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Pressure Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPressureMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Pressure Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPressureMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Pressure Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPressureMeasurementClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Pressure Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPressureMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Pressure Measurement Cluster Callbacks */ - -/** @name Flow Measurement Cluster Callbacks */ -// @{ - -/** @brief Flow Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfFlowMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Flow Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfFlowMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Flow Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfFlowMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Flow Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfFlowMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Flow Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfFlowMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Flow Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfFlowMeasurementClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Flow Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfFlowMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Flow Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfFlowMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Flow Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfFlowMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Flow Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfFlowMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Flow Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfFlowMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Flow Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfFlowMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Flow Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfFlowMeasurementClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Flow Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfFlowMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Flow Measurement Cluster Callbacks */ - -/** @name Relative Humidity Measurement Cluster Callbacks */ -// @{ - -/** @brief Relative Humidity Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Relative Humidity Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Relative Humidity Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Relative Humidity Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Relative Humidity Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Relative Humidity Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfRelativeHumidityMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Relative Humidity Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Relative Humidity Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Relative Humidity Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Relative Humidity Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Relative Humidity Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Relative Humidity Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Relative Humidity Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfRelativeHumidityMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Relative Humidity Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfRelativeHumidityMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Relative Humidity Measurement Cluster Callbacks */ - -/** @name Occupancy Sensing Cluster Callbacks */ -// @{ - -/** @brief Occupancy Sensing Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOccupancySensingClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Occupancy Sensing Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOccupancySensingClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Occupancy Sensing Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOccupancySensingClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Occupancy Sensing Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOccupancySensingClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Occupancy Sensing Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOccupancySensingClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Occupancy Sensing Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOccupancySensingClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Occupancy Sensing Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOccupancySensingClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Occupancy Sensing Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOccupancySensingClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Occupancy Sensing Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOccupancySensingClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Occupancy Sensing Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOccupancySensingClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Occupancy Sensing Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOccupancySensingClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Occupancy Sensing Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOccupancySensingClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Occupancy Sensing Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOccupancySensingClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Occupancy Sensing Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOccupancySensingClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Occupancy Sensing Cluster Callbacks */ - -/** @name Carbon Monoxide Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Carbon Monoxide Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Carbon Monoxide Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Carbon Monoxide Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Carbon Monoxide Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Carbon Monoxide Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Carbon Monoxide Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCarbonMonoxideConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Carbon Monoxide Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Carbon Monoxide Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Carbon Monoxide Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Carbon Monoxide Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Carbon Monoxide Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Carbon Monoxide Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Carbon Monoxide Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCarbonMonoxideConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Carbon Monoxide Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCarbonMonoxideConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Carbon Monoxide Concentration Measurement Cluster Callbacks */ - -/** @name Carbon Dioxide Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Carbon Dioxide Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Carbon Dioxide Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Carbon Dioxide Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Carbon Dioxide Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Carbon Dioxide Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Carbon Dioxide Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCarbonDioxideConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Carbon Dioxide Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Carbon Dioxide Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Carbon Dioxide Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Carbon Dioxide Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Carbon Dioxide Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Carbon Dioxide Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Carbon Dioxide Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCarbonDioxideConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Carbon Dioxide Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCarbonDioxideConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Carbon Dioxide Concentration Measurement Cluster Callbacks */ - -/** @name Ethylene Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Ethylene Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Ethylene Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Ethylene Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Ethylene Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Ethylene Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Ethylene Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfEthyleneConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Ethylene Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Ethylene Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Ethylene Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Ethylene Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Ethylene Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Ethylene Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Ethylene Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfEthyleneConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Ethylene Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfEthyleneConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Ethylene Concentration Measurement Cluster Callbacks */ - -/** @name Ethylene Oxide Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Ethylene Oxide Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Ethylene Oxide Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Ethylene Oxide Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Ethylene Oxide Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Ethylene Oxide Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Ethylene Oxide Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfEthyleneOxideConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Ethylene Oxide Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Ethylene Oxide Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Ethylene Oxide Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Ethylene Oxide Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Ethylene Oxide Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Ethylene Oxide Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Ethylene Oxide Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfEthyleneOxideConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Ethylene Oxide Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfEthyleneOxideConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Ethylene Oxide Concentration Measurement Cluster Callbacks */ - -/** @name Hydrogen Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Hydrogen Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Hydrogen Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Hydrogen Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Hydrogen Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Hydrogen Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Hydrogen Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfHydrogenConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Hydrogen Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Hydrogen Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Hydrogen Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Hydrogen Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Hydrogen Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Hydrogen Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Hydrogen Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfHydrogenConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Hydrogen Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfHydrogenConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Hydrogen Concentration Measurement Cluster Callbacks */ - -/** @name Hydrogen Sulphide Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, EmberAfStatus status); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfHydrogenSulphideConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, EmberAfStatus status); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfHydrogenSulphideConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Hydrogen Sulphide Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfHydrogenSulphideConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Hydrogen Sulphide Concentration Measurement Cluster Callbacks */ - -/** @name Nitric Oxide Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Nitric Oxide Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Nitric Oxide Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Nitric Oxide Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Nitric Oxide Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Nitric Oxide Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Nitric Oxide Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfNitricOxideConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Nitric Oxide Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Nitric Oxide Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Nitric Oxide Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Nitric Oxide Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Nitric Oxide Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Nitric Oxide Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Nitric Oxide Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfNitricOxideConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Nitric Oxide Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfNitricOxideConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Nitric Oxide Concentration Measurement Cluster Callbacks */ - -/** @name Nitrogen Dioxide Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, EmberAfStatus status); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfNitrogenDioxideConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, EmberAfStatus status); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfNitrogenDioxideConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Nitrogen Dioxide Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfNitrogenDioxideConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Nitrogen Dioxide Concentration Measurement Cluster Callbacks */ - -/** @name Oxygen Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Oxygen Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Oxygen Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Oxygen Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Oxygen Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Oxygen Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Oxygen Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOxygenConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Oxygen Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Oxygen Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Oxygen Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Oxygen Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Oxygen Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Oxygen Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Oxygen Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOxygenConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Oxygen Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOxygenConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Oxygen Concentration Measurement Cluster Callbacks */ - -/** @name Ozone Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Ozone Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Ozone Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Ozone Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Ozone Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Ozone Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Ozone Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOzoneConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Ozone Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Ozone Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Ozone Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Ozone Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Ozone Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Ozone Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Ozone Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOzoneConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Ozone Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOzoneConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Ozone Concentration Measurement Cluster Callbacks */ - -/** @name Sulfur Dioxide Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Sulfur Dioxide Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSulfurDioxideConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSulfurDioxideConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Sulfur Dioxide Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSulfurDioxideConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Sulfur Dioxide Concentration Measurement Cluster Callbacks */ - -/** @name Dissolved Oxygen Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Dissolved Oxygen Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, EmberAfStatus status); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDissolvedOxygenConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, EmberAfStatus status); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDissolvedOxygenConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Dissolved Oxygen Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDissolvedOxygenConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Dissolved Oxygen Concentration Measurement Cluster Callbacks */ - -/** @name Bromate Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Bromate Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Bromate Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Bromate Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Bromate Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Bromate Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Bromate Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBromateConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Bromate Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Bromate Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Bromate Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Bromate Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Bromate Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Bromate Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Bromate Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBromateConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Bromate Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBromateConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Bromate Concentration Measurement Cluster Callbacks */ - -/** @name Chloramines Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Chloramines Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Chloramines Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Chloramines Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Chloramines Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Chloramines Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Chloramines Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChloraminesConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Chloramines Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Chloramines Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Chloramines Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Chloramines Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Chloramines Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Chloramines Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Chloramines Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChloraminesConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Chloramines Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChloraminesConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Chloramines Concentration Measurement Cluster Callbacks */ - -/** @name Chlorine Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Chlorine Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Chlorine Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Chlorine Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Chlorine Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Chlorine Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Chlorine Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChlorineConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Chlorine Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Chlorine Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Chlorine Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Chlorine Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Chlorine Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Chlorine Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Chlorine Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChlorineConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Chlorine Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChlorineConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Chlorine Concentration Measurement Cluster Callbacks */ - -/** @name Fecal coliform and E. Coli Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfFecalColiformAndEColiConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfFecalColiformAndEColiConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Fecal coliform and E. Coli Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfFecalColiformAndEColiConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Fecal coliform and E. Coli Concentration Measurement Cluster Callbacks */ - -/** @name Fluoride Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Fluoride Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Fluoride Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Fluoride Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Fluoride Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Fluoride Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Fluoride Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfFluorideConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Fluoride Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Fluoride Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Fluoride Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Fluoride Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Fluoride Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Fluoride Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Fluoride Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfFluorideConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Fluoride Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfFluorideConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Fluoride Concentration Measurement Cluster Callbacks */ - -/** @name Haloacetic Acids Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Haloacetic Acids Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Haloacetic Acids Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, EmberAfStatus status); -/** @brief Haloacetic Acids Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Haloacetic Acids Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Haloacetic Acids Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Haloacetic Acids Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfHaloaceticAcidsConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Haloacetic Acids Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Haloacetic Acids Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Haloacetic Acids Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, EmberAfStatus status); -/** @brief Haloacetic Acids Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Haloacetic Acids Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Haloacetic Acids Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Haloacetic Acids Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfHaloaceticAcidsConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Haloacetic Acids Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfHaloaceticAcidsConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Haloacetic Acids Concentration Measurement Cluster Callbacks */ - -/** @name Total Trihalomethanes Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Total Trihalomethanes Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTotalTrihalomethanesConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTotalTrihalomethanesConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Total Trihalomethanes Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTotalTrihalomethanesConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Total Trihalomethanes Concentration Measurement Cluster Callbacks */ - -/** @name Total Coliform Bacteria Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTotalColiformBacteriaConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTotalColiformBacteriaConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Total Coliform Bacteria Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTotalColiformBacteriaConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Total Coliform Bacteria Concentration Measurement Cluster Callbacks */ - -/** @name Turbidity Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Turbidity Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Turbidity Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Turbidity Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Turbidity Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Turbidity Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Turbidity Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTurbidityConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Turbidity Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Turbidity Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Turbidity Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Turbidity Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Turbidity Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Turbidity Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Turbidity Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTurbidityConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Turbidity Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTurbidityConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Turbidity Concentration Measurement Cluster Callbacks */ - -/** @name Copper Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Copper Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Copper Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Copper Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Copper Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Copper Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Copper Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCopperConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Copper Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Copper Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Copper Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Copper Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Copper Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Copper Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Copper Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCopperConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Copper Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCopperConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Copper Concentration Measurement Cluster Callbacks */ - -/** @name Lead Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Lead Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Lead Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Lead Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Lead Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Lead Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Lead Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfLeadConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Lead Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Lead Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Lead Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Lead Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Lead Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Lead Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Lead Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfLeadConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Lead Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfLeadConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Lead Concentration Measurement Cluster Callbacks */ - -/** @name Manganese Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Manganese Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Manganese Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Manganese Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Manganese Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Manganese Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Manganese Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfManganeseConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Manganese Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Manganese Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Manganese Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Manganese Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Manganese Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Manganese Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Manganese Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfManganeseConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Manganese Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfManganeseConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Manganese Concentration Measurement Cluster Callbacks */ - -/** @name Sulfate Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Sulfate Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Sulfate Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Sulfate Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Sulfate Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sulfate Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Sulfate Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSulfateConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Sulfate Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Sulfate Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Sulfate Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Sulfate Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Sulfate Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sulfate Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Sulfate Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSulfateConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Sulfate Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSulfateConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Sulfate Concentration Measurement Cluster Callbacks */ - -/** @name Bromodichloromethane Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Bromodichloromethane Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Bromodichloromethane Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Bromodichloromethane Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Bromodichloromethane Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Bromodichloromethane Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Bromodichloromethane Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBromodichloromethaneConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Bromodichloromethane Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Bromodichloromethane Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Bromodichloromethane Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Bromodichloromethane Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Bromodichloromethane Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Bromodichloromethane Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Bromodichloromethane Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBromodichloromethaneConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Bromodichloromethane Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBromodichloromethaneConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Bromodichloromethane Concentration Measurement Cluster Callbacks */ - -/** @name Bromoform Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Bromoform Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Bromoform Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Bromoform Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Bromoform Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Bromoform Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Bromoform Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBromoformConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Bromoform Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Bromoform Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Bromoform Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Bromoform Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Bromoform Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Bromoform Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Bromoform Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBromoformConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Bromoform Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBromoformConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Bromoform Concentration Measurement Cluster Callbacks */ - -/** @name Chlorodibromomethane Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Chlorodibromomethane Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterClientAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChlorodibromomethaneConcentrationMeasurementClusterClientPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterServerAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, - uint8_t commandId, - EmberAfStatus status); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChlorodibromomethaneConcentrationMeasurementClusterServerPreAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, EmberAfAttributeType attributeType, uint8_t size, uint8_t * value); -/** @brief Chlorodibromomethane Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChlorodibromomethaneConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Chlorodibromomethane Concentration Measurement Cluster Callbacks */ - -/** @name Chloroform Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Chloroform Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Chloroform Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Chloroform Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Chloroform Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Chloroform Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Chloroform Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChloroformConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Chloroform Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Chloroform Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Chloroform Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Chloroform Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Chloroform Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback( - chip::EndpointId endpoint, chip::AttributeId attributeId, uint16_t manufacturerCode); -/** @brief Chloroform Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, - uint8_t * message, EmberStatus status); -/** @brief Chloroform Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChloroformConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Chloroform Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChloroformConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Chloroform Concentration Measurement Cluster Callbacks */ - -/** @name Sodium Concentration Measurement Cluster Callbacks */ -// @{ - -/** @brief Sodium Concentration Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Sodium Concentration Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Sodium Concentration Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Sodium Concentration Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sodium Concentration Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Sodium Concentration Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSodiumConcentrationMeasurementClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Sodium Concentration Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Sodium Concentration Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Sodium Concentration Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Sodium Concentration Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Sodium Concentration Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sodium Concentration Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, - uint16_t indexOrDestination, EmberApsFrame * apsFrame, - uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Sodium Concentration Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSodiumConcentrationMeasurementClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Sodium Concentration Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSodiumConcentrationMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Sodium Concentration Measurement Cluster Callbacks */ - -/** @name IAS Zone Cluster Callbacks */ -// @{ - -/** @brief IAS Zone Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIasZoneClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief IAS Zone Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIasZoneClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief IAS Zone Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIasZoneClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief IAS Zone Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIasZoneClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief IAS Zone Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIasZoneClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief IAS Zone Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIasZoneClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief IAS Zone Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIasZoneClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief IAS Zone Cluster Initiate Normal Operation Mode - * - * - * - */ -bool emberAfIasZoneClusterInitiateNormalOperationModeCallback(void); -/** @brief IAS Zone Cluster Initiate Normal Operation Mode Response - * - * - * - */ -bool emberAfIasZoneClusterInitiateNormalOperationModeResponseCallback(void); -/** @brief IAS Zone Cluster Initiate Test Mode - * - * - * - * @param testModeDuration Ver.: always - * @param currentZoneSensitivityLevel Ver.: always - */ -bool emberAfIasZoneClusterInitiateTestModeCallback(uint8_t testModeDuration, uint8_t currentZoneSensitivityLevel); -/** @brief IAS Zone Cluster Initiate Test Mode Response - * - * - * - */ -bool emberAfIasZoneClusterInitiateTestModeResponseCallback(void); -/** @brief IAS Zone Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIasZoneClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief IAS Zone Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIasZoneClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief IAS Zone Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIasZoneClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief IAS Zone Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIasZoneClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief IAS Zone Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIasZoneClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief IAS Zone Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIasZoneClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief IAS Zone Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIasZoneClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief IAS Zone Cluster Zone Enroll Request - * - * - * - * @param zoneType Ver.: always - * @param manufacturerCode Ver.: always - */ -bool emberAfIasZoneClusterZoneEnrollRequestCallback(uint16_t zoneType, uint16_t manufacturerCode); -/** @brief IAS Zone Cluster Zone Enroll Response - * - * - * - * @param enrollResponseCode Ver.: always - * @param zoneId Ver.: always - */ -bool emberAfIasZoneClusterZoneEnrollResponseCallback(uint8_t enrollResponseCode, uint8_t zoneId); -/** @brief IAS Zone Cluster Zone Status Change Notification - * - * - * - * @param zoneStatus Ver.: always - * @param extendedStatus Ver.: always - * @param zoneId Ver.: since ha-1.2-05-3520-29 - * @param delay Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfIasZoneClusterZoneStatusChangeNotificationCallback(uint16_t zoneStatus, uint8_t extendedStatus, uint8_t zoneId, - uint16_t delay); - -/** @} END IAS Zone Cluster Callbacks */ - -/** @name IAS ACE Cluster Callbacks */ -// @{ - -/** @brief IAS ACE Cluster Arm - * - * - * - * @param armMode Ver.: always - * @param armDisarmCode Ver.: since ha-1.2-05-3520-29 - * @param zoneId Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfIasAceClusterArmCallback(uint8_t armMode, uint8_t * armDisarmCode, uint8_t zoneId); -/** @brief IAS ACE Cluster Arm Response - * - * - * - * @param armNotification Ver.: always - */ -bool emberAfIasAceClusterArmResponseCallback(uint8_t armNotification); -/** @brief IAS ACE Cluster Bypass - * - * - * - * @param numberOfZones Ver.: always - * @param zoneIds Ver.: always - * @param armDisarmCode Ver.: since ha-1.2.1-05-3520-30 - */ -bool emberAfIasAceClusterBypassCallback(uint8_t numberOfZones, uint8_t * zoneIds, uint8_t * armDisarmCode); -/** @brief IAS ACE Cluster Bypass Response - * - * - * - * @param numberOfZones Ver.: always - * @param bypassResult Ver.: always - */ -bool emberAfIasAceClusterBypassResponseCallback(uint8_t numberOfZones, uint8_t * bypassResult); -/** @brief IAS ACE Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIasAceClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief IAS ACE Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIasAceClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief IAS ACE Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIasAceClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief IAS ACE Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIasAceClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief IAS ACE Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIasAceClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief IAS ACE Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIasAceClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief IAS ACE Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIasAceClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief IAS ACE Cluster Emergency - * - * - * - */ -bool emberAfIasAceClusterEmergencyCallback(void); -/** @brief IAS ACE Cluster Fire - * - * - * - */ -bool emberAfIasAceClusterFireCallback(void); -/** @brief IAS ACE Cluster Get Bypassed Zone List - * - * - * - */ -bool emberAfIasAceClusterGetBypassedZoneListCallback(void); -/** @brief IAS ACE Cluster Get Panel Status - * - * - * - */ -bool emberAfIasAceClusterGetPanelStatusCallback(void); -/** @brief IAS ACE Cluster Get Panel Status Response - * - * - * - * @param panelStatus Ver.: always - * @param secondsRemaining Ver.: always - * @param audibleNotification Ver.: always - * @param alarmStatus Ver.: always - */ -bool emberAfIasAceClusterGetPanelStatusResponseCallback(uint8_t panelStatus, uint8_t secondsRemaining, uint8_t audibleNotification, - uint8_t alarmStatus); -/** @brief IAS ACE Cluster Get Zone Id Map - * - * - * - */ -bool emberAfIasAceClusterGetZoneIdMapCallback(void); -/** @brief IAS ACE Cluster Get Zone Id Map Response - * - * - * - * @param section0 Ver.: always - * @param section1 Ver.: always - * @param section2 Ver.: always - * @param section3 Ver.: always - * @param section4 Ver.: always - * @param section5 Ver.: always - * @param section6 Ver.: always - * @param section7 Ver.: always - * @param section8 Ver.: always - * @param section9 Ver.: always - * @param section10 Ver.: always - * @param section11 Ver.: always - * @param section12 Ver.: always - * @param section13 Ver.: always - * @param section14 Ver.: always - * @param section15 Ver.: always - */ -bool emberAfIasAceClusterGetZoneIdMapResponseCallback(uint16_t section0, uint16_t section1, uint16_t section2, uint16_t section3, - uint16_t section4, uint16_t section5, uint16_t section6, uint16_t section7, - uint16_t section8, uint16_t section9, uint16_t section10, uint16_t section11, - uint16_t section12, uint16_t section13, uint16_t section14, - uint16_t section15); -/** @brief IAS ACE Cluster Get Zone Information - * - * - * - * @param zoneId Ver.: always - */ -bool emberAfIasAceClusterGetZoneInformationCallback(uint8_t zoneId); -/** @brief IAS ACE Cluster Get Zone Information Response - * - * - * - * @param zoneId Ver.: always - * @param zoneType Ver.: always - * @param ieeeAddress Ver.: always - * @param zoneLabel Ver.: since ha-1.2.1-05-3520-30 - */ -bool emberAfIasAceClusterGetZoneInformationResponseCallback(uint8_t zoneId, uint16_t zoneType, uint8_t * ieeeAddress, - uint8_t * zoneLabel); -/** @brief IAS ACE Cluster Get Zone Status - * - * - * - * @param startingZoneId Ver.: always - * @param maxNumberOfZoneIds Ver.: always - * @param zoneStatusMaskFlag Ver.: always - * @param zoneStatusMask Ver.: always - */ -bool emberAfIasAceClusterGetZoneStatusCallback(uint8_t startingZoneId, uint8_t maxNumberOfZoneIds, uint8_t zoneStatusMaskFlag, - uint16_t zoneStatusMask); -/** @brief IAS ACE Cluster Get Zone Status Response - * - * - * - * @param zoneStatusComplete Ver.: always - * @param numberOfZones Ver.: always - * @param zoneStatusResult Ver.: always - */ -bool emberAfIasAceClusterGetZoneStatusResponseCallback(uint8_t zoneStatusComplete, uint8_t numberOfZones, - uint8_t * zoneStatusResult); -/** @brief IAS ACE Cluster Panel Status Changed - * - * - * - * @param panelStatus Ver.: always - * @param secondsRemaining Ver.: always - * @param audibleNotification Ver.: since ha-1.2.1-05-3520-30 - * @param alarmStatus Ver.: since ha-1.2.1-05-3520-30 - */ -bool emberAfIasAceClusterPanelStatusChangedCallback(uint8_t panelStatus, uint8_t secondsRemaining, uint8_t audibleNotification, - uint8_t alarmStatus); -/** @brief IAS ACE Cluster Panic - * - * - * - */ -bool emberAfIasAceClusterPanicCallback(void); -/** @brief IAS ACE Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIasAceClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief IAS ACE Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIasAceClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief IAS ACE Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIasAceClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief IAS ACE Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIasAceClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief IAS ACE Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIasAceClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief IAS ACE Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIasAceClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief IAS ACE Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIasAceClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief IAS ACE Cluster Set Bypassed Zone List - * - * - * - * @param numberOfZones Ver.: always - * @param zoneIds Ver.: always - */ -bool emberAfIasAceClusterSetBypassedZoneListCallback(uint8_t numberOfZones, uint8_t * zoneIds); -/** @brief IAS ACE Cluster Zone Status Changed - * - * - * - * @param zoneId Ver.: always - * @param zoneStatus Ver.: always - * @param audibleNotification Ver.: since ha-1.2.1-05-3520-30 - * @param zoneLabel Ver.: since ha-1.2.1-05-3520-30 - */ -bool emberAfIasAceClusterZoneStatusChangedCallback(uint8_t zoneId, uint16_t zoneStatus, uint8_t audibleNotification, - uint8_t * zoneLabel); - -/** @} END IAS ACE Cluster Callbacks */ - -/** @name IAS WD Cluster Callbacks */ -// @{ - -/** @brief IAS WD Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIasWdClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief IAS WD Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIasWdClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief IAS WD Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIasWdClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief IAS WD Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIasWdClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief IAS WD Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIasWdClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief IAS WD Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIasWdClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief IAS WD Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIasWdClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief IAS WD Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIasWdClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief IAS WD Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIasWdClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief IAS WD Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIasWdClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief IAS WD Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIasWdClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief IAS WD Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIasWdClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief IAS WD Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIasWdClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief IAS WD Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIasWdClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief IAS WD Cluster Squawk - * - * - * - * @param squawkInfo Ver.: always - */ -bool emberAfIasWdClusterSquawkCallback(uint8_t squawkInfo); -/** @brief IAS WD Cluster Start Warning - * - * - * - * @param warningInfo Ver.: always - * @param warningDuration Ver.: always - * @param strobeDutyCycle Ver.: since ha-1.2-05-3520-29 - * @param strobeLevel Ver.: since ha-1.2-05-3520-29 - */ -bool emberAfIasWdClusterStartWarningCallback(uint8_t warningInfo, uint16_t warningDuration, uint8_t strobeDutyCycle, - uint8_t strobeLevel); - -/** @} END IAS WD Cluster Callbacks */ - -/** @name Generic Tunnel Cluster Callbacks */ -// @{ - -/** @brief Generic Tunnel Cluster Advertise Protocol Address - * - * - * - * @param protocolAddress Ver.: always - */ -bool emberAfGenericTunnelClusterAdvertiseProtocolAddressCallback(uint8_t * protocolAddress); -/** @brief Generic Tunnel Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfGenericTunnelClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Generic Tunnel Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfGenericTunnelClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Generic Tunnel Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfGenericTunnelClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Generic Tunnel Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfGenericTunnelClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Generic Tunnel Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfGenericTunnelClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Generic Tunnel Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfGenericTunnelClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Generic Tunnel Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfGenericTunnelClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Generic Tunnel Cluster Match Protocol Address - * - * - * - * @param protocolAddress Ver.: always - */ -bool emberAfGenericTunnelClusterMatchProtocolAddressCallback(uint8_t * protocolAddress); -/** @brief Generic Tunnel Cluster Match Protocol Address Response - * - * - * - * @param deviceIeeeAddress Ver.: always - * @param protocolAddress Ver.: always - */ -bool emberAfGenericTunnelClusterMatchProtocolAddressResponseCallback(uint8_t * deviceIeeeAddress, uint8_t * protocolAddress); -/** @brief Generic Tunnel Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfGenericTunnelClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Generic Tunnel Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfGenericTunnelClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Generic Tunnel Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfGenericTunnelClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Generic Tunnel Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfGenericTunnelClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Generic Tunnel Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfGenericTunnelClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Generic Tunnel Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfGenericTunnelClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Generic Tunnel Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfGenericTunnelClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Generic Tunnel Cluster Callbacks */ - -/** @name BACnet Protocol Tunnel Cluster Callbacks */ -// @{ - -/** @brief BACnet Protocol Tunnel Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief BACnet Protocol Tunnel Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief BACnet Protocol Tunnel Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief BACnet Protocol Tunnel Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief BACnet Protocol Tunnel Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief BACnet Protocol Tunnel Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBacnetProtocolTunnelClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief BACnet Protocol Tunnel Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief BACnet Protocol Tunnel Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief BACnet Protocol Tunnel Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief BACnet Protocol Tunnel Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief BACnet Protocol Tunnel Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief BACnet Protocol Tunnel Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief BACnet Protocol Tunnel Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBacnetProtocolTunnelClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief BACnet Protocol Tunnel Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBacnetProtocolTunnelClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief BACnet Protocol Tunnel Cluster Transfer Npdu - * - * - * - * @param npdu Ver.: always - */ -bool emberAfBacnetProtocolTunnelClusterTransferNpduCallback(uint8_t * npdu); - -/** @} END BACnet Protocol Tunnel Cluster Callbacks */ - -/** @name 11073 Protocol Tunnel Cluster Callbacks */ -// @{ - -/** @brief 11073 Protocol Tunnel Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAf11073ProtocolTunnelClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief 11073 Protocol Tunnel Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAf11073ProtocolTunnelClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief 11073 Protocol Tunnel Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAf11073ProtocolTunnelClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief 11073 Protocol Tunnel Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAf11073ProtocolTunnelClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief 11073 Protocol Tunnel Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAf11073ProtocolTunnelClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief 11073 Protocol Tunnel Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAf11073ProtocolTunnelClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief 11073 Protocol Tunnel Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAf11073ProtocolTunnelClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief 11073 Protocol Tunnel Cluster Connect Request - * - * - * - * @param connectControl Ver.: always - * @param idleTimeout Ver.: always - * @param managerTarget Ver.: always - * @param managerEndpoint Ver.: always - */ -bool emberAf11073ProtocolTunnelClusterConnectRequestCallback(uint8_t connectControl, uint16_t idleTimeout, uint8_t * managerTarget, - uint8_t managerEndpoint); -/** @brief 11073 Protocol Tunnel Cluster Connect Status Notification - * - * - * - * @param connectStatus Ver.: always - */ -bool emberAf11073ProtocolTunnelClusterConnectStatusNotificationCallback(uint8_t connectStatus); -/** @brief 11073 Protocol Tunnel Cluster Disconnect Request - * - * - * - * @param managerIEEEAddress Ver.: always - */ -bool emberAf11073ProtocolTunnelClusterDisconnectRequestCallback(uint8_t * managerIEEEAddress); -/** @brief 11073 Protocol Tunnel Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAf11073ProtocolTunnelClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief 11073 Protocol Tunnel Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAf11073ProtocolTunnelClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief 11073 Protocol Tunnel Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAf11073ProtocolTunnelClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief 11073 Protocol Tunnel Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAf11073ProtocolTunnelClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief 11073 Protocol Tunnel Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAf11073ProtocolTunnelClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief 11073 Protocol Tunnel Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAf11073ProtocolTunnelClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief 11073 Protocol Tunnel Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAf11073ProtocolTunnelClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief 11073 Protocol Tunnel Cluster Transfer A P D U - * - * - * - * @param apdu Ver.: always - */ -bool emberAf11073ProtocolTunnelClusterTransferAPDUCallback(uint8_t * apdu); - -/** @} END 11073 Protocol Tunnel Cluster Callbacks */ - -/** @name ISO 7816 Protocol Tunnel Cluster Callbacks */ -// @{ - -/** @brief ISO 7816 Protocol Tunnel Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief ISO 7816 Protocol Tunnel Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief ISO 7816 Protocol Tunnel Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief ISO 7816 Protocol Tunnel Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief ISO 7816 Protocol Tunnel Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief ISO 7816 Protocol Tunnel Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIso7816ProtocolTunnelClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief ISO 7816 Protocol Tunnel Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief ISO 7816 Protocol Tunnel Cluster Extract Smart Card - * - * - * - */ -bool emberAfIso7816ProtocolTunnelClusterExtractSmartCardCallback(void); -/** @brief ISO 7816 Protocol Tunnel Cluster Insert Smart Card - * - * - * - */ -bool emberAfIso7816ProtocolTunnelClusterInsertSmartCardCallback(void); -/** @brief ISO 7816 Protocol Tunnel Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief ISO 7816 Protocol Tunnel Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief ISO 7816 Protocol Tunnel Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief ISO 7816 Protocol Tunnel Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief ISO 7816 Protocol Tunnel Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief ISO 7816 Protocol Tunnel Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfIso7816ProtocolTunnelClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief ISO 7816 Protocol Tunnel Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfIso7816ProtocolTunnelClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief ISO 7816 Protocol Tunnel Cluster Transfer Apdu - * - * - * - * @param apdu Ver.: always - */ -bool emberAfIso7816ProtocolTunnelClusterTransferApduCallback(uint8_t * apdu); - -/** @} END ISO 7816 Protocol Tunnel Cluster Callbacks */ - -/** @name Price Cluster Callbacks */ -// @{ - -/** @brief Price Cluster Cancel Tariff - * - * - * - * @param providerId Ver.: always - * @param issuerTariffId Ver.: always - * @param tariffType Ver.: always - */ -bool emberAfPriceClusterCancelTariffCallback(uint32_t providerId, uint32_t issuerTariffId, uint8_t tariffType); -/** @brief Price Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPriceClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Price Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPriceClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Price Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPriceClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Price Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPriceClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Price Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPriceClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Price Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPriceClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Price Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPriceClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Price Cluster Cpp Event Response - * - * - * - * @param issuerEventId Ver.: always - * @param cppAuth Ver.: always - */ -bool emberAfPriceClusterCppEventResponseCallback(uint32_t issuerEventId, uint8_t cppAuth); -/** @brief Price Cluster Get Billing Period - * - * - * - * @param earliestStartTime Ver.: always - * @param minIssuerEventId Ver.: always - * @param numberOfCommands Ver.: always - * @param tariffType Ver.: always - */ -bool emberAfPriceClusterGetBillingPeriodCallback(uint32_t earliestStartTime, uint32_t minIssuerEventId, uint8_t numberOfCommands, - uint8_t tariffType); -/** @brief Price Cluster Get Block Periods - * - * - * - * @param startTime Ver.: always - * @param numberOfEvents Ver.: always - * @param tariffType Ver.: always - */ -bool emberAfPriceClusterGetBlockPeriodsCallback(uint32_t startTime, uint8_t numberOfEvents, uint8_t tariffType); -/** @brief Price Cluster Get Block Thresholds - * - * - * - * @param issuerTariffId Ver.: always - */ -bool emberAfPriceClusterGetBlockThresholdsCallback(uint32_t issuerTariffId); -/** @brief Price Cluster Get C O2 Value - * - * - * - * @param earliestStartTime Ver.: always - * @param minIssuerEventId Ver.: always - * @param numberOfCommands Ver.: always - * @param tariffType Ver.: always - */ -bool emberAfPriceClusterGetCO2ValueCallback(uint32_t earliestStartTime, uint32_t minIssuerEventId, uint8_t numberOfCommands, - uint8_t tariffType); -/** @brief Price Cluster Get Calorific Value - * - * - * - * @param earliestStartTime Ver.: always - * @param minIssuerEventId Ver.: always - * @param numberOfCommands Ver.: always - */ -bool emberAfPriceClusterGetCalorificValueCallback(uint32_t earliestStartTime, uint32_t minIssuerEventId, uint8_t numberOfCommands); -/** @brief Price Cluster Get Consolidated Bill - * - * - * - * @param earliestStartTime Ver.: always - * @param minIssuerEventId Ver.: always - * @param numberOfCommands Ver.: always - * @param tariffType Ver.: always - */ -bool emberAfPriceClusterGetConsolidatedBillCallback(uint32_t earliestStartTime, uint32_t minIssuerEventId, uint8_t numberOfCommands, - uint8_t tariffType); -/** @brief Price Cluster Get Conversion Factor - * - * - * - * @param earliestStartTime Ver.: always - * @param minIssuerEventId Ver.: always - * @param numberOfCommands Ver.: always - */ -bool emberAfPriceClusterGetConversionFactorCallback(uint32_t earliestStartTime, uint32_t minIssuerEventId, - uint8_t numberOfCommands); -/** @brief Price Cluster Get Credit Payment - * - * - * - * @param latestEndTime Ver.: always - * @param numberOfRecords Ver.: always - */ -bool emberAfPriceClusterGetCreditPaymentCallback(uint32_t latestEndTime, uint8_t numberOfRecords); -/** @brief Price Cluster Get Currency Conversion Command - * - * - * - */ -bool emberAfPriceClusterGetCurrencyConversionCommandCallback(void); -/** @brief Price Cluster Get Current Price - * - * - * - * @param commandOptions Ver.: always - */ -bool emberAfPriceClusterGetCurrentPriceCallback(uint8_t commandOptions); -/** @brief Price Cluster Get Price Matrix - * - * - * - * @param issuerTariffId Ver.: always - */ -bool emberAfPriceClusterGetPriceMatrixCallback(uint32_t issuerTariffId); -/** @brief Price Cluster Get Scheduled Prices - * - * - * - * @param startTime Ver.: always - * @param numberOfEvents Ver.: always - */ -bool emberAfPriceClusterGetScheduledPricesCallback(uint32_t startTime, uint8_t numberOfEvents); -/** @brief Price Cluster Get Tariff Cancellation - * - * - * - */ -bool emberAfPriceClusterGetTariffCancellationCallback(void); -/** @brief Price Cluster Get Tariff Information - * - * - * - * @param earliestStartTime Ver.: always - * @param minIssuerEventId Ver.: always - * @param numberOfCommands Ver.: always - * @param tariffType Ver.: always - */ -bool emberAfPriceClusterGetTariffInformationCallback(uint32_t earliestStartTime, uint32_t minIssuerEventId, - uint8_t numberOfCommands, uint8_t tariffType); -/** @brief Price Cluster Get Tier Labels - * - * - * - * @param issuerTariffId Ver.: always - */ -bool emberAfPriceClusterGetTierLabelsCallback(uint32_t issuerTariffId); -/** @brief Price Cluster Price Acknowledgement - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param priceAckTime Ver.: always - * @param control Ver.: always - */ -bool emberAfPriceClusterPriceAcknowledgementCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t priceAckTime, - uint8_t control); -/** @brief Price Cluster Publish Billing Period - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param billingPeriodStartTime Ver.: always - * @param billingPeriodDuration Ver.: always - * @param billingPeriodDurationType Ver.: always - * @param tariffType Ver.: always - */ -bool emberAfPriceClusterPublishBillingPeriodCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t billingPeriodStartTime, - uint32_t billingPeriodDuration, uint8_t billingPeriodDurationType, - uint8_t tariffType); -/** @brief Price Cluster Publish Block Period - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param blockPeriodStartTime Ver.: always - * @param blockPeriodDuration Ver.: always - * @param blockPeriodControl Ver.: always - * @param blockPeriodDurationType Ver.: since se-1.2a-07-5356-19 - * @param tariffType Ver.: since se-1.2a-07-5356-19 - * @param tariffResolutionPeriod Ver.: since se-1.2a-07-5356-19 - */ -bool emberAfPriceClusterPublishBlockPeriodCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t blockPeriodStartTime, - uint32_t blockPeriodDuration, uint8_t blockPeriodControl, - uint8_t blockPeriodDurationType, uint8_t tariffType, - uint8_t tariffResolutionPeriod); -/** @brief Price Cluster Publish Block Thresholds - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param startTime Ver.: always - * @param issuerTariffId Ver.: always - * @param commandIndex Ver.: always - * @param numberOfCommands Ver.: always - * @param subPayloadControl Ver.: always - * @param payload Ver.: always - */ -bool emberAfPriceClusterPublishBlockThresholdsCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t startTime, - uint32_t issuerTariffId, uint8_t commandIndex, uint8_t numberOfCommands, - uint8_t subPayloadControl, uint8_t * payload); -/** @brief Price Cluster Publish C O2 Value - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param startTime Ver.: always - * @param tariffType Ver.: always - * @param cO2Value Ver.: always - * @param cO2ValueUnit Ver.: always - * @param cO2ValueTrailingDigit Ver.: always - */ -bool emberAfPriceClusterPublishCO2ValueCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t startTime, uint8_t tariffType, - uint32_t cO2Value, uint8_t cO2ValueUnit, uint8_t cO2ValueTrailingDigit); -/** @brief Price Cluster Publish Calorific Value - * - * - * - * @param issuerEventId Ver.: always - * @param startTime Ver.: always - * @param calorificValue Ver.: always - * @param calorificValueUnit Ver.: always - * @param calorificValueTrailingDigit Ver.: always - */ -bool emberAfPriceClusterPublishCalorificValueCallback(uint32_t issuerEventId, uint32_t startTime, uint32_t calorificValue, - uint8_t calorificValueUnit, uint8_t calorificValueTrailingDigit); -/** @brief Price Cluster Publish Consolidated Bill - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param billingPeriodStartTime Ver.: always - * @param billingPeriodDuration Ver.: always - * @param billingPeriodDurationType Ver.: always - * @param tariffType Ver.: always - * @param consolidatedBill Ver.: always - * @param currency Ver.: always - * @param billTrailingDigit Ver.: always - */ -bool emberAfPriceClusterPublishConsolidatedBillCallback(uint32_t providerId, uint32_t issuerEventId, - uint32_t billingPeriodStartTime, uint32_t billingPeriodDuration, - uint8_t billingPeriodDurationType, uint8_t tariffType, - uint32_t consolidatedBill, uint16_t currency, uint8_t billTrailingDigit); -/** @brief Price Cluster Publish Conversion Factor - * - * - * - * @param issuerEventId Ver.: always - * @param startTime Ver.: always - * @param conversionFactor Ver.: always - * @param conversionFactorTrailingDigit Ver.: always - */ -bool emberAfPriceClusterPublishConversionFactorCallback(uint32_t issuerEventId, uint32_t startTime, uint32_t conversionFactor, - uint8_t conversionFactorTrailingDigit); -/** @brief Price Cluster Publish Cpp Event - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param startTime Ver.: always - * @param durationInMinutes Ver.: always - * @param tariffType Ver.: always - * @param cppPriceTier Ver.: always - * @param cppAuth Ver.: always - */ -bool emberAfPriceClusterPublishCppEventCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t startTime, - uint16_t durationInMinutes, uint8_t tariffType, uint8_t cppPriceTier, - uint8_t cppAuth); -/** @brief Price Cluster Publish Credit Payment - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param creditPaymentDueDate Ver.: always - * @param creditPaymentOverDueAmount Ver.: always - * @param creditPaymentStatus Ver.: always - * @param creditPayment Ver.: always - * @param creditPaymentDate Ver.: always - * @param creditPaymentRef Ver.: always - */ -bool emberAfPriceClusterPublishCreditPaymentCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t creditPaymentDueDate, - uint32_t creditPaymentOverDueAmount, uint8_t creditPaymentStatus, - uint32_t creditPayment, uint32_t creditPaymentDate, - uint8_t * creditPaymentRef); -/** @brief Price Cluster Publish Currency Conversion - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param startTime Ver.: always - * @param oldCurrency Ver.: always - * @param newCurrency Ver.: always - * @param conversionFactor Ver.: always - * @param conversionFactorTrailingDigit Ver.: always - * @param currencyChangeControlFlags Ver.: always - */ -bool emberAfPriceClusterPublishCurrencyConversionCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t startTime, - uint16_t oldCurrency, uint16_t newCurrency, uint32_t conversionFactor, - uint8_t conversionFactorTrailingDigit, - uint32_t currencyChangeControlFlags); -/** @brief Price Cluster Publish Price - * - * - * - * @param providerId Ver.: always - * @param rateLabel Ver.: always - * @param issuerEventId Ver.: always - * @param currentTime Ver.: always - * @param unitOfMeasure Ver.: always - * @param currency Ver.: always - * @param priceTrailingDigitAndPriceTier Ver.: always - * @param numberOfPriceTiersAndRegisterTier Ver.: always - * @param startTime Ver.: always - * @param durationInMinutes Ver.: always - * @param price Ver.: always - * @param priceRatio Ver.: always - * @param generationPrice Ver.: always - * @param generationPriceRatio Ver.: always - * @param alternateCostDelivered Ver.: since se-1.0-07-5356-15 - * @param alternateCostUnit Ver.: since se-1.0-07-5356-15 - * @param alternateCostTrailingDigit Ver.: since se-1.0-07-5356-15 - * @param numberOfBlockThresholds Ver.: since se-1.1-07-5356-16 - * @param priceControl Ver.: since se-1.1-07-5356-16 - * @param numberOfGenerationTiers Ver.: since se-1.2a-07-5356-19 - * @param generationTier Ver.: since se-1.2a-07-5356-19 - * @param extendedNumberOfPriceTiers Ver.: since se-1.2a-07-5356-19 - * @param extendedPriceTier Ver.: since se-1.2a-07-5356-19 - * @param extendedRegisterTier Ver.: since se-1.2a-07-5356-19 - */ -bool emberAfPriceClusterPublishPriceCallback( - uint32_t providerId, uint8_t * rateLabel, uint32_t issuerEventId, uint32_t currentTime, uint8_t unitOfMeasure, - uint16_t currency, uint8_t priceTrailingDigitAndPriceTier, uint8_t numberOfPriceTiersAndRegisterTier, uint32_t startTime, - uint16_t durationInMinutes, uint32_t price, uint8_t priceRatio, uint32_t generationPrice, uint8_t generationPriceRatio, - uint32_t alternateCostDelivered, uint8_t alternateCostUnit, uint8_t alternateCostTrailingDigit, uint8_t numberOfBlockThresholds, - uint8_t priceControl, uint8_t numberOfGenerationTiers, uint8_t generationTier, uint8_t extendedNumberOfPriceTiers, - uint8_t extendedPriceTier, uint8_t extendedRegisterTier); -/** @brief Price Cluster Publish Price Matrix - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param startTime Ver.: always - * @param issuerTariffId Ver.: always - * @param commandIndex Ver.: always - * @param numberOfCommands Ver.: always - * @param subPayloadControl Ver.: always - * @param payload Ver.: always - */ -bool emberAfPriceClusterPublishPriceMatrixCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t startTime, - uint32_t issuerTariffId, uint8_t commandIndex, uint8_t numberOfCommands, - uint8_t subPayloadControl, uint8_t * payload); -/** @brief Price Cluster Publish Tariff Information - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param issuerTariffId Ver.: always - * @param startTime Ver.: always - * @param tariffTypeChargingScheme Ver.: always - * @param tariffLabel Ver.: always - * @param numberOfPriceTiersInUse Ver.: always - * @param numberOfBlockThresholdsInUse Ver.: always - * @param unitOfMeasure Ver.: always - * @param currency Ver.: always - * @param priceTrailingDigit Ver.: always - * @param standingCharge Ver.: always - * @param tierBlockMode Ver.: always - * @param blockThresholdMultiplier Ver.: always - * @param blockThresholdDivisor Ver.: always - */ -bool emberAfPriceClusterPublishTariffInformationCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t issuerTariffId, - uint32_t startTime, uint8_t tariffTypeChargingScheme, - uint8_t * tariffLabel, uint8_t numberOfPriceTiersInUse, - uint8_t numberOfBlockThresholdsInUse, uint8_t unitOfMeasure, - uint16_t currency, uint8_t priceTrailingDigit, uint32_t standingCharge, - uint8_t tierBlockMode, uint32_t blockThresholdMultiplier, - uint32_t blockThresholdDivisor); -/** @brief Price Cluster Publish Tier Labels - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param issuerTariffId Ver.: always - * @param commandIndex Ver.: always - * @param numberOfCommands Ver.: always - * @param numberOfLabels Ver.: always - * @param tierLabelsPayload Ver.: always - */ -bool emberAfPriceClusterPublishTierLabelsCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t issuerTariffId, - uint8_t commandIndex, uint8_t numberOfCommands, uint8_t numberOfLabels, - uint8_t * tierLabelsPayload); -/** @brief Price Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPriceClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Price Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPriceClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Price Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPriceClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Price Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPriceClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Price Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPriceClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, EmberStatus status); -/** @brief Price Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPriceClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Price Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPriceClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Price Cluster Callbacks */ - -/** @name Demand Response and Load Control Cluster Callbacks */ -// @{ - -/** @brief Demand Response and Load Control Cluster Cancel All Load Control Events - * - * - * - * @param cancelControl Ver.: always - */ -bool emberAfDemandResponseLoadControlClusterCancelAllLoadControlEventsCallback(uint8_t cancelControl); -/** @brief Demand Response and Load Control Cluster Cancel Load Control Event - * - * - * - * @param issuerEventId Ver.: always - * @param deviceClass Ver.: always - * @param utilityEnrollmentGroup Ver.: always - * @param cancelControl Ver.: always - * @param effectiveTime Ver.: always - */ -bool emberAfDemandResponseLoadControlClusterCancelLoadControlEventCallback(uint32_t issuerEventId, uint16_t deviceClass, - uint8_t utilityEnrollmentGroup, uint8_t cancelControl, - uint32_t effectiveTime); -/** @brief Demand Response and Load Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDemandResponseLoadControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Demand Response and Load Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDemandResponseLoadControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Demand Response and Load Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDemandResponseLoadControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Demand Response and Load Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDemandResponseLoadControlClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Demand Response and Load Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDemandResponseLoadControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Demand Response and Load Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDemandResponseLoadControlClusterClientPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Demand Response and Load Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDemandResponseLoadControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Demand Response and Load Control Cluster Get Scheduled Events - * - * - * - * @param startTime Ver.: always - * @param numberOfEvents Ver.: always - * @param issuerEventId Ver.: since se-1.2b-15-0131-02 - */ -bool emberAfDemandResponseLoadControlClusterGetScheduledEventsCallback(uint32_t startTime, uint8_t numberOfEvents, - uint32_t issuerEventId); -/** @brief Demand Response and Load Control Cluster Load Control Event - * - * - * - * @param issuerEventId Ver.: always - * @param deviceClass Ver.: always - * @param utilityEnrollmentGroup Ver.: always - * @param startTime Ver.: always - * @param durationInMinutes Ver.: always - * @param criticalityLevel Ver.: always - * @param coolingTemperatureOffset Ver.: always - * @param heatingTemperatureOffset Ver.: always - * @param coolingTemperatureSetPoint Ver.: always - * @param heatingTemperatureSetPoint Ver.: always - * @param averageLoadAdjustmentPercentage Ver.: always - * @param dutyCycle Ver.: always - * @param eventControl Ver.: always - */ -bool emberAfDemandResponseLoadControlClusterLoadControlEventCallback( - uint32_t issuerEventId, uint16_t deviceClass, uint8_t utilityEnrollmentGroup, uint32_t startTime, uint16_t durationInMinutes, - uint8_t criticalityLevel, uint8_t coolingTemperatureOffset, uint8_t heatingTemperatureOffset, - int16_t coolingTemperatureSetPoint, int16_t heatingTemperatureSetPoint, int8_t averageLoadAdjustmentPercentage, - uint8_t dutyCycle, uint8_t eventControl); -/** @brief Demand Response and Load Control Cluster Report Event Status - * - * - * - * @param issuerEventId Ver.: always - * @param eventStatus Ver.: always - * @param eventStatusTime Ver.: always - * @param criticalityLevelApplied Ver.: always - * @param coolingTemperatureSetPointApplied Ver.: always - * @param heatingTemperatureSetPointApplied Ver.: always - * @param averageLoadAdjustmentPercentageApplied Ver.: always - * @param dutyCycleApplied Ver.: always - * @param eventControl Ver.: always - * @param signatureType Ver.: always - * @param signature Ver.: always - */ -bool emberAfDemandResponseLoadControlClusterReportEventStatusCallback(uint32_t issuerEventId, uint8_t eventStatus, - uint32_t eventStatusTime, uint8_t criticalityLevelApplied, - uint16_t coolingTemperatureSetPointApplied, - uint16_t heatingTemperatureSetPointApplied, - int8_t averageLoadAdjustmentPercentageApplied, - uint8_t dutyCycleApplied, uint8_t eventControl, - uint8_t signatureType, uint8_t * signature); -/** @brief Demand Response and Load Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDemandResponseLoadControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId); -/** @brief Demand Response and Load Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDemandResponseLoadControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, uint8_t commandId, - EmberAfStatus status); -/** @brief Demand Response and Load Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDemandResponseLoadControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Demand Response and Load Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDemandResponseLoadControlClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Demand Response and Load Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDemandResponseLoadControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Demand Response and Load Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDemandResponseLoadControlClusterServerPreAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Demand Response and Load Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDemandResponseLoadControlClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Demand Response and Load Control Cluster Callbacks */ - -/** @name Simple Metering Cluster Callbacks */ -// @{ - -/** @brief Simple Metering Cluster Change Supply - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param requestDateTime Ver.: always - * @param implementationDateTime Ver.: always - * @param proposedSupplyStatus Ver.: always - * @param supplyControlBits Ver.: always - */ -bool emberAfSimpleMeteringClusterChangeSupplyCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t requestDateTime, - uint32_t implementationDateTime, uint8_t proposedSupplyStatus, - uint8_t supplyControlBits); -/** @brief Simple Metering Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSimpleMeteringClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Simple Metering Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSimpleMeteringClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Simple Metering Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSimpleMeteringClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Simple Metering Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSimpleMeteringClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Simple Metering Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSimpleMeteringClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Simple Metering Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSimpleMeteringClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Simple Metering Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSimpleMeteringClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Simple Metering Cluster Configure Mirror - * - * - * - * @param issuerEventId Ver.: always - * @param reportingInterval Ver.: always - * @param mirrorNotificationReporting Ver.: always - * @param notificationScheme Ver.: always - */ -bool emberAfSimpleMeteringClusterConfigureMirrorCallback(uint32_t issuerEventId, uint32_t reportingInterval, - uint8_t mirrorNotificationReporting, uint8_t notificationScheme); -/** @brief Simple Metering Cluster Configure Notification Flags - * - * - * - * @param issuerEventId Ver.: always - * @param notificationScheme Ver.: always - * @param notificationFlagAttributeId Ver.: always - * @param clusterId Ver.: always - * @param manufacturerCode Ver.: always - * @param numberOfCommands Ver.: always - * @param commandIds Ver.: always - */ -bool emberAfSimpleMeteringClusterConfigureNotificationFlagsCallback(uint32_t issuerEventId, uint8_t notificationScheme, - uint16_t notificationFlagAttributeId, uint16_t clusterId, - uint16_t manufacturerCode, uint8_t numberOfCommands, - chip::CommandId * commandIds); -/** @brief Simple Metering Cluster Configure Notification Scheme - * - * - * - * @param issuerEventId Ver.: always - * @param notificationScheme Ver.: always - * @param notificationFlagOrder Ver.: always - */ -bool emberAfSimpleMeteringClusterConfigureNotificationSchemeCallback(uint32_t issuerEventId, uint8_t notificationScheme, - uint32_t notificationFlagOrder); -/** @brief Simple Metering Cluster Get Notified Message - * - * - * - * @param notificationScheme Ver.: always - * @param notificationFlagAttributeId Ver.: always - * @param notificationFlagsN Ver.: always - */ -bool emberAfSimpleMeteringClusterGetNotifiedMessageCallback(uint8_t notificationScheme, uint16_t notificationFlagAttributeId, - uint32_t notificationFlagsN); -/** @brief Simple Metering Cluster Get Profile - * - * - * - * @param intervalChannel Ver.: always - * @param endTime Ver.: always - * @param numberOfPeriods Ver.: always - */ -bool emberAfSimpleMeteringClusterGetProfileCallback(uint8_t intervalChannel, uint32_t endTime, uint8_t numberOfPeriods); -/** @brief Simple Metering Cluster Get Profile Response - * - * - * - * @param endTime Ver.: always - * @param status Ver.: always - * @param profileIntervalPeriod Ver.: always - * @param numberOfPeriodsDelivered Ver.: always - * @param intervals Ver.: always - */ -bool emberAfSimpleMeteringClusterGetProfileResponseCallback(uint32_t endTime, uint8_t status, uint8_t profileIntervalPeriod, - uint8_t numberOfPeriodsDelivered, uint8_t * intervals); -/** @brief Simple Metering Cluster Get Sampled Data - * - * - * - * @param sampleId Ver.: always - * @param earliestSampleTime Ver.: always - * @param sampleType Ver.: always - * @param numberOfSamples Ver.: always - */ -bool emberAfSimpleMeteringClusterGetSampledDataCallback(uint16_t sampleId, uint32_t earliestSampleTime, uint8_t sampleType, - uint16_t numberOfSamples); -/** @brief Simple Metering Cluster Get Sampled Data Response - * - * - * - * @param sampleId Ver.: always - * @param sampleStartTime Ver.: always - * @param sampleType Ver.: always - * @param sampleRequestInterval Ver.: always - * @param numberOfSamples Ver.: always - * @param samples Ver.: always - */ -bool emberAfSimpleMeteringClusterGetSampledDataResponseCallback(uint16_t sampleId, uint32_t sampleStartTime, uint8_t sampleType, - uint16_t sampleRequestInterval, uint16_t numberOfSamples, - uint8_t * samples); -/** @brief Simple Metering Cluster Get Snapshot - * - * - * - * @param earliestStartTime Ver.: always - * @param latestEndTime Ver.: always - * @param snapshotOffset Ver.: always - * @param snapshotCause Ver.: always - */ -bool emberAfSimpleMeteringClusterGetSnapshotCallback(uint32_t earliestStartTime, uint32_t latestEndTime, uint8_t snapshotOffset, - uint32_t snapshotCause); -/** @brief Simple Metering Cluster Local Change Supply - * - * - * - * @param proposedSupplyStatus Ver.: always - */ -bool emberAfSimpleMeteringClusterLocalChangeSupplyCallback(uint8_t proposedSupplyStatus); -/** @brief Simple Metering Cluster Mirror Removed - * - * - * - * @param endpointId Ver.: always - */ -bool emberAfSimpleMeteringClusterMirrorRemovedCallback(uint16_t endpointId); -/** @brief Simple Metering Cluster Mirror Report Attribute Response - * - * - * - * @param notificationScheme Ver.: always - * @param notificationFlags Ver.: always - */ -bool emberAfSimpleMeteringClusterMirrorReportAttributeResponseCallback(uint8_t notificationScheme, uint8_t * notificationFlags); -/** @brief Simple Metering Cluster Publish Snapshot - * - * - * - * @param snapshotId Ver.: always - * @param snapshotTime Ver.: always - * @param totalSnapshotsFound Ver.: always - * @param commandIndex Ver.: always - * @param totalCommands Ver.: always - * @param snapshotCause Ver.: always - * @param snapshotPayloadType Ver.: always - * @param snapshotPayload Ver.: always - */ -bool emberAfSimpleMeteringClusterPublishSnapshotCallback(uint32_t snapshotId, uint32_t snapshotTime, uint8_t totalSnapshotsFound, - uint8_t commandIndex, uint8_t totalCommands, uint32_t snapshotCause, - uint8_t snapshotPayloadType, uint8_t * snapshotPayload); -/** @brief Simple Metering Cluster Remove Mirror - * - * - * - */ -bool emberAfSimpleMeteringClusterRemoveMirrorCallback(void); -/** @brief Simple Metering Cluster Request Fast Poll Mode - * - * - * - * @param fastPollUpdatePeriod Ver.: always - * @param duration Ver.: always - */ -bool emberAfSimpleMeteringClusterRequestFastPollModeCallback(uint8_t fastPollUpdatePeriod, uint8_t duration); -/** @brief Simple Metering Cluster Request Fast Poll Mode Response - * - * - * - * @param appliedUpdatePeriod Ver.: always - * @param fastPollModeEndtime Ver.: always - */ -bool emberAfSimpleMeteringClusterRequestFastPollModeResponseCallback(uint8_t appliedUpdatePeriod, uint32_t fastPollModeEndtime); -/** @brief Simple Metering Cluster Request Mirror - * - * - * - */ -bool emberAfSimpleMeteringClusterRequestMirrorCallback(void); -/** @brief Simple Metering Cluster Request Mirror Response - * - * - * - * @param endpointId Ver.: always - */ -bool emberAfSimpleMeteringClusterRequestMirrorResponseCallback(uint16_t endpointId); -/** @brief Simple Metering Cluster Reset Load Limit Counter - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - */ -bool emberAfSimpleMeteringClusterResetLoadLimitCounterCallback(uint32_t providerId, uint32_t issuerEventId); -/** @brief Simple Metering Cluster Schedule Snapshot - * - * - * - * @param issuerEventId Ver.: always - * @param commandIndex Ver.: always - * @param commandCount Ver.: always - * @param snapshotSchedulePayload Ver.: always - */ -bool emberAfSimpleMeteringClusterScheduleSnapshotCallback(uint32_t issuerEventId, uint8_t commandIndex, uint8_t commandCount, - uint8_t * snapshotSchedulePayload); -/** @brief Simple Metering Cluster Schedule Snapshot Response - * - * - * - * @param issuerEventId Ver.: always - * @param snapshotResponsePayload Ver.: always - */ -bool emberAfSimpleMeteringClusterScheduleSnapshotResponseCallback(uint32_t issuerEventId, uint8_t * snapshotResponsePayload); -/** @brief Simple Metering Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSimpleMeteringClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Simple Metering Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSimpleMeteringClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Simple Metering Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSimpleMeteringClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Simple Metering Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSimpleMeteringClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Simple Metering Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSimpleMeteringClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Simple Metering Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSimpleMeteringClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Simple Metering Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSimpleMeteringClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Simple Metering Cluster Set Supply Status - * - * - * - * @param issuerEventId Ver.: always - * @param supplyTamperState Ver.: always - * @param supplyDepletionState Ver.: always - * @param supplyUncontrolledFlowState Ver.: always - * @param loadLimitSupplyState Ver.: always - */ -bool emberAfSimpleMeteringClusterSetSupplyStatusCallback(uint32_t issuerEventId, uint8_t supplyTamperState, - uint8_t supplyDepletionState, uint8_t supplyUncontrolledFlowState, - uint8_t loadLimitSupplyState); -/** @brief Simple Metering Cluster Set Uncontrolled Flow Threshold - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param uncontrolledFlowThreshold Ver.: always - * @param unitOfMeasure Ver.: always - * @param multiplier Ver.: always - * @param divisor Ver.: always - * @param stabilisationPeriod Ver.: always - * @param measurementPeriod Ver.: always - */ -bool emberAfSimpleMeteringClusterSetUncontrolledFlowThresholdCallback(uint32_t providerId, uint32_t issuerEventId, - uint16_t uncontrolledFlowThreshold, uint8_t unitOfMeasure, - uint16_t multiplier, uint16_t divisor, - uint8_t stabilisationPeriod, uint16_t measurementPeriod); -/** @brief Simple Metering Cluster Start Sampling - * - * - * - * @param issuerEventId Ver.: always - * @param startSamplingTime Ver.: always - * @param sampleType Ver.: always - * @param sampleRequestInterval Ver.: always - * @param maxNumberOfSamples Ver.: always - */ -bool emberAfSimpleMeteringClusterStartSamplingCallback(uint32_t issuerEventId, uint32_t startSamplingTime, uint8_t sampleType, - uint16_t sampleRequestInterval, uint16_t maxNumberOfSamples); -/** @brief Simple Metering Cluster Start Sampling Response - * - * - * - * @param sampleId Ver.: always - */ -bool emberAfSimpleMeteringClusterStartSamplingResponseCallback(uint16_t sampleId); -/** @brief Simple Metering Cluster Supply Status Response - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param implementationDateTime Ver.: always - * @param supplyStatus Ver.: always - */ -bool emberAfSimpleMeteringClusterSupplyStatusResponseCallback(uint32_t providerId, uint32_t issuerEventId, - uint32_t implementationDateTime, uint8_t supplyStatus); -/** @brief Simple Metering Cluster Take Snapshot - * - * - * - * @param snapshotCause Ver.: always - */ -bool emberAfSimpleMeteringClusterTakeSnapshotCallback(uint32_t snapshotCause); -/** @brief Simple Metering Cluster Take Snapshot Response - * - * - * - * @param snapshotId Ver.: always - * @param snapshotConfirmation Ver.: always - */ -bool emberAfSimpleMeteringClusterTakeSnapshotResponseCallback(uint32_t snapshotId, uint8_t snapshotConfirmation); - -/** @} END Simple Metering Cluster Callbacks */ - -/** @name Messaging Cluster Callbacks */ -// @{ - -/** @brief Messaging Cluster Cancel All Messages - * - * - * - * @param implementationDateTime Ver.: always - */ -bool emberAfMessagingClusterCancelAllMessagesCallback(uint32_t implementationDateTime); -/** @brief Messaging Cluster Cancel Message - * - * - * - * @param messageId Ver.: always - * @param messageControl Ver.: always - */ -bool emberAfMessagingClusterCancelMessageCallback(uint32_t messageId, uint8_t messageControl); -/** @brief Messaging Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfMessagingClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Messaging Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfMessagingClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Messaging Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfMessagingClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Messaging Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfMessagingClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Messaging Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfMessagingClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Messaging Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfMessagingClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Messaging Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfMessagingClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Messaging Cluster Display Message - * - * - * - * @param messageId Ver.: always - * @param messageControl Ver.: always - * @param startTime Ver.: always - * @param durationInMinutes Ver.: always - * @param message Ver.: always - * @param optionalExtendedMessageControl Ver.: since se-1.2a-07-5356-19 - */ -bool emberAfMessagingClusterDisplayMessageCallback(uint32_t messageId, uint8_t messageControl, uint32_t startTime, - uint16_t durationInMinutes, uint8_t * message, - uint8_t optionalExtendedMessageControl); -/** @brief Messaging Cluster Display Protected Message - * - * - * - * @param messageId Ver.: always - * @param messageControl Ver.: always - * @param startTime Ver.: always - * @param durationInMinutes Ver.: always - * @param message Ver.: always - * @param optionalExtendedMessageControl Ver.: always - */ -bool emberAfMessagingClusterDisplayProtectedMessageCallback(uint32_t messageId, uint8_t messageControl, uint32_t startTime, - uint16_t durationInMinutes, uint8_t * message, - uint8_t optionalExtendedMessageControl); -/** @brief Messaging Cluster Get Last Message - * - * - * - */ -bool emberAfMessagingClusterGetLastMessageCallback(void); -/** @brief Messaging Cluster Get Message Cancellation - * - * - * - * @param earliestImplementationTime Ver.: always - */ -bool emberAfMessagingClusterGetMessageCancellationCallback(uint32_t earliestImplementationTime); -/** @brief Messaging Cluster Message Confirmation - * - * - * - * @param messageId Ver.: always - * @param confirmationTime Ver.: always - * @param messageConfirmationControl Ver.: since se-1.2a-07-5356-19 - * @param messageResponse Ver.: since se-1.2a-07-5356-19 - */ -bool emberAfMessagingClusterMessageConfirmationCallback(uint32_t messageId, uint32_t confirmationTime, - uint8_t messageConfirmationControl, uint8_t * messageResponse); -/** @brief Messaging Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfMessagingClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Messaging Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfMessagingClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Messaging Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfMessagingClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Messaging Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfMessagingClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Messaging Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfMessagingClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Messaging Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfMessagingClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Messaging Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfMessagingClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Messaging Cluster Callbacks */ - -/** @name Tunneling Cluster Callbacks */ -// @{ - -/** @brief Tunneling Cluster Ack Transfer Data Client To Server - * - * - * - * @param tunnelId Ver.: always - * @param numberOfBytesLeft Ver.: always - */ -bool emberAfTunnelingClusterAckTransferDataClientToServerCallback(uint16_t tunnelId, uint16_t numberOfBytesLeft); -/** @brief Tunneling Cluster Ack Transfer Data Server To Client - * - * - * - * @param tunnelId Ver.: always - * @param numberOfBytesLeft Ver.: always - */ -bool emberAfTunnelingClusterAckTransferDataServerToClientCallback(uint16_t tunnelId, uint16_t numberOfBytesLeft); -/** @brief Tunneling Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTunnelingClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Tunneling Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTunnelingClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Tunneling Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTunnelingClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Tunneling Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTunnelingClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Tunneling Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTunnelingClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Tunneling Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTunnelingClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Tunneling Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTunnelingClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Tunneling Cluster Close Tunnel - * - * - * - * @param tunnelId Ver.: always - */ -bool emberAfTunnelingClusterCloseTunnelCallback(uint16_t tunnelId); -/** @brief Tunneling Cluster Get Supported Tunnel Protocols - * - * - * - * @param protocolOffset Ver.: always - */ -bool emberAfTunnelingClusterGetSupportedTunnelProtocolsCallback(uint8_t protocolOffset); -/** @brief Tunneling Cluster Ready Data Client To Server - * - * - * - * @param tunnelId Ver.: always - * @param numberOfOctetsLeft Ver.: always - */ -bool emberAfTunnelingClusterReadyDataClientToServerCallback(uint16_t tunnelId, uint16_t numberOfOctetsLeft); -/** @brief Tunneling Cluster Ready Data Server To Client - * - * - * - * @param tunnelId Ver.: always - * @param numberOfOctetsLeft Ver.: always - */ -bool emberAfTunnelingClusterReadyDataServerToClientCallback(uint16_t tunnelId, uint16_t numberOfOctetsLeft); -/** @brief Tunneling Cluster Request Tunnel - * - * - * - * @param protocolId Ver.: always - * @param manufacturerCode Ver.: always - * @param flowControlSupport Ver.: always - * @param maximumIncomingTransferSize Ver.: since se-1.1a-07-5356-17 - */ -bool emberAfTunnelingClusterRequestTunnelCallback(uint8_t protocolId, uint16_t manufacturerCode, uint8_t flowControlSupport, - uint16_t maximumIncomingTransferSize); -/** @brief Tunneling Cluster Request Tunnel Response - * - * - * - * @param tunnelId Ver.: always - * @param tunnelStatus Ver.: always - * @param maximumIncomingTransferSize Ver.: since se-1.1a-07-5356-17 - */ -bool emberAfTunnelingClusterRequestTunnelResponseCallback(uint16_t tunnelId, uint8_t tunnelStatus, - uint16_t maximumIncomingTransferSize); -/** @brief Tunneling Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfTunnelingClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Tunneling Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfTunnelingClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Tunneling Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfTunnelingClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Tunneling Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfTunnelingClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Tunneling Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfTunnelingClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Tunneling Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfTunnelingClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Tunneling Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfTunnelingClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Tunneling Cluster Supported Tunnel Protocols Response - * - * - * - * @param protocolListComplete Ver.: always - * @param protocolCount Ver.: always - * @param protocolList Ver.: always - */ -bool emberAfTunnelingClusterSupportedTunnelProtocolsResponseCallback(uint8_t protocolListComplete, uint8_t protocolCount, - uint8_t * protocolList); -/** @brief Tunneling Cluster Transfer Data Client To Server - * - * - * - * @param tunnelId Ver.: always - * @param data Ver.: always - */ -bool emberAfTunnelingClusterTransferDataClientToServerCallback(uint16_t tunnelId, uint8_t * data); -/** @brief Tunneling Cluster Transfer Data Error Client To Server - * - * - * - * @param tunnelId Ver.: always - * @param transferDataStatus Ver.: always - */ -bool emberAfTunnelingClusterTransferDataErrorClientToServerCallback(uint16_t tunnelId, uint8_t transferDataStatus); -/** @brief Tunneling Cluster Transfer Data Error Server To Client - * - * - * - * @param tunnelId Ver.: always - * @param transferDataStatus Ver.: always - */ -bool emberAfTunnelingClusterTransferDataErrorServerToClientCallback(uint16_t tunnelId, uint8_t transferDataStatus); -/** @brief Tunneling Cluster Transfer Data Server To Client - * - * - * - * @param tunnelId Ver.: always - * @param data Ver.: always - */ -bool emberAfTunnelingClusterTransferDataServerToClientCallback(uint16_t tunnelId, uint8_t * data); -/** @brief Tunneling Cluster Tunnel Closure Notification - * - * - * - * @param tunnelId Ver.: always - */ -bool emberAfTunnelingClusterTunnelClosureNotificationCallback(uint16_t tunnelId); - -/** @} END Tunneling Cluster Callbacks */ - -/** @name Prepayment Cluster Callbacks */ -// @{ - -/** @brief Prepayment Cluster Change Debt - * - * - * - * @param issuerEventId Ver.: always - * @param debtLabel Ver.: always - * @param debtAmount Ver.: always - * @param debtRecoveryMethod Ver.: always - * @param debtAmountType Ver.: always - * @param debtRecoveryStartTime Ver.: always - * @param debtRecoveryCollectionTime Ver.: always - * @param debtRecoveryFrequency Ver.: always - * @param debtRecoveryAmount Ver.: always - * @param debtRecoveryBalancePercentage Ver.: always - */ -bool emberAfPrepaymentClusterChangeDebtCallback(uint32_t issuerEventId, uint8_t * debtLabel, uint32_t debtAmount, - uint8_t debtRecoveryMethod, uint8_t debtAmountType, uint32_t debtRecoveryStartTime, - uint16_t debtRecoveryCollectionTime, uint8_t debtRecoveryFrequency, - uint32_t debtRecoveryAmount, uint16_t debtRecoveryBalancePercentage); -/** @brief Prepayment Cluster Change Payment Mode - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param implementationDateTime Ver.: always - * @param proposedPaymentControlConfiguration Ver.: always - * @param cutOffValue Ver.: always - */ -bool emberAfPrepaymentClusterChangePaymentModeCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t implementationDateTime, - uint16_t proposedPaymentControlConfiguration, uint32_t cutOffValue); -/** @brief Prepayment Cluster Change Payment Mode Response - * - * - * - * @param friendlyCredit Ver.: always - * @param friendlyCreditCalendarId Ver.: always - * @param emergencyCreditLimit Ver.: always - * @param emergencyCreditThreshold Ver.: always - */ -bool emberAfPrepaymentClusterChangePaymentModeResponseCallback(uint8_t friendlyCredit, uint32_t friendlyCreditCalendarId, - uint32_t emergencyCreditLimit, uint32_t emergencyCreditThreshold); -/** @brief Prepayment Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPrepaymentClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Prepayment Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPrepaymentClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Prepayment Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPrepaymentClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Prepayment Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPrepaymentClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Prepayment Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPrepaymentClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Prepayment Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPrepaymentClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Prepayment Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPrepaymentClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Prepayment Cluster Consumer Top Up - * - * - * - * @param originatingDevice Ver.: always - * @param topUpCode Ver.: always - */ -bool emberAfPrepaymentClusterConsumerTopUpCallback(uint8_t originatingDevice, uint8_t * topUpCode); -/** @brief Prepayment Cluster Consumer Top Up Response - * - * - * - * @param resultType Ver.: always - * @param topUpValue Ver.: always - * @param sourceOfTopUp Ver.: always - * @param creditRemaining Ver.: always - */ -bool emberAfPrepaymentClusterConsumerTopUpResponseCallback(uint8_t resultType, uint32_t topUpValue, uint8_t sourceOfTopUp, - uint32_t creditRemaining); -/** @brief Prepayment Cluster Credit Adjustment - * - * - * - * @param issuerEventId Ver.: always - * @param startTime Ver.: always - * @param creditAdjustmentType Ver.: always - * @param creditAdjustmentValue Ver.: always - */ -bool emberAfPrepaymentClusterCreditAdjustmentCallback(uint32_t issuerEventId, uint32_t startTime, uint8_t creditAdjustmentType, - uint32_t creditAdjustmentValue); -/** @brief Prepayment Cluster Emergency Credit Setup - * - * - * - * @param issuerEventId Ver.: always - * @param startTime Ver.: always - * @param emergencyCreditLimit Ver.: always - * @param emergencyCreditThreshold Ver.: always - */ -bool emberAfPrepaymentClusterEmergencyCreditSetupCallback(uint32_t issuerEventId, uint32_t startTime, uint32_t emergencyCreditLimit, - uint32_t emergencyCreditThreshold); -/** @brief Prepayment Cluster Get Debt Repayment Log - * - * - * - * @param latestEndTime Ver.: always - * @param numberOfDebts Ver.: always - * @param debtType Ver.: always - */ -bool emberAfPrepaymentClusterGetDebtRepaymentLogCallback(uint32_t latestEndTime, uint8_t numberOfDebts, uint8_t debtType); -/** @brief Prepayment Cluster Get Prepay Snapshot - * - * - * - * @param earliestStartTime Ver.: always - * @param latestEndTime Ver.: always - * @param snapshotOffset Ver.: always - * @param snapshotCause Ver.: always - */ -bool emberAfPrepaymentClusterGetPrepaySnapshotCallback(uint32_t earliestStartTime, uint32_t latestEndTime, uint8_t snapshotOffset, - uint32_t snapshotCause); -/** @brief Prepayment Cluster Get Top Up Log - * - * - * - * @param latestEndTime Ver.: always - * @param numberOfRecords Ver.: always - */ -bool emberAfPrepaymentClusterGetTopUpLogCallback(uint32_t latestEndTime, uint8_t numberOfRecords); -/** @brief Prepayment Cluster Publish Debt Log - * - * - * - * @param commandIndex Ver.: always - * @param totalNumberOfCommands Ver.: always - * @param debtPayload Ver.: always - */ -bool emberAfPrepaymentClusterPublishDebtLogCallback(uint8_t commandIndex, uint8_t totalNumberOfCommands, uint8_t * debtPayload); -/** @brief Prepayment Cluster Publish Prepay Snapshot - * - * - * - * @param snapshotId Ver.: always - * @param snapshotTime Ver.: always - * @param totalSnapshotsFound Ver.: always - * @param commandIndex Ver.: always - * @param totalNumberOfCommands Ver.: always - * @param snapshotCause Ver.: always - * @param snapshotPayloadType Ver.: always - * @param snapshotPayload Ver.: always - */ -bool emberAfPrepaymentClusterPublishPrepaySnapshotCallback(uint32_t snapshotId, uint32_t snapshotTime, uint8_t totalSnapshotsFound, - uint8_t commandIndex, uint8_t totalNumberOfCommands, - uint32_t snapshotCause, uint8_t snapshotPayloadType, - uint8_t * snapshotPayload); -/** @brief Prepayment Cluster Publish Top Up Log - * - * - * - * @param commandIndex Ver.: always - * @param totalNumberOfCommands Ver.: always - * @param topUpPayload Ver.: always - */ -bool emberAfPrepaymentClusterPublishTopUpLogCallback(uint8_t commandIndex, uint8_t totalNumberOfCommands, uint8_t * topUpPayload); -/** @brief Prepayment Cluster Select Available Emergency Credit - * - * - * - * @param commandIssueDateTime Ver.: always - * @param originatingDevice Ver.: always - */ -bool emberAfPrepaymentClusterSelectAvailableEmergencyCreditCallback(uint32_t commandIssueDateTime, uint8_t originatingDevice); -/** @brief Prepayment Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPrepaymentClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Prepayment Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPrepaymentClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Prepayment Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPrepaymentClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Prepayment Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPrepaymentClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Prepayment Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPrepaymentClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Prepayment Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPrepaymentClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Prepayment Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPrepaymentClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Prepayment Cluster Set Low Credit Warning Level - * - * - * - * @param lowCreditWarningLevel Ver.: always - */ -bool emberAfPrepaymentClusterSetLowCreditWarningLevelCallback(uint32_t lowCreditWarningLevel); -/** @brief Prepayment Cluster Set Maximum Credit Limit - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param implementationDateTime Ver.: always - * @param maximumCreditLevel Ver.: always - * @param maximumCreditPerTopUp Ver.: always - */ -bool emberAfPrepaymentClusterSetMaximumCreditLimitCallback(uint32_t providerId, uint32_t issuerEventId, - uint32_t implementationDateTime, uint32_t maximumCreditLevel, - uint32_t maximumCreditPerTopUp); -/** @brief Prepayment Cluster Set Overall Debt Cap - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param implementationDateTime Ver.: always - * @param overallDebtCap Ver.: always - */ -bool emberAfPrepaymentClusterSetOverallDebtCapCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t implementationDateTime, - uint32_t overallDebtCap); - -/** @} END Prepayment Cluster Callbacks */ - -/** @name Energy Management Cluster Callbacks */ -// @{ - -/** @brief Energy Management Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfEnergyManagementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Energy Management Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfEnergyManagementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Energy Management Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfEnergyManagementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Energy Management Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfEnergyManagementClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Energy Management Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfEnergyManagementClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Energy Management Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfEnergyManagementClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Energy Management Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfEnergyManagementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Energy Management Cluster Manage Event - * - * - * - * @param issuerEventId Ver.: always - * @param deviceClass Ver.: always - * @param utilityEnrollmentGroup Ver.: always - * @param actionRequired Ver.: always - */ -bool emberAfEnergyManagementClusterManageEventCallback(uint32_t issuerEventId, uint16_t deviceClass, uint8_t utilityEnrollmentGroup, - uint8_t actionRequired); -/** @brief Energy Management Cluster Report Event Status - * - * - * - * @param issuerEventId Ver.: always - * @param eventStatus Ver.: always - * @param eventStatusTime Ver.: always - * @param criticalityLevelApplied Ver.: always - * @param coolingTemperatureSetPointApplied Ver.: always - * @param heatingTemperatureSetPointApplied Ver.: always - * @param averageLoadAdjustmentPercentageApplied Ver.: always - * @param dutyCycleApplied Ver.: always - * @param eventControl Ver.: always - */ -bool emberAfEnergyManagementClusterReportEventStatusCallback(uint32_t issuerEventId, uint8_t eventStatus, uint32_t eventStatusTime, - uint8_t criticalityLevelApplied, - uint16_t coolingTemperatureSetPointApplied, - uint16_t heatingTemperatureSetPointApplied, - int8_t averageLoadAdjustmentPercentageApplied, - uint8_t dutyCycleApplied, uint8_t eventControl); -/** @brief Energy Management Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfEnergyManagementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Energy Management Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfEnergyManagementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Energy Management Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfEnergyManagementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Energy Management Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfEnergyManagementClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Energy Management Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfEnergyManagementClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Energy Management Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfEnergyManagementClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Energy Management Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfEnergyManagementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Energy Management Cluster Callbacks */ - -/** @name Calendar Cluster Callbacks */ -// @{ - -/** @brief Calendar Cluster Cancel Calendar - * - * - * - * @param providerId Ver.: always - * @param issuerCalendarId Ver.: always - * @param calendarType Ver.: always - */ -bool emberAfCalendarClusterCancelCalendarCallback(uint32_t providerId, uint32_t issuerCalendarId, uint8_t calendarType); -/** @brief Calendar Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCalendarClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Calendar Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCalendarClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Calendar Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCalendarClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Calendar Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCalendarClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Calendar Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCalendarClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Calendar Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCalendarClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Calendar Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCalendarClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Calendar Cluster Get Calendar - * - * - * - * @param earliestStartTime Ver.: always - * @param minIssuerEventId Ver.: always - * @param numberOfCalendars Ver.: always - * @param calendarType Ver.: always - * @param providerId Ver.: always - */ -bool emberAfCalendarClusterGetCalendarCallback(uint32_t earliestStartTime, uint32_t minIssuerEventId, uint8_t numberOfCalendars, - uint8_t calendarType, uint32_t providerId); -/** @brief Calendar Cluster Get Calendar Cancellation - * - * - * - */ -bool emberAfCalendarClusterGetCalendarCancellationCallback(void); -/** @brief Calendar Cluster Get Day Profiles - * - * - * - * @param providerId Ver.: always - * @param issuerCalendarId Ver.: always - * @param startDayId Ver.: always - * @param numberOfDays Ver.: always - */ -bool emberAfCalendarClusterGetDayProfilesCallback(uint32_t providerId, uint32_t issuerCalendarId, uint8_t startDayId, - uint8_t numberOfDays); -/** @brief Calendar Cluster Get Seasons - * - * - * - * @param providerId Ver.: always - * @param issuerCalendarId Ver.: always - */ -bool emberAfCalendarClusterGetSeasonsCallback(uint32_t providerId, uint32_t issuerCalendarId); -/** @brief Calendar Cluster Get Special Days - * - * - * - * @param startTime Ver.: always - * @param numberOfEvents Ver.: always - * @param calendarType Ver.: always - * @param providerId Ver.: always - * @param issuerCalendarId Ver.: always - */ -bool emberAfCalendarClusterGetSpecialDaysCallback(uint32_t startTime, uint8_t numberOfEvents, uint8_t calendarType, - uint32_t providerId, uint32_t issuerCalendarId); -/** @brief Calendar Cluster Get Week Profiles - * - * - * - * @param providerId Ver.: always - * @param issuerCalendarId Ver.: always - * @param startWeekId Ver.: always - * @param numberOfWeeks Ver.: always - */ -bool emberAfCalendarClusterGetWeekProfilesCallback(uint32_t providerId, uint32_t issuerCalendarId, uint8_t startWeekId, - uint8_t numberOfWeeks); -/** @brief Calendar Cluster Publish Calendar - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param issuerCalendarId Ver.: always - * @param startTime Ver.: always - * @param calendarType Ver.: always - * @param calendarTimeReference Ver.: always - * @param calendarName Ver.: always - * @param numberOfSeasons Ver.: always - * @param numberOfWeekProfiles Ver.: always - * @param numberOfDayProfiles Ver.: always - */ -bool emberAfCalendarClusterPublishCalendarCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t issuerCalendarId, - uint32_t startTime, uint8_t calendarType, uint8_t calendarTimeReference, - uint8_t * calendarName, uint8_t numberOfSeasons, uint8_t numberOfWeekProfiles, - uint8_t numberOfDayProfiles); -/** @brief Calendar Cluster Publish Day Profile - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param issuerCalendarId Ver.: always - * @param dayId Ver.: always - * @param totalNumberOfScheduleEntries Ver.: always - * @param commandIndex Ver.: always - * @param totalNumberOfCommands Ver.: always - * @param calendarType Ver.: always - * @param dayScheduleEntries Ver.: always - */ -bool emberAfCalendarClusterPublishDayProfileCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t issuerCalendarId, - uint8_t dayId, uint8_t totalNumberOfScheduleEntries, uint8_t commandIndex, - uint8_t totalNumberOfCommands, uint8_t calendarType, - uint8_t * dayScheduleEntries); -/** @brief Calendar Cluster Publish Seasons - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param issuerCalendarId Ver.: always - * @param commandIndex Ver.: always - * @param totalNumberOfCommands Ver.: always - * @param seasonEntries Ver.: always - */ -bool emberAfCalendarClusterPublishSeasonsCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t issuerCalendarId, - uint8_t commandIndex, uint8_t totalNumberOfCommands, uint8_t * seasonEntries); -/** @brief Calendar Cluster Publish Special Days - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param issuerCalendarId Ver.: always - * @param startTime Ver.: always - * @param calendarType Ver.: always - * @param totalNumberOfSpecialDays Ver.: always - * @param commandIndex Ver.: always - * @param totalNumberOfCommands Ver.: always - * @param specialDayEntries Ver.: always - */ -bool emberAfCalendarClusterPublishSpecialDaysCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t issuerCalendarId, - uint32_t startTime, uint8_t calendarType, uint8_t totalNumberOfSpecialDays, - uint8_t commandIndex, uint8_t totalNumberOfCommands, - uint8_t * specialDayEntries); -/** @brief Calendar Cluster Publish Week Profile - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param issuerCalendarId Ver.: always - * @param weekId Ver.: always - * @param dayIdRefMonday Ver.: always - * @param dayIdRefTuesday Ver.: always - * @param dayIdRefWednesday Ver.: always - * @param dayIdRefThursday Ver.: always - * @param dayIdRefFriday Ver.: always - * @param dayIdRefSaturday Ver.: always - * @param dayIdRefSunday Ver.: always - */ -bool emberAfCalendarClusterPublishWeekProfileCallback(uint32_t providerId, uint32_t issuerEventId, uint32_t issuerCalendarId, - uint8_t weekId, uint8_t dayIdRefMonday, uint8_t dayIdRefTuesday, - uint8_t dayIdRefWednesday, uint8_t dayIdRefThursday, uint8_t dayIdRefFriday, - uint8_t dayIdRefSaturday, uint8_t dayIdRefSunday); -/** @brief Calendar Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfCalendarClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Calendar Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfCalendarClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Calendar Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfCalendarClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Calendar Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfCalendarClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Calendar Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfCalendarClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Calendar Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfCalendarClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Calendar Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfCalendarClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Calendar Cluster Callbacks */ - -/** @name Device Management Cluster Callbacks */ -// @{ - -/** @brief Device Management Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDeviceManagementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Device Management Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDeviceManagementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Device Management Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDeviceManagementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Device Management Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDeviceManagementClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Device Management Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDeviceManagementClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Device Management Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDeviceManagementClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Device Management Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDeviceManagementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Device Management Cluster Get C I N - * - * - * - */ -bool emberAfDeviceManagementClusterGetCINCallback(void); -/** @brief Device Management Cluster Get Change Of Supplier - * - * - * - */ -bool emberAfDeviceManagementClusterGetChangeOfSupplierCallback(void); -/** @brief Device Management Cluster Get Change Of Tenancy - * - * - * - */ -bool emberAfDeviceManagementClusterGetChangeOfTenancyCallback(void); -/** @brief Device Management Cluster Get Event Configuration - * - * - * - * @param eventId Ver.: always - */ -bool emberAfDeviceManagementClusterGetEventConfigurationCallback(uint16_t eventId); -/** @brief Device Management Cluster Get Site Id - * - * - * - */ -bool emberAfDeviceManagementClusterGetSiteIdCallback(void); -/** @brief Device Management Cluster Publish Change Of Supplier - * - * - * - * @param currentProviderId Ver.: always - * @param issuerEventId Ver.: always - * @param tariffType Ver.: always - * @param proposedProviderId Ver.: always - * @param providerChangeImplementationTime Ver.: always - * @param providerChangeControl Ver.: always - * @param proposedProviderName Ver.: always - * @param proposedProviderContactDetails Ver.: always - */ -bool emberAfDeviceManagementClusterPublishChangeOfSupplierCallback(uint32_t currentProviderId, uint32_t issuerEventId, - uint8_t tariffType, uint32_t proposedProviderId, - uint32_t providerChangeImplementationTime, - uint32_t providerChangeControl, uint8_t * proposedProviderName, - uint8_t * proposedProviderContactDetails); -/** @brief Device Management Cluster Publish Change Of Tenancy - * - * - * - * @param providerId Ver.: always - * @param issuerEventId Ver.: always - * @param tariffType Ver.: always - * @param implementationDateTime Ver.: always - * @param proposedTenancyChangeControl Ver.: always - */ -bool emberAfDeviceManagementClusterPublishChangeOfTenancyCallback(uint32_t providerId, uint32_t issuerEventId, uint8_t tariffType, - uint32_t implementationDateTime, - uint32_t proposedTenancyChangeControl); -/** @brief Device Management Cluster Report Event Configuration - * - * - * - * @param commandIndex Ver.: always - * @param totalCommands Ver.: always - * @param eventConfigurationPayload Ver.: always - */ -bool emberAfDeviceManagementClusterReportEventConfigurationCallback(uint8_t commandIndex, uint8_t totalCommands, - uint8_t * eventConfigurationPayload); -/** @brief Device Management Cluster Request New Password - * - * - * - * @param passwordType Ver.: always - */ -bool emberAfDeviceManagementClusterRequestNewPasswordCallback(uint8_t passwordType); -/** @brief Device Management Cluster Request New Password Response - * - * - * - * @param issuerEventId Ver.: always - * @param implementationDateTime Ver.: always - * @param durationInMinutes Ver.: always - * @param passwordType Ver.: always - * @param password Ver.: always - */ -bool emberAfDeviceManagementClusterRequestNewPasswordResponseCallback(uint32_t issuerEventId, uint32_t implementationDateTime, - uint16_t durationInMinutes, uint8_t passwordType, - uint8_t * password); -/** @brief Device Management Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDeviceManagementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Device Management Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDeviceManagementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Device Management Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDeviceManagementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Device Management Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDeviceManagementClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Device Management Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDeviceManagementClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Device Management Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDeviceManagementClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Device Management Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDeviceManagementClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Device Management Cluster Set Event Configuration - * - * - * - * @param issuerEventId Ver.: always - * @param startDateTime Ver.: always - * @param eventConfiguration Ver.: always - * @param configurationControl Ver.: always - * @param eventConfigurationPayload Ver.: always - */ -bool emberAfDeviceManagementClusterSetEventConfigurationCallback(uint32_t issuerEventId, uint32_t startDateTime, - uint8_t eventConfiguration, uint8_t configurationControl, - uint8_t * eventConfigurationPayload); -/** @brief Device Management Cluster Update C I N - * - * - * - * @param issuerEventId Ver.: always - * @param implementationTime Ver.: always - * @param providerId Ver.: always - * @param customerIdNumber Ver.: always - */ -bool emberAfDeviceManagementClusterUpdateCINCallback(uint32_t issuerEventId, uint32_t implementationTime, uint32_t providerId, - uint8_t * customerIdNumber); -/** @brief Device Management Cluster Update Site Id - * - * - * - * @param issuerEventId Ver.: always - * @param siteIdTime Ver.: always - * @param providerId Ver.: always - * @param siteId Ver.: always - */ -bool emberAfDeviceManagementClusterUpdateSiteIdCallback(uint32_t issuerEventId, uint32_t siteIdTime, uint32_t providerId, - uint8_t * siteId); - -/** @} END Device Management Cluster Callbacks */ - -/** @name Events Cluster Callbacks */ -// @{ - -/** @brief Events Cluster Clear Event Log Request - * - * - * - * @param logId Ver.: always - */ -bool emberAfEventsClusterClearEventLogRequestCallback(uint8_t logId); -/** @brief Events Cluster Clear Event Log Response - * - * - * - * @param clearedEventsLogs Ver.: always - */ -bool emberAfEventsClusterClearEventLogResponseCallback(uint8_t clearedEventsLogs); -/** @brief Events Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfEventsClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Events Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfEventsClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Events Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfEventsClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Events Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfEventsClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Events Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfEventsClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Events Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfEventsClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Events Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfEventsClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Events Cluster Get Event Log - * - * - * - * @param eventControlLogId Ver.: always - * @param eventId Ver.: always - * @param startTime Ver.: always - * @param endTime Ver.: always - * @param numberOfEvents Ver.: always - * @param eventOffset Ver.: always - */ -bool emberAfEventsClusterGetEventLogCallback(uint8_t eventControlLogId, uint16_t eventId, uint32_t startTime, uint32_t endTime, - uint8_t numberOfEvents, uint16_t eventOffset); -/** @brief Events Cluster Publish Event - * - * - * - * @param logId Ver.: always - * @param eventId Ver.: always - * @param eventTime Ver.: always - * @param eventControl Ver.: always - * @param eventData Ver.: always - */ -bool emberAfEventsClusterPublishEventCallback(uint8_t logId, uint16_t eventId, uint32_t eventTime, uint8_t eventControl, - uint8_t * eventData); -/** @brief Events Cluster Publish Event Log - * - * - * - * @param totalNumberOfEvents Ver.: always - * @param commandIndex Ver.: always - * @param totalCommands Ver.: always - * @param logPayloadControl Ver.: always - * @param logPayload Ver.: always - */ -bool emberAfEventsClusterPublishEventLogCallback(uint16_t totalNumberOfEvents, uint8_t commandIndex, uint8_t totalCommands, - uint8_t logPayloadControl, uint8_t * logPayload); -/** @brief Events Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfEventsClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Events Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfEventsClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Events Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfEventsClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Events Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfEventsClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Events Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfEventsClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Events Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfEventsClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Events Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfEventsClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Events Cluster Callbacks */ - -/** @name MDU Pairing Cluster Callbacks */ -// @{ - -/** @brief MDU Pairing Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfMduPairingClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief MDU Pairing Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfMduPairingClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief MDU Pairing Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfMduPairingClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief MDU Pairing Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfMduPairingClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief MDU Pairing Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfMduPairingClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief MDU Pairing Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfMduPairingClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief MDU Pairing Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfMduPairingClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief MDU Pairing Cluster Pairing Request - * - * - * - * @param localPairingInformationVersion Ver.: always - * @param eui64OfRequestingDevice Ver.: always - */ -bool emberAfMduPairingClusterPairingRequestCallback(uint32_t localPairingInformationVersion, uint8_t * eui64OfRequestingDevice); -/** @brief MDU Pairing Cluster Pairing Response - * - * - * - * @param pairingInformationVersion Ver.: always - * @param totalNumberOfDevices Ver.: always - * @param commandIndex Ver.: always - * @param totalNumberOfCommands Ver.: always - * @param eui64s Ver.: always - */ -bool emberAfMduPairingClusterPairingResponseCallback(uint32_t pairingInformationVersion, uint8_t totalNumberOfDevices, - uint8_t commandIndex, uint8_t totalNumberOfCommands, uint8_t * eui64s); -/** @brief MDU Pairing Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfMduPairingClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief MDU Pairing Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfMduPairingClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief MDU Pairing Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfMduPairingClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief MDU Pairing Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfMduPairingClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief MDU Pairing Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfMduPairingClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief MDU Pairing Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfMduPairingClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief MDU Pairing Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfMduPairingClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END MDU Pairing Cluster Callbacks */ - -/** @name Sub-GHz Cluster Callbacks */ -// @{ - -/** @brief Sub-GHz Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSubGhzClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Sub-GHz Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSubGhzClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Sub-GHz Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSubGhzClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Sub-GHz Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSubGhzClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sub-GHz Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSubGhzClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Sub-GHz Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSubGhzClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Sub-GHz Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSubGhzClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Sub-GHz Cluster Get Suspend Zcl Messages Status - * - * - * - */ -bool emberAfSubGhzClusterGetSuspendZclMessagesStatusCallback(void); -/** @brief Sub-GHz Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSubGhzClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Sub-GHz Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSubGhzClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Sub-GHz Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSubGhzClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Sub-GHz Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSubGhzClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sub-GHz Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSubGhzClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Sub-GHz Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSubGhzClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Sub-GHz Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSubGhzClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Sub-GHz Cluster Suspend Zcl Messages - * - * - * - * @param period Ver.: always - */ -bool emberAfSubGhzClusterSuspendZclMessagesCallback(uint8_t period); - -/** @} END Sub-GHz Cluster Callbacks */ - -/** @name Key Establishment Cluster Callbacks */ -// @{ - -/** @brief Key Establishment Cluster Client Command Received - * - * This function is called by the application framework when a server-to-client - * key establishment command is received but has yet to be handled by the - * framework code. This function should return a bool value indicating whether - * the command has been handled by the application code and should not be - * further processed by the framework. - * - * @param cmd Ver.: always - */ -bool emberAfKeyEstablishmentClusterClientCommandReceivedCallback(EmberAfClusterCommand * cmd); -/** @brief Key Establishment Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfKeyEstablishmentClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Key Establishment Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfKeyEstablishmentClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Key Establishment Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfKeyEstablishmentClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Key Establishment Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfKeyEstablishmentClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Key Establishment Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfKeyEstablishmentClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Key Establishment Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfKeyEstablishmentClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Key Establishment Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfKeyEstablishmentClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Key Establishment Cluster Confirm Key Data Request - * - * - * - * @param secureMessageAuthenticationCode Ver.: always - */ -bool emberAfKeyEstablishmentClusterConfirmKeyDataRequestCallback(uint8_t * secureMessageAuthenticationCode); -/** @brief Key Establishment Cluster Confirm Key Data Response - * - * - * - * @param secureMessageAuthenticationCode Ver.: always - */ -bool emberAfKeyEstablishmentClusterConfirmKeyDataResponseCallback(uint8_t * secureMessageAuthenticationCode); -/** @brief Key Establishment Cluster Ephemeral Data Request - * - * - * - * @param ephemeralData Ver.: always - */ -bool emberAfKeyEstablishmentClusterEphemeralDataRequestCallback(uint8_t * ephemeralData); -/** @brief Key Establishment Cluster Ephemeral Data Response - * - * - * - * @param ephemeralData Ver.: always - */ -bool emberAfKeyEstablishmentClusterEphemeralDataResponseCallback(uint8_t * ephemeralData); -/** @brief Key Establishment Cluster Initiate Key Establishment Request - * - * - * - * @param keyEstablishmentSuite Ver.: always - * @param ephemeralDataGenerateTime Ver.: always - * @param confirmKeyGenerateTime Ver.: always - * @param identity Ver.: always - */ -bool emberAfKeyEstablishmentClusterInitiateKeyEstablishmentRequestCallback(uint16_t keyEstablishmentSuite, - uint8_t ephemeralDataGenerateTime, - uint8_t confirmKeyGenerateTime, uint8_t * identity); -/** @brief Key Establishment Cluster Initiate Key Establishment Response - * - * - * - * @param requestedKeyEstablishmentSuite Ver.: always - * @param ephemeralDataGenerateTime Ver.: always - * @param confirmKeyGenerateTime Ver.: always - * @param identity Ver.: always - */ -bool emberAfKeyEstablishmentClusterInitiateKeyEstablishmentResponseCallback(uint16_t requestedKeyEstablishmentSuite, - uint8_t ephemeralDataGenerateTime, - uint8_t confirmKeyGenerateTime, uint8_t * identity); -/** @brief Key Establishment Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfKeyEstablishmentClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Key Establishment Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfKeyEstablishmentClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Key Establishment Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfKeyEstablishmentClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Key Establishment Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfKeyEstablishmentClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Key Establishment Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfKeyEstablishmentClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Key Establishment Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfKeyEstablishmentClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Key Establishment Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfKeyEstablishmentClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Key Establishment Cluster Terminate Key Establishment - * - * - * - * @param statusCode Ver.: always - * @param waitTime Ver.: always - * @param keyEstablishmentSuite Ver.: always - */ -bool emberAfKeyEstablishmentClusterTerminateKeyEstablishmentCallback(uint8_t statusCode, uint8_t waitTime, - uint16_t keyEstablishmentSuite); -/** @brief Key Establishment Cluster Server Command Received - * - * This function is called by the application framework when a client-to-server - * key establishment command is received but has yet to be handled by the - * framework code. This function should return a bool value indicating whether - * the command has been handled by the application code and should not be - * further processed by the framework. - * - * @param cmd Ver.: always - */ -bool emberAfKeyEstablishmentClusterServerCommandReceivedCallback(EmberAfClusterCommand * cmd); - -/** @} END Key Establishment Cluster Callbacks */ - -/** @name Information Cluster Callbacks */ -// @{ - -/** @brief Information Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfInformationClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Information Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfInformationClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Information Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfInformationClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Information Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfInformationClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Information Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfInformationClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Information Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfInformationClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Information Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfInformationClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Information Cluster Configure Delivery Enable - * - * - * - * @param enable Ver.: always - */ -bool emberAfInformationClusterConfigureDeliveryEnableCallback(uint8_t enable); -/** @brief Information Cluster Configure Node Description - * - * - * - * @param description Ver.: always - */ -bool emberAfInformationClusterConfigureNodeDescriptionCallback(uint8_t * description); -/** @brief Information Cluster Configure Push Information Timer - * - * - * - * @param timer Ver.: always - */ -bool emberAfInformationClusterConfigurePushInformationTimerCallback(uint32_t timer); -/** @brief Information Cluster Configure Set Root Id - * - * - * - * @param rootId Ver.: always - */ -bool emberAfInformationClusterConfigureSetRootIdCallback(uint16_t rootId); -/** @brief Information Cluster Delete - * - * - * - * @param deletionOptions Ver.: always - * @param contentIds Ver.: always - */ -bool emberAfInformationClusterDeleteCallback(uint8_t deletionOptions, uint8_t * contentIds); -/** @brief Information Cluster Delete Response - * - * - * - * @param notificationList Ver.: always - */ -bool emberAfInformationClusterDeleteResponseCallback(uint8_t * notificationList); -/** @brief Information Cluster Push Information - * - * - * - * @param contents Ver.: always - */ -bool emberAfInformationClusterPushInformationCallback(uint8_t * contents); -/** @brief Information Cluster Push Information Response - * - * - * - * @param notificationList Ver.: always - */ -bool emberAfInformationClusterPushInformationResponseCallback(uint8_t * notificationList); -/** @brief Information Cluster Request Information - * - * - * - * @param inquiryId Ver.: always - * @param dataTypeId Ver.: always - * @param requestInformationPayload Ver.: always - */ -bool emberAfInformationClusterRequestInformationCallback(uint8_t inquiryId, uint8_t dataTypeId, - uint8_t * requestInformationPayload); -/** @brief Information Cluster Request Information Response - * - * - * - * @param number Ver.: always - * @param buffer Ver.: always - */ -bool emberAfInformationClusterRequestInformationResponseCallback(uint8_t number, uint8_t * buffer); -/** @brief Information Cluster Request Preference Confirmation - * - * - * - * @param statusFeedbackList Ver.: always - */ -bool emberAfInformationClusterRequestPreferenceConfirmationCallback(uint8_t * statusFeedbackList); -/** @brief Information Cluster Request Preference Response - * - * - * - * @param statusFeedback Ver.: always - * @param preferenceType Ver.: always - * @param preferencePayload Ver.: always - */ -bool emberAfInformationClusterRequestPreferenceResponseCallback(uint8_t statusFeedback, uint16_t preferenceType, - uint8_t * preferencePayload); -/** @brief Information Cluster Send Preference - * - * - * - * @param preferenceType Ver.: always - * @param preferencePayload Ver.: always - */ -bool emberAfInformationClusterSendPreferenceCallback(uint16_t preferenceType, uint8_t * preferencePayload); -/** @brief Information Cluster Send Preference Response - * - * - * - * @param statusFeedbackList Ver.: always - */ -bool emberAfInformationClusterSendPreferenceResponseCallback(uint8_t * statusFeedbackList); -/** @brief Information Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfInformationClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Information Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfInformationClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Information Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfInformationClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Information Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfInformationClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Information Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfInformationClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Information Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfInformationClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Information Cluster Server Request Preference - * - * - * - */ -bool emberAfInformationClusterServerRequestPreferenceCallback(void); -/** @brief Information Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfInformationClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Information Cluster Update - * - * - * - * @param accessControl Ver.: always - * @param option Ver.: always - * @param contents Ver.: always - */ -bool emberAfInformationClusterUpdateCallback(uint8_t accessControl, uint8_t option, uint8_t * contents); -/** @brief Information Cluster Update Response - * - * - * - * @param notificationList Ver.: always - */ -bool emberAfInformationClusterUpdateResponseCallback(uint8_t * notificationList); - -/** @} END Information Cluster Callbacks */ - -/** @name Data Sharing Cluster Callbacks */ -// @{ - -/** @brief Data Sharing Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDataSharingClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Data Sharing Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDataSharingClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Data Sharing Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDataSharingClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Data Sharing Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDataSharingClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Data Sharing Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDataSharingClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Data Sharing Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDataSharingClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Data Sharing Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDataSharingClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Data Sharing Cluster File Transmission - * - * - * - * @param transmitOptions Ver.: always - * @param buffer Ver.: always - */ -bool emberAfDataSharingClusterFileTransmissionCallback(uint8_t transmitOptions, uint8_t * buffer); -/** @brief Data Sharing Cluster Modify File Request - * - * - * - * @param fileIndex Ver.: always - * @param fileStartPosition Ver.: always - * @param octetCount Ver.: always - */ -bool emberAfDataSharingClusterModifyFileRequestCallback(uint16_t fileIndex, uint32_t fileStartPosition, uint32_t octetCount); -/** @brief Data Sharing Cluster Modify Record Request - * - * - * - * @param fileIndex Ver.: always - * @param fileStartRecord Ver.: always - * @param recordCount Ver.: always - */ -bool emberAfDataSharingClusterModifyRecordRequestCallback(uint16_t fileIndex, uint16_t fileStartRecord, uint16_t recordCount); -/** @brief Data Sharing Cluster Read File Request - * - * - * - * @param fileIndex Ver.: always - * @param fileStartPositionAndRequestedOctetCount Ver.: always - */ -bool emberAfDataSharingClusterReadFileRequestCallback(uint16_t fileIndex, uint8_t * fileStartPositionAndRequestedOctetCount); -/** @brief Data Sharing Cluster Read Record Request - * - * - * - * @param fileIndex Ver.: always - * @param fileStartRecordAndRequestedRecordCount Ver.: always - */ -bool emberAfDataSharingClusterReadRecordRequestCallback(uint16_t fileIndex, uint8_t * fileStartRecordAndRequestedRecordCount); -/** @brief Data Sharing Cluster Record Transmission - * - * - * - * @param transmitOptions Ver.: always - * @param buffer Ver.: always - */ -bool emberAfDataSharingClusterRecordTransmissionCallback(uint8_t transmitOptions, uint8_t * buffer); -/** @brief Data Sharing Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDataSharingClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Data Sharing Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDataSharingClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Data Sharing Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDataSharingClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Data Sharing Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDataSharingClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Data Sharing Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDataSharingClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Data Sharing Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDataSharingClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Data Sharing Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDataSharingClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Data Sharing Cluster Write File Request - * - * - * - * @param writeOptions Ver.: always - * @param fileSize Ver.: always - */ -bool emberAfDataSharingClusterWriteFileRequestCallback(uint8_t writeOptions, uint8_t * fileSize); -/** @brief Data Sharing Cluster Write File Response - * - * - * - * @param status Ver.: always - * @param fileIndex Ver.: always - */ -bool emberAfDataSharingClusterWriteFileResponseCallback(uint8_t status, uint8_t * fileIndex); - -/** @} END Data Sharing Cluster Callbacks */ - -/** @name Gaming Cluster Callbacks */ -// @{ - -/** @brief Gaming Cluster Action Control - * - * - * - * @param actions Ver.: always - */ -bool emberAfGamingClusterActionControlCallback(uint32_t actions); -/** @brief Gaming Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfGamingClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Gaming Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfGamingClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Gaming Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfGamingClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Gaming Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfGamingClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Gaming Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfGamingClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Gaming Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfGamingClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Gaming Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfGamingClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Gaming Cluster Download Game - * - * - * - */ -bool emberAfGamingClusterDownloadGameCallback(void); -/** @brief Gaming Cluster End Game - * - * - * - */ -bool emberAfGamingClusterEndGameCallback(void); -/** @brief Gaming Cluster Game Announcement - * - * - * - * @param gameId Ver.: always - * @param gameMaster Ver.: always - * @param listOfGame Ver.: always - */ -bool emberAfGamingClusterGameAnnouncementCallback(uint16_t gameId, uint8_t gameMaster, uint8_t * listOfGame); -/** @brief Gaming Cluster General Response - * - * - * - * @param commandId Ver.: always - * @param status Ver.: always - * @param message Ver.: always - */ -bool emberAfGamingClusterGeneralResponseCallback(chip::CommandId commandId, uint8_t status, uint8_t * message); -/** @brief Gaming Cluster Join Game - * - * - * - * @param gameId Ver.: always - * @param joinAsMaster Ver.: always - * @param nameOfGame Ver.: always - */ -bool emberAfGamingClusterJoinGameCallback(uint16_t gameId, uint8_t joinAsMaster, uint8_t * nameOfGame); -/** @brief Gaming Cluster Pause Game - * - * - * - */ -bool emberAfGamingClusterPauseGameCallback(void); -/** @brief Gaming Cluster Quit Game - * - * - * - */ -bool emberAfGamingClusterQuitGameCallback(void); -/** @brief Gaming Cluster Resume Game - * - * - * - */ -bool emberAfGamingClusterResumeGameCallback(void); -/** @brief Gaming Cluster Search Game - * - * - * - * @param specificGame Ver.: always - * @param gameId Ver.: always - */ -bool emberAfGamingClusterSearchGameCallback(uint8_t specificGame, uint16_t gameId); -/** @brief Gaming Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfGamingClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Gaming Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfGamingClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Gaming Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfGamingClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Gaming Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfGamingClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Gaming Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfGamingClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Gaming Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfGamingClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Gaming Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfGamingClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Gaming Cluster Start Game - * - * - * - */ -bool emberAfGamingClusterStartGameCallback(void); -/** @brief Gaming Cluster Start Over - * - * - * - */ -bool emberAfGamingClusterStartOverCallback(void); - -/** @} END Gaming Cluster Callbacks */ - -/** @name Data Rate Control Cluster Callbacks */ -// @{ - -/** @brief Data Rate Control Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDataRateControlClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Data Rate Control Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDataRateControlClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Data Rate Control Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDataRateControlClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Data Rate Control Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDataRateControlClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Data Rate Control Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDataRateControlClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Data Rate Control Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDataRateControlClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Data Rate Control Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDataRateControlClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Data Rate Control Cluster Data Rate Control - * - * - * - * @param originatorAddress Ver.: always - * @param destinationAddress Ver.: always - * @param dataRate Ver.: always - */ -bool emberAfDataRateControlClusterDataRateControlCallback(uint16_t originatorAddress, uint16_t destinationAddress, - uint8_t dataRate); -/** @brief Data Rate Control Cluster Data Rate Notification - * - * - * - * @param originatorAddress Ver.: always - * @param destinationAddress Ver.: always - * @param dataRate Ver.: always - */ -bool emberAfDataRateControlClusterDataRateNotificationCallback(uint16_t originatorAddress, uint16_t destinationAddress, - uint8_t dataRate); -/** @brief Data Rate Control Cluster Path Creation - * - * - * - * @param originatorAddress Ver.: always - * @param destinationAddress Ver.: always - * @param dataRate Ver.: always - */ -bool emberAfDataRateControlClusterPathCreationCallback(uint16_t originatorAddress, uint16_t destinationAddress, uint8_t dataRate); -/** @brief Data Rate Control Cluster Path Deletion - * - * - * - * @param originatorAddress Ver.: always - * @param destinationAddress Ver.: always - */ -bool emberAfDataRateControlClusterPathDeletionCallback(uint16_t originatorAddress, uint16_t destinationAddress); -/** @brief Data Rate Control Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDataRateControlClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Data Rate Control Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDataRateControlClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Data Rate Control Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDataRateControlClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Data Rate Control Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDataRateControlClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Data Rate Control Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDataRateControlClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Data Rate Control Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDataRateControlClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Data Rate Control Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDataRateControlClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Data Rate Control Cluster Callbacks */ - -/** @name Voice over ZigBee Cluster Callbacks */ -// @{ - -/** @brief Voice over ZigBee Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfVoiceOverZigbeeClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Voice over ZigBee Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfVoiceOverZigbeeClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Voice over ZigBee Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfVoiceOverZigbeeClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Voice over ZigBee Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfVoiceOverZigbeeClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Voice over ZigBee Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfVoiceOverZigbeeClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Voice over ZigBee Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfVoiceOverZigbeeClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Voice over ZigBee Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfVoiceOverZigbeeClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Voice over ZigBee Cluster Control - * - * - * - * @param controlType Ver.: always - */ -bool emberAfVoiceOverZigbeeClusterControlCallback(uint8_t controlType); -/** @brief Voice over ZigBee Cluster Control Response - * - * - * - * @param ackNack Ver.: always - */ -bool emberAfVoiceOverZigbeeClusterControlResponseCallback(uint8_t ackNack); -/** @brief Voice over ZigBee Cluster Establishment Request - * - * - * - * @param flag Ver.: always - * @param codecType Ver.: always - * @param sampFreq Ver.: always - * @param codecRate Ver.: always - * @param serviceType Ver.: always - * @param buffer Ver.: always - */ -bool emberAfVoiceOverZigbeeClusterEstablishmentRequestCallback(uint8_t flag, uint8_t codecType, uint8_t sampFreq, uint8_t codecRate, - uint8_t serviceType, uint8_t * buffer); -/** @brief Voice over ZigBee Cluster Establishment Response - * - * - * - * @param ackNack Ver.: always - * @param codecType Ver.: always - */ -bool emberAfVoiceOverZigbeeClusterEstablishmentResponseCallback(uint8_t ackNack, uint8_t codecType); -/** @brief Voice over ZigBee Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfVoiceOverZigbeeClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Voice over ZigBee Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfVoiceOverZigbeeClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Voice over ZigBee Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfVoiceOverZigbeeClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Voice over ZigBee Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfVoiceOverZigbeeClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Voice over ZigBee Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfVoiceOverZigbeeClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Voice over ZigBee Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfVoiceOverZigbeeClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Voice over ZigBee Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfVoiceOverZigbeeClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Voice over ZigBee Cluster Voice Transmission - * - * - * - * @param voiceData Ver.: always - */ -bool emberAfVoiceOverZigbeeClusterVoiceTransmissionCallback(uint8_t * voiceData); -/** @brief Voice over ZigBee Cluster Voice Transmission Completion - * - * - * - */ -bool emberAfVoiceOverZigbeeClusterVoiceTransmissionCompletionCallback(void); -/** @brief Voice over ZigBee Cluster Voice Transmission Response - * - * - * - * @param sequenceNumber Ver.: always - * @param errorFlag Ver.: always - */ -bool emberAfVoiceOverZigbeeClusterVoiceTransmissionResponseCallback(uint8_t sequenceNumber, uint8_t errorFlag); - -/** @} END Voice over ZigBee Cluster Callbacks */ - -/** @name Chatting Cluster Callbacks */ -// @{ - -/** @brief Chatting Cluster Chat Message - * - * - * - * @param destinationUid Ver.: always - * @param sourceUid Ver.: always - * @param cid Ver.: always - * @param nickname Ver.: always - * @param message Ver.: always - */ -bool emberAfChattingClusterChatMessageCallback(uint16_t destinationUid, uint16_t sourceUid, uint16_t cid, uint8_t * nickname, - uint8_t * message); -/** @brief Chatting Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChattingClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Chatting Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChattingClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Chatting Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChattingClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Chatting Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChattingClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Chatting Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChattingClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Chatting Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChattingClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Chatting Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChattingClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Chatting Cluster Get Node Information Request - * - * - * - * @param cid Ver.: always - * @param uid Ver.: always - */ -bool emberAfChattingClusterGetNodeInformationRequestCallback(uint16_t cid, uint16_t uid); -/** @brief Chatting Cluster Get Node Information Response - * - * - * - * @param status Ver.: always - * @param cid Ver.: always - * @param uid Ver.: always - * @param addressEndpointAndNickname Ver.: always - */ -bool emberAfChattingClusterGetNodeInformationResponseCallback(uint8_t status, uint16_t cid, uint16_t uid, - uint8_t * addressEndpointAndNickname); -/** @brief Chatting Cluster Join Chat Request - * - * - * - * @param uid Ver.: always - * @param nickname Ver.: always - * @param cid Ver.: always - */ -bool emberAfChattingClusterJoinChatRequestCallback(uint16_t uid, uint8_t * nickname, uint16_t cid); -/** @brief Chatting Cluster Join Chat Response - * - * - * - * @param status Ver.: always - * @param cid Ver.: always - * @param chatParticipantList Ver.: always - */ -bool emberAfChattingClusterJoinChatResponseCallback(uint8_t status, uint16_t cid, uint8_t * chatParticipantList); -/** @brief Chatting Cluster Leave Chat Request - * - * - * - * @param cid Ver.: always - * @param uid Ver.: always - */ -bool emberAfChattingClusterLeaveChatRequestCallback(uint16_t cid, uint16_t uid); -/** @brief Chatting Cluster Search Chat Request - * - * - * - */ -bool emberAfChattingClusterSearchChatRequestCallback(void); -/** @brief Chatting Cluster Search Chat Response - * - * - * - * @param options Ver.: always - * @param chatRoomList Ver.: always - */ -bool emberAfChattingClusterSearchChatResponseCallback(uint8_t options, uint8_t * chatRoomList); -/** @brief Chatting Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfChattingClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Chatting Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfChattingClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Chatting Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfChattingClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Chatting Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfChattingClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Chatting Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfChattingClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Chatting Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfChattingClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Chatting Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfChattingClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Chatting Cluster Start Chat Request - * - * - * - * @param name Ver.: always - * @param uid Ver.: always - * @param nickname Ver.: always - */ -bool emberAfChattingClusterStartChatRequestCallback(uint8_t * name, uint16_t uid, uint8_t * nickname); -/** @brief Chatting Cluster Start Chat Response - * - * - * - * @param status Ver.: always - * @param cid Ver.: always - */ -bool emberAfChattingClusterStartChatResponseCallback(uint8_t status, uint16_t cid); -/** @brief Chatting Cluster Switch Chairman Confirm - * - * - * - * @param cid Ver.: always - * @param nodeInformationList Ver.: always - */ -bool emberAfChattingClusterSwitchChairmanConfirmCallback(uint16_t cid, uint8_t * nodeInformationList); -/** @brief Chatting Cluster Switch Chairman Notification - * - * - * - * @param cid Ver.: always - * @param uid Ver.: always - * @param address Ver.: always - * @param endpoint Ver.: always - */ -bool emberAfChattingClusterSwitchChairmanNotificationCallback(uint16_t cid, uint16_t uid, uint16_t address, - chip::EndpointId endpoint); -/** @brief Chatting Cluster Switch Chairman Request - * - * - * - * @param cid Ver.: always - */ -bool emberAfChattingClusterSwitchChairmanRequestCallback(uint16_t cid); -/** @brief Chatting Cluster Switch Chairman Response - * - * - * - * @param cid Ver.: always - * @param uid Ver.: always - */ -bool emberAfChattingClusterSwitchChairmanResponseCallback(uint16_t cid, uint16_t uid); -/** @brief Chatting Cluster User Joined - * - * - * - * @param cid Ver.: always - * @param uid Ver.: always - * @param nickname Ver.: always - */ -bool emberAfChattingClusterUserJoinedCallback(uint16_t cid, uint16_t uid, uint8_t * nickname); -/** @brief Chatting Cluster User Left - * - * - * - * @param cid Ver.: always - * @param uid Ver.: always - * @param nickname Ver.: always - */ -bool emberAfChattingClusterUserLeftCallback(uint16_t cid, uint16_t uid, uint8_t * nickname); - -/** @} END Chatting Cluster Callbacks */ - -/** @name Payment Cluster Callbacks */ -// @{ - -/** @brief Payment Cluster Accept Payment - * - * - * - * @param userId Ver.: always - * @param userType Ver.: always - * @param serviceId Ver.: always - * @param goodId Ver.: always - */ -bool emberAfPaymentClusterAcceptPaymentCallback(uint8_t * userId, uint16_t userType, uint16_t serviceId, uint8_t * goodId); -/** @brief Payment Cluster Buy Confirm - * - * - * - * @param serialNumber Ver.: always - * @param currency Ver.: always - * @param priceTrailingDigit Ver.: always - * @param price Ver.: always - * @param timestamp Ver.: always - * @param transId Ver.: always - * @param transStatus Ver.: always - */ -bool emberAfPaymentClusterBuyConfirmCallback(uint8_t * serialNumber, uint32_t currency, uint8_t priceTrailingDigit, uint32_t price, - uint8_t * timestamp, uint16_t transId, uint8_t transStatus); -/** @brief Payment Cluster Buy Request - * - * - * - * @param userId Ver.: always - * @param userType Ver.: always - * @param serviceId Ver.: always - * @param goodId Ver.: always - */ -bool emberAfPaymentClusterBuyRequestCallback(uint8_t * userId, uint16_t userType, uint16_t serviceId, uint8_t * goodId); -/** @brief Payment Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPaymentClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Payment Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPaymentClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Payment Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPaymentClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Payment Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPaymentClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Payment Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPaymentClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Payment Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPaymentClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Payment Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPaymentClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Payment Cluster Payment Confirm - * - * - * - * @param serialNumber Ver.: always - * @param transId Ver.: always - * @param transStatus Ver.: always - */ -bool emberAfPaymentClusterPaymentConfirmCallback(uint8_t * serialNumber, uint16_t transId, uint8_t transStatus); -/** @brief Payment Cluster Receipt Delivery - * - * - * - * @param serialNumber Ver.: always - * @param currency Ver.: always - * @param priceTrailingDigit Ver.: always - * @param price Ver.: always - * @param timestamp Ver.: always - */ -bool emberAfPaymentClusterReceiptDeliveryCallback(uint8_t * serialNumber, uint32_t currency, uint8_t priceTrailingDigit, - uint32_t price, uint8_t * timestamp); -/** @brief Payment Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfPaymentClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Payment Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfPaymentClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Payment Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfPaymentClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Payment Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfPaymentClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Payment Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfPaymentClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Payment Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfPaymentClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Payment Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfPaymentClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Payment Cluster Transaction End - * - * - * - * @param serialNumber Ver.: always - * @param status Ver.: always - */ -bool emberAfPaymentClusterTransactionEndCallback(uint8_t * serialNumber, uint8_t status); - -/** @} END Payment Cluster Callbacks */ - -/** @name Billing Cluster Callbacks */ -// @{ - -/** @brief Billing Cluster Bill Status Notification - * - * - * - * @param userId Ver.: always - * @param status Ver.: always - */ -bool emberAfBillingClusterBillStatusNotificationCallback(uint8_t * userId, uint8_t status); -/** @brief Billing Cluster Check Bill Status - * - * - * - * @param userId Ver.: always - * @param serviceId Ver.: always - * @param serviceProviderId Ver.: always - */ -bool emberAfBillingClusterCheckBillStatusCallback(uint8_t * userId, uint16_t serviceId, uint16_t serviceProviderId); -/** @brief Billing Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBillingClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Billing Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBillingClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Billing Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBillingClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Billing Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBillingClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Billing Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBillingClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Billing Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBillingClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Billing Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBillingClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Billing Cluster Send Bill Record - * - * - * - * @param userId Ver.: always - * @param serviceId Ver.: always - * @param serviceProviderId Ver.: always - * @param timestamp Ver.: always - * @param duration Ver.: always - */ -bool emberAfBillingClusterSendBillRecordCallback(uint8_t * userId, uint16_t serviceId, uint16_t serviceProviderId, - uint8_t * timestamp, uint16_t duration); -/** @brief Billing Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfBillingClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Billing Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfBillingClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief Billing Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfBillingClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Billing Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfBillingClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Billing Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfBillingClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Billing Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfBillingClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Billing Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfBillingClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Billing Cluster Session Keep Alive - * - * - * - * @param userId Ver.: always - * @param serviceId Ver.: always - * @param serviceProviderId Ver.: always - */ -bool emberAfBillingClusterSessionKeepAliveCallback(uint8_t * userId, uint16_t serviceId, uint16_t serviceProviderId); -/** @brief Billing Cluster Start Billing Session - * - * - * - * @param userId Ver.: always - * @param serviceId Ver.: always - * @param serviceProviderId Ver.: always - */ -bool emberAfBillingClusterStartBillingSessionCallback(uint8_t * userId, uint16_t serviceId, uint16_t serviceProviderId); -/** @brief Billing Cluster Stop Billing Session - * - * - * - * @param userId Ver.: always - * @param serviceId Ver.: always - * @param serviceProviderId Ver.: always - */ -bool emberAfBillingClusterStopBillingSessionCallback(uint8_t * userId, uint16_t serviceId, uint16_t serviceProviderId); -/** @brief Billing Cluster Subscribe - * - * - * - * @param userId Ver.: always - * @param serviceId Ver.: always - * @param serviceProviderId Ver.: always - */ -bool emberAfBillingClusterSubscribeCallback(uint8_t * userId, uint16_t serviceId, uint16_t serviceProviderId); -/** @brief Billing Cluster Unsubscribe - * - * - * - * @param userId Ver.: always - * @param serviceId Ver.: always - * @param serviceProviderId Ver.: always - */ -bool emberAfBillingClusterUnsubscribeCallback(uint8_t * userId, uint16_t serviceId, uint16_t serviceProviderId); - -/** @} END Billing Cluster Callbacks */ - -/** @name Appliance Identification Cluster Callbacks */ -// @{ - -/** @brief Appliance Identification Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfApplianceIdentificationClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Appliance Identification Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfApplianceIdentificationClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Appliance Identification Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfApplianceIdentificationClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Appliance Identification Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfApplianceIdentificationClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Appliance Identification Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfApplianceIdentificationClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Appliance Identification Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfApplianceIdentificationClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Appliance Identification Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfApplianceIdentificationClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Appliance Identification Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfApplianceIdentificationClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Appliance Identification Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfApplianceIdentificationClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Appliance Identification Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfApplianceIdentificationClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Appliance Identification Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfApplianceIdentificationClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Appliance Identification Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfApplianceIdentificationClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Appliance Identification Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfApplianceIdentificationClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Appliance Identification Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfApplianceIdentificationClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Appliance Identification Cluster Callbacks */ - -/** @name Meter Identification Cluster Callbacks */ -// @{ - -/** @brief Meter Identification Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfMeterIdentificationClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Meter Identification Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfMeterIdentificationClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Meter Identification Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfMeterIdentificationClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Meter Identification Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfMeterIdentificationClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Meter Identification Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfMeterIdentificationClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Meter Identification Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfMeterIdentificationClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Meter Identification Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfMeterIdentificationClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Meter Identification Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfMeterIdentificationClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Meter Identification Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfMeterIdentificationClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Meter Identification Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfMeterIdentificationClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Meter Identification Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfMeterIdentificationClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Meter Identification Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfMeterIdentificationClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Meter Identification Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfMeterIdentificationClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Meter Identification Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfMeterIdentificationClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Meter Identification Cluster Callbacks */ - -/** @name Appliance Events and Alert Cluster Callbacks */ -// @{ - -/** @brief Appliance Events and Alert Cluster Alerts Notification - * - * - * - * @param alertsCount Ver.: always - * @param alertStructures Ver.: always - */ -bool emberAfApplianceEventsAndAlertClusterAlertsNotificationCallback(uint8_t alertsCount, uint8_t * alertStructures); -/** @brief Appliance Events and Alert Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Appliance Events and Alert Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Appliance Events and Alert Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Appliance Events and Alert Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Appliance Events and Alert Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Appliance Events and Alert Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfApplianceEventsAndAlertClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Appliance Events and Alert Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Appliance Events and Alert Cluster Events Notification - * - * - * - * @param eventHeader Ver.: always - * @param eventId Ver.: always - */ -bool emberAfApplianceEventsAndAlertClusterEventsNotificationCallback(uint8_t eventHeader, uint8_t eventId); -/** @brief Appliance Events and Alert Cluster Get Alerts - * - * - * - */ -bool emberAfApplianceEventsAndAlertClusterGetAlertsCallback(void); -/** @brief Appliance Events and Alert Cluster Get Alerts Response - * - * - * - * @param alertsCount Ver.: always - * @param alertStructures Ver.: always - */ -bool emberAfApplianceEventsAndAlertClusterGetAlertsResponseCallback(uint8_t alertsCount, uint8_t * alertStructures); -/** @brief Appliance Events and Alert Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Appliance Events and Alert Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Appliance Events and Alert Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Appliance Events and Alert Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Appliance Events and Alert Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Appliance Events and Alert Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfApplianceEventsAndAlertClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, - uint8_t size, uint8_t * value); -/** @brief Appliance Events and Alert Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfApplianceEventsAndAlertClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Appliance Events and Alert Cluster Callbacks */ - -/** @name Appliance Statistics Cluster Callbacks */ -// @{ - -/** @brief Appliance Statistics Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfApplianceStatisticsClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Appliance Statistics Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfApplianceStatisticsClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Appliance Statistics Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfApplianceStatisticsClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Appliance Statistics Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfApplianceStatisticsClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Appliance Statistics Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfApplianceStatisticsClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Appliance Statistics Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfApplianceStatisticsClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Appliance Statistics Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfApplianceStatisticsClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Appliance Statistics Cluster Log Notification - * - * - * - * @param timeStamp Ver.: always - * @param logId Ver.: always - * @param logLength Ver.: always - * @param logPayload Ver.: always - */ -bool emberAfApplianceStatisticsClusterLogNotificationCallback(uint32_t timeStamp, uint32_t logId, uint32_t logLength, - uint8_t * logPayload); -/** @brief Appliance Statistics Cluster Log Queue Request - * - * - * - */ -bool emberAfApplianceStatisticsClusterLogQueueRequestCallback(void); -/** @brief Appliance Statistics Cluster Log Queue Response - * - * - * - * @param logQueueSize Ver.: always - * @param logIds Ver.: always - */ -bool emberAfApplianceStatisticsClusterLogQueueResponseCallback(uint8_t logQueueSize, uint8_t * logIds); -/** @brief Appliance Statistics Cluster Log Request - * - * - * - * @param logId Ver.: always - */ -bool emberAfApplianceStatisticsClusterLogRequestCallback(uint32_t logId); -/** @brief Appliance Statistics Cluster Log Response - * - * - * - * @param timeStamp Ver.: always - * @param logId Ver.: always - * @param logLength Ver.: always - * @param logPayload Ver.: always - */ -bool emberAfApplianceStatisticsClusterLogResponseCallback(uint32_t timeStamp, uint32_t logId, uint32_t logLength, - uint8_t * logPayload); -/** @brief Appliance Statistics Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfApplianceStatisticsClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Appliance Statistics Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfApplianceStatisticsClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Appliance Statistics Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfApplianceStatisticsClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Appliance Statistics Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfApplianceStatisticsClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Appliance Statistics Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfApplianceStatisticsClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Appliance Statistics Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfApplianceStatisticsClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Appliance Statistics Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfApplianceStatisticsClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Appliance Statistics Cluster Statistics Available - * - * - * - * @param logQueueSize Ver.: always - * @param logIds Ver.: always - */ -bool emberAfApplianceStatisticsClusterStatisticsAvailableCallback(uint8_t logQueueSize, uint8_t * logIds); - -/** @} END Appliance Statistics Cluster Callbacks */ - -/** @name Electrical Measurement Cluster Callbacks */ -// @{ - -/** @brief Electrical Measurement Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfElectricalMeasurementClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Electrical Measurement Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfElectricalMeasurementClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Electrical Measurement Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfElectricalMeasurementClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Electrical Measurement Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfElectricalMeasurementClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Electrical Measurement Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfElectricalMeasurementClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Electrical Measurement Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfElectricalMeasurementClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Electrical Measurement Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfElectricalMeasurementClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Electrical Measurement Cluster Get Measurement Profile Command - * - * - * - * @param attributeId Ver.: always - * @param startTime Ver.: always - * @param numberOfIntervals Ver.: always - */ -bool emberAfElectricalMeasurementClusterGetMeasurementProfileCommandCallback(chip::AttributeId attributeId, uint32_t startTime, - uint8_t numberOfIntervals); -/** @brief Electrical Measurement Cluster Get Measurement Profile Response Command - * - * - * - * @param startTime Ver.: always - * @param status Ver.: always - * @param profileIntervalPeriod Ver.: always - * @param numberOfIntervalsDelivered Ver.: always - * @param attributeId Ver.: always - * @param intervals Ver.: always - */ -bool emberAfElectricalMeasurementClusterGetMeasurementProfileResponseCommandCallback(uint32_t startTime, uint8_t status, - uint8_t profileIntervalPeriod, - uint8_t numberOfIntervalsDelivered, - chip::AttributeId attributeId, - uint8_t * intervals); -/** @brief Electrical Measurement Cluster Get Profile Info Command - * - * - * - */ -bool emberAfElectricalMeasurementClusterGetProfileInfoCommandCallback(void); -/** @brief Electrical Measurement Cluster Get Profile Info Response Command - * - * - * - * @param profileCount Ver.: always - * @param profileIntervalPeriod Ver.: always - * @param maxNumberOfIntervals Ver.: always - * @param listOfAttributes Ver.: always - */ -bool emberAfElectricalMeasurementClusterGetProfileInfoResponseCommandCallback(uint8_t profileCount, uint8_t profileIntervalPeriod, - uint8_t maxNumberOfIntervals, - uint8_t * listOfAttributes); -/** @brief Electrical Measurement Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfElectricalMeasurementClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Electrical Measurement Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfElectricalMeasurementClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Electrical Measurement Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfElectricalMeasurementClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Electrical Measurement Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfElectricalMeasurementClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Electrical Measurement Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfElectricalMeasurementClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Electrical Measurement Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfElectricalMeasurementClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Electrical Measurement Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfElectricalMeasurementClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Electrical Measurement Cluster Callbacks */ - -/** @name Diagnostics Cluster Callbacks */ -// @{ - -/** @brief Diagnostics Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDiagnosticsClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Diagnostics Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDiagnosticsClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Diagnostics Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDiagnosticsClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Diagnostics Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDiagnosticsClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Diagnostics Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDiagnosticsClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Diagnostics Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDiagnosticsClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Diagnostics Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDiagnosticsClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Diagnostics Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfDiagnosticsClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Diagnostics Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfDiagnosticsClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Diagnostics Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfDiagnosticsClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Diagnostics Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfDiagnosticsClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Diagnostics Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfDiagnosticsClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Diagnostics Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfDiagnosticsClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Diagnostics Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfDiagnosticsClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Diagnostics Cluster Callbacks */ - -/** @name ZLL Commissioning Cluster Callbacks */ -// @{ - -/** @brief ZLL Commissioning Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfZllCommissioningClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief ZLL Commissioning Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfZllCommissioningClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief ZLL Commissioning Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfZllCommissioningClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief ZLL Commissioning Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfZllCommissioningClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief ZLL Commissioning Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfZllCommissioningClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief ZLL Commissioning Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfZllCommissioningClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief ZLL Commissioning Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfZllCommissioningClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief ZLL Commissioning Cluster Device Information Request - * - * - * - * @param transaction Ver.: always - * @param startIndex Ver.: always - */ -bool emberAfZllCommissioningClusterDeviceInformationRequestCallback(uint32_t transaction, uint8_t startIndex); -/** @brief ZLL Commissioning Cluster Device Information Response - * - * - * - * @param transaction Ver.: always - * @param numberOfSubDevices Ver.: always - * @param startIndex Ver.: always - * @param deviceInformationRecordCount Ver.: always - * @param deviceInformationRecordList Ver.: always - */ -bool emberAfZllCommissioningClusterDeviceInformationResponseCallback(uint32_t transaction, uint8_t numberOfSubDevices, - uint8_t startIndex, uint8_t deviceInformationRecordCount, - uint8_t * deviceInformationRecordList); -/** @brief ZLL Commissioning Cluster Endpoint Information - * - * - * - * @param ieeeAddress Ver.: always - * @param networkAddress Ver.: always - * @param endpointId Ver.: always - * @param deviceId Ver.: always - * @param version Ver.: always - */ -bool emberAfZllCommissioningClusterEndpointInformationCallback(uint8_t * ieeeAddress, uint16_t networkAddress, uint8_t endpointId, - uint16_t deviceId, uint8_t version); -/** @brief ZLL Commissioning Cluster Get Endpoint List Request - * - * - * - * @param startIndex Ver.: always - */ -bool emberAfZllCommissioningClusterGetEndpointListRequestCallback(uint8_t startIndex); -/** @brief ZLL Commissioning Cluster Get Endpoint List Response - * - * - * - * @param total Ver.: always - * @param startIndex Ver.: always - * @param count Ver.: always - * @param endpointInformationRecordList Ver.: always - */ -bool emberAfZllCommissioningClusterGetEndpointListResponseCallback(uint8_t total, uint8_t startIndex, uint8_t count, - uint8_t * endpointInformationRecordList); -/** @brief ZLL Commissioning Cluster Get Group Identifiers Request - * - * - * - * @param startIndex Ver.: always - */ -bool emberAfZllCommissioningClusterGetGroupIdentifiersRequestCallback(uint8_t startIndex); -/** @brief ZLL Commissioning Cluster Get Group Identifiers Response - * - * - * - * @param total Ver.: always - * @param startIndex Ver.: always - * @param count Ver.: always - * @param groupInformationRecordList Ver.: always - */ -bool emberAfZllCommissioningClusterGetGroupIdentifiersResponseCallback(uint8_t total, uint8_t startIndex, uint8_t count, - uint8_t * groupInformationRecordList); -/** @brief ZLL Commissioning Cluster Identify Request - * - * - * - * @param transaction Ver.: always - * @param identifyDuration Ver.: always - */ -bool emberAfZllCommissioningClusterIdentifyRequestCallback(uint32_t transaction, uint16_t identifyDuration); -/** @brief ZLL Commissioning Cluster Network Join End Device Request - * - * - * - * @param transaction Ver.: always - * @param extendedPanId Ver.: always - * @param keyIndex Ver.: always - * @param encryptedNetworkKey Ver.: always - * @param networkUpdateId Ver.: always - * @param logicalChannel Ver.: always - * @param panId Ver.: always - * @param networkAddress Ver.: always - * @param groupIdentifiersBegin Ver.: always - * @param groupIdentifiersEnd Ver.: always - * @param freeNetworkAddressRangeBegin Ver.: always - * @param freeNetworkAddressRangeEnd Ver.: always - * @param freeGroupIdentifierRangeBegin Ver.: always - * @param freeGroupIdentifierRangeEnd Ver.: always - */ -bool emberAfZllCommissioningClusterNetworkJoinEndDeviceRequestCallback( - uint32_t transaction, uint8_t * extendedPanId, uint8_t keyIndex, uint8_t * encryptedNetworkKey, uint8_t networkUpdateId, - uint8_t logicalChannel, uint16_t panId, uint16_t networkAddress, uint16_t groupIdentifiersBegin, uint16_t groupIdentifiersEnd, - uint16_t freeNetworkAddressRangeBegin, uint16_t freeNetworkAddressRangeEnd, uint16_t freeGroupIdentifierRangeBegin, - uint16_t freeGroupIdentifierRangeEnd); -/** @brief ZLL Commissioning Cluster Network Join End Device Response - * - * - * - * @param transaction Ver.: always - * @param status Ver.: always - */ -bool emberAfZllCommissioningClusterNetworkJoinEndDeviceResponseCallback(uint32_t transaction, uint8_t status); -/** @brief ZLL Commissioning Cluster Network Join Router Request - * - * - * - * @param transaction Ver.: always - * @param extendedPanId Ver.: always - * @param keyIndex Ver.: always - * @param encryptedNetworkKey Ver.: always - * @param networkUpdateId Ver.: always - * @param logicalChannel Ver.: always - * @param panId Ver.: always - * @param networkAddress Ver.: always - * @param groupIdentifiersBegin Ver.: always - * @param groupIdentifiersEnd Ver.: always - * @param freeNetworkAddressRangeBegin Ver.: always - * @param freeNetworkAddressRangeEnd Ver.: always - * @param freeGroupIdentifierRangeBegin Ver.: always - * @param freeGroupIdentifierRangeEnd Ver.: always - */ -bool emberAfZllCommissioningClusterNetworkJoinRouterRequestCallback( - uint32_t transaction, uint8_t * extendedPanId, uint8_t keyIndex, uint8_t * encryptedNetworkKey, uint8_t networkUpdateId, - uint8_t logicalChannel, uint16_t panId, uint16_t networkAddress, uint16_t groupIdentifiersBegin, uint16_t groupIdentifiersEnd, - uint16_t freeNetworkAddressRangeBegin, uint16_t freeNetworkAddressRangeEnd, uint16_t freeGroupIdentifierRangeBegin, - uint16_t freeGroupIdentifierRangeEnd); -/** @brief ZLL Commissioning Cluster Network Join Router Response - * - * - * - * @param transaction Ver.: always - * @param status Ver.: always - */ -bool emberAfZllCommissioningClusterNetworkJoinRouterResponseCallback(uint32_t transaction, uint8_t status); -/** @brief ZLL Commissioning Cluster Network Start Request - * - * - * - * @param transaction Ver.: always - * @param extendedPanId Ver.: always - * @param keyIndex Ver.: always - * @param encryptedNetworkKey Ver.: always - * @param logicalChannel Ver.: always - * @param panId Ver.: always - * @param networkAddress Ver.: always - * @param groupIdentifiersBegin Ver.: always - * @param groupIdentifiersEnd Ver.: always - * @param freeNetworkAddressRangeBegin Ver.: always - * @param freeNetworkAddressRangeEnd Ver.: always - * @param freeGroupIdentifierRangeBegin Ver.: always - * @param freeGroupIdentifierRangeEnd Ver.: always - * @param initiatorIeeeAddress Ver.: always - * @param initiatorNetworkAddress Ver.: always - */ -bool emberAfZllCommissioningClusterNetworkStartRequestCallback( - uint32_t transaction, uint8_t * extendedPanId, uint8_t keyIndex, uint8_t * encryptedNetworkKey, uint8_t logicalChannel, - uint16_t panId, uint16_t networkAddress, uint16_t groupIdentifiersBegin, uint16_t groupIdentifiersEnd, - uint16_t freeNetworkAddressRangeBegin, uint16_t freeNetworkAddressRangeEnd, uint16_t freeGroupIdentifierRangeBegin, - uint16_t freeGroupIdentifierRangeEnd, uint8_t * initiatorIeeeAddress, uint16_t initiatorNetworkAddress); -/** @brief ZLL Commissioning Cluster Network Start Response - * - * - * - * @param transaction Ver.: always - * @param status Ver.: always - * @param extendedPanId Ver.: always - * @param networkUpdateId Ver.: always - * @param logicalChannel Ver.: always - * @param panId Ver.: always - */ -bool emberAfZllCommissioningClusterNetworkStartResponseCallback(uint32_t transaction, uint8_t status, uint8_t * extendedPanId, - uint8_t networkUpdateId, uint8_t logicalChannel, uint16_t panId); -/** @brief ZLL Commissioning Cluster Network Update Request - * - * - * - * @param transaction Ver.: always - * @param extendedPanId Ver.: always - * @param networkUpdateId Ver.: always - * @param logicalChannel Ver.: always - * @param panId Ver.: always - * @param networkAddress Ver.: always - */ -bool emberAfZllCommissioningClusterNetworkUpdateRequestCallback(uint32_t transaction, uint8_t * extendedPanId, - uint8_t networkUpdateId, uint8_t logicalChannel, uint16_t panId, - uint16_t networkAddress); -/** @brief ZLL Commissioning Cluster Reset To Factory New Request - * - * - * - * @param transaction Ver.: always - */ -bool emberAfZllCommissioningClusterResetToFactoryNewRequestCallback(uint32_t transaction); -/** @brief ZLL Commissioning Cluster Scan Request - * - * - * - * @param transaction Ver.: always - * @param zigbeeInformation Ver.: always - * @param zllInformation Ver.: always - */ -bool emberAfZllCommissioningClusterScanRequestCallback(uint32_t transaction, uint8_t zigbeeInformation, uint8_t zllInformation); -/** @brief ZLL Commissioning Cluster Scan Response - * - * - * - * @param transaction Ver.: always - * @param rssiCorrection Ver.: always - * @param zigbeeInformation Ver.: always - * @param zllInformation Ver.: always - * @param keyBitmask Ver.: always - * @param responseId Ver.: always - * @param extendedPanId Ver.: always - * @param networkUpdateId Ver.: always - * @param logicalChannel Ver.: always - * @param panId Ver.: always - * @param networkAddress Ver.: always - * @param numberOfSubDevices Ver.: always - * @param totalGroupIds Ver.: always - * @param endpointId Ver.: always - * @param deviceId Ver.: always - * @param version Ver.: always - * @param groupIdCount Ver.: always - */ -bool emberAfZllCommissioningClusterScanResponseCallback(uint32_t transaction, uint8_t rssiCorrection, uint8_t zigbeeInformation, - uint8_t zllInformation, uint16_t keyBitmask, uint32_t responseId, - uint8_t * extendedPanId, uint8_t networkUpdateId, uint8_t logicalChannel, - uint16_t panId, uint16_t networkAddress, uint8_t numberOfSubDevices, - uint8_t totalGroupIds, chip::EndpointId endpointId, uint16_t deviceId, - uint8_t version, uint8_t groupIdCount); -/** @brief ZLL Commissioning Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfZllCommissioningClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief ZLL Commissioning Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfZllCommissioningClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief ZLL Commissioning Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfZllCommissioningClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief ZLL Commissioning Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfZllCommissioningClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief ZLL Commissioning Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfZllCommissioningClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief ZLL Commissioning Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfZllCommissioningClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief ZLL Commissioning Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfZllCommissioningClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END ZLL Commissioning Cluster Callbacks */ - -/** @name Sample Mfg Specific Cluster Cluster Callbacks */ -// @{ - -/** @brief Sample Mfg Specific Cluster Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSampleMfgSpecificClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Sample Mfg Specific Cluster Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSampleMfgSpecificClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Sample Mfg Specific Cluster Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSampleMfgSpecificClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Sample Mfg Specific Cluster Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSampleMfgSpecificClusterClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sample Mfg Specific Cluster Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSampleMfgSpecificClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Sample Mfg Specific Cluster Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSampleMfgSpecificClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Sample Mfg Specific Cluster Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSampleMfgSpecificClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Sample Mfg Specific Cluster Cluster Command One - * - * - * - * @param argOne Ver.: always - */ -bool emberAfSampleMfgSpecificClusterCommandOneCallback(uint8_t argOne); -/** @brief Sample Mfg Specific Cluster Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSampleMfgSpecificClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Sample Mfg Specific Cluster Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSampleMfgSpecificClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Sample Mfg Specific Cluster Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSampleMfgSpecificClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Sample Mfg Specific Cluster Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSampleMfgSpecificClusterServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sample Mfg Specific Cluster Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSampleMfgSpecificClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Sample Mfg Specific Cluster Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSampleMfgSpecificClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Sample Mfg Specific Cluster Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSampleMfgSpecificClusterServerTickCallback(chip::EndpointId endpoint); - -/** @} END Sample Mfg Specific Cluster Cluster Callbacks */ - -/** @name Sample Mfg Specific Cluster 2 Cluster Callbacks */ -// @{ - -/** @brief Sample Mfg Specific Cluster 2 Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Sample Mfg Specific Cluster 2 Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Sample Mfg Specific Cluster 2 Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ClientInitCallback(chip::EndpointId endpoint); -/** @brief Sample Mfg Specific Cluster 2 Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ClientManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sample Mfg Specific Cluster 2 Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Sample Mfg Specific Cluster 2 Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSampleMfgSpecificCluster2ClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Sample Mfg Specific Cluster 2 Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ClientTickCallback(chip::EndpointId endpoint); -/** @brief Sample Mfg Specific Cluster 2 Cluster Command Two - * - * - * - * @param argOne Ver.: always - */ -bool emberAfSampleMfgSpecificCluster2CommandTwoCallback(uint8_t argOne); -/** @brief Sample Mfg Specific Cluster 2 Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Sample Mfg Specific Cluster 2 Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Sample Mfg Specific Cluster 2 Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ServerInitCallback(chip::EndpointId endpoint); -/** @brief Sample Mfg Specific Cluster 2 Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ServerManufacturerSpecificAttributeChangedCallback(uint8_t endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Sample Mfg Specific Cluster 2 Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Sample Mfg Specific Cluster 2 Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSampleMfgSpecificCluster2ServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Sample Mfg Specific Cluster 2 Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSampleMfgSpecificCluster2ServerTickCallback(chip::EndpointId endpoint); - -/** @} END Sample Mfg Specific Cluster 2 Cluster Callbacks */ - -/** @name Configuration Cluster Cluster Callbacks */ -// @{ - -/** @brief Configuration Cluster Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOtaConfigurationClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Configuration Cluster Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOtaConfigurationClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Configuration Cluster Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOtaConfigurationClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief Configuration Cluster Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOtaConfigurationClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Configuration Cluster Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOtaConfigurationClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Configuration Cluster Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOtaConfigurationClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Configuration Cluster Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOtaConfigurationClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief Configuration Cluster Cluster Lock Tokens - * - * - * - */ -bool emberAfOtaConfigurationClusterLockTokensCallback(void); -/** @brief Configuration Cluster Cluster Read Tokens - * - * - * - * @param token Ver.: always - */ -bool emberAfOtaConfigurationClusterReadTokensCallback(uint16_t token); -/** @brief Configuration Cluster Cluster Return Token - * - * - * - * @param token Ver.: always - * @param data Ver.: always - */ -bool emberAfOtaConfigurationClusterReturnTokenCallback(uint16_t token, uint8_t * data); -/** @brief Configuration Cluster Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfOtaConfigurationClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief Configuration Cluster Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfOtaConfigurationClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, - EmberAfStatus status); -/** @brief Configuration Cluster Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfOtaConfigurationClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief Configuration Cluster Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfOtaConfigurationClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief Configuration Cluster Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfOtaConfigurationClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief Configuration Cluster Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfOtaConfigurationClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief Configuration Cluster Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfOtaConfigurationClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief Configuration Cluster Cluster Set Token - * - * - * - * @param token Ver.: always - * @param data Ver.: always - */ -bool emberAfOtaConfigurationClusterSetTokenCallback(uint16_t token, uint8_t * data); -/** @brief Configuration Cluster Cluster Unlock Tokens - * - * - * - * @param data Ver.: always - */ -bool emberAfOtaConfigurationClusterUnlockTokensCallback(uint8_t * data); - -/** @} END Configuration Cluster Cluster Callbacks */ - -/** @name MFGLIB Cluster Cluster Callbacks */ -// @{ - -/** @brief MFGLIB Cluster Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfMfglibClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief MFGLIB Cluster Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfMfglibClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief MFGLIB Cluster Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfMfglibClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief MFGLIB Cluster Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfMfglibClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief MFGLIB Cluster Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfMfglibClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief MFGLIB Cluster Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfMfglibClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief MFGLIB Cluster Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfMfglibClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief MFGLIB Cluster Cluster Rx Mode - * - * - * - * @param channel Ver.: always - * @param power Ver.: always - * @param time Ver.: always - */ -bool emberAfMfglibClusterRxModeCallback(uint8_t channel, int8_t power, uint16_t time); -/** @brief MFGLIB Cluster Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfMfglibClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief MFGLIB Cluster Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfMfglibClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief MFGLIB Cluster Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfMfglibClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief MFGLIB Cluster Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfMfglibClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief MFGLIB Cluster Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfMfglibClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief MFGLIB Cluster Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfMfglibClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief MFGLIB Cluster Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfMfglibClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief MFGLIB Cluster Cluster Stream - * - * - * - * @param channel Ver.: always - * @param power Ver.: always - * @param time Ver.: always - */ -bool emberAfMfglibClusterStreamCallback(uint8_t channel, int8_t power, uint16_t time); -/** @brief MFGLIB Cluster Cluster Tone - * - * - * - * @param channel Ver.: always - * @param power Ver.: always - * @param time Ver.: always - */ -bool emberAfMfglibClusterToneCallback(uint8_t channel, int8_t power, uint16_t time); - -/** @} END MFGLIB Cluster Cluster Callbacks */ - -/** @name SL Works With All Hubs Cluster Callbacks */ -// @{ - -/** @brief SL Works With All Hubs Cluster Aps Ack Enablement Query Response - * - * - * - * @param numberExemptClusters Ver.: always - * @param clusterId Ver.: always - */ -bool emberAfSlWwahClusterApsAckEnablementQueryResponseCallback(uint8_t numberExemptClusters, uint8_t * clusterId); -/** @brief SL Works With All Hubs Cluster Aps Ack Requirement Query - * - * - * - */ -bool emberAfSlWwahClusterApsAckRequirementQueryCallback(void); -/** @brief SL Works With All Hubs Cluster Aps Link Key Authorization Query - * - * - * - * @param clusterId Ver.: always - */ -bool emberAfSlWwahClusterApsLinkKeyAuthorizationQueryCallback(chip::ClusterId clusterId); -/** @brief SL Works With All Hubs Cluster Aps Link Key Authorization Query Response - * - * - * - * @param clusterId Ver.: always - * @param apsLinkKeyAuthStatus Ver.: always - */ -bool emberAfSlWwahClusterApsLinkKeyAuthorizationQueryResponseCallback(chip::ClusterId clusterId, uint8_t apsLinkKeyAuthStatus); -/** @brief SL Works With All Hubs Cluster Clear Binding Table - * - * - * - */ -bool emberAfSlWwahClusterClearBindingTableCallback(void); -/** @brief SL Works With All Hubs Cluster Client Attribute Changed - * - * Client Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSlWwahClusterClientAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief SL Works With All Hubs Cluster Client Default Response - * - * This function is called when the client receives the default response from - * the server. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSlWwahClusterClientDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief SL Works With All Hubs Cluster Client Init - * - * Client Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSlWwahClusterClientInitCallback(chip::EndpointId endpoint); -/** @brief SL Works With All Hubs Cluster Client Manufacturer Specific Attribute Changed - * - * Client Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSlWwahClusterClientManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief SL Works With All Hubs Cluster Client Message Sent - * - * Client Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSlWwahClusterClientMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief SL Works With All Hubs Cluster Client Pre Attribute Changed - * - * Client Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSlWwahClusterClientPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief SL Works With All Hubs Cluster Client Tick - * - * Client Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSlWwahClusterClientTickCallback(chip::EndpointId endpoint); -/** @brief SL Works With All Hubs Cluster Debug Report Query - * - * - * - * @param debugReportId Ver.: always - */ -bool emberAfSlWwahClusterDebugReportQueryCallback(uint8_t debugReportId); -/** @brief SL Works With All Hubs Cluster Debug Report Query Response - * - * - * - * @param debugReportId Ver.: always - * @param debugReportData Ver.: always - */ -bool emberAfSlWwahClusterDebugReportQueryResponseCallback(uint8_t debugReportId, uint8_t * debugReportData); -/** @brief SL Works With All Hubs Cluster Disable Aps Link Key Authorization - * - * - * - * @param numberExemptClusters Ver.: always - * @param clusterId Ver.: always - */ -bool emberAfSlWwahClusterDisableApsLinkKeyAuthorizationCallback(uint8_t numberExemptClusters, uint8_t * clusterId); -/** @brief SL Works With All Hubs Cluster Disable Configuration Mode - * - * - * - */ -bool emberAfSlWwahClusterDisableConfigurationModeCallback(void); -/** @brief SL Works With All Hubs Cluster Disable Mgmt Leave Without Rejoin - * - * - * - */ -bool emberAfSlWwahClusterDisableMgmtLeaveWithoutRejoinCallback(void); -/** @brief SL Works With All Hubs Cluster Disable Ota Downgrades - * - * - * - */ -bool emberAfSlWwahClusterDisableOtaDowngradesCallback(void); -/** @brief SL Works With All Hubs Cluster Disable Periodic Router Check Ins - * - * - * - */ -bool emberAfSlWwahClusterDisablePeriodicRouterCheckInsCallback(void); -/** @brief SL Works With All Hubs Cluster Disable Touchlink Interpan Message Support - * - * - * - */ -bool emberAfSlWwahClusterDisableTouchlinkInterpanMessageSupportCallback(void); -/** @brief SL Works With All Hubs Cluster Disable Wwah App Event Retry Algorithm - * - * - * - */ -bool emberAfSlWwahClusterDisableWwahAppEventRetryAlgorithmCallback(void); -/** @brief SL Works With All Hubs Cluster Disable Wwah Bad Parent Recovery - * - * - * - */ -bool emberAfSlWwahClusterDisableWwahBadParentRecoveryCallback(void); -/** @brief SL Works With All Hubs Cluster Disable Wwah Parent Classification - * - * - * - */ -bool emberAfSlWwahClusterDisableWwahParentClassificationCallback(void); -/** @brief SL Works With All Hubs Cluster Disable Wwah Rejoin Algorithm - * - * - * - */ -bool emberAfSlWwahClusterDisableWwahRejoinAlgorithmCallback(void); -/** @brief SL Works With All Hubs Cluster Enable Aps Link Key Authorization - * - * - * - * @param numberExemptClusters Ver.: always - * @param clusterId Ver.: always - */ -bool emberAfSlWwahClusterEnableApsLinkKeyAuthorizationCallback(uint8_t numberExemptClusters, uint8_t * clusterId); -/** @brief SL Works With All Hubs Cluster Enable Configuration Mode - * - * - * - */ -bool emberAfSlWwahClusterEnableConfigurationModeCallback(void); -/** @brief SL Works With All Hubs Cluster Enable Periodic Router Check Ins - * - * - * - * @param checkInInterval Ver.: always - */ -bool emberAfSlWwahClusterEnablePeriodicRouterCheckInsCallback(uint16_t checkInInterval); -/** @brief SL Works With All Hubs Cluster Enable Tc Security On Ntwk Key Rotation - * - * - * - */ -bool emberAfSlWwahClusterEnableTcSecurityOnNtwkKeyRotationCallback(void); -/** @brief SL Works With All Hubs Cluster Enable Wwah App Event Retry Algorithm - * - * - * - * @param firstBackoffTimeSeconds Ver.: always - * @param backoffSeqCommonRatio Ver.: always - * @param maxBackoffTimeSeconds Ver.: always - * @param maxRedeliveryAttempts Ver.: always - */ -bool emberAfSlWwahClusterEnableWwahAppEventRetryAlgorithmCallback(uint8_t firstBackoffTimeSeconds, uint8_t backoffSeqCommonRatio, - uint32_t maxBackoffTimeSeconds, uint8_t maxRedeliveryAttempts); -/** @brief SL Works With All Hubs Cluster Enable Wwah Bad Parent Recovery - * - * - * - */ -bool emberAfSlWwahClusterEnableWwahBadParentRecoveryCallback(void); -/** @brief SL Works With All Hubs Cluster Enable Wwah Parent Classification - * - * - * - */ -bool emberAfSlWwahClusterEnableWwahParentClassificationCallback(void); -/** @brief SL Works With All Hubs Cluster Enable Wwah Rejoin Algorithm - * - * - * - * @param fastRejoinTimeoutSeconds Ver.: always - * @param durationBetweenRejoinsSeconds Ver.: always - * @param fastRejoinFirstBackoffSeconds Ver.: always - * @param maxBackoffTimeSeconds Ver.: always - * @param maxBackoffIterations Ver.: always - */ -bool emberAfSlWwahClusterEnableWwahRejoinAlgorithmCallback(uint16_t fastRejoinTimeoutSeconds, - uint16_t durationBetweenRejoinsSeconds, - uint16_t fastRejoinFirstBackoffSeconds, uint16_t maxBackoffTimeSeconds, - uint16_t maxBackoffIterations); -/** @brief SL Works With All Hubs Cluster New Debug Report Notification - * - * - * - * @param debugReportId Ver.: always - * @param debugReportSize Ver.: always - */ -bool emberAfSlWwahClusterNewDebugReportNotificationCallback(uint8_t debugReportId, uint32_t debugReportSize); -/** @brief SL Works With All Hubs Cluster Power Descriptor Change - * - * - * - * @param currentPowerMode Ver.: always - * @param availablePowerSources Ver.: always - * @param currentPowerSource Ver.: always - * @param currentPowerSourceLevel Ver.: always - */ -bool emberAfSlWwahClusterPowerDescriptorChangeCallback(uint32_t currentPowerMode, uint32_t availablePowerSources, - uint32_t currentPowerSource, uint32_t currentPowerSourceLevel); -/** @brief SL Works With All Hubs Cluster Powering Off Notification - * - * - * - * @param powerNotificationReason Ver.: always - * @param manufacturerId Ver.: always - * @param manufacturerReasonLength Ver.: always - * @param manufacturerReason Ver.: always - */ -bool emberAfSlWwahClusterPoweringOffNotificationCallback(uint8_t powerNotificationReason, uint16_t manufacturerId, - uint8_t manufacturerReasonLength, uint8_t * manufacturerReason); -/** @brief SL Works With All Hubs Cluster Powering On Notification - * - * - * - * @param powerNotificationReason Ver.: always - * @param manufacturerId Ver.: always - * @param manufacturerReasonLength Ver.: always - * @param manufacturerReason Ver.: always - */ -bool emberAfSlWwahClusterPoweringOnNotificationCallback(uint8_t powerNotificationReason, uint16_t manufacturerId, - uint8_t manufacturerReasonLength, uint8_t * manufacturerReason); -/** @brief SL Works With All Hubs Cluster Remove Aps Acks On Unicasts Requirement - * - * - * - */ -bool emberAfSlWwahClusterRemoveApsAcksOnUnicastsRequirementCallback(void); -/** @brief SL Works With All Hubs Cluster Request New Aps Link Key - * - * - * - */ -bool emberAfSlWwahClusterRequestNewApsLinkKeyCallback(void); -/** @brief SL Works With All Hubs Cluster Request Time - * - * - * - */ -bool emberAfSlWwahClusterRequestTimeCallback(void); -/** @brief SL Works With All Hubs Cluster Require Aps Acks On Unicasts - * - * - * - * @param numberExemptClusters Ver.: always - * @param clusterId Ver.: always - */ -bool emberAfSlWwahClusterRequireApsAcksOnUnicastsCallback(uint8_t numberExemptClusters, uint8_t * clusterId); -/** @brief SL Works With All Hubs Cluster Server Attribute Changed - * - * Server Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - */ -void emberAfSlWwahClusterServerAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId); -/** @brief SL Works With All Hubs Cluster Server Default Response - * - * This function is called when the server receives the default response from - * the client. - * - * @param endpoint Destination endpoint Ver.: always - * @param commandId Command id Ver.: always - * @param status Status in default response Ver.: always - */ -void emberAfSlWwahClusterServerDefaultResponseCallback(chip::EndpointId endpoint, chip::CommandId commandId, EmberAfStatus status); -/** @brief SL Works With All Hubs Cluster Server Init - * - * Server Init - * - * @param endpoint Endpoint that is being initialized Ver.: always - */ -void emberAfSlWwahClusterServerInitCallback(chip::EndpointId endpoint); -/** @brief SL Works With All Hubs Cluster Server Manufacturer Specific Attribute Changed - * - * Server Manufacturer Specific Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute that changed Ver.: always - * @param manufacturerCode Manufacturer Code of the attribute that changed - * Ver.: always - */ -void emberAfSlWwahClusterServerManufacturerSpecificAttributeChangedCallback(chip::EndpointId endpoint, - chip::AttributeId attributeId, - uint16_t manufacturerCode); -/** @brief SL Works With All Hubs Cluster Server Message Sent - * - * Server Message Sent - * - * @param type The type of message sent Ver.: always - * @param indexOrDestination The destination or address to which the message was - * sent Ver.: always - * @param apsFrame The APS frame for the message Ver.: always - * @param msgLen The length of the message Ver.: always - * @param message The message that was sent Ver.: always - * @param status The status of the sent message Ver.: always - */ -void emberAfSlWwahClusterServerMessageSentCallback(EmberOutgoingMessageType type, uint16_t indexOrDestination, - EmberApsFrame * apsFrame, uint16_t msgLen, uint8_t * message, - EmberStatus status); -/** @brief SL Works With All Hubs Cluster Server Pre Attribute Changed - * - * Server Pre Attribute Changed - * - * @param endpoint Endpoint that is being initialized Ver.: always - * @param attributeId Attribute to be changed Ver.: always - * @param attributeType Attribute type Ver.: always - * @param size Attribute size Ver.: always - * @param value Attribute value Ver.: always - */ -EmberAfStatus emberAfSlWwahClusterServerPreAttributeChangedCallback(chip::EndpointId endpoint, chip::AttributeId attributeId, - EmberAfAttributeType attributeType, uint8_t size, - uint8_t * value); -/** @brief SL Works With All Hubs Cluster Server Tick - * - * Server Tick - * - * @param endpoint Endpoint that is being served Ver.: always - */ -void emberAfSlWwahClusterServerTickCallback(chip::EndpointId endpoint); -/** @brief SL Works With All Hubs Cluster Set Ias Zone Enrollment Method - * - * - * - * @param enrollmentMode Ver.: always - */ -bool emberAfSlWwahClusterSetIasZoneEnrollmentMethodCallback(uint8_t enrollmentMode); -/** @brief SL Works With All Hubs Cluster Set Mac Poll Failure Wait Time - * - * - * - * @param waitTime Ver.: always - */ -bool emberAfSlWwahClusterSetMacPollFailureWaitTimeCallback(uint8_t waitTime); -/** @brief SL Works With All Hubs Cluster Set Pending Network Update - * - * - * - * @param channel Ver.: always - * @param panId Ver.: always - */ -bool emberAfSlWwahClusterSetPendingNetworkUpdateCallback(uint8_t channel, uint16_t panId); -/** @brief SL Works With All Hubs Cluster Short Address Change - * - * - * - * @param deviceEui64 Ver.: always - * @param deviceShort Ver.: always - */ -bool emberAfSlWwahClusterShortAddressChangeCallback(uint8_t * deviceEui64, uint16_t deviceShort); -/** @brief SL Works With All Hubs Cluster Survey Beacons - * - * - * - * @param standardBeacons Ver.: always - */ -bool emberAfSlWwahClusterSurveyBeaconsCallback(uint8_t standardBeacons); -/** @brief SL Works With All Hubs Cluster Survey Beacons Response - * - * - * - * @param numberOfBeacons Ver.: always - * @param beacon Ver.: always - */ -bool emberAfSlWwahClusterSurveyBeaconsResponseCallback(uint8_t numberOfBeacons, uint8_t * beacon); -/** @brief SL Works With All Hubs Cluster Trust Center For Cluster Server Query - * - * - * - */ -bool emberAfSlWwahClusterTrustCenterForClusterServerQueryCallback(void); -/** @brief SL Works With All Hubs Cluster Trust Center For Cluster Server Query Response - * - * - * - * @param numberOfClusters Ver.: always - * @param clusterId Ver.: always - */ -bool emberAfSlWwahClusterTrustCenterForClusterServerQueryResponseCallback(uint8_t numberOfClusters, uint8_t * clusterId); -/** @brief SL Works With All Hubs Cluster Use Trust Center For Cluster Server - * - * - * - * @param numberOfClusters Ver.: always - * @param clusterId Ver.: always - */ -bool emberAfSlWwahClusterUseTrustCenterForClusterServerCallback(uint8_t numberOfClusters, uint8_t * clusterId); -/** @brief SL Works With All Hubs Cluster Use Trust Center For Cluster Server Response - * - * - * - * @param status Ver.: always - * @param clusterStatusLength Ver.: always - * @param clusterStatus Ver.: always - */ -bool emberAfSlWwahClusterUseTrustCenterForClusterServerResponseCallback(uint8_t status, uint8_t clusterStatusLength, - uint8_t * clusterStatus); - -/** @} END SL Works With All Hubs Cluster Callbacks */ - -/** @name Update TC Link Key Plugin Callbacks */ -// @{ - -/** @brief Status - * - * This callback is fired when the Update Link Key exchange process is updated - * with a status from the stack. Implementations will know that the Update TC - * Link Key plugin has completed its link key request when the keyStatus - * parameter is EMBER_VERIFY_LINK_KEY_SUCCESS. - * - * @param keyStatus An ::EmberKeyStatus value describing the success or failure - * of the key exchange process. Ver.: always - */ -void emberAfPluginUpdateTcLinkKeyStatusCallback(EmberKeyStatus keyStatus); -/** @} END Update TC Link Key Plugin Callbacks */ - -/** @name Network Steering Plugin Callbacks */ -// @{ - -/** @brief Complete - * - * This callback is fired when the Network Steering plugin is complete. - * - * @param status On success this will be set to EMBER_SUCCESS to indicate a - * network was joined successfully. On failure this will be the status code of - * the last join or scan attempt. Ver.: always - * @param totalBeacons The total number of 802.15.4 beacons that were heard, - * including beacons from different devices with the same PAN ID. Ver.: always - * @param joinAttempts The number of join attempts that were made to get onto - * an open Zigbee network. Ver.: always - * @param finalState The finishing state of the network steering process. From - * this, one is able to tell on which channel mask and with which key the - * process was complete. Ver.: always - */ -void emberAfPluginNetworkSteeringCompleteCallback(EmberStatus status, uint8_t totalBeacons, uint8_t joinAttempts, - uint8_t finalState); -/** @brief Get Power For Radio Channel - * - * This callback is fired when the Network Steering plugin needs to set the - * power level. The application has the ability to change the max power level - * used for this particular channel. - * - * @param channel The channel that the plugin is inquiring about the power - * level. Ver.: always - */ -int8_t emberAfPluginNetworkSteeringGetPowerForRadioChannelCallback(uint8_t channel); -/** @brief Get Distributed Key - * - * This callback is fired when the Network Steering plugin needs to set the distributed - * key. The application set the distributed key from Zigbee Alliance thru this callback - * or the network steering will use the default test key. - * - * @param pointer to the distributed key struct - * @return true if the key is loaded successfully, otherwise false. - * level. Ver.: always - */ -bool emberAfPluginNetworkSteeringGetDistributedKeyCallback(EmberKeyData * key); -/** @brief Get Node Type - * - * This callback allows the application to set the node type that the network - * steering process will use in joining a network. - * - * @param state The current ::EmberAfPluginNetworkSteeringJoiningState. - * - * @return An ::EmberNodeType value that the network steering process will - * try to join a network as. - */ -EmberNodeType emberAfPluginNetworkSteeringGetNodeTypeCallback(EmberAfPluginNetworkSteeringJoiningState state); -/** @} END Network Steering Plugin Callbacks */ - -/** @name HAL Library Plugin Callbacks */ -// @{ - -/** - * @brief Called whenever the radio is powered on. - */ -void halRadioPowerUpHandler(void); -/** - * @brief Called whenever the radio is powered off. - */ -void halRadioPowerDownHandler(void); -/** - * @brief Called whenever the microcontroller enters/exits a idle/sleep mode - * - * @param enter True if entering idle/sleep, False if exiting - * @param sleepMode Idle/sleep mode - */ -void halSleepCallback(bool enter, SleepModes sleepMode); -/** @} END HAL Library Plugin Callbacks */ - -/** @} END addtogroup */ -#endif // SILABS_EMBER_AF_CALLBACK_PROTOTYPES +bool emberAfStartMoveCallback(); diff --git a/examples/lighting-app/lighting-common/gen/cluster-id.h b/examples/lighting-app/lighting-common/gen/cluster-id.h index 7462d4e9cf279b..c341b079be401d 100644 --- a/examples/lighting-app/lighting-common/gen/cluster-id.h +++ b/examples/lighting-app/lighting-common/gen/cluster-id.h @@ -1,4 +1,5 @@ -/** + +/* * * Copyright (c) 2020 Project CHIP Authors * @@ -15,160 +16,332 @@ * limitations under the License. */ -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_EMBER_AF_CLUSTER_ID -#define SILABS_EMBER_AF_CLUSTER_ID - -// Cluster domain specification levels: -// * General: zcl-7.0-07-5123-07 -// * Lighting & Occupancy: l&o-1.0-15-0014-04 -// * HA: ha-1.2.1-05-3520-30 -// * Closures: zcl-6.0-15-02018-001 -// * HVAC: zcl-6.0-15-02018-001 -// * Lighting: zcl6-errata-14-0129-15 -// * Measurement & Sensing: zcl-6.0-15-02018-001 -// * Security & Safety: zcl-6.0-15-02018-001 -// * Home Automation: UNKNOWN -// * CBA: cba-1.0-05-3516-12 -// * SE: se-1.2b-15-0131-02 -// * ZLL: zll-1.0-11-0037-10 -// * Telecom Applications: ta-1.0-07-5307-07 -// * Protocol Interfaces: ta-1.0-07-5307-07 -// * Telecommunication: ta-1.0-07-5307-07 -// * Financial: ta-1.0-07-5307-07 -// * Ember: UNKNOWN -// * HC: hc-1.0-07-5360-15 -// * GP: gp-1.0a-09-5499-26 -// * LO: UNKNOWN -// * Works With All Hubs: UNKNOWN -// * WWAH: UNKNOWN -#define ZCL_BASIC_CLUSTER_ID 0x0000 -#define ZCL_POWER_CONFIG_CLUSTER_ID 0x0001 -#define ZCL_DEVICE_TEMP_CLUSTER_ID 0x0002 -#define ZCL_IDENTIFY_CLUSTER_ID 0x0003 -#define ZCL_GROUPS_CLUSTER_ID 0x0004 -#define ZCL_SCENES_CLUSTER_ID 0x0005 -#define ZCL_ON_OFF_CLUSTER_ID 0x0006 -#define ZCL_ON_OFF_SWITCH_CONFIG_CLUSTER_ID 0x0007 -#define ZCL_LEVEL_CONTROL_CLUSTER_ID 0x0008 -#define ZCL_ALARM_CLUSTER_ID 0x0009 -#define ZCL_TIME_CLUSTER_ID 0x000A -#define ZCL_RSSI_LOCATION_CLUSTER_ID 0x000B -#define ZCL_BINARY_INPUT_BASIC_CLUSTER_ID 0x000F -#define ZCL_COMMISSIONING_CLUSTER_ID 0x0015 -#define ZCL_PARTITION_CLUSTER_ID 0x0016 -#define ZCL_OTA_BOOTLOAD_CLUSTER_ID 0x0019 -#define ZCL_POWER_PROFILE_CLUSTER_ID 0x001A -#define ZCL_APPLIANCE_CONTROL_CLUSTER_ID 0x001B -#define ZCL_POLL_CONTROL_CLUSTER_ID 0x0020 -#define ZCL_GREEN_POWER_CLUSTER_ID 0x0021 -#define ZCL_KEEPALIVE_CLUSTER_ID 0x0025 -#define ZCL_SHADE_CONFIG_CLUSTER_ID 0x0100 -#define ZCL_DOOR_LOCK_CLUSTER_ID 0x0101 -#define ZCL_WINDOW_COVERING_CLUSTER_ID 0x0102 -#define ZCL_BARRIER_CONTROL_CLUSTER_ID 0x0103 -#define ZCL_PUMP_CONFIG_CONTROL_CLUSTER_ID 0x0200 -#define ZCL_THERMOSTAT_CLUSTER_ID 0x0201 -#define ZCL_FAN_CONTROL_CLUSTER_ID 0x0202 -#define ZCL_DEHUMID_CONTROL_CLUSTER_ID 0x0203 -#define ZCL_THERMOSTAT_UI_CONFIG_CLUSTER_ID 0x0204 -#define ZCL_COLOR_CONTROL_CLUSTER_ID 0x0300 -#define ZCL_BALLAST_CONFIGURATION_CLUSTER_ID 0x0301 -#define ZCL_ILLUM_MEASUREMENT_CLUSTER_ID 0x0400 -#define ZCL_ILLUM_LEVEL_SENSING_CLUSTER_ID 0x0401 -#define ZCL_TEMP_MEASUREMENT_CLUSTER_ID 0x0402 -#define ZCL_PRESSURE_MEASUREMENT_CLUSTER_ID 0x0403 -#define ZCL_FLOW_MEASUREMENT_CLUSTER_ID 0x0404 -#define ZCL_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_ID 0x0405 -#define ZCL_OCCUPANCY_SENSING_CLUSTER_ID 0x0406 -#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x040C -#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x040D -#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x040E -#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x040F -#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0410 -#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0411 -#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0412 -#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0413 -#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0414 -#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0415 -#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0416 -#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0417 -#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0418 -#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0419 -#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x041A -#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x041B -#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x041C -#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x041D -#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x041E -#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x041F -#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0420 -#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0421 -#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0422 -#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0423 -#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0424 -#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0425 -#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0426 -#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0427 -#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0428 -#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_ID 0x0429 -#define ZCL_IAS_ZONE_CLUSTER_ID 0x0500 -#define ZCL_IAS_ACE_CLUSTER_ID 0x0501 -#define ZCL_IAS_WD_CLUSTER_ID 0x0502 -#define ZCL_GENERIC_TUNNEL_CLUSTER_ID 0x0600 -#define ZCL_BACNET_PROTOCOL_TUNNEL_CLUSTER_ID 0x0601 -#define ZCL_11073_PROTOCOL_TUNNEL_CLUSTER_ID 0x0614 -#define ZCL_ISO7816_PROTOCOL_TUNNEL_CLUSTER_ID 0x0615 -#define ZCL_PRICE_CLUSTER_ID 0x0700 -#define ZCL_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_ID 0x0701 -#define ZCL_SIMPLE_METERING_CLUSTER_ID 0x0702 -#define ZCL_MESSAGING_CLUSTER_ID 0x0703 -#define ZCL_TUNNELING_CLUSTER_ID 0x0704 -#define ZCL_PREPAYMENT_CLUSTER_ID 0x0705 -#define ZCL_ENERGY_MANAGEMENT_CLUSTER_ID 0x0706 -#define ZCL_CALENDAR_CLUSTER_ID 0x0707 -#define ZCL_DEVICE_MANAGEMENT_CLUSTER_ID 0x0708 -#define ZCL_EVENTS_CLUSTER_ID 0x0709 -#define ZCL_MDU_PAIRING_CLUSTER_ID 0x070A -#define ZCL_SUB_GHZ_CLUSTER_ID 0x070B -#define ZCL_KEY_ESTABLISHMENT_CLUSTER_ID 0x0800 -#define ZCL_INFORMATION_CLUSTER_ID 0x0900 -#define ZCL_DATA_SHARING_CLUSTER_ID 0x0901 -#define ZCL_GAMING_CLUSTER_ID 0x0902 -#define ZCL_DATA_RATE_CONTROL_CLUSTER_ID 0x0903 -#define ZCL_VOICE_OVER_ZIGBEE_CLUSTER_ID 0x0904 -#define ZCL_CHATTING_CLUSTER_ID 0x0905 -#define ZCL_PAYMENT_CLUSTER_ID 0x0A01 -#define ZCL_BILLING_CLUSTER_ID 0x0A02 -#define ZCL_APPLIANCE_IDENTIFICATION_CLUSTER_ID 0x0B00 -#define ZCL_METER_IDENTIFICATION_CLUSTER_ID 0x0B01 -#define ZCL_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_ID 0x0B02 -#define ZCL_APPLIANCE_STATISTICS_CLUSTER_ID 0x0B03 -#define ZCL_ELECTRICAL_MEASUREMENT_CLUSTER_ID 0x0B04 -#define ZCL_DIAGNOSTICS_CLUSTER_ID 0x0B05 -#define ZCL_ZLL_COMMISSIONING_CLUSTER_ID 0x1000 -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_ID 0xFC00 -#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_2_ID 0xFC00 -#define ZCL_OTA_CONFIGURATION_CLUSTER_ID 0xFC01 -#define ZCL_MFGLIB_CLUSTER_ID 0xFC02 -#define ZCL_SL_WWAH_CLUSTER_ID 0xFC57 -#endif // SILABS_EMBER_AF_CLUSTER_ID +// Prevent multiple inclusion +#pragma once + +// Definitions for cluster: Basic +#define ZCL_BASIC_CLUSTER_ID (0x0000) + +// Definitions for cluster: Power Configuration +#define ZCL_POWER_CONFIG_CLUSTER_ID (0x0001) + +// Definitions for cluster: Device Temperature Configuration +#define ZCL_DEVICE_TEMP_CLUSTER_ID (0x0002) + +// Definitions for cluster: Identify +#define ZCL_IDENTIFY_CLUSTER_ID (0x0003) + +// Definitions for cluster: Groups +#define ZCL_GROUPS_CLUSTER_ID (0x0004) + +// Definitions for cluster: Scenes +#define ZCL_SCENES_CLUSTER_ID (0x0005) + +// Definitions for cluster: On/off +#define ZCL_ON_OFF_CLUSTER_ID (0x0006) + +// Definitions for cluster: On/off Switch Configuration +#define ZCL_ON_OFF_SWITCH_CONFIG_CLUSTER_ID (0x0007) + +// Definitions for cluster: Level Control +#define ZCL_LEVEL_CONTROL_CLUSTER_ID (0x0008) + +// Definitions for cluster: Alarms +#define ZCL_ALARM_CLUSTER_ID (0x0009) + +// Definitions for cluster: Time +#define ZCL_TIME_CLUSTER_ID (0x000A) + +// Definitions for cluster: RSSI Location +#define ZCL_RSSI_LOCATION_CLUSTER_ID (0x000B) + +// Definitions for cluster: Binary Input (Basic) +#define ZCL_BINARY_INPUT_BASIC_CLUSTER_ID (0x000F) + +// Definitions for cluster: Commissioning +#define ZCL_COMMISSIONING_CLUSTER_ID (0x0015) + +// Definitions for cluster: Partition +#define ZCL_PARTITION_CLUSTER_ID (0x0016) + +// Definitions for cluster: Over the Air Bootloading +#define ZCL_OTA_BOOTLOAD_CLUSTER_ID (0x0019) + +// Definitions for cluster: Power Profile +#define ZCL_POWER_PROFILE_CLUSTER_ID (0x001A) + +// Definitions for cluster: Appliance Control +#define ZCL_APPLIANCE_CONTROL_CLUSTER_ID (0x001B) + +// Definitions for cluster: Poll Control +#define ZCL_POLL_CONTROL_CLUSTER_ID (0x0020) + +// Definitions for cluster: Green Power +#define ZCL_GREEN_POWER_CLUSTER_ID (0x0021) + +// Definitions for cluster: Keep-Alive +#define ZCL_KEEPALIVE_CLUSTER_ID (0x0025) + +// Definitions for cluster: Shade Configuration +#define ZCL_SHADE_CONFIG_CLUSTER_ID (0x0100) + +// Definitions for cluster: Door Lock +#define ZCL_DOOR_LOCK_CLUSTER_ID (0x0101) + +// Definitions for cluster: Window Covering +#define ZCL_WINDOW_COVERING_CLUSTER_ID (0x0102) + +// Definitions for cluster: Barrier Control +#define ZCL_BARRIER_CONTROL_CLUSTER_ID (0x0103) + +// Definitions for cluster: Pump Configuration and Control +#define ZCL_PUMP_CONFIG_CONTROL_CLUSTER_ID (0x0200) + +// Definitions for cluster: Thermostat +#define ZCL_THERMOSTAT_CLUSTER_ID (0x0201) + +// Definitions for cluster: Fan Control +#define ZCL_FAN_CONTROL_CLUSTER_ID (0x0202) + +// Definitions for cluster: Dehumidification Control +#define ZCL_DEHUMID_CONTROL_CLUSTER_ID (0x0203) + +// Definitions for cluster: Thermostat User Interface Configuration +#define ZCL_THERMOSTAT_UI_CONFIG_CLUSTER_ID (0x0204) + +// Definitions for cluster: Color Control +#define ZCL_COLOR_CONTROL_CLUSTER_ID (0x0300) + +// Definitions for cluster: Ballast Configuration +#define ZCL_BALLAST_CONFIGURATION_CLUSTER_ID (0x0301) + +// Definitions for cluster: Illuminance Measurement +#define ZCL_ILLUM_MEASUREMENT_CLUSTER_ID (0x0400) + +// Definitions for cluster: Illuminance Level Sensing +#define ZCL_ILLUM_LEVEL_SENSING_CLUSTER_ID (0x0401) + +// Definitions for cluster: Temperature Measurement +#define ZCL_TEMP_MEASUREMENT_CLUSTER_ID (0x0402) + +// Definitions for cluster: Pressure Measurement +#define ZCL_PRESSURE_MEASUREMENT_CLUSTER_ID (0x0403) + +// Definitions for cluster: Flow Measurement +#define ZCL_FLOW_MEASUREMENT_CLUSTER_ID (0x0404) + +// Definitions for cluster: Relative Humidity Measurement +#define ZCL_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_ID (0x0405) + +// Definitions for cluster: Occupancy Sensing +#define ZCL_OCCUPANCY_SENSING_CLUSTER_ID (0x0406) + +// Definitions for cluster: Carbon Monoxide Concentration Measurement +#define ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x040C) + +// Definitions for cluster: Carbon Dioxide Concentration Measurement +#define ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x040D) + +// Definitions for cluster: Ethylene Concentration Measurement +#define ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x040E) + +// Definitions for cluster: Ethylene Oxide Concentration Measurement +#define ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x040F) + +// Definitions for cluster: Hydrogen Concentration Measurement +#define ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0410) + +// Definitions for cluster: Hydrogen Sulphide Concentration Measurement +#define ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0411) + +// Definitions for cluster: Nitric Oxide Concentration Measurement +#define ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0412) + +// Definitions for cluster: Nitrogen Dioxide Concentration Measurement +#define ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0413) + +// Definitions for cluster: Oxygen Concentration Measurement +#define ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0414) + +// Definitions for cluster: Ozone Concentration Measurement +#define ZCL_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0415) + +// Definitions for cluster: Sulfur Dioxide Concentration Measurement +#define ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0416) + +// Definitions for cluster: Dissolved Oxygen Concentration Measurement +#define ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0417) + +// Definitions for cluster: Bromate Concentration Measurement +#define ZCL_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0418) + +// Definitions for cluster: Chloramines Concentration Measurement +#define ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0419) + +// Definitions for cluster: Chlorine Concentration Measurement +#define ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x041A) + +// Definitions for cluster: Fecal coliform and E. Coli Concentration Measurement +#define ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x041B) + +// Definitions for cluster: Fluoride Concentration Measurement +#define ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x041C) + +// Definitions for cluster: Haloacetic Acids Concentration Measurement +#define ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x041D) + +// Definitions for cluster: Total Trihalomethanes Concentration Measurement +#define ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x041E) + +// Definitions for cluster: Total Coliform Bacteria Concentration Measurement +#define ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x041F) + +// Definitions for cluster: Turbidity Concentration Measurement +#define ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0420) + +// Definitions for cluster: Copper Concentration Measurement +#define ZCL_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0421) + +// Definitions for cluster: Lead Concentration Measurement +#define ZCL_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0422) + +// Definitions for cluster: Manganese Concentration Measurement +#define ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0423) + +// Definitions for cluster: Sulfate Concentration Measurement +#define ZCL_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0424) + +// Definitions for cluster: Bromodichloromethane Concentration Measurement +#define ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0425) + +// Definitions for cluster: Bromoform Concentration Measurement +#define ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0426) + +// Definitions for cluster: Chlorodibromomethane Concentration Measurement +#define ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0427) + +// Definitions for cluster: Chloroform Concentration Measurement +#define ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0428) + +// Definitions for cluster: Sodium Concentration Measurement +#define ZCL_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_ID (0x0429) + +// Definitions for cluster: IAS Zone +#define ZCL_IAS_ZONE_CLUSTER_ID (0x0500) + +// Definitions for cluster: IAS ACE +#define ZCL_IAS_ACE_CLUSTER_ID (0x0501) + +// Definitions for cluster: IAS WD +#define ZCL_IAS_WD_CLUSTER_ID (0x0502) + +// Definitions for cluster: Generic Tunnel +#define ZCL_GENERIC_TUNNEL_CLUSTER_ID (0x0600) + +// Definitions for cluster: BACnet Protocol Tunnel +#define ZCL_BACNET_PROTOCOL_TUNNEL_CLUSTER_ID (0x0601) + +// Definitions for cluster: 11073 Protocol Tunnel +#define ZCL_11073_PROTOCOL_TUNNEL_CLUSTER_ID (0x0614) + +// Definitions for cluster: ISO 7816 Protocol Tunnel +#define ZCL_ISO7816_PROTOCOL_TUNNEL_CLUSTER_ID (0x0615) + +// Definitions for cluster: Price +#define ZCL_PRICE_CLUSTER_ID (0x0700) + +// Definitions for cluster: Demand Response and Load Control +#define ZCL_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_ID (0x0701) + +// Definitions for cluster: Simple Metering +#define ZCL_SIMPLE_METERING_CLUSTER_ID (0x0702) + +// Definitions for cluster: Messaging +#define ZCL_MESSAGING_CLUSTER_ID (0x0703) + +// Definitions for cluster: Tunneling +#define ZCL_TUNNELING_CLUSTER_ID (0x0704) + +// Definitions for cluster: Prepayment +#define ZCL_PREPAYMENT_CLUSTER_ID (0x0705) + +// Definitions for cluster: Energy Management +#define ZCL_ENERGY_MANAGEMENT_CLUSTER_ID (0x0706) + +// Definitions for cluster: Calendar +#define ZCL_CALENDAR_CLUSTER_ID (0x0707) + +// Definitions for cluster: Device Management +#define ZCL_DEVICE_MANAGEMENT_CLUSTER_ID (0x0708) + +// Definitions for cluster: Events +#define ZCL_EVENTS_CLUSTER_ID (0x0709) + +// Definitions for cluster: MDU Pairing +#define ZCL_MDU_PAIRING_CLUSTER_ID (0x070A) + +// Definitions for cluster: Sub-GHz +#define ZCL_SUB_GHZ_CLUSTER_ID (0x070B) + +// Definitions for cluster: Key Establishment +#define ZCL_KEY_ESTABLISHMENT_CLUSTER_ID (0x0800) + +// Definitions for cluster: Information +#define ZCL_INFORMATION_CLUSTER_ID (0x0900) + +// Definitions for cluster: Data Sharing +#define ZCL_DATA_SHARING_CLUSTER_ID (0x0901) + +// Definitions for cluster: Gaming +#define ZCL_GAMING_CLUSTER_ID (0x0902) + +// Definitions for cluster: Data Rate Control +#define ZCL_DATA_RATE_CONTROL_CLUSTER_ID (0x0903) + +// Definitions for cluster: Voice over ZigBee +#define ZCL_VOICE_OVER_ZIGBEE_CLUSTER_ID (0x0904) + +// Definitions for cluster: Chatting +#define ZCL_CHATTING_CLUSTER_ID (0x0905) + +// Definitions for cluster: Payment +#define ZCL_PAYMENT_CLUSTER_ID (0x0A01) + +// Definitions for cluster: Billing +#define ZCL_BILLING_CLUSTER_ID (0x0A02) + +// Definitions for cluster: Appliance Identification +#define ZCL_APPLIANCE_IDENTIFICATION_CLUSTER_ID (0x0B00) + +// Definitions for cluster: Meter Identification +#define ZCL_METER_IDENTIFICATION_CLUSTER_ID (0x0B01) + +// Definitions for cluster: Appliance Events and Alert +#define ZCL_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_ID (0x0B02) + +// Definitions for cluster: Appliance Statistics +#define ZCL_APPLIANCE_STATISTICS_CLUSTER_ID (0x0B03) + +// Definitions for cluster: Electrical Measurement +#define ZCL_ELECTRICAL_MEASUREMENT_CLUSTER_ID (0x0B04) + +// Definitions for cluster: Diagnostics +#define ZCL_DIAGNOSTICS_CLUSTER_ID (0x0B05) + +// Definitions for cluster: ZLL Commissioning +#define ZCL_ZLL_COMMISSIONING_CLUSTER_ID (0x1000) + +// Definitions for cluster: Sample Mfg Specific Cluster +#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_ID (0xFC00) + +// Definitions for cluster: Sample Mfg Specific Cluster 2 +#define ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_2_ID (0xFC00) + +// Definitions for cluster: Configuration Cluster +#define ZCL_OTA_CONFIGURATION_CLUSTER_ID (0xFC01) + +// Definitions for cluster: MFGLIB Cluster +#define ZCL_MFGLIB_CLUSTER_ID (0xFC02) + +// Definitions for cluster: SL Works With All Hubs +#define ZCL_SL_WWAH_CLUSTER_ID (0xFC57) diff --git a/examples/lighting-app/lighting-common/gen/command-id.h b/examples/lighting-app/lighting-common/gen/command-id.h index 823914d0466035..940258f4527aa5 100644 --- a/examples/lighting-app/lighting-common/gen/command-id.h +++ b/examples/lighting-app/lighting-common/gen/command-id.h @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,1007 +15,733 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_EMBER_AF_COMMAND_ID -#define SILABS_EMBER_AF_COMMAND_ID - -// Global commands - -// Either direction -#define ZCL_READ_ATTRIBUTES_COMMAND_ID 0x00 // Ver.: always -#define ZCL_READ_ATTRIBUTES_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_WRITE_ATTRIBUTES_COMMAND_ID 0x02 // Ver.: always -#define ZCL_WRITE_ATTRIBUTES_UNDIVIDED_COMMAND_ID 0x03 // Ver.: always -#define ZCL_WRITE_ATTRIBUTES_RESPONSE_COMMAND_ID 0x04 // Ver.: always -#define ZCL_WRITE_ATTRIBUTES_NO_RESPONSE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_CONFIGURE_REPORTING_COMMAND_ID 0x06 // Ver.: always -#define ZCL_CONFIGURE_REPORTING_RESPONSE_COMMAND_ID 0x07 // Ver.: always -#define ZCL_READ_REPORTING_CONFIGURATION_COMMAND_ID 0x08 // Ver.: always -#define ZCL_READ_REPORTING_CONFIGURATION_RESPONSE_COMMAND_ID 0x09 // Ver.: always -#define ZCL_REPORT_ATTRIBUTES_COMMAND_ID 0x0A // Ver.: always -#define ZCL_DEFAULT_RESPONSE_COMMAND_ID 0x0B // Ver.: always -#define ZCL_DISCOVER_ATTRIBUTES_COMMAND_ID 0x0C // Ver.: always -#define ZCL_DISCOVER_ATTRIBUTES_RESPONSE_COMMAND_ID 0x0D // Ver.: always -#define ZCL_READ_ATTRIBUTES_STRUCTURED_COMMAND_ID 0x0E // Ver.: always -#define ZCL_WRITE_ATTRIBUTES_STRUCTURED_COMMAND_ID 0x0F // Ver.: always -#define ZCL_WRITE_ATTRIBUTES_STRUCTURED_RESPONSE_COMMAND_ID 0x10 // Ver.: always -#define ZCL_DISCOVER_COMMANDS_RECEIVED_COMMAND_ID 0x11 // Ver.: always -#define ZCL_DISCOVER_COMMANDS_RECEIVED_RESPONSE_COMMAND_ID 0x12 // Ver.: always -#define ZCL_DISCOVER_COMMANDS_GENERATED_COMMAND_ID 0x13 // Ver.: always -#define ZCL_DISCOVER_COMMANDS_GENERATED_RESPONSE_COMMAND_ID 0x14 // Ver.: always -#define ZCL_DISCOVER_ATTRIBUTES_EXTENDED_COMMAND_ID 0x15 // Ver.: always -#define ZCL_DISCOVER_ATTRIBUTES_EXTENDED_RESPONSE_COMMAND_ID 0x16 // Ver.: always -// Command types for cluster: Basic -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_GET_LOCALES_SUPPORTED_RESPONSE_COMMAND_ID 0x01 // Ver.: always - -// Client to server -#define ZCL_RESET_TO_FACTORY_DEFAULTS_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GET_LOCALES_SUPPORTED_COMMAND_ID 0x01 // Ver.: always - -// Command types for cluster: Identify -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_IDENTIFY_QUERY_RESPONSE_COMMAND_ID 0x00 // Ver.: always - -// Client to server -#define ZCL_IDENTIFY_COMMAND_ID 0x00 // Ver.: always -#define ZCL_IDENTIFY_QUERY_COMMAND_ID 0x01 // Ver.: always -#define ZCL_E_Z_MODE_INVOKE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_UPDATE_COMMISSION_STATE_COMMAND_ID 0x03 // Ver.: always -#define ZCL_TRIGGER_EFFECT_COMMAND_ID 0x40 // Ver.: since zll-1.0-11-0037-10 - -// Command types for cluster: Groups -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_ADD_GROUP_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_VIEW_GROUP_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_GET_GROUP_MEMBERSHIP_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_REMOVE_GROUP_RESPONSE_COMMAND_ID 0x03 // Ver.: always - -// Client to server -#define ZCL_ADD_GROUP_COMMAND_ID 0x00 // Ver.: always -#define ZCL_VIEW_GROUP_COMMAND_ID 0x01 // Ver.: always -#define ZCL_GET_GROUP_MEMBERSHIP_COMMAND_ID 0x02 // Ver.: always -#define ZCL_REMOVE_GROUP_COMMAND_ID 0x03 // Ver.: always -#define ZCL_REMOVE_ALL_GROUPS_COMMAND_ID 0x04 // Ver.: always -#define ZCL_ADD_GROUP_IF_IDENTIFYING_COMMAND_ID 0x05 // Ver.: always - -// Command types for cluster: Scenes -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_ADD_SCENE_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_VIEW_SCENE_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_REMOVE_SCENE_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_REMOVE_ALL_SCENES_RESPONSE_COMMAND_ID 0x03 // Ver.: always -#define ZCL_STORE_SCENE_RESPONSE_COMMAND_ID 0x04 // Ver.: always -#define ZCL_GET_SCENE_MEMBERSHIP_RESPONSE_COMMAND_ID 0x06 // Ver.: always -#define ZCL_ENHANCED_ADD_SCENE_RESPONSE_COMMAND_ID 0x40 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_ENHANCED_VIEW_SCENE_RESPONSE_COMMAND_ID 0x41 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COPY_SCENE_RESPONSE_COMMAND_ID 0x42 // Ver.: since zll-1.0-11-0037-10 - -// Client to server -#define ZCL_ADD_SCENE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_VIEW_SCENE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_REMOVE_SCENE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_REMOVE_ALL_SCENES_COMMAND_ID 0x03 // Ver.: always -#define ZCL_STORE_SCENE_COMMAND_ID 0x04 // Ver.: always -#define ZCL_RECALL_SCENE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_GET_SCENE_MEMBERSHIP_COMMAND_ID 0x06 // Ver.: always -#define ZCL_ENHANCED_ADD_SCENE_COMMAND_ID 0x40 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_ENHANCED_VIEW_SCENE_COMMAND_ID 0x41 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COPY_SCENE_COMMAND_ID 0x42 // Ver.: since zll-1.0-11-0037-10 - -// Command types for cluster: On/off -// Cluster specification level: zcl-7.0-07-5123-07 - -// Client to server -#define ZCL_OFF_COMMAND_ID 0x00 // Ver.: always -#define ZCL_ON_COMMAND_ID 0x01 // Ver.: always -#define ZCL_TOGGLE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_OFF_WITH_EFFECT_COMMAND_ID 0x40 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_ON_WITH_RECALL_GLOBAL_SCENE_COMMAND_ID 0x41 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_ON_WITH_TIMED_OFF_COMMAND_ID 0x42 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_SAMPLE_MFG_SPECIFIC_OFF_WITH_TRANSITION_COMMAND_ID 0x00 // Ver.: always mfgCode: 0x1002 -#define ZCL_SAMPLE_MFG_SPECIFIC_ON_WITH_TRANSITION_COMMAND_ID 0x01 // Ver.: always mfgCode: 0x1002 -#define ZCL_SAMPLE_MFG_SPECIFIC_TOGGLE_WITH_TRANSITION_COMMAND_ID 0x02 // Ver.: always mfgCode: 0x1002 -#define ZCL_SAMPLE_MFG_SPECIFIC_ON_WITH_TRANSITION2_COMMAND_ID 0x01 // Ver.: always mfgCode: 0x1049 -#define ZCL_SAMPLE_MFG_SPECIFIC_TOGGLE_WITH_TRANSITION2_COMMAND_ID 0x02 // Ver.: always mfgCode: 0x1049 - -// Command types for cluster: Level Control -// Cluster specification level: zcl-7.0-07-5123-07 - -// Client to server -#define ZCL_MOVE_TO_LEVEL_COMMAND_ID 0x00 // Ver.: always -#define ZCL_MOVE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_STEP_COMMAND_ID 0x02 // Ver.: always -#define ZCL_STOP_COMMAND_ID 0x03 // Ver.: always -#define ZCL_MOVE_TO_LEVEL_WITH_ON_OFF_COMMAND_ID 0x04 // Ver.: always -#define ZCL_MOVE_WITH_ON_OFF_COMMAND_ID 0x05 // Ver.: always -#define ZCL_STEP_WITH_ON_OFF_COMMAND_ID 0x06 // Ver.: always -#define ZCL_STOP_WITH_ON_OFF_COMMAND_ID 0x07 // Ver.: always - -// Command types for cluster: Alarms -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_ALARM_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GET_ALARM_RESPONSE_COMMAND_ID 0x01 // Ver.: always - -// Client to server -#define ZCL_RESET_ALARM_COMMAND_ID 0x00 // Ver.: always -#define ZCL_RESET_ALL_ALARMS_COMMAND_ID 0x01 // Ver.: always -#define ZCL_GET_ALARM_COMMAND_ID 0x02 // Ver.: always -#define ZCL_RESET_ALARM_LOG_COMMAND_ID 0x03 // Ver.: always - -// Command types for cluster: RSSI Location -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_DEVICE_CONFIGURATION_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_LOCATION_DATA_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_LOCATION_DATA_NOTIFICATION_COMMAND_ID 0x02 // Ver.: always -#define ZCL_COMPACT_LOCATION_DATA_NOTIFICATION_COMMAND_ID 0x03 // Ver.: always -#define ZCL_RSSI_PING_COMMAND_ID 0x04 // Ver.: always -#define ZCL_RSSI_REQUEST_COMMAND_ID 0x05 // Ver.: always -#define ZCL_REPORT_RSSI_MEASUREMENTS_COMMAND_ID 0x06 // Ver.: always -#define ZCL_REQUEST_OWN_LOCATION_COMMAND_ID 0x07 // Ver.: always - -// Client to server -#define ZCL_SET_ABSOLUTE_LOCATION_COMMAND_ID 0x00 // Ver.: always -#define ZCL_SET_DEVICE_CONFIGURATION_COMMAND_ID 0x01 // Ver.: always -#define ZCL_GET_DEVICE_CONFIGURATION_COMMAND_ID 0x02 // Ver.: always -#define ZCL_GET_LOCATION_DATA_COMMAND_ID 0x03 // Ver.: always -#define ZCL_RSSI_RESPONSE_COMMAND_ID 0x04 // Ver.: always -#define ZCL_SEND_PINGS_COMMAND_ID 0x05 // Ver.: always -#define ZCL_ANCHOR_NODE_ANNOUNCE_COMMAND_ID 0x06 // Ver.: always - -// Command types for cluster: Commissioning -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_RESTART_DEVICE_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_SAVE_STARTUP_PARAMETERS_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_RESTORE_STARTUP_PARAMETERS_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_RESET_STARTUP_PARAMETERS_RESPONSE_COMMAND_ID 0x03 // Ver.: always - -// Client to server -#define ZCL_RESTART_DEVICE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_SAVE_STARTUP_PARAMETERS_COMMAND_ID 0x01 // Ver.: always -#define ZCL_RESTORE_STARTUP_PARAMETERS_COMMAND_ID 0x02 // Ver.: always -#define ZCL_RESET_STARTUP_PARAMETERS_COMMAND_ID 0x03 // Ver.: always - -// Command types for cluster: Partition -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_MULTIPLE_ACK_COMMAND_ID 0x00 // Ver.: always -#define ZCL_READ_HANDSHAKE_PARAM_RESPONSE_COMMAND_ID 0x01 // Ver.: always - -// Client to server -#define ZCL_TRANSFER_PARTITIONED_FRAME_COMMAND_ID 0x00 // Ver.: always -#define ZCL_READ_HANDSHAKE_PARAM_COMMAND_ID 0x01 // Ver.: always -#define ZCL_WRITE_HANDSHAKE_PARAM_COMMAND_ID 0x02 // Ver.: always - -// Command types for cluster: Over the Air Bootloading -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_IMAGE_NOTIFY_COMMAND_ID 0x00 // Ver.: always -#define ZCL_QUERY_NEXT_IMAGE_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_IMAGE_BLOCK_RESPONSE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_UPGRADE_END_RESPONSE_COMMAND_ID 0x07 // Ver.: always -#define ZCL_QUERY_SPECIFIC_FILE_RESPONSE_COMMAND_ID 0x09 // Ver.: always - -// Client to server -#define ZCL_QUERY_NEXT_IMAGE_REQUEST_COMMAND_ID 0x01 // Ver.: always -#define ZCL_IMAGE_BLOCK_REQUEST_COMMAND_ID 0x03 // Ver.: always -#define ZCL_IMAGE_PAGE_REQUEST_COMMAND_ID 0x04 // Ver.: always -#define ZCL_UPGRADE_END_REQUEST_COMMAND_ID 0x06 // Ver.: always -#define ZCL_QUERY_SPECIFIC_FILE_REQUEST_COMMAND_ID 0x08 // Ver.: always - -// Command types for cluster: Power Profile -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_POWER_PROFILE_NOTIFICATION_COMMAND_ID 0x00 // Ver.: always -#define ZCL_POWER_PROFILE_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_POWER_PROFILE_STATE_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_GET_POWER_PROFILE_PRICE_COMMAND_ID 0x03 // Ver.: always -#define ZCL_POWER_PROFILES_STATE_NOTIFICATION_COMMAND_ID 0x04 // Ver.: always -#define ZCL_GET_OVERALL_SCHEDULE_PRICE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_ENERGY_PHASES_SCHEDULE_REQUEST_COMMAND_ID 0x06 // Ver.: always -#define ZCL_ENERGY_PHASES_SCHEDULE_STATE_RESPONSE_COMMAND_ID 0x07 // Ver.: always -#define ZCL_ENERGY_PHASES_SCHEDULE_STATE_NOTIFICATION_COMMAND_ID 0x08 // Ver.: always -#define ZCL_POWER_PROFILE_SCHEDULE_CONSTRAINTS_NOTIFICATION_COMMAND_ID 0x09 // Ver.: always -#define ZCL_POWER_PROFILE_SCHEDULE_CONSTRAINTS_RESPONSE_COMMAND_ID 0x0A // Ver.: always -#define ZCL_GET_POWER_PROFILE_PRICE_EXTENDED_COMMAND_ID 0x0B // Ver.: always - -// Client to server -#define ZCL_POWER_PROFILE_REQUEST_COMMAND_ID 0x00 // Ver.: always -#define ZCL_POWER_PROFILE_STATE_REQUEST_COMMAND_ID 0x01 // Ver.: always -#define ZCL_GET_POWER_PROFILE_PRICE_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_GET_OVERALL_SCHEDULE_PRICE_RESPONSE_COMMAND_ID 0x03 // Ver.: always -#define ZCL_ENERGY_PHASES_SCHEDULE_NOTIFICATION_COMMAND_ID 0x04 // Ver.: always -#define ZCL_ENERGY_PHASES_SCHEDULE_RESPONSE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_POWER_PROFILE_SCHEDULE_CONSTRAINTS_REQUEST_COMMAND_ID 0x06 // Ver.: always -#define ZCL_ENERGY_PHASES_SCHEDULE_STATE_REQUEST_COMMAND_ID 0x07 // Ver.: always -#define ZCL_GET_POWER_PROFILE_PRICE_EXTENDED_RESPONSE_COMMAND_ID 0x08 // Ver.: always - -// Command types for cluster: Appliance Control -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_SIGNAL_STATE_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_SIGNAL_STATE_NOTIFICATION_COMMAND_ID 0x01 // Ver.: always - -// Client to server -#define ZCL_EXECUTION_OF_A_COMMAND_COMMAND_ID 0x00 // Ver.: always -#define ZCL_SIGNAL_STATE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_WRITE_FUNCTIONS_COMMAND_ID 0x02 // Ver.: always -#define ZCL_OVERLOAD_PAUSE_RESUME_COMMAND_ID 0x03 // Ver.: always -#define ZCL_OVERLOAD_PAUSE_COMMAND_ID 0x04 // Ver.: always -#define ZCL_OVERLOAD_WARNING_COMMAND_ID 0x05 // Ver.: always - -// Command types for cluster: Poll Control -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_CHECK_IN_COMMAND_ID 0x00 // Ver.: always - -// Client to server -#define ZCL_CHECK_IN_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_FAST_POLL_STOP_COMMAND_ID 0x01 // Ver.: always -#define ZCL_SET_LONG_POLL_INTERVAL_COMMAND_ID 0x02 // Ver.: always -#define ZCL_SET_SHORT_POLL_INTERVAL_COMMAND_ID 0x03 // Ver.: always - -// Command types for cluster: Green Power -// Cluster specification level: gp-1.0a-09-5499-26 - -// Server to client -#define ZCL_GP_NOTIFICATION_RESPONSE_COMMAND_ID 0x00 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_PAIRING_COMMAND_ID 0x01 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_PROXY_COMMISSIONING_MODE_COMMAND_ID 0x02 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_RESPONSE_COMMAND_ID 0x06 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_TRANSLATION_TABLE_RESPONSE_COMMAND_ID 0x08 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SINK_TABLE_RESPONSE_COMMAND_ID 0x0A // Ver.: always -#define ZCL_GP_PROXY_TABLE_REQUEST_COMMAND_ID 0x0B // Ver.: always - -// Client to server -#define ZCL_GP_NOTIFICATION_COMMAND_ID 0x00 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_PAIRING_SEARCH_COMMAND_ID 0x01 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_TUNNELING_STOP_COMMAND_ID 0x03 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_COMMISSIONING_NOTIFICATION_COMMAND_ID 0x04 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SINK_COMMISSIONING_MODE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_GP_TRANSLATION_TABLE_UPDATE_COMMAND_ID 0x07 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_TRANSLATION_TABLE_REQUEST_COMMAND_ID 0x08 // Ver.: always -#define ZCL_GP_PAIRING_CONFIGURATION_COMMAND_ID 0x09 // Ver.: since gp-1.0-09-5499-24 -#define ZCL_GP_SINK_TABLE_REQUEST_COMMAND_ID 0x0A // Ver.: always -#define ZCL_GP_PROXY_TABLE_RESPONSE_COMMAND_ID 0x0B // Ver.: always - -// Command types for cluster: Door Lock -// Cluster specification level: zcl-6.0-15-02018-001 - -// Server to client -#define ZCL_LOCK_DOOR_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_UNLOCK_DOOR_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_TOGGLE_RESPONSE_COMMAND_ID 0x02 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_UNLOCK_WITH_TIMEOUT_RESPONSE_COMMAND_ID 0x03 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_LOG_RECORD_RESPONSE_COMMAND_ID 0x04 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_PIN_RESPONSE_COMMAND_ID 0x05 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_PIN_RESPONSE_COMMAND_ID 0x06 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_PIN_RESPONSE_COMMAND_ID 0x07 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_ALL_PINS_RESPONSE_COMMAND_ID 0x08 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_USER_STATUS_RESPONSE_COMMAND_ID 0x09 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_USER_STATUS_RESPONSE_COMMAND_ID 0x0A // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_WEEKDAY_SCHEDULE_RESPONSE_COMMAND_ID 0x0B // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_WEEKDAY_SCHEDULE_RESPONSE_COMMAND_ID 0x0C // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_WEEKDAY_SCHEDULE_RESPONSE_COMMAND_ID 0x0D // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_YEARDAY_SCHEDULE_RESPONSE_COMMAND_ID 0x0E // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_YEARDAY_SCHEDULE_RESPONSE_COMMAND_ID 0x0F // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_YEARDAY_SCHEDULE_RESPONSE_COMMAND_ID 0x10 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_HOLIDAY_SCHEDULE_RESPONSE_COMMAND_ID 0x11 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_HOLIDAY_SCHEDULE_RESPONSE_COMMAND_ID 0x12 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_HOLIDAY_SCHEDULE_RESPONSE_COMMAND_ID 0x13 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_USER_TYPE_RESPONSE_COMMAND_ID 0x14 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_USER_TYPE_RESPONSE_COMMAND_ID 0x15 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_RFID_RESPONSE_COMMAND_ID 0x16 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_RFID_RESPONSE_COMMAND_ID 0x17 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_RFID_RESPONSE_COMMAND_ID 0x18 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_ALL_RFIDS_RESPONSE_COMMAND_ID 0x19 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_OPERATION_EVENT_NOTIFICATION_COMMAND_ID 0x20 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_PROGRAMMING_EVENT_NOTIFICATION_COMMAND_ID 0x21 // Ver.: since ha-1.2-05-3520-29 - -// Client to server -#define ZCL_LOCK_DOOR_COMMAND_ID 0x00 // Ver.: always -#define ZCL_UNLOCK_DOOR_COMMAND_ID 0x01 // Ver.: always -#define ZCL_TOGGLE_COMMAND_ID 0x02 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_UNLOCK_WITH_TIMEOUT_COMMAND_ID 0x03 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_LOG_RECORD_COMMAND_ID 0x04 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_PIN_COMMAND_ID 0x05 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_PIN_COMMAND_ID 0x06 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_PIN_COMMAND_ID 0x07 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_ALL_PINS_COMMAND_ID 0x08 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_USER_STATUS_COMMAND_ID 0x09 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_USER_STATUS_COMMAND_ID 0x0A // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_WEEKDAY_SCHEDULE_COMMAND_ID 0x0B // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_WEEKDAY_SCHEDULE_COMMAND_ID 0x0C // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_WEEKDAY_SCHEDULE_COMMAND_ID 0x0D // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_YEARDAY_SCHEDULE_COMMAND_ID 0x0E // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_YEARDAY_SCHEDULE_COMMAND_ID 0x0F // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_YEARDAY_SCHEDULE_COMMAND_ID 0x10 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_HOLIDAY_SCHEDULE_COMMAND_ID 0x11 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_HOLIDAY_SCHEDULE_COMMAND_ID 0x12 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_HOLIDAY_SCHEDULE_COMMAND_ID 0x13 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_USER_TYPE_COMMAND_ID 0x14 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_USER_TYPE_COMMAND_ID 0x15 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_SET_RFID_COMMAND_ID 0x16 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_RFID_COMMAND_ID 0x17 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_RFID_COMMAND_ID 0x18 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_ALL_RFIDS_COMMAND_ID 0x19 // Ver.: since ha-1.2-05-3520-29 - -// Command types for cluster: Window Covering -// Cluster specification level: zcl-6.0-15-02018-001 - -// Client to server -#define ZCL_WINDOW_COVERING_UP_OPEN_COMMAND_ID 0x00 // Ver.: always -#define ZCL_WINDOW_COVERING_DOWN_CLOSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_WINDOW_COVERING_STOP_COMMAND_ID 0x02 // Ver.: always -#define ZCL_WINDOW_COVERING_GO_TO_LIFT_VALUE_COMMAND_ID 0x04 // Ver.: always -#define ZCL_WINDOW_COVERING_GO_TO_LIFT_PERCENTAGE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_WINDOW_COVERING_GO_TO_TILT_VALUE_COMMAND_ID 0x07 // Ver.: always -#define ZCL_WINDOW_COVERING_GO_TO_TILT_PERCENTAGE_COMMAND_ID 0x08 // Ver.: always - -// Command types for cluster: Barrier Control -// Cluster specification level: zcl-6.0-15-02018-001 - -// Client to server -#define ZCL_BARRIER_CONTROL_GO_TO_PERCENT_COMMAND_ID 0x00 // Ver.: always -#define ZCL_BARRIER_CONTROL_STOP_COMMAND_ID 0x01 // Ver.: always - -// Command types for cluster: Thermostat -// Cluster specification level: zcl-6.0-15-02018-001 - -// Server to client -#define ZCL_CURRENT_WEEKLY_SCHEDULE_COMMAND_ID 0x00 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_RELAY_STATUS_LOG_COMMAND_ID 0x01 // Ver.: since ha-1.2-05-3520-29 - -// Client to server -#define ZCL_SETPOINT_RAISE_LOWER_COMMAND_ID 0x00 // Ver.: always -#define ZCL_SET_WEEKLY_SCHEDULE_COMMAND_ID 0x01 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_WEEKLY_SCHEDULE_COMMAND_ID 0x02 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_CLEAR_WEEKLY_SCHEDULE_COMMAND_ID 0x03 // Ver.: since ha-1.2-05-3520-29 -#define ZCL_GET_RELAY_STATUS_LOG_COMMAND_ID 0x04 // Ver.: since ha-1.2-05-3520-29 - -// Command types for cluster: Color Control -// Cluster specification level: zcl6-errata-14-0129-15 - -// Client to server -#define ZCL_MOVE_TO_HUE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_MOVE_HUE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_STEP_HUE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_MOVE_TO_SATURATION_COMMAND_ID 0x03 // Ver.: always -#define ZCL_MOVE_SATURATION_COMMAND_ID 0x04 // Ver.: always -#define ZCL_STEP_SATURATION_COMMAND_ID 0x05 // Ver.: always -#define ZCL_MOVE_TO_HUE_AND_SATURATION_COMMAND_ID 0x06 // Ver.: always -#define ZCL_MOVE_TO_COLOR_COMMAND_ID 0x07 // Ver.: always -#define ZCL_MOVE_COLOR_COMMAND_ID 0x08 // Ver.: always -#define ZCL_STEP_COLOR_COMMAND_ID 0x09 // Ver.: always -#define ZCL_MOVE_TO_COLOR_TEMPERATURE_COMMAND_ID 0x0A // Ver.: always -#define ZCL_ENHANCED_MOVE_TO_HUE_COMMAND_ID 0x40 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_ENHANCED_MOVE_HUE_COMMAND_ID 0x41 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_ENHANCED_STEP_HUE_COMMAND_ID 0x42 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_ENHANCED_MOVE_TO_HUE_AND_SATURATION_COMMAND_ID 0x43 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_COLOR_LOOP_SET_COMMAND_ID 0x44 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_STOP_MOVE_STEP_COMMAND_ID 0x47 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_MOVE_COLOR_TEMPERATURE_COMMAND_ID 0x4B // Ver.: since zll-1.0-11-0037-10 -#define ZCL_STEP_COLOR_TEMPERATURE_COMMAND_ID 0x4C // Ver.: since zll-1.0-11-0037-10 - -// Command types for cluster: IAS Zone -// Cluster specification level: zcl-6.0-15-02018-001 - -// Server to client -#define ZCL_ZONE_STATUS_CHANGE_NOTIFICATION_COMMAND_ID 0x00 // Ver.: always -#define ZCL_ZONE_ENROLL_REQUEST_COMMAND_ID 0x01 // Ver.: always -#define ZCL_INITIATE_NORMAL_OPERATION_MODE_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_INITIATE_TEST_MODE_RESPONSE_COMMAND_ID 0x03 // Ver.: always - -// Client to server -#define ZCL_ZONE_ENROLL_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_INITIATE_NORMAL_OPERATION_MODE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_INITIATE_TEST_MODE_COMMAND_ID 0x02 // Ver.: always - -// Command types for cluster: IAS ACE -// Cluster specification level: zcl-6.0-15-02018-001 - -// Server to client -#define ZCL_ARM_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GET_ZONE_ID_MAP_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_GET_ZONE_INFORMATION_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_ZONE_STATUS_CHANGED_COMMAND_ID 0x03 // Ver.: always -#define ZCL_PANEL_STATUS_CHANGED_COMMAND_ID 0x04 // Ver.: always -#define ZCL_GET_PANEL_STATUS_RESPONSE_COMMAND_ID 0x05 // Ver.: since ha-1.2.1-05-3520-30 -#define ZCL_SET_BYPASSED_ZONE_LIST_COMMAND_ID 0x06 // Ver.: since ha-1.2.1-05-3520-30 -#define ZCL_BYPASS_RESPONSE_COMMAND_ID 0x07 // Ver.: since ha-1.2.1-05-3520-30 -#define ZCL_GET_ZONE_STATUS_RESPONSE_COMMAND_ID 0x08 // Ver.: since ha-1.2.1-05-3520-30 - -// Client to server -#define ZCL_ARM_COMMAND_ID 0x00 // Ver.: always -#define ZCL_BYPASS_COMMAND_ID 0x01 // Ver.: always -#define ZCL_EMERGENCY_COMMAND_ID 0x02 // Ver.: always -#define ZCL_FIRE_COMMAND_ID 0x03 // Ver.: always -#define ZCL_PANIC_COMMAND_ID 0x04 // Ver.: always -#define ZCL_GET_ZONE_ID_MAP_COMMAND_ID 0x05 // Ver.: always -#define ZCL_GET_ZONE_INFORMATION_COMMAND_ID 0x06 // Ver.: always -#define ZCL_GET_PANEL_STATUS_COMMAND_ID 0x07 // Ver.: since ha-1.2.1-05-3520-30 -#define ZCL_GET_BYPASSED_ZONE_LIST_COMMAND_ID 0x08 // Ver.: since ha-1.2.1-05-3520-30 -#define ZCL_GET_ZONE_STATUS_COMMAND_ID 0x09 // Ver.: since ha-1.2.1-05-3520-30 - -// Command types for cluster: IAS WD -// Cluster specification level: zcl-6.0-15-02018-001 - -// Client to server -#define ZCL_START_WARNING_COMMAND_ID 0x00 // Ver.: always -#define ZCL_SQUAWK_COMMAND_ID 0x01 // Ver.: always - -// Command types for cluster: Generic Tunnel -// Cluster specification level: cba-1.0-05-3516-12 - -// Server to client -#define ZCL_MATCH_PROTOCOL_ADDRESS_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_ADVERTISE_PROTOCOL_ADDRESS_COMMAND_ID 0x01 // Ver.: always - -// Client to server -#define ZCL_MATCH_PROTOCOL_ADDRESS_COMMAND_ID 0x00 // Ver.: always - -// Command types for cluster: BACnet Protocol Tunnel -// Cluster specification level: cba-1.0-05-3516-12 - -// Client to server -#define ZCL_TRANSFER_NPDU_COMMAND_ID 0x00 // Ver.: always - -// Command types for cluster: 11073 Protocol Tunnel -// Cluster specification level: hc-1.0-07-5360-15 - -// Client to server -#define ZCL_TRANSFER_A_P_D_U_COMMAND_ID 0x00 // Ver.: always -#define ZCL_CONNECT_REQUEST_COMMAND_ID 0x01 // Ver.: always -#define ZCL_DISCONNECT_REQUEST_COMMAND_ID 0x02 // Ver.: always -#define ZCL_CONNECT_STATUS_NOTIFICATION_COMMAND_ID 0x03 // Ver.: always - -// Command types for cluster: ISO 7816 Protocol Tunnel -// Cluster specification level: ta-1.0-07-5307-07 - -// Client to server -#define ZCL_INSERT_SMART_CARD_COMMAND_ID 0x01 // Ver.: always -#define ZCL_EXTRACT_SMART_CARD_COMMAND_ID 0x02 // Ver.: always - -// Either direction -#define ZCL_TRANSFER_APDU_COMMAND_ID 0x00 // Ver.: always - -// Command types for cluster: Price -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_PUBLISH_PRICE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_PUBLISH_BLOCK_PERIOD_COMMAND_ID 0x01 // Ver.: since se-1.1-07-5356-16 -#define ZCL_PUBLISH_CONVERSION_FACTOR_COMMAND_ID 0x02 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_PUBLISH_CALORIFIC_VALUE_COMMAND_ID 0x03 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_PUBLISH_TARIFF_INFORMATION_COMMAND_ID 0x04 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_PRICE_MATRIX_COMMAND_ID 0x05 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_BLOCK_THRESHOLDS_COMMAND_ID 0x06 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_C_O2_VALUE_COMMAND_ID 0x07 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_TIER_LABELS_COMMAND_ID 0x08 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_BILLING_PERIOD_COMMAND_ID 0x09 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_CONSOLIDATED_BILL_COMMAND_ID 0x0A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_CPP_EVENT_COMMAND_ID 0x0B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_CREDIT_PAYMENT_COMMAND_ID 0x0C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_CURRENCY_CONVERSION_COMMAND_ID 0x0D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CANCEL_TARIFF_COMMAND_ID 0x0E // Ver.: since se-1.2a-07-5356-19 - -// Client to server -#define ZCL_GET_CURRENT_PRICE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GET_SCHEDULED_PRICES_COMMAND_ID 0x01 // Ver.: always -#define ZCL_PRICE_ACKNOWLEDGEMENT_COMMAND_ID 0x02 // Ver.: since se-1.1-07-5356-16 -#define ZCL_GET_BLOCK_PERIODS_COMMAND_ID 0x03 // Ver.: since se-1.1-07-5356-16 -#define ZCL_GET_CONVERSION_FACTOR_COMMAND_ID 0x04 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_GET_CALORIFIC_VALUE_COMMAND_ID 0x05 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_GET_TARIFF_INFORMATION_COMMAND_ID 0x06 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_PRICE_MATRIX_COMMAND_ID 0x07 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_BLOCK_THRESHOLDS_COMMAND_ID 0x08 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_C_O2_VALUE_COMMAND_ID 0x09 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_TIER_LABELS_COMMAND_ID 0x0A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_BILLING_PERIOD_COMMAND_ID 0x0B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_CONSOLIDATED_BILL_COMMAND_ID 0x0C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CPP_EVENT_RESPONSE_COMMAND_ID 0x0D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_CREDIT_PAYMENT_COMMAND_ID 0x0E // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_CURRENCY_CONVERSION_COMMAND_COMMAND_ID 0x0F // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_TARIFF_CANCELLATION_COMMAND_ID 0x10 // Ver.: since se-1.2a-07-5356-19 - -// Command types for cluster: Demand Response and Load Control -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_LOAD_CONTROL_EVENT_COMMAND_ID 0x00 // Ver.: always -#define ZCL_CANCEL_LOAD_CONTROL_EVENT_COMMAND_ID 0x01 // Ver.: always -#define ZCL_CANCEL_ALL_LOAD_CONTROL_EVENTS_COMMAND_ID 0x02 // Ver.: always - -// Client to server -#define ZCL_REPORT_EVENT_STATUS_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GET_SCHEDULED_EVENTS_COMMAND_ID 0x01 // Ver.: always - -// Command types for cluster: Simple Metering -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_GET_PROFILE_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_REQUEST_MIRROR_COMMAND_ID 0x01 // Ver.: always -#define ZCL_REMOVE_MIRROR_COMMAND_ID 0x02 // Ver.: always -#define ZCL_REQUEST_FAST_POLL_MODE_RESPONSE_COMMAND_ID 0x03 // Ver.: since se-1.1-07-5356-16 -#define ZCL_SCHEDULE_SNAPSHOT_RESPONSE_COMMAND_ID 0x04 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TAKE_SNAPSHOT_RESPONSE_COMMAND_ID 0x05 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_SNAPSHOT_COMMAND_ID 0x06 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_SAMPLED_DATA_RESPONSE_COMMAND_ID 0x07 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CONFIGURE_MIRROR_COMMAND_ID 0x08 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CONFIGURE_NOTIFICATION_SCHEME_COMMAND_ID 0x09 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CONFIGURE_NOTIFICATION_FLAGS_COMMAND_ID 0x0A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_NOTIFIED_MESSAGE_COMMAND_ID 0x0B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SUPPLY_STATUS_RESPONSE_COMMAND_ID 0x0C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_START_SAMPLING_RESPONSE_COMMAND_ID 0x0D // Ver.: since se-1.2a-07-5356-19 - -// Client to server -#define ZCL_GET_PROFILE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_MIRROR_REMOVED_COMMAND_ID 0x02 // Ver.: always -#define ZCL_REQUEST_FAST_POLL_MODE_COMMAND_ID 0x03 // Ver.: since se-1.1-07-5356-16 -#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_ID 0x04 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_TAKE_SNAPSHOT_COMMAND_ID 0x05 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_SNAPSHOT_COMMAND_ID 0x06 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_START_SAMPLING_COMMAND_ID 0x07 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_SAMPLED_DATA_COMMAND_ID 0x08 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_ID 0x09 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_RESET_LOAD_LIMIT_COUNTER_COMMAND_ID 0x0A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CHANGE_SUPPLY_COMMAND_ID 0x0B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_LOCAL_CHANGE_SUPPLY_COMMAND_ID 0x0C // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SET_SUPPLY_STATUS_COMMAND_ID 0x0D // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SET_UNCONTROLLED_FLOW_THRESHOLD_COMMAND_ID 0x0E // Ver.: since se-1.2a-07-5356-19 - -// Command types for cluster: Messaging -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_DISPLAY_MESSAGE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_CANCEL_MESSAGE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_DISPLAY_PROTECTED_MESSAGE_COMMAND_ID 0x02 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CANCEL_ALL_MESSAGES_COMMAND_ID 0x03 // Ver.: since se-1.2a-07-5356-19 - -// Client to server -#define ZCL_GET_LAST_MESSAGE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_MESSAGE_CONFIRMATION_COMMAND_ID 0x01 // Ver.: always -#define ZCL_GET_MESSAGE_CANCELLATION_COMMAND_ID 0x02 // Ver.: since se-1.2a-07-5356-19 - -// Command types for cluster: Tunneling -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_REQUEST_TUNNEL_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_TRANSFER_DATA_SERVER_TO_CLIENT_COMMAND_ID 0x01 // Ver.: always -#define ZCL_TRANSFER_DATA_ERROR_SERVER_TO_CLIENT_COMMAND_ID 0x02 // Ver.: always -#define ZCL_ACK_TRANSFER_DATA_SERVER_TO_CLIENT_COMMAND_ID 0x03 // Ver.: always -#define ZCL_READY_DATA_SERVER_TO_CLIENT_COMMAND_ID 0x04 // Ver.: always -#define ZCL_SUPPORTED_TUNNEL_PROTOCOLS_RESPONSE_COMMAND_ID 0x05 // Ver.: since se-1.1a-07-5356-17 -#define ZCL_TUNNEL_CLOSURE_NOTIFICATION_COMMAND_ID 0x06 // Ver.: since se-1.1a-07-5356-17 - -// Client to server -#define ZCL_REQUEST_TUNNEL_COMMAND_ID 0x00 // Ver.: always -#define ZCL_CLOSE_TUNNEL_COMMAND_ID 0x01 // Ver.: always -#define ZCL_TRANSFER_DATA_CLIENT_TO_SERVER_COMMAND_ID 0x02 // Ver.: always -#define ZCL_TRANSFER_DATA_ERROR_CLIENT_TO_SERVER_COMMAND_ID 0x03 // Ver.: always -#define ZCL_ACK_TRANSFER_DATA_CLIENT_TO_SERVER_COMMAND_ID 0x04 // Ver.: always -#define ZCL_READY_DATA_CLIENT_TO_SERVER_COMMAND_ID 0x05 // Ver.: always -#define ZCL_GET_SUPPORTED_TUNNEL_PROTOCOLS_COMMAND_ID 0x06 // Ver.: since se-1.1a-07-5356-17 - -// Command types for cluster: Prepayment -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_PUBLISH_PREPAY_SNAPSHOT_COMMAND_ID 0x01 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CHANGE_PAYMENT_MODE_RESPONSE_COMMAND_ID 0x02 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CONSUMER_TOP_UP_RESPONSE_COMMAND_ID 0x03 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_TOP_UP_LOG_COMMAND_ID 0x05 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_PUBLISH_DEBT_LOG_COMMAND_ID 0x06 // Ver.: since se-1.2a-07-5356-19 - -// Client to server -#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_COMMAND_ID 0x00 // Ver.: always -#define ZCL_CHANGE_DEBT_COMMAND_ID 0x02 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_EMERGENCY_CREDIT_SETUP_COMMAND_ID 0x03 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CONSUMER_TOP_UP_COMMAND_ID 0x04 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CREDIT_ADJUSTMENT_COMMAND_ID 0x05 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_CHANGE_PAYMENT_MODE_COMMAND_ID 0x06 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_PREPAY_SNAPSHOT_COMMAND_ID 0x07 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_TOP_UP_LOG_COMMAND_ID 0x08 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_COMMAND_ID 0x09 // Ver.: since se-1.2a-07-5356-19 -#define ZCL_GET_DEBT_REPAYMENT_LOG_COMMAND_ID 0x0A // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_COMMAND_ID 0x0B // Ver.: since se-1.2a-07-5356-19 -#define ZCL_SET_OVERALL_DEBT_CAP_COMMAND_ID 0x0C // Ver.: since se-1.2a-07-5356-19 - -// Command types for cluster: Energy Management -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_REPORT_EVENT_STATUS_COMMAND_ID 0x00 // Ver.: always - -// Client to server -#define ZCL_MANAGE_EVENT_COMMAND_ID 0x00 // Ver.: always - -// Command types for cluster: Calendar -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_PUBLISH_CALENDAR_COMMAND_ID 0x00 // Ver.: always -#define ZCL_PUBLISH_DAY_PROFILE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_PUBLISH_WEEK_PROFILE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_PUBLISH_SEASONS_COMMAND_ID 0x03 // Ver.: always -#define ZCL_PUBLISH_SPECIAL_DAYS_COMMAND_ID 0x04 // Ver.: always -#define ZCL_CANCEL_CALENDAR_COMMAND_ID 0x05 // Ver.: always - -// Client to server -#define ZCL_GET_CALENDAR_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GET_DAY_PROFILES_COMMAND_ID 0x01 // Ver.: always -#define ZCL_GET_WEEK_PROFILES_COMMAND_ID 0x02 // Ver.: always -#define ZCL_GET_SEASONS_COMMAND_ID 0x03 // Ver.: always -#define ZCL_GET_SPECIAL_DAYS_COMMAND_ID 0x04 // Ver.: always -#define ZCL_GET_CALENDAR_CANCELLATION_COMMAND_ID 0x05 // Ver.: always - -// Command types for cluster: Device Management -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_PUBLISH_CHANGE_OF_TENANCY_COMMAND_ID 0x00 // Ver.: always -#define ZCL_PUBLISH_CHANGE_OF_SUPPLIER_COMMAND_ID 0x01 // Ver.: always -#define ZCL_REQUEST_NEW_PASSWORD_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_UPDATE_SITE_ID_COMMAND_ID 0x03 // Ver.: always -#define ZCL_SET_EVENT_CONFIGURATION_COMMAND_ID 0x04 // Ver.: always -#define ZCL_GET_EVENT_CONFIGURATION_COMMAND_ID 0x05 // Ver.: always -#define ZCL_UPDATE_C_I_N_COMMAND_ID 0x06 // Ver.: always - -// Client to server -#define ZCL_GET_CHANGE_OF_TENANCY_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GET_CHANGE_OF_SUPPLIER_COMMAND_ID 0x01 // Ver.: always -#define ZCL_REQUEST_NEW_PASSWORD_COMMAND_ID 0x02 // Ver.: always -#define ZCL_GET_SITE_ID_COMMAND_ID 0x03 // Ver.: always -#define ZCL_REPORT_EVENT_CONFIGURATION_COMMAND_ID 0x04 // Ver.: always -#define ZCL_GET_C_I_N_COMMAND_ID 0x05 // Ver.: always - -// Command types for cluster: Events -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_PUBLISH_EVENT_COMMAND_ID 0x00 // Ver.: always -#define ZCL_PUBLISH_EVENT_LOG_COMMAND_ID 0x01 // Ver.: always -#define ZCL_CLEAR_EVENT_LOG_RESPONSE_COMMAND_ID 0x02 // Ver.: always - -// Client to server -#define ZCL_GET_EVENT_LOG_COMMAND_ID 0x00 // Ver.: always -#define ZCL_CLEAR_EVENT_LOG_REQUEST_COMMAND_ID 0x01 // Ver.: always - -// Command types for cluster: MDU Pairing -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_PAIRING_RESPONSE_COMMAND_ID 0x00 // Ver.: always - -// Client to server -#define ZCL_PAIRING_REQUEST_COMMAND_ID 0x00 // Ver.: always - -// Command types for cluster: Sub-GHz -// Cluster specification level: se-1.2b-15-0131-02 - -// Server to client -#define ZCL_SUSPEND_ZCL_MESSAGES_COMMAND_ID 0x00 // Ver.: always - -// Client to server -#define ZCL_GET_SUSPEND_ZCL_MESSAGES_STATUS_COMMAND_ID 0x00 // Ver.: always - -// Command types for cluster: Key Establishment -// Cluster specification level: zcl-7.0-07-5123-07 - -// Server to client -#define ZCL_INITIATE_KEY_ESTABLISHMENT_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_EPHEMERAL_DATA_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_CONFIRM_KEY_DATA_RESPONSE_COMMAND_ID 0x02 // Ver.: always - -// Client to server -#define ZCL_INITIATE_KEY_ESTABLISHMENT_REQUEST_COMMAND_ID 0x00 // Ver.: always -#define ZCL_EPHEMERAL_DATA_REQUEST_COMMAND_ID 0x01 // Ver.: always -#define ZCL_CONFIRM_KEY_DATA_REQUEST_COMMAND_ID 0x02 // Ver.: always - -// Either direction -#define ZCL_TERMINATE_KEY_ESTABLISHMENT_COMMAND_ID 0x03 // Ver.: always - -// Command types for cluster: Information -// Cluster specification level: ta-1.0-07-5307-07 - -// Server to client -#define ZCL_REQUEST_INFORMATION_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_PUSH_INFORMATION_COMMAND_ID 0x01 // Ver.: always -#define ZCL_SEND_PREFERENCE_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_SERVER_REQUEST_PREFERENCE_COMMAND_ID 0x03 // Ver.: always -#define ZCL_REQUEST_PREFERENCE_CONFIRMATION_COMMAND_ID 0x04 // Ver.: always -#define ZCL_UPDATE_RESPONSE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_DELETE_RESPONSE_COMMAND_ID 0x06 // Ver.: always - -// Client to server -#define ZCL_REQUEST_INFORMATION_COMMAND_ID 0x00 // Ver.: always -#define ZCL_PUSH_INFORMATION_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_SEND_PREFERENCE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_REQUEST_PREFERENCE_RESPONSE_COMMAND_ID 0x03 // Ver.: always -#define ZCL_UPDATE_COMMAND_ID 0x04 // Ver.: always -#define ZCL_DELETE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_CONFIGURE_NODE_DESCRIPTION_COMMAND_ID 0x06 // Ver.: always -#define ZCL_CONFIGURE_DELIVERY_ENABLE_COMMAND_ID 0x07 // Ver.: always -#define ZCL_CONFIGURE_PUSH_INFORMATION_TIMER_COMMAND_ID 0x08 // Ver.: always -#define ZCL_CONFIGURE_SET_ROOT_ID_COMMAND_ID 0x09 // Ver.: always - -// Command types for cluster: Data Sharing -// Cluster specification level: ta-1.0-07-5307-07 - -// Server to client -#define ZCL_WRITE_FILE_REQUEST_COMMAND_ID 0x00 // Ver.: always -#define ZCL_MODIFY_FILE_REQUEST_COMMAND_ID 0x01 // Ver.: always -#define ZCL_MODIFY_RECORD_REQUEST_COMMAND_ID 0x02 // Ver.: always -#define ZCL_FILE_TRANSMISSION_COMMAND_ID 0x03 // Ver.: always -#define ZCL_RECORD_TRANSMISSION_COMMAND_ID 0x04 // Ver.: always - -// Client to server -#define ZCL_READ_FILE_REQUEST_COMMAND_ID 0x00 // Ver.: always -#define ZCL_READ_RECORD_REQUEST_COMMAND_ID 0x01 // Ver.: always -#define ZCL_WRITE_FILE_RESPONSE_COMMAND_ID 0x02 // Ver.: always - -// Command types for cluster: Gaming -// Cluster specification level: ta-1.0-07-5307-07 - -// Server to client -#define ZCL_GAME_ANNOUNCEMENT_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GENERAL_RESPONSE_COMMAND_ID 0x01 // Ver.: always - -// Client to server -#define ZCL_SEARCH_GAME_COMMAND_ID 0x00 // Ver.: always -#define ZCL_JOIN_GAME_COMMAND_ID 0x01 // Ver.: always -#define ZCL_START_GAME_COMMAND_ID 0x02 // Ver.: always -#define ZCL_PAUSE_GAME_COMMAND_ID 0x03 // Ver.: always -#define ZCL_RESUME_GAME_COMMAND_ID 0x04 // Ver.: always -#define ZCL_QUIT_GAME_COMMAND_ID 0x05 // Ver.: always -#define ZCL_END_GAME_COMMAND_ID 0x06 // Ver.: always -#define ZCL_START_OVER_COMMAND_ID 0x07 // Ver.: always -#define ZCL_ACTION_CONTROL_COMMAND_ID 0x08 // Ver.: always -#define ZCL_DOWNLOAD_GAME_COMMAND_ID 0x09 // Ver.: always - -// Command types for cluster: Data Rate Control -// Cluster specification level: ta-1.0-07-5307-07 - -// Server to client -#define ZCL_DATA_RATE_CONTROL_COMMAND_ID 0x00 // Ver.: always - -// Client to server -#define ZCL_PATH_CREATION_COMMAND_ID 0x00 // Ver.: always -#define ZCL_DATA_RATE_NOTIFICATION_COMMAND_ID 0x01 // Ver.: always -#define ZCL_PATH_DELETION_COMMAND_ID 0x02 // Ver.: always - -// Command types for cluster: Voice over ZigBee -// Cluster specification level: ta-1.0-07-5307-07 - -// Server to client -#define ZCL_ESTABLISHMENT_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_VOICE_TRANSMISSION_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_CONTROL_COMMAND_ID 0x02 // Ver.: always - -// Client to server -#define ZCL_ESTABLISHMENT_REQUEST_COMMAND_ID 0x00 // Ver.: always -#define ZCL_VOICE_TRANSMISSION_COMMAND_ID 0x01 // Ver.: always -#define ZCL_VOICE_TRANSMISSION_COMPLETION_COMMAND_ID 0x02 // Ver.: always -#define ZCL_CONTROL_RESPONSE_COMMAND_ID 0x03 // Ver.: always - -// Command types for cluster: Chatting -// Cluster specification level: ta-1.0-07-5307-07 - -// Server to client -#define ZCL_START_CHAT_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_JOIN_CHAT_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_USER_LEFT_COMMAND_ID 0x02 // Ver.: always -#define ZCL_USER_JOINED_COMMAND_ID 0x03 // Ver.: always -#define ZCL_SEARCH_CHAT_RESPONSE_COMMAND_ID 0x04 // Ver.: always -#define ZCL_SWITCH_CHAIRMAN_REQUEST_COMMAND_ID 0x05 // Ver.: always -#define ZCL_SWITCH_CHAIRMAN_CONFIRM_COMMAND_ID 0x06 // Ver.: always -#define ZCL_SWITCH_CHAIRMAN_NOTIFICATION_COMMAND_ID 0x07 // Ver.: always -#define ZCL_GET_NODE_INFORMATION_RESPONSE_COMMAND_ID 0x08 // Ver.: always - -// Client to server -#define ZCL_JOIN_CHAT_REQUEST_COMMAND_ID 0x00 // Ver.: always -#define ZCL_LEAVE_CHAT_REQUEST_COMMAND_ID 0x01 // Ver.: always -#define ZCL_SEARCH_CHAT_REQUEST_COMMAND_ID 0x02 // Ver.: always -#define ZCL_SWITCH_CHAIRMAN_RESPONSE_COMMAND_ID 0x03 // Ver.: always -#define ZCL_START_CHAT_REQUEST_COMMAND_ID 0x04 // Ver.: always -#define ZCL_CHAT_MESSAGE_COMMAND_ID 0x05 // Ver.: always -#define ZCL_GET_NODE_INFORMATION_REQUEST_COMMAND_ID 0x06 // Ver.: always - -// Command types for cluster: Payment -// Cluster specification level: ta-1.0-07-5307-07 - -// Server to client -#define ZCL_BUY_CONFIRM_COMMAND_ID 0x00 // Ver.: always -#define ZCL_RECEIPT_DELIVERY_COMMAND_ID 0x01 // Ver.: always -#define ZCL_TRANSACTION_END_COMMAND_ID 0x02 // Ver.: always - -// Client to server -#define ZCL_BUY_REQUEST_COMMAND_ID 0x00 // Ver.: always -#define ZCL_ACCEPT_PAYMENT_COMMAND_ID 0x01 // Ver.: always -#define ZCL_PAYMENT_CONFIRM_COMMAND_ID 0x02 // Ver.: always - -// Command types for cluster: Billing -// Cluster specification level: ta-1.0-07-5307-07 - -// Server to client -#define ZCL_CHECK_BILL_STATUS_COMMAND_ID 0x00 // Ver.: always -#define ZCL_SEND_BILL_RECORD_COMMAND_ID 0x01 // Ver.: always - -// Client to server -#define ZCL_SUBSCRIBE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_UNSUBSCRIBE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_START_BILLING_SESSION_COMMAND_ID 0x02 // Ver.: always -#define ZCL_STOP_BILLING_SESSION_COMMAND_ID 0x03 // Ver.: always -#define ZCL_BILL_STATUS_NOTIFICATION_COMMAND_ID 0x04 // Ver.: always -#define ZCL_SESSION_KEEP_ALIVE_COMMAND_ID 0x05 // Ver.: always - -// Command types for cluster: Appliance Events and Alert -// Cluster specification level: UNKNOWN - -// Server to client -#define ZCL_GET_ALERTS_RESPONSE_COMMAND_ID 0x00 // Ver.: always -#define ZCL_ALERTS_NOTIFICATION_COMMAND_ID 0x01 // Ver.: always -#define ZCL_EVENTS_NOTIFICATION_COMMAND_ID 0x02 // Ver.: always - -// Client to server -#define ZCL_GET_ALERTS_COMMAND_ID 0x00 // Ver.: always - -// Command types for cluster: Appliance Statistics -// Cluster specification level: UNKNOWN - -// Server to client -#define ZCL_LOG_NOTIFICATION_COMMAND_ID 0x00 // Ver.: always -#define ZCL_LOG_RESPONSE_COMMAND_ID 0x01 // Ver.: always -#define ZCL_LOG_QUEUE_RESPONSE_COMMAND_ID 0x02 // Ver.: always -#define ZCL_STATISTICS_AVAILABLE_COMMAND_ID 0x03 // Ver.: always - -// Client to server -#define ZCL_LOG_REQUEST_COMMAND_ID 0x00 // Ver.: always -#define ZCL_LOG_QUEUE_REQUEST_COMMAND_ID 0x01 // Ver.: always - -// Command types for cluster: Electrical Measurement -// Cluster specification level: UNKNOWN - -// Server to client -#define ZCL_GET_PROFILE_INFO_RESPONSE_COMMAND_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GET_MEASUREMENT_PROFILE_RESPONSE_COMMAND_COMMAND_ID 0x01 // Ver.: always - -// Client to server -#define ZCL_GET_PROFILE_INFO_COMMAND_COMMAND_ID 0x00 // Ver.: always -#define ZCL_GET_MEASUREMENT_PROFILE_COMMAND_COMMAND_ID 0x01 // Ver.: always - -// Command types for cluster: ZLL Commissioning -// Cluster specification level: zll-1.0-11-0037-10 - -// Server to client -#define ZCL_SCAN_RESPONSE_COMMAND_ID 0x01 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_DEVICE_INFORMATION_RESPONSE_COMMAND_ID 0x03 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_NETWORK_START_RESPONSE_COMMAND_ID 0x11 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_NETWORK_JOIN_ROUTER_RESPONSE_COMMAND_ID 0x13 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_NETWORK_JOIN_END_DEVICE_RESPONSE_COMMAND_ID 0x15 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_ENDPOINT_INFORMATION_COMMAND_ID 0x40 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_GET_GROUP_IDENTIFIERS_RESPONSE_COMMAND_ID 0x41 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_GET_ENDPOINT_LIST_RESPONSE_COMMAND_ID 0x42 // Ver.: since zll-1.0-11-0037-10 - -// Client to server -#define ZCL_SCAN_REQUEST_COMMAND_ID 0x00 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_DEVICE_INFORMATION_REQUEST_COMMAND_ID 0x02 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_IDENTIFY_REQUEST_COMMAND_ID 0x06 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_RESET_TO_FACTORY_NEW_REQUEST_COMMAND_ID 0x07 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_NETWORK_START_REQUEST_COMMAND_ID 0x10 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_NETWORK_JOIN_ROUTER_REQUEST_COMMAND_ID 0x12 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_NETWORK_JOIN_END_DEVICE_REQUEST_COMMAND_ID 0x14 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_NETWORK_UPDATE_REQUEST_COMMAND_ID 0x16 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_GET_GROUP_IDENTIFIERS_REQUEST_COMMAND_ID 0x41 // Ver.: since zll-1.0-11-0037-10 -#define ZCL_GET_ENDPOINT_LIST_REQUEST_COMMAND_ID 0x42 // Ver.: since zll-1.0-11-0037-10 - -// Command types for cluster: Sample Mfg Specific Cluster -// Cluster specification level: UNKNOWN - -// Client to server -#define ZCL_COMMAND_ONE_COMMAND_ID 0x00 // Ver.: always mfgCode: 0x1002 - -// Command types for cluster: Sample Mfg Specific Cluster 2 -// Cluster specification level: UNKNOWN - -// Client to server -#define ZCL_COMMAND_TWO_COMMAND_ID 0x00 // Ver.: always mfgCode: 0x1049 - -// Command types for cluster: Configuration Cluster -// Cluster specification level: UNKNOWN - -// Server to client -#define ZCL_RETURN_TOKEN_COMMAND_ID 0x00 // Ver.: always mfgCode: 0x1002 - -// Client to server -#define ZCL_SET_TOKEN_COMMAND_ID 0x00 // Ver.: always mfgCode: 0x1002 -#define ZCL_LOCK_TOKENS_COMMAND_ID 0x01 // Ver.: always mfgCode: 0x1002 -#define ZCL_READ_TOKENS_COMMAND_ID 0x02 // Ver.: always mfgCode: 0x1002 -#define ZCL_UNLOCK_TOKENS_COMMAND_ID 0x03 // Ver.: always mfgCode: 0x1002 - -// Command types for cluster: MFGLIB Cluster -// Cluster specification level: UNKNOWN - -// Client to server -#define ZCL_STREAM_COMMAND_ID 0x00 // Ver.: always mfgCode: 0x1002 -#define ZCL_TONE_COMMAND_ID 0x01 // Ver.: always mfgCode: 0x1002 -#define ZCL_RX_MODE_COMMAND_ID 0x02 // Ver.: always mfgCode: 0x1002 - -// Command types for cluster: SL Works With All Hubs -// Cluster specification level: UNKNOWN - -// Server to client -#define ZCL_APS_LINK_KEY_AUTHORIZATION_QUERY_RESPONSE_COMMAND_ID 0x00 // Ver.: always mfgCode: 0x1217 -#define ZCL_POWERING_OFF_NOTIFICATION_COMMAND_ID 0x01 // Ver.: always mfgCode: 0x1217 -#define ZCL_POWERING_ON_NOTIFICATION_COMMAND_ID 0x02 // Ver.: always mfgCode: 0x1217 -#define ZCL_SHORT_ADDRESS_CHANGE_COMMAND_ID 0x03 // Ver.: always mfgCode: 0x1217 -#define ZCL_APS_ACK_ENABLEMENT_QUERY_RESPONSE_COMMAND_ID 0x04 // Ver.: always mfgCode: 0x1217 -#define ZCL_POWER_DESCRIPTOR_CHANGE_COMMAND_ID 0x05 // Ver.: always mfgCode: 0x1217 -#define ZCL_NEW_DEBUG_REPORT_NOTIFICATION_COMMAND_ID 0x06 // Ver.: always mfgCode: 0x1217 -#define ZCL_DEBUG_REPORT_QUERY_RESPONSE_COMMAND_ID 0x07 // Ver.: always mfgCode: 0x1217 -#define ZCL_TRUST_CENTER_FOR_CLUSTER_SERVER_QUERY_RESPONSE_COMMAND_ID 0x08 // Ver.: always mfgCode: 0x1217 -#define ZCL_SURVEY_BEACONS_RESPONSE_COMMAND_ID 0x09 // Ver.: always mfgCode: 0x1217 -#define ZCL_USE_TRUST_CENTER_FOR_CLUSTER_SERVER_RESPONSE_COMMAND_ID 0x9E // Ver.: always mfgCode: 0x1217 - -// Client to server -#define ZCL_ENABLE_APS_LINK_KEY_AUTHORIZATION_COMMAND_ID 0x00 // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_APS_LINK_KEY_AUTHORIZATION_COMMAND_ID 0x01 // Ver.: always mfgCode: 0x1217 -#define ZCL_APS_LINK_KEY_AUTHORIZATION_QUERY_COMMAND_ID 0x02 // Ver.: always mfgCode: 0x1217 -#define ZCL_REQUEST_NEW_APS_LINK_KEY_COMMAND_ID 0x03 // Ver.: always mfgCode: 0x1217 -#define ZCL_ENABLE_WWAH_APP_EVENT_RETRY_ALGORITHM_COMMAND_ID 0x04 // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_WWAH_APP_EVENT_RETRY_ALGORITHM_COMMAND_ID 0x05 // Ver.: always mfgCode: 0x1217 -#define ZCL_REQUEST_TIME_COMMAND_ID 0x06 // Ver.: always mfgCode: 0x1217 -#define ZCL_ENABLE_WWAH_REJOIN_ALGORITHM_COMMAND_ID 0x07 // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_WWAH_REJOIN_ALGORITHM_COMMAND_ID 0x08 // Ver.: always mfgCode: 0x1217 -#define ZCL_SET_IAS_ZONE_ENROLLMENT_METHOD_COMMAND_ID 0x09 // Ver.: always mfgCode: 0x1217 -#define ZCL_CLEAR_BINDING_TABLE_COMMAND_ID 0x0A // Ver.: always mfgCode: 0x1217 -#define ZCL_ENABLE_PERIODIC_ROUTER_CHECK_INS_COMMAND_ID 0x0B // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_PERIODIC_ROUTER_CHECK_INS_COMMAND_ID 0x0C // Ver.: always mfgCode: 0x1217 -#define ZCL_SET_MAC_POLL_FAILURE_WAIT_TIME_COMMAND_ID 0x0D // Ver.: always mfgCode: 0x1217 -#define ZCL_SET_PENDING_NETWORK_UPDATE_COMMAND_ID 0x0E // Ver.: always mfgCode: 0x1217 -#define ZCL_REQUIRE_APS_ACKS_ON_UNICASTS_COMMAND_ID 0x0F // Ver.: always mfgCode: 0x1217 -#define ZCL_REMOVE_APS_ACKS_ON_UNICASTS_REQUIREMENT_COMMAND_ID 0x10 // Ver.: always mfgCode: 0x1217 -#define ZCL_APS_ACK_REQUIREMENT_QUERY_COMMAND_ID 0x11 // Ver.: always mfgCode: 0x1217 -#define ZCL_DEBUG_REPORT_QUERY_COMMAND_ID 0x12 // Ver.: always mfgCode: 0x1217 -#define ZCL_SURVEY_BEACONS_COMMAND_ID 0x13 // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_OTA_DOWNGRADES_COMMAND_ID 0x14 // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_MGMT_LEAVE_WITHOUT_REJOIN_COMMAND_ID 0x15 // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_TOUCHLINK_INTERPAN_MESSAGE_SUPPORT_COMMAND_ID 0x16 // Ver.: always mfgCode: 0x1217 -#define ZCL_ENABLE_WWAH_PARENT_CLASSIFICATION_COMMAND_ID 0x17 // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_WWAH_PARENT_CLASSIFICATION_COMMAND_ID 0x18 // Ver.: always mfgCode: 0x1217 -#define ZCL_ENABLE_TC_SECURITY_ON_NTWK_KEY_ROTATION_COMMAND_ID 0x19 // Ver.: always mfgCode: 0x1217 -#define ZCL_ENABLE_WWAH_BAD_PARENT_RECOVERY_COMMAND_ID 0x1A // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_WWAH_BAD_PARENT_RECOVERY_COMMAND_ID 0x1B // Ver.: always mfgCode: 0x1217 -#define ZCL_ENABLE_CONFIGURATION_MODE_COMMAND_ID 0x1C // Ver.: always mfgCode: 0x1217 -#define ZCL_DISABLE_CONFIGURATION_MODE_COMMAND_ID 0x1D // Ver.: always mfgCode: 0x1217 -#define ZCL_USE_TRUST_CENTER_FOR_CLUSTER_SERVER_COMMAND_ID 0x1E // Ver.: always mfgCode: 0x1217 -#define ZCL_TRUST_CENTER_FOR_CLUSTER_SERVER_QUERY_COMMAND_ID 0x1F // Ver.: always mfgCode: 0x1217 -#endif // SILABS_EMBER_AF_COMMAND_ID +// Prevent multiple inclusion +#pragma once + +// Global, non-cluster-specific commands +#define ZCL_READ_ATTRIBUTES_COMMAND_ID (0x00) +#define ZCL_READ_ATTRIBUTES_RESPONSE_COMMAND_ID (0x01) +#define ZCL_WRITE_ATTRIBUTES_COMMAND_ID (0x02) +#define ZCL_WRITE_ATTRIBUTES_UNDIVIDED_COMMAND_ID (0x03) +#define ZCL_WRITE_ATTRIBUTES_RESPONSE_COMMAND_ID (0x04) +#define ZCL_WRITE_ATTRIBUTES_NO_RESPONSE_COMMAND_ID (0x05) +#define ZCL_CONFIGURE_REPORTING_COMMAND_ID (0x06) +#define ZCL_CONFIGURE_REPORTING_RESPONSE_COMMAND_ID (0x07) +#define ZCL_READ_REPORTING_CONFIGURATION_COMMAND_ID (0x08) +#define ZCL_READ_REPORTING_CONFIGURATION_RESPONSE_COMMAND_ID (0x09) +#define ZCL_REPORT_ATTRIBUTES_COMMAND_ID (0x0A) +#define ZCL_DEFAULT_RESPONSE_COMMAND_ID (0x0B) +#define ZCL_DISCOVER_ATTRIBUTES_COMMAND_ID (0x0C) +#define ZCL_DISCOVER_ATTRIBUTES_RESPONSE_COMMAND_ID (0x0D) +#define ZCL_READ_ATTRIBUTES_STRUCTURED_COMMAND_ID (0x0E) +#define ZCL_WRITE_ATTRIBUTES_STRUCTURED_COMMAND_ID (0x0F) +#define ZCL_WRITE_ATTRIBUTES_STRUCTURED_RESPONSE_COMMAND_ID (0x10) +#define ZCL_DISCOVER_COMMANDS_RECEIVED_COMMAND_ID (0x11) +#define ZCL_DISCOVER_COMMANDS_RECEIVED_RESPONSE_COMMAND_ID (0x12) +#define ZCL_DISCOVER_COMMANDS_GENERATED_COMMAND_ID (0x13) +#define ZCL_DISCOVER_COMMANDS_GENERATED_RESPONSE_COMMAND_ID (0x14) +#define ZCL_DISCOVER_ATTRIBUTES_EXTENDED_COMMAND_ID (0x15) +#define ZCL_DISCOVER_ATTRIBUTES_EXTENDED_RESPONSE_COMMAND_ID (0x16) + +// Commands for cluster: Basic +#define ZCL_RESET_TO_FACTORY_DEFAULTS_COMMAND_ID (0x00) + +// Commands for cluster: Identify +#define ZCL_IDENTIFY_COMMAND_ID (0x00) +#define ZCL_IDENTIFY_QUERY_RESPONSE_COMMAND_ID (0x00) +#define ZCL_IDENTIFY_QUERY_COMMAND_ID (0x01) +#define ZCL_EZ_MODE_INVOKE_COMMAND_ID (0x02) +#define ZCL_UPDATE_COMMISSION_STATE_COMMAND_ID (0x03) +#define ZCL_TRIGGER_EFFECT_COMMAND_ID (0x40) + +// Commands for cluster: Groups +#define ZCL_ADD_GROUP_COMMAND_ID (0x00) +#define ZCL_ADD_GROUP_RESPONSE_COMMAND_ID (0x00) +#define ZCL_VIEW_GROUP_COMMAND_ID (0x01) +#define ZCL_VIEW_GROUP_RESPONSE_COMMAND_ID (0x01) +#define ZCL_GET_GROUP_MEMBERSHIP_COMMAND_ID (0x02) +#define ZCL_GET_GROUP_MEMBERSHIP_RESPONSE_COMMAND_ID (0x02) +#define ZCL_REMOVE_GROUP_COMMAND_ID (0x03) +#define ZCL_REMOVE_GROUP_RESPONSE_COMMAND_ID (0x03) +#define ZCL_REMOVE_ALL_GROUPS_COMMAND_ID (0x04) +#define ZCL_ADD_GROUP_IF_IDENTIFYING_COMMAND_ID (0x05) + +// Commands for cluster: Scenes +#define ZCL_ADD_SCENE_COMMAND_ID (0x00) +#define ZCL_ADD_SCENE_RESPONSE_COMMAND_ID (0x00) +#define ZCL_VIEW_SCENE_COMMAND_ID (0x01) +#define ZCL_VIEW_SCENE_RESPONSE_COMMAND_ID (0x01) +#define ZCL_REMOVE_SCENE_COMMAND_ID (0x02) +#define ZCL_REMOVE_SCENE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_REMOVE_ALL_SCENES_COMMAND_ID (0x03) +#define ZCL_REMOVE_ALL_SCENES_RESPONSE_COMMAND_ID (0x03) +#define ZCL_STORE_SCENE_COMMAND_ID (0x04) +#define ZCL_STORE_SCENE_RESPONSE_COMMAND_ID (0x04) +#define ZCL_RECALL_SCENE_COMMAND_ID (0x05) +#define ZCL_GET_SCENE_MEMBERSHIP_COMMAND_ID (0x06) +#define ZCL_GET_SCENE_MEMBERSHIP_RESPONSE_COMMAND_ID (0x06) +#define ZCL_ENHANCED_ADD_SCENE_COMMAND_ID (0x40) +#define ZCL_ENHANCED_ADD_SCENE_RESPONSE_COMMAND_ID (0x40) +#define ZCL_ENHANCED_VIEW_SCENE_COMMAND_ID (0x41) +#define ZCL_ENHANCED_VIEW_SCENE_RESPONSE_COMMAND_ID (0x41) +#define ZCL_COPY_SCENE_COMMAND_ID (0x42) +#define ZCL_COPY_SCENE_RESPONSE_COMMAND_ID (0x42) + +// Commands for cluster: On/off +#define ZCL_OFF_COMMAND_ID (0x00) +#define ZCL_SAMPLE_MFG_SPECIFIC_OFF_WITH_TRANSITION_COMMAND_ID (0x00) +#define ZCL_ON_COMMAND_ID (0x01) +#define ZCL_SAMPLE_MFG_SPECIFIC_ON_WITH_TRANSITION_COMMAND_ID (0x01) +#define ZCL_SAMPLE_MFG_SPECIFIC_ON_WITH_TRANSITION2_COMMAND_ID (0x01) +#define ZCL_TOGGLE_COMMAND_ID (0x02) +#define ZCL_SAMPLE_MFG_SPECIFIC_TOGGLE_WITH_TRANSITION_COMMAND_ID (0x02) +#define ZCL_SAMPLE_MFG_SPECIFIC_TOGGLE_WITH_TRANSITION2_COMMAND_ID (0x02) +#define ZCL_OFF_WITH_EFFECT_COMMAND_ID (0x40) +#define ZCL_ON_WITH_RECALL_GLOBAL_SCENE_COMMAND_ID (0x41) +#define ZCL_ON_WITH_TIMED_OFF_COMMAND_ID (0x42) + +// Commands for cluster: Level Control +#define ZCL_MOVE_TO_LEVEL_COMMAND_ID (0x00) +#define ZCL_MOVE_COMMAND_ID (0x01) +#define ZCL_STEP_COMMAND_ID (0x02) +#define ZCL_STOP_COMMAND_ID (0x03) +#define ZCL_MOVE_TO_LEVEL_WITH_ON_OFF_COMMAND_ID (0x04) +#define ZCL_MOVE_WITH_ON_OFF_COMMAND_ID (0x05) +#define ZCL_STEP_WITH_ON_OFF_COMMAND_ID (0x06) +#define ZCL_STOP_WITH_ON_OFF_COMMAND_ID (0x07) + +// Commands for cluster: Alarms +#define ZCL_RESET_ALARM_COMMAND_ID (0x00) +#define ZCL_ALARM_COMMAND_ID (0x00) +#define ZCL_RESET_ALL_ALARMS_COMMAND_ID (0x01) +#define ZCL_GET_ALARM_RESPONSE_COMMAND_ID (0x01) +#define ZCL_GET_ALARM_COMMAND_ID (0x02) +#define ZCL_RESET_ALARM_LOG_COMMAND_ID (0x03) + +// Commands for cluster: RSSI Location +#define ZCL_SET_ABSOLUTE_LOCATION_COMMAND_ID (0x00) +#define ZCL_DEVICE_CONFIGURATION_RESPONSE_COMMAND_ID (0x00) +#define ZCL_SET_DEVICE_CONFIGURATION_COMMAND_ID (0x01) +#define ZCL_LOCATION_DATA_RESPONSE_COMMAND_ID (0x01) +#define ZCL_GET_DEVICE_CONFIGURATION_COMMAND_ID (0x02) +#define ZCL_LOCATION_DATA_NOTIFICATION_COMMAND_ID (0x02) +#define ZCL_GET_LOCATION_DATA_COMMAND_ID (0x03) +#define ZCL_COMPACT_LOCATION_DATA_NOTIFICATION_COMMAND_ID (0x03) +#define ZCL_RSSI_RESPONSE_COMMAND_ID (0x04) +#define ZCL_RSSI_PING_COMMAND_ID (0x04) +#define ZCL_SEND_PINGS_COMMAND_ID (0x05) +#define ZCL_RSSI_REQUEST_COMMAND_ID (0x05) +#define ZCL_ANCHOR_NODE_ANNOUNCE_COMMAND_ID (0x06) +#define ZCL_REPORT_RSSI_MEASUREMENTS_COMMAND_ID (0x06) +#define ZCL_REQUEST_OWN_LOCATION_COMMAND_ID (0x07) + +// Commands for cluster: Commissioning +#define ZCL_RESTART_DEVICE_COMMAND_ID (0x00) +#define ZCL_RESTART_DEVICE_RESPONSE_COMMAND_ID (0x00) +#define ZCL_SAVE_STARTUP_PARAMETERS_COMMAND_ID (0x01) +#define ZCL_SAVE_STARTUP_PARAMETERS_RESPONSE_COMMAND_ID (0x01) +#define ZCL_RESTORE_STARTUP_PARAMETERS_COMMAND_ID (0x02) +#define ZCL_RESTORE_STARTUP_PARAMETERS_RESPONSE_COMMAND_ID (0x02) +#define ZCL_RESET_STARTUP_PARAMETERS_COMMAND_ID (0x03) +#define ZCL_RESET_STARTUP_PARAMETERS_RESPONSE_COMMAND_ID (0x03) + +// Commands for cluster: Partition +#define ZCL_TRANSFER_PARTITIONED_FRAME_COMMAND_ID (0x00) +#define ZCL_MULTIPLE_ACK_COMMAND_ID (0x00) +#define ZCL_READ_HANDSHAKE_PARAM_COMMAND_ID (0x01) +#define ZCL_READ_HANDSHAKE_PARAM_RESPONSE_COMMAND_ID (0x01) +#define ZCL_WRITE_HANDSHAKE_PARAM_COMMAND_ID (0x02) + +// Commands for cluster: Over the Air Bootloading +#define ZCL_IMAGE_NOTIFY_COMMAND_ID (0x00) +#define ZCL_QUERY_NEXT_IMAGE_REQUEST_COMMAND_ID (0x01) +#define ZCL_QUERY_NEXT_IMAGE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_IMAGE_BLOCK_REQUEST_COMMAND_ID (0x03) +#define ZCL_IMAGE_PAGE_REQUEST_COMMAND_ID (0x04) +#define ZCL_IMAGE_BLOCK_RESPONSE_COMMAND_ID (0x05) +#define ZCL_UPGRADE_END_REQUEST_COMMAND_ID (0x06) +#define ZCL_UPGRADE_END_RESPONSE_COMMAND_ID (0x07) +#define ZCL_QUERY_SPECIFIC_FILE_REQUEST_COMMAND_ID (0x08) +#define ZCL_QUERY_SPECIFIC_FILE_RESPONSE_COMMAND_ID (0x09) + +// Commands for cluster: Power Profile +#define ZCL_POWER_PROFILE_REQUEST_COMMAND_ID (0x00) +#define ZCL_POWER_PROFILE_NOTIFICATION_COMMAND_ID (0x00) +#define ZCL_POWER_PROFILE_STATE_REQUEST_COMMAND_ID (0x01) +#define ZCL_POWER_PROFILE_RESPONSE_COMMAND_ID (0x01) +#define ZCL_GET_POWER_PROFILE_PRICE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_POWER_PROFILE_STATE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_GET_OVERALL_SCHEDULE_PRICE_RESPONSE_COMMAND_ID (0x03) +#define ZCL_GET_POWER_PROFILE_PRICE_COMMAND_ID (0x03) +#define ZCL_ENERGY_PHASES_SCHEDULE_NOTIFICATION_COMMAND_ID (0x04) +#define ZCL_POWER_PROFILES_STATE_NOTIFICATION_COMMAND_ID (0x04) +#define ZCL_ENERGY_PHASES_SCHEDULE_RESPONSE_COMMAND_ID (0x05) +#define ZCL_GET_OVERALL_SCHEDULE_PRICE_COMMAND_ID (0x05) +#define ZCL_POWER_PROFILE_SCHEDULE_CONSTRAINTS_REQUEST_COMMAND_ID (0x06) +#define ZCL_ENERGY_PHASES_SCHEDULE_REQUEST_COMMAND_ID (0x06) +#define ZCL_ENERGY_PHASES_SCHEDULE_STATE_REQUEST_COMMAND_ID (0x07) +#define ZCL_ENERGY_PHASES_SCHEDULE_STATE_RESPONSE_COMMAND_ID (0x07) +#define ZCL_GET_POWER_PROFILE_PRICE_EXTENDED_RESPONSE_COMMAND_ID (0x08) +#define ZCL_ENERGY_PHASES_SCHEDULE_STATE_NOTIFICATION_COMMAND_ID (0x08) +#define ZCL_POWER_PROFILE_SCHEDULE_CONSTRAINTS_NOTIFICATION_COMMAND_ID (0x09) +#define ZCL_POWER_PROFILE_SCHEDULE_CONSTRAINTS_RESPONSE_COMMAND_ID (0x0A) +#define ZCL_GET_POWER_PROFILE_PRICE_EXTENDED_COMMAND_ID (0x0B) + +// Commands for cluster: Appliance Control +#define ZCL_EXECUTION_OF_A_COMMAND_COMMAND_ID (0x00) +#define ZCL_SIGNAL_STATE_RESPONSE_COMMAND_ID (0x00) +#define ZCL_SIGNAL_STATE_COMMAND_ID (0x01) +#define ZCL_SIGNAL_STATE_NOTIFICATION_COMMAND_ID (0x01) +#define ZCL_WRITE_FUNCTIONS_COMMAND_ID (0x02) +#define ZCL_OVERLOAD_PAUSE_RESUME_COMMAND_ID (0x03) +#define ZCL_OVERLOAD_PAUSE_COMMAND_ID (0x04) +#define ZCL_OVERLOAD_WARNING_COMMAND_ID (0x05) + +// Commands for cluster: Poll Control +#define ZCL_CHECK_IN_COMMAND_ID (0x00) +#define ZCL_CHECK_IN_RESPONSE_COMMAND_ID (0x00) +#define ZCL_FAST_POLL_STOP_COMMAND_ID (0x01) +#define ZCL_SET_LONG_POLL_INTERVAL_COMMAND_ID (0x02) +#define ZCL_SET_SHORT_POLL_INTERVAL_COMMAND_ID (0x03) + +// Commands for cluster: Green Power +#define ZCL_GP_NOTIFICATION_COMMAND_ID (0x00) +#define ZCL_GP_NOTIFICATION_RESPONSE_COMMAND_ID (0x00) +#define ZCL_GP_PAIRING_SEARCH_COMMAND_ID (0x01) +#define ZCL_GP_PAIRING_COMMAND_ID (0x01) +#define ZCL_GP_PROXY_COMMISSIONING_MODE_COMMAND_ID (0x02) +#define ZCL_GP_TUNNELING_STOP_COMMAND_ID (0x03) +#define ZCL_GP_COMMISSIONING_NOTIFICATION_COMMAND_ID (0x04) +#define ZCL_GP_SINK_COMMISSIONING_MODE_COMMAND_ID (0x05) +#define ZCL_GP_RESPONSE_COMMAND_ID (0x06) +#define ZCL_GP_TRANSLATION_TABLE_UPDATE_COMMAND_ID (0x07) +#define ZCL_GP_TRANSLATION_TABLE_REQUEST_COMMAND_ID (0x08) +#define ZCL_GP_TRANSLATION_TABLE_RESPONSE_COMMAND_ID (0x08) +#define ZCL_GP_PAIRING_CONFIGURATION_COMMAND_ID (0x09) +#define ZCL_GP_SINK_TABLE_REQUEST_COMMAND_ID (0x0A) +#define ZCL_GP_SINK_TABLE_RESPONSE_COMMAND_ID (0x0A) +#define ZCL_GP_PROXY_TABLE_RESPONSE_COMMAND_ID (0x0B) +#define ZCL_GP_PROXY_TABLE_REQUEST_COMMAND_ID (0x0B) + +// Commands for cluster: Door Lock +#define ZCL_LOCK_DOOR_COMMAND_ID (0x00) +#define ZCL_LOCK_DOOR_RESPONSE_COMMAND_ID (0x00) +#define ZCL_UNLOCK_DOOR_COMMAND_ID (0x01) +#define ZCL_UNLOCK_DOOR_RESPONSE_COMMAND_ID (0x01) +#define ZCL_TOGGLE_COMMAND_ID (0x02) +#define ZCL_TOGGLE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_UNLOCK_WITH_TIMEOUT_COMMAND_ID (0x03) +#define ZCL_UNLOCK_WITH_TIMEOUT_RESPONSE_COMMAND_ID (0x03) +#define ZCL_GET_LOG_RECORD_COMMAND_ID (0x04) +#define ZCL_GET_LOG_RECORD_RESPONSE_COMMAND_ID (0x04) +#define ZCL_SET_PIN_COMMAND_ID (0x05) +#define ZCL_SET_PIN_RESPONSE_COMMAND_ID (0x05) +#define ZCL_GET_PIN_COMMAND_ID (0x06) +#define ZCL_GET_PIN_RESPONSE_COMMAND_ID (0x06) +#define ZCL_CLEAR_PIN_COMMAND_ID (0x07) +#define ZCL_CLEAR_PIN_RESPONSE_COMMAND_ID (0x07) +#define ZCL_CLEAR_ALL_PINS_COMMAND_ID (0x08) +#define ZCL_CLEAR_ALL_PINS_RESPONSE_COMMAND_ID (0x08) +#define ZCL_SET_USER_STATUS_COMMAND_ID (0x09) +#define ZCL_SET_USER_STATUS_RESPONSE_COMMAND_ID (0x09) +#define ZCL_GET_USER_STATUS_COMMAND_ID (0x0A) +#define ZCL_GET_USER_STATUS_RESPONSE_COMMAND_ID (0x0A) +#define ZCL_SET_WEEKDAY_SCHEDULE_COMMAND_ID (0x0B) +#define ZCL_SET_WEEKDAY_SCHEDULE_RESPONSE_COMMAND_ID (0x0B) +#define ZCL_GET_WEEKDAY_SCHEDULE_COMMAND_ID (0x0C) +#define ZCL_GET_WEEKDAY_SCHEDULE_RESPONSE_COMMAND_ID (0x0C) +#define ZCL_CLEAR_WEEKDAY_SCHEDULE_COMMAND_ID (0x0D) +#define ZCL_CLEAR_WEEKDAY_SCHEDULE_RESPONSE_COMMAND_ID (0x0D) +#define ZCL_SET_YEARDAY_SCHEDULE_COMMAND_ID (0x0E) +#define ZCL_SET_YEARDAY_SCHEDULE_RESPONSE_COMMAND_ID (0x0E) +#define ZCL_GET_YEARDAY_SCHEDULE_COMMAND_ID (0x0F) +#define ZCL_GET_YEARDAY_SCHEDULE_RESPONSE_COMMAND_ID (0x0F) +#define ZCL_CLEAR_YEARDAY_SCHEDULE_COMMAND_ID (0x10) +#define ZCL_CLEAR_YEARDAY_SCHEDULE_RESPONSE_COMMAND_ID (0x10) +#define ZCL_SET_HOLIDAY_SCHEDULE_COMMAND_ID (0x11) +#define ZCL_SET_HOLIDAY_SCHEDULE_RESPONSE_COMMAND_ID (0x11) +#define ZCL_GET_HOLIDAY_SCHEDULE_COMMAND_ID (0x12) +#define ZCL_GET_HOLIDAY_SCHEDULE_RESPONSE_COMMAND_ID (0x12) +#define ZCL_CLEAR_HOLIDAY_SCHEDULE_COMMAND_ID (0x13) +#define ZCL_CLEAR_HOLIDAY_SCHEDULE_RESPONSE_COMMAND_ID (0x13) +#define ZCL_SET_USER_TYPE_COMMAND_ID (0x14) +#define ZCL_SET_USER_TYPE_RESPONSE_COMMAND_ID (0x14) +#define ZCL_GET_USER_TYPE_COMMAND_ID (0x15) +#define ZCL_GET_USER_TYPE_RESPONSE_COMMAND_ID (0x15) +#define ZCL_SET_RFID_COMMAND_ID (0x16) +#define ZCL_SET_RFID_RESPONSE_COMMAND_ID (0x16) +#define ZCL_GET_RFID_COMMAND_ID (0x17) +#define ZCL_GET_RFID_RESPONSE_COMMAND_ID (0x17) +#define ZCL_CLEAR_RFID_COMMAND_ID (0x18) +#define ZCL_CLEAR_RFID_RESPONSE_COMMAND_ID (0x18) +#define ZCL_CLEAR_ALL_RFIDS_COMMAND_ID (0x19) +#define ZCL_CLEAR_ALL_RFIDS_RESPONSE_COMMAND_ID (0x19) +#define ZCL_OPERATION_EVENT_NOTIFICATION_COMMAND_ID (0x20) +#define ZCL_PROGRAMMING_EVENT_NOTIFICATION_COMMAND_ID (0x21) + +// Commands for cluster: Window Covering +#define ZCL_WINDOW_COVERING_UP_OPEN_COMMAND_ID (0x00) +#define ZCL_WINDOW_COVERING_DOWN_CLOSE_COMMAND_ID (0x01) +#define ZCL_WINDOW_COVERING_STOP_COMMAND_ID (0x02) +#define ZCL_WINDOW_COVERING_GO_TO_LIFT_VALUE_COMMAND_ID (0x04) +#define ZCL_WINDOW_COVERING_GO_TO_LIFT_PERCENTAGE_COMMAND_ID (0x05) +#define ZCL_WINDOW_COVERING_GO_TO_TILT_VALUE_COMMAND_ID (0x07) +#define ZCL_WINDOW_COVERING_GO_TO_TILT_PERCENTAGE_COMMAND_ID (0x08) + +// Commands for cluster: Barrier Control +#define ZCL_BARRIER_CONTROL_GO_TO_PERCENT_COMMAND_ID (0x00) +#define ZCL_BARRIER_CONTROL_STOP_COMMAND_ID (0x01) + +// Commands for cluster: Thermostat +#define ZCL_SETPOINT_RAISE_LOWER_COMMAND_ID (0x00) +#define ZCL_CURRENT_WEEKLY_SCHEDULE_COMMAND_ID (0x00) +#define ZCL_SET_WEEKLY_SCHEDULE_COMMAND_ID (0x01) +#define ZCL_RELAY_STATUS_LOG_COMMAND_ID (0x01) +#define ZCL_GET_WEEKLY_SCHEDULE_COMMAND_ID (0x02) +#define ZCL_CLEAR_WEEKLY_SCHEDULE_COMMAND_ID (0x03) +#define ZCL_GET_RELAY_STATUS_LOG_COMMAND_ID (0x04) + +// Commands for cluster: Color Control +#define ZCL_MOVE_TO_HUE_COMMAND_ID (0x00) +#define ZCL_MOVE_HUE_COMMAND_ID (0x01) +#define ZCL_STEP_HUE_COMMAND_ID (0x02) +#define ZCL_MOVE_TO_SATURATION_COMMAND_ID (0x03) +#define ZCL_MOVE_SATURATION_COMMAND_ID (0x04) +#define ZCL_STEP_SATURATION_COMMAND_ID (0x05) +#define ZCL_MOVE_TO_HUE_AND_SATURATION_COMMAND_ID (0x06) +#define ZCL_MOVE_TO_COLOR_COMMAND_ID (0x07) +#define ZCL_MOVE_COLOR_COMMAND_ID (0x08) +#define ZCL_STEP_COLOR_COMMAND_ID (0x09) +#define ZCL_MOVE_TO_COLOR_TEMPERATURE_COMMAND_ID (0x0A) +#define ZCL_ENHANCED_MOVE_TO_HUE_COMMAND_ID (0x40) +#define ZCL_ENHANCED_MOVE_HUE_COMMAND_ID (0x41) +#define ZCL_ENHANCED_STEP_HUE_COMMAND_ID (0x42) +#define ZCL_ENHANCED_MOVE_TO_HUE_AND_SATURATION_COMMAND_ID (0x43) +#define ZCL_COLOR_LOOP_SET_COMMAND_ID (0x44) +#define ZCL_STOP_MOVE_STEP_COMMAND_ID (0x47) +#define ZCL_MOVE_COLOR_TEMPERATURE_COMMAND_ID (0x4B) +#define ZCL_STEP_COLOR_TEMPERATURE_COMMAND_ID (0x4C) + +// Commands for cluster: IAS Zone +#define ZCL_ZONE_ENROLL_RESPONSE_COMMAND_ID (0x00) +#define ZCL_ZONE_STATUS_CHANGE_NOTIFICATION_COMMAND_ID (0x00) +#define ZCL_INITIATE_NORMAL_OPERATION_MODE_COMMAND_ID (0x01) +#define ZCL_ZONE_ENROLL_REQUEST_COMMAND_ID (0x01) +#define ZCL_INITIATE_TEST_MODE_COMMAND_ID (0x02) +#define ZCL_INITIATE_NORMAL_OPERATION_MODE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_INITIATE_TEST_MODE_RESPONSE_COMMAND_ID (0x03) + +// Commands for cluster: IAS ACE +#define ZCL_ARM_COMMAND_ID (0x00) +#define ZCL_ARM_RESPONSE_COMMAND_ID (0x00) +#define ZCL_BYPASS_COMMAND_ID (0x01) +#define ZCL_GET_ZONE_ID_MAP_RESPONSE_COMMAND_ID (0x01) +#define ZCL_EMERGENCY_COMMAND_ID (0x02) +#define ZCL_GET_ZONE_INFORMATION_RESPONSE_COMMAND_ID (0x02) +#define ZCL_FIRE_COMMAND_ID (0x03) +#define ZCL_ZONE_STATUS_CHANGED_COMMAND_ID (0x03) +#define ZCL_PANIC_COMMAND_ID (0x04) +#define ZCL_PANEL_STATUS_CHANGED_COMMAND_ID (0x04) +#define ZCL_GET_ZONE_ID_MAP_COMMAND_ID (0x05) +#define ZCL_GET_PANEL_STATUS_RESPONSE_COMMAND_ID (0x05) +#define ZCL_GET_ZONE_INFORMATION_COMMAND_ID (0x06) +#define ZCL_SET_BYPASSED_ZONE_LIST_COMMAND_ID (0x06) +#define ZCL_GET_PANEL_STATUS_COMMAND_ID (0x07) +#define ZCL_BYPASS_RESPONSE_COMMAND_ID (0x07) +#define ZCL_GET_BYPASSED_ZONE_LIST_COMMAND_ID (0x08) +#define ZCL_GET_ZONE_STATUS_RESPONSE_COMMAND_ID (0x08) +#define ZCL_GET_ZONE_STATUS_COMMAND_ID (0x09) + +// Commands for cluster: IAS WD +#define ZCL_START_WARNING_COMMAND_ID (0x00) +#define ZCL_SQUAWK_COMMAND_ID (0x01) + +// Commands for cluster: Generic Tunnel +#define ZCL_MATCH_PROTOCOL_ADDRESS_COMMAND_ID (0x00) +#define ZCL_MATCH_PROTOCOL_ADDRESS_RESPONSE_COMMAND_ID (0x00) +#define ZCL_ADVERTISE_PROTOCOL_ADDRESS_COMMAND_ID (0x01) + +// Commands for cluster: BACnet Protocol Tunnel +#define ZCL_TRANSFER_NPDU_COMMAND_ID (0x00) + +// Commands for cluster: 11073 Protocol Tunnel +#define ZCL_TRANSFER_APDU_COMMAND_ID (0x00) +#define ZCL_CONNECT_REQUEST_COMMAND_ID (0x01) +#define ZCL_DISCONNECT_REQUEST_COMMAND_ID (0x02) +#define ZCL_CONNECT_STATUS_NOTIFICATION_COMMAND_ID (0x03) + +// Commands for cluster: ISO 7816 Protocol Tunnel +#define ZCL_TRANSFER_APDU_COMMAND_ID (0x00) +#define ZCL_INSERT_SMART_CARD_COMMAND_ID (0x01) +#define ZCL_EXTRACT_SMART_CARD_COMMAND_ID (0x02) + +// Commands for cluster: Price +#define ZCL_PUBLISH_PRICE_COMMAND_ID (0x00) +#define ZCL_GET_CURRENT_PRICE_COMMAND_ID (0x00) +#define ZCL_PUBLISH_BLOCK_PERIOD_COMMAND_ID (0x01) +#define ZCL_GET_SCHEDULED_PRICES_COMMAND_ID (0x01) +#define ZCL_PUBLISH_CONVERSION_FACTOR_COMMAND_ID (0x02) +#define ZCL_PRICE_ACKNOWLEDGEMENT_COMMAND_ID (0x02) +#define ZCL_PUBLISH_CALORIFIC_VALUE_COMMAND_ID (0x03) +#define ZCL_GET_BLOCK_PERIODS_COMMAND_ID (0x03) +#define ZCL_PUBLISH_TARIFF_INFORMATION_COMMAND_ID (0x04) +#define ZCL_GET_CONVERSION_FACTOR_COMMAND_ID (0x04) +#define ZCL_PUBLISH_PRICE_MATRIX_COMMAND_ID (0x05) +#define ZCL_GET_CALORIFIC_VALUE_COMMAND_ID (0x05) +#define ZCL_PUBLISH_BLOCK_THRESHOLDS_COMMAND_ID (0x06) +#define ZCL_GET_TARIFF_INFORMATION_COMMAND_ID (0x06) +#define ZCL_PUBLISH_CO2_VALUE_COMMAND_ID (0x07) +#define ZCL_GET_PRICE_MATRIX_COMMAND_ID (0x07) +#define ZCL_PUBLISH_TIER_LABELS_COMMAND_ID (0x08) +#define ZCL_GET_BLOCK_THRESHOLDS_COMMAND_ID (0x08) +#define ZCL_PUBLISH_BILLING_PERIOD_COMMAND_ID (0x09) +#define ZCL_GET_CO2_VALUE_COMMAND_ID (0x09) +#define ZCL_PUBLISH_CONSOLIDATED_BILL_COMMAND_ID (0x0A) +#define ZCL_GET_TIER_LABELS_COMMAND_ID (0x0A) +#define ZCL_PUBLISH_CPP_EVENT_COMMAND_ID (0x0B) +#define ZCL_GET_BILLING_PERIOD_COMMAND_ID (0x0B) +#define ZCL_PUBLISH_CREDIT_PAYMENT_COMMAND_ID (0x0C) +#define ZCL_GET_CONSOLIDATED_BILL_COMMAND_ID (0x0C) +#define ZCL_PUBLISH_CURRENCY_CONVERSION_COMMAND_ID (0x0D) +#define ZCL_CPP_EVENT_RESPONSE_COMMAND_ID (0x0D) +#define ZCL_CANCEL_TARIFF_COMMAND_ID (0x0E) +#define ZCL_GET_CREDIT_PAYMENT_COMMAND_ID (0x0E) +#define ZCL_GET_CURRENCY_CONVERSION_COMMAND_COMMAND_ID (0x0F) +#define ZCL_GET_TARIFF_CANCELLATION_COMMAND_ID (0x10) + +// Commands for cluster: Demand Response and Load Control +#define ZCL_LOAD_CONTROL_EVENT_COMMAND_ID (0x00) +#define ZCL_REPORT_EVENT_STATUS_COMMAND_ID (0x00) +#define ZCL_CANCEL_LOAD_CONTROL_EVENT_COMMAND_ID (0x01) +#define ZCL_GET_SCHEDULED_EVENTS_COMMAND_ID (0x01) +#define ZCL_CANCEL_ALL_LOAD_CONTROL_EVENTS_COMMAND_ID (0x02) + +// Commands for cluster: Simple Metering +#define ZCL_GET_PROFILE_RESPONSE_COMMAND_ID (0x00) +#define ZCL_GET_PROFILE_COMMAND_ID (0x00) +#define ZCL_REQUEST_MIRROR_COMMAND_ID (0x01) +#define ZCL_REQUEST_MIRROR_RESPONSE_COMMAND_ID (0x01) +#define ZCL_REMOVE_MIRROR_COMMAND_ID (0x02) +#define ZCL_MIRROR_REMOVED_COMMAND_ID (0x02) +#define ZCL_REQUEST_FAST_POLL_MODE_RESPONSE_COMMAND_ID (0x03) +#define ZCL_REQUEST_FAST_POLL_MODE_COMMAND_ID (0x03) +#define ZCL_SCHEDULE_SNAPSHOT_RESPONSE_COMMAND_ID (0x04) +#define ZCL_SCHEDULE_SNAPSHOT_COMMAND_ID (0x04) +#define ZCL_TAKE_SNAPSHOT_RESPONSE_COMMAND_ID (0x05) +#define ZCL_TAKE_SNAPSHOT_COMMAND_ID (0x05) +#define ZCL_PUBLISH_SNAPSHOT_COMMAND_ID (0x06) +#define ZCL_GET_SNAPSHOT_COMMAND_ID (0x06) +#define ZCL_GET_SAMPLED_DATA_RESPONSE_COMMAND_ID (0x07) +#define ZCL_START_SAMPLING_COMMAND_ID (0x07) +#define ZCL_CONFIGURE_MIRROR_COMMAND_ID (0x08) +#define ZCL_GET_SAMPLED_DATA_COMMAND_ID (0x08) +#define ZCL_CONFIGURE_NOTIFICATION_SCHEME_COMMAND_ID (0x09) +#define ZCL_MIRROR_REPORT_ATTRIBUTE_RESPONSE_COMMAND_ID (0x09) +#define ZCL_CONFIGURE_NOTIFICATION_FLAGS_COMMAND_ID (0x0A) +#define ZCL_RESET_LOAD_LIMIT_COUNTER_COMMAND_ID (0x0A) +#define ZCL_GET_NOTIFIED_MESSAGE_COMMAND_ID (0x0B) +#define ZCL_CHANGE_SUPPLY_COMMAND_ID (0x0B) +#define ZCL_SUPPLY_STATUS_RESPONSE_COMMAND_ID (0x0C) +#define ZCL_LOCAL_CHANGE_SUPPLY_COMMAND_ID (0x0C) +#define ZCL_START_SAMPLING_RESPONSE_COMMAND_ID (0x0D) +#define ZCL_SET_SUPPLY_STATUS_COMMAND_ID (0x0D) +#define ZCL_SET_UNCONTROLLED_FLOW_THRESHOLD_COMMAND_ID (0x0E) + +// Commands for cluster: Messaging +#define ZCL_DISPLAY_MESSAGE_COMMAND_ID (0x00) +#define ZCL_GET_LAST_MESSAGE_COMMAND_ID (0x00) +#define ZCL_CANCEL_MESSAGE_COMMAND_ID (0x01) +#define ZCL_MESSAGE_CONFIRMATION_COMMAND_ID (0x01) +#define ZCL_DISPLAY_PROTECTED_MESSAGE_COMMAND_ID (0x02) +#define ZCL_GET_MESSAGE_CANCELLATION_COMMAND_ID (0x02) +#define ZCL_CANCEL_ALL_MESSAGES_COMMAND_ID (0x03) + +// Commands for cluster: Tunneling +#define ZCL_REQUEST_TUNNEL_COMMAND_ID (0x00) +#define ZCL_REQUEST_TUNNEL_RESPONSE_COMMAND_ID (0x00) +#define ZCL_CLOSE_TUNNEL_COMMAND_ID (0x01) +#define ZCL_TRANSFER_DATA_SERVER_TO_CLIENT_COMMAND_ID (0x01) +#define ZCL_TRANSFER_DATA_CLIENT_TO_SERVER_COMMAND_ID (0x02) +#define ZCL_TRANSFER_DATA_ERROR_SERVER_TO_CLIENT_COMMAND_ID (0x02) +#define ZCL_TRANSFER_DATA_ERROR_CLIENT_TO_SERVER_COMMAND_ID (0x03) +#define ZCL_ACK_TRANSFER_DATA_SERVER_TO_CLIENT_COMMAND_ID (0x03) +#define ZCL_ACK_TRANSFER_DATA_CLIENT_TO_SERVER_COMMAND_ID (0x04) +#define ZCL_READY_DATA_SERVER_TO_CLIENT_COMMAND_ID (0x04) +#define ZCL_READY_DATA_CLIENT_TO_SERVER_COMMAND_ID (0x05) +#define ZCL_SUPPORTED_TUNNEL_PROTOCOLS_RESPONSE_COMMAND_ID (0x05) +#define ZCL_GET_SUPPORTED_TUNNEL_PROTOCOLS_COMMAND_ID (0x06) +#define ZCL_TUNNEL_CLOSURE_NOTIFICATION_COMMAND_ID (0x06) + +// Commands for cluster: Prepayment +#define ZCL_SELECT_AVAILABLE_EMERGENCY_CREDIT_COMMAND_ID (0x00) +#define ZCL_PUBLISH_PREPAY_SNAPSHOT_COMMAND_ID (0x01) +#define ZCL_CHANGE_DEBT_COMMAND_ID (0x02) +#define ZCL_CHANGE_PAYMENT_MODE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_EMERGENCY_CREDIT_SETUP_COMMAND_ID (0x03) +#define ZCL_CONSUMER_TOP_UP_RESPONSE_COMMAND_ID (0x03) +#define ZCL_CONSUMER_TOP_UP_COMMAND_ID (0x04) +#define ZCL_CREDIT_ADJUSTMENT_COMMAND_ID (0x05) +#define ZCL_PUBLISH_TOP_UP_LOG_COMMAND_ID (0x05) +#define ZCL_CHANGE_PAYMENT_MODE_COMMAND_ID (0x06) +#define ZCL_PUBLISH_DEBT_LOG_COMMAND_ID (0x06) +#define ZCL_GET_PREPAY_SNAPSHOT_COMMAND_ID (0x07) +#define ZCL_GET_TOP_UP_LOG_COMMAND_ID (0x08) +#define ZCL_SET_LOW_CREDIT_WARNING_LEVEL_COMMAND_ID (0x09) +#define ZCL_GET_DEBT_REPAYMENT_LOG_COMMAND_ID (0x0A) +#define ZCL_SET_MAXIMUM_CREDIT_LIMIT_COMMAND_ID (0x0B) +#define ZCL_SET_OVERALL_DEBT_CAP_COMMAND_ID (0x0C) + +// Commands for cluster: Energy Management +#define ZCL_REPORT_EVENT_STATUS_COMMAND_ID (0x00) +#define ZCL_MANAGE_EVENT_COMMAND_ID (0x00) + +// Commands for cluster: Calendar +#define ZCL_PUBLISH_CALENDAR_COMMAND_ID (0x00) +#define ZCL_GET_CALENDAR_COMMAND_ID (0x00) +#define ZCL_PUBLISH_DAY_PROFILE_COMMAND_ID (0x01) +#define ZCL_GET_DAY_PROFILES_COMMAND_ID (0x01) +#define ZCL_PUBLISH_WEEK_PROFILE_COMMAND_ID (0x02) +#define ZCL_GET_WEEK_PROFILES_COMMAND_ID (0x02) +#define ZCL_PUBLISH_SEASONS_COMMAND_ID (0x03) +#define ZCL_GET_SEASONS_COMMAND_ID (0x03) +#define ZCL_PUBLISH_SPECIAL_DAYS_COMMAND_ID (0x04) +#define ZCL_GET_SPECIAL_DAYS_COMMAND_ID (0x04) +#define ZCL_CANCEL_CALENDAR_COMMAND_ID (0x05) +#define ZCL_GET_CALENDAR_CANCELLATION_COMMAND_ID (0x05) + +// Commands for cluster: Device Management +#define ZCL_GET_CHANGE_OF_TENANCY_COMMAND_ID (0x00) +#define ZCL_PUBLISH_CHANGE_OF_TENANCY_COMMAND_ID (0x00) +#define ZCL_GET_CHANGE_OF_SUPPLIER_COMMAND_ID (0x01) +#define ZCL_PUBLISH_CHANGE_OF_SUPPLIER_COMMAND_ID (0x01) +#define ZCL_REQUEST_NEW_PASSWORD_COMMAND_ID (0x02) +#define ZCL_REQUEST_NEW_PASSWORD_RESPONSE_COMMAND_ID (0x02) +#define ZCL_GET_SITE_ID_COMMAND_ID (0x03) +#define ZCL_UPDATE_SITE_ID_COMMAND_ID (0x03) +#define ZCL_REPORT_EVENT_CONFIGURATION_COMMAND_ID (0x04) +#define ZCL_SET_EVENT_CONFIGURATION_COMMAND_ID (0x04) +#define ZCL_GET_CIN_COMMAND_ID (0x05) +#define ZCL_GET_EVENT_CONFIGURATION_COMMAND_ID (0x05) +#define ZCL_UPDATE_CIN_COMMAND_ID (0x06) + +// Commands for cluster: Events +#define ZCL_GET_EVENT_LOG_COMMAND_ID (0x00) +#define ZCL_PUBLISH_EVENT_COMMAND_ID (0x00) +#define ZCL_CLEAR_EVENT_LOG_REQUEST_COMMAND_ID (0x01) +#define ZCL_PUBLISH_EVENT_LOG_COMMAND_ID (0x01) +#define ZCL_CLEAR_EVENT_LOG_RESPONSE_COMMAND_ID (0x02) + +// Commands for cluster: MDU Pairing +#define ZCL_PAIRING_RESPONSE_COMMAND_ID (0x00) +#define ZCL_PAIRING_REQUEST_COMMAND_ID (0x00) + +// Commands for cluster: Sub-GHz +#define ZCL_SUSPEND_ZCL_MESSAGES_COMMAND_ID (0x00) +#define ZCL_GET_SUSPEND_ZCL_MESSAGES_STATUS_COMMAND_ID (0x00) + +// Commands for cluster: Key Establishment +#define ZCL_INITIATE_KEY_ESTABLISHMENT_REQUEST_COMMAND_ID (0x00) +#define ZCL_INITIATE_KEY_ESTABLISHMENT_RESPONSE_COMMAND_ID (0x00) +#define ZCL_EPHEMERAL_DATA_REQUEST_COMMAND_ID (0x01) +#define ZCL_EPHEMERAL_DATA_RESPONSE_COMMAND_ID (0x01) +#define ZCL_CONFIRM_KEY_DATA_REQUEST_COMMAND_ID (0x02) +#define ZCL_CONFIRM_KEY_DATA_RESPONSE_COMMAND_ID (0x02) +#define ZCL_TERMINATE_KEY_ESTABLISHMENT_COMMAND_ID (0x03) + +// Commands for cluster: Information +#define ZCL_REQUEST_INFORMATION_COMMAND_ID (0x00) +#define ZCL_REQUEST_INFORMATION_RESPONSE_COMMAND_ID (0x00) +#define ZCL_PUSH_INFORMATION_RESPONSE_COMMAND_ID (0x01) +#define ZCL_PUSH_INFORMATION_COMMAND_ID (0x01) +#define ZCL_SEND_PREFERENCE_COMMAND_ID (0x02) +#define ZCL_SEND_PREFERENCE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_REQUEST_PREFERENCE_RESPONSE_COMMAND_ID (0x03) +#define ZCL_SERVER_REQUEST_PREFERENCE_COMMAND_ID (0x03) +#define ZCL_UPDATE_COMMAND_ID (0x04) +#define ZCL_REQUEST_PREFERENCE_CONFIRMATION_COMMAND_ID (0x04) +#define ZCL_DELETE_COMMAND_ID (0x05) +#define ZCL_UPDATE_RESPONSE_COMMAND_ID (0x05) +#define ZCL_CONFIGURE_NODE_DESCRIPTION_COMMAND_ID (0x06) +#define ZCL_DELETE_RESPONSE_COMMAND_ID (0x06) +#define ZCL_CONFIGURE_DELIVERY_ENABLE_COMMAND_ID (0x07) +#define ZCL_CONFIGURE_PUSH_INFORMATION_TIMER_COMMAND_ID (0x08) +#define ZCL_CONFIGURE_SET_ROOT_ID_COMMAND_ID (0x09) + +// Commands for cluster: Data Sharing +#define ZCL_READ_FILE_REQUEST_COMMAND_ID (0x00) +#define ZCL_WRITE_FILE_REQUEST_COMMAND_ID (0x00) +#define ZCL_READ_RECORD_REQUEST_COMMAND_ID (0x01) +#define ZCL_MODIFY_FILE_REQUEST_COMMAND_ID (0x01) +#define ZCL_WRITE_FILE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_MODIFY_RECORD_REQUEST_COMMAND_ID (0x02) +#define ZCL_FILE_TRANSMISSION_COMMAND_ID (0x03) +#define ZCL_RECORD_TRANSMISSION_COMMAND_ID (0x04) + +// Commands for cluster: Gaming +#define ZCL_SEARCH_GAME_COMMAND_ID (0x00) +#define ZCL_GAME_ANNOUNCEMENT_COMMAND_ID (0x00) +#define ZCL_JOIN_GAME_COMMAND_ID (0x01) +#define ZCL_GENERAL_RESPONSE_COMMAND_ID (0x01) +#define ZCL_START_GAME_COMMAND_ID (0x02) +#define ZCL_PAUSE_GAME_COMMAND_ID (0x03) +#define ZCL_RESUME_GAME_COMMAND_ID (0x04) +#define ZCL_QUIT_GAME_COMMAND_ID (0x05) +#define ZCL_END_GAME_COMMAND_ID (0x06) +#define ZCL_START_OVER_COMMAND_ID (0x07) +#define ZCL_ACTION_CONTROL_COMMAND_ID (0x08) +#define ZCL_DOWNLOAD_GAME_COMMAND_ID (0x09) + +// Commands for cluster: Data Rate Control +#define ZCL_PATH_CREATION_COMMAND_ID (0x00) +#define ZCL_DATA_RATE_CONTROL_COMMAND_ID (0x00) +#define ZCL_DATA_RATE_NOTIFICATION_COMMAND_ID (0x01) +#define ZCL_PATH_DELETION_COMMAND_ID (0x02) + +// Commands for cluster: Voice over ZigBee +#define ZCL_ESTABLISHMENT_REQUEST_COMMAND_ID (0x00) +#define ZCL_ESTABLISHMENT_RESPONSE_COMMAND_ID (0x00) +#define ZCL_VOICE_TRANSMISSION_COMMAND_ID (0x01) +#define ZCL_VOICE_TRANSMISSION_RESPONSE_COMMAND_ID (0x01) +#define ZCL_VOICE_TRANSMISSION_COMPLETION_COMMAND_ID (0x02) +#define ZCL_CONTROL_COMMAND_ID (0x02) +#define ZCL_CONTROL_RESPONSE_COMMAND_ID (0x03) + +// Commands for cluster: Chatting +#define ZCL_JOIN_CHAT_REQUEST_COMMAND_ID (0x00) +#define ZCL_START_CHAT_RESPONSE_COMMAND_ID (0x00) +#define ZCL_LEAVE_CHAT_REQUEST_COMMAND_ID (0x01) +#define ZCL_JOIN_CHAT_RESPONSE_COMMAND_ID (0x01) +#define ZCL_SEARCH_CHAT_REQUEST_COMMAND_ID (0x02) +#define ZCL_USER_LEFT_COMMAND_ID (0x02) +#define ZCL_SWITCH_CHAIRMAN_RESPONSE_COMMAND_ID (0x03) +#define ZCL_USER_JOINED_COMMAND_ID (0x03) +#define ZCL_START_CHAT_REQUEST_COMMAND_ID (0x04) +#define ZCL_SEARCH_CHAT_RESPONSE_COMMAND_ID (0x04) +#define ZCL_CHAT_MESSAGE_COMMAND_ID (0x05) +#define ZCL_SWITCH_CHAIRMAN_REQUEST_COMMAND_ID (0x05) +#define ZCL_GET_NODE_INFORMATION_REQUEST_COMMAND_ID (0x06) +#define ZCL_SWITCH_CHAIRMAN_CONFIRM_COMMAND_ID (0x06) +#define ZCL_SWITCH_CHAIRMAN_NOTIFICATION_COMMAND_ID (0x07) +#define ZCL_GET_NODE_INFORMATION_RESPONSE_COMMAND_ID (0x08) + +// Commands for cluster: Payment +#define ZCL_BUY_REQUEST_COMMAND_ID (0x00) +#define ZCL_BUY_CONFIRM_COMMAND_ID (0x00) +#define ZCL_ACCEPT_PAYMENT_COMMAND_ID (0x01) +#define ZCL_RECEIPT_DELIVERY_COMMAND_ID (0x01) +#define ZCL_PAYMENT_CONFIRM_COMMAND_ID (0x02) +#define ZCL_TRANSACTION_END_COMMAND_ID (0x02) + +// Commands for cluster: Billing +#define ZCL_SUBSCRIBE_COMMAND_ID (0x00) +#define ZCL_CHECK_BILL_STATUS_COMMAND_ID (0x00) +#define ZCL_UNSUBSCRIBE_COMMAND_ID (0x01) +#define ZCL_SEND_BILL_RECORD_COMMAND_ID (0x01) +#define ZCL_START_BILLING_SESSION_COMMAND_ID (0x02) +#define ZCL_STOP_BILLING_SESSION_COMMAND_ID (0x03) +#define ZCL_BILL_STATUS_NOTIFICATION_COMMAND_ID (0x04) +#define ZCL_SESSION_KEEP_ALIVE_COMMAND_ID (0x05) + +// Commands for cluster: Appliance Events and Alert +#define ZCL_GET_ALERTS_COMMAND_ID (0x00) +#define ZCL_GET_ALERTS_RESPONSE_COMMAND_ID (0x00) +#define ZCL_ALERTS_NOTIFICATION_COMMAND_ID (0x01) +#define ZCL_EVENTS_NOTIFICATION_COMMAND_ID (0x02) + +// Commands for cluster: Appliance Statistics +#define ZCL_LOG_NOTIFICATION_COMMAND_ID (0x00) +#define ZCL_LOG_REQUEST_COMMAND_ID (0x00) +#define ZCL_LOG_RESPONSE_COMMAND_ID (0x01) +#define ZCL_LOG_QUEUE_REQUEST_COMMAND_ID (0x01) +#define ZCL_LOG_QUEUE_RESPONSE_COMMAND_ID (0x02) +#define ZCL_STATISTICS_AVAILABLE_COMMAND_ID (0x03) + +// Commands for cluster: Electrical Measurement +#define ZCL_GET_PROFILE_INFO_RESPONSE_COMMAND_COMMAND_ID (0x00) +#define ZCL_GET_PROFILE_INFO_COMMAND_COMMAND_ID (0x00) +#define ZCL_GET_MEASUREMENT_PROFILE_RESPONSE_COMMAND_COMMAND_ID (0x01) +#define ZCL_GET_MEASUREMENT_PROFILE_COMMAND_COMMAND_ID (0x01) + +// Commands for cluster: ZLL Commissioning +#define ZCL_SCAN_REQUEST_COMMAND_ID (0x00) +#define ZCL_SCAN_RESPONSE_COMMAND_ID (0x01) +#define ZCL_DEVICE_INFORMATION_REQUEST_COMMAND_ID (0x02) +#define ZCL_DEVICE_INFORMATION_RESPONSE_COMMAND_ID (0x03) +#define ZCL_IDENTIFY_REQUEST_COMMAND_ID (0x06) +#define ZCL_RESET_TO_FACTORY_NEW_REQUEST_COMMAND_ID (0x07) +#define ZCL_NETWORK_START_REQUEST_COMMAND_ID (0x10) +#define ZCL_NETWORK_START_RESPONSE_COMMAND_ID (0x11) +#define ZCL_NETWORK_JOIN_ROUTER_REQUEST_COMMAND_ID (0x12) +#define ZCL_NETWORK_JOIN_ROUTER_RESPONSE_COMMAND_ID (0x13) +#define ZCL_NETWORK_JOIN_END_DEVICE_REQUEST_COMMAND_ID (0x14) +#define ZCL_NETWORK_JOIN_END_DEVICE_RESPONSE_COMMAND_ID (0x15) +#define ZCL_NETWORK_UPDATE_REQUEST_COMMAND_ID (0x16) +#define ZCL_ENDPOINT_INFORMATION_COMMAND_ID (0x40) +#define ZCL_GET_GROUP_IDENTIFIERS_REQUEST_COMMAND_ID (0x41) +#define ZCL_GET_GROUP_IDENTIFIERS_RESPONSE_COMMAND_ID (0x41) +#define ZCL_GET_ENDPOINT_LIST_REQUEST_COMMAND_ID (0x42) +#define ZCL_GET_ENDPOINT_LIST_RESPONSE_COMMAND_ID (0x42) + +// Commands for cluster: Sample Mfg Specific Cluster +#define ZCL_COMMAND_ONE_COMMAND_ID (0x00) + +// Commands for cluster: Sample Mfg Specific Cluster 2 +#define ZCL_COMMAND_TWO_COMMAND_ID (0x00) + +// Commands for cluster: Configuration Cluster +#define ZCL_SET_TOKEN_COMMAND_ID (0x00) +#define ZCL_RETURN_TOKEN_COMMAND_ID (0x00) +#define ZCL_LOCK_TOKENS_COMMAND_ID (0x01) +#define ZCL_READ_TOKENS_COMMAND_ID (0x02) +#define ZCL_UNLOCK_TOKENS_COMMAND_ID (0x03) + +// Commands for cluster: MFGLIB Cluster +#define ZCL_STREAM_COMMAND_ID (0x00) +#define ZCL_TONE_COMMAND_ID (0x01) +#define ZCL_RX_MODE_COMMAND_ID (0x02) + +// Commands for cluster: SL Works With All Hubs +#define ZCL_ENABLE_APS_LINK_KEY_AUTHORIZATION_COMMAND_ID (0x00) +#define ZCL_APS_LINK_KEY_AUTHORIZATION_QUERY_RESPONSE_COMMAND_ID (0x00) +#define ZCL_DISABLE_APS_LINK_KEY_AUTHORIZATION_COMMAND_ID (0x01) +#define ZCL_POWERING_OFF_NOTIFICATION_COMMAND_ID (0x01) +#define ZCL_APS_LINK_KEY_AUTHORIZATION_QUERY_COMMAND_ID (0x02) +#define ZCL_POWERING_ON_NOTIFICATION_COMMAND_ID (0x02) +#define ZCL_REQUEST_NEW_APS_LINK_KEY_COMMAND_ID (0x03) +#define ZCL_SHORT_ADDRESS_CHANGE_COMMAND_ID (0x03) +#define ZCL_ENABLE_WWAH_APP_EVENT_RETRY_ALGORITHM_COMMAND_ID (0x04) +#define ZCL_APS_ACK_ENABLEMENT_QUERY_RESPONSE_COMMAND_ID (0x04) +#define ZCL_DISABLE_WWAH_APP_EVENT_RETRY_ALGORITHM_COMMAND_ID (0x05) +#define ZCL_POWER_DESCRIPTOR_CHANGE_COMMAND_ID (0x05) +#define ZCL_REQUEST_TIME_COMMAND_ID (0x06) +#define ZCL_NEW_DEBUG_REPORT_NOTIFICATION_COMMAND_ID (0x06) +#define ZCL_ENABLE_WWAH_REJOIN_ALGORITHM_COMMAND_ID (0x07) +#define ZCL_DEBUG_REPORT_QUERY_RESPONSE_COMMAND_ID (0x07) +#define ZCL_DISABLE_WWAH_REJOIN_ALGORITHM_COMMAND_ID (0x08) +#define ZCL_TRUST_CENTER_FOR_CLUSTER_SERVER_QUERY_RESPONSE_COMMAND_ID (0x08) +#define ZCL_SET_IAS_ZONE_ENROLLMENT_METHOD_COMMAND_ID (0x09) +#define ZCL_SURVEY_BEACONS_RESPONSE_COMMAND_ID (0x09) +#define ZCL_CLEAR_BINDING_TABLE_COMMAND_ID (0x0A) +#define ZCL_ENABLE_PERIODIC_ROUTER_CHECK_INS_COMMAND_ID (0x0B) +#define ZCL_DISABLE_PERIODIC_ROUTER_CHECK_INS_COMMAND_ID (0x0C) +#define ZCL_SET_MAC_POLL_FAILURE_WAIT_TIME_COMMAND_ID (0x0D) +#define ZCL_SET_PENDING_NETWORK_UPDATE_COMMAND_ID (0x0E) +#define ZCL_REQUIRE_APS_ACKS_ON_UNICASTS_COMMAND_ID (0x0F) +#define ZCL_REMOVE_APS_ACKS_ON_UNICASTS_REQUIREMENT_COMMAND_ID (0x10) +#define ZCL_APS_ACK_REQUIREMENT_QUERY_COMMAND_ID (0x11) +#define ZCL_DEBUG_REPORT_QUERY_COMMAND_ID (0x12) +#define ZCL_SURVEY_BEACONS_COMMAND_ID (0x13) +#define ZCL_DISABLE_OTA_DOWNGRADES_COMMAND_ID (0x14) +#define ZCL_DISABLE_MGMT_LEAVE_WITHOUT_REJOIN_COMMAND_ID (0x15) +#define ZCL_DISABLE_TOUCHLINK_INTERPAN_MESSAGE_SUPPORT_COMMAND_ID (0x16) +#define ZCL_ENABLE_WWAH_PARENT_CLASSIFICATION_COMMAND_ID (0x17) +#define ZCL_DISABLE_WWAH_PARENT_CLASSIFICATION_COMMAND_ID (0x18) +#define ZCL_ENABLE_TC_SECURITY_ON_NTWK_KEY_ROTATION_COMMAND_ID (0x19) +#define ZCL_ENABLE_WWAH_BAD_PARENT_RECOVERY_COMMAND_ID (0x1A) +#define ZCL_DISABLE_WWAH_BAD_PARENT_RECOVERY_COMMAND_ID (0x1B) +#define ZCL_ENABLE_CONFIGURATION_MODE_COMMAND_ID (0x1C) +#define ZCL_DISABLE_CONFIGURATION_MODE_COMMAND_ID (0x1D) +#define ZCL_USE_TRUST_CENTER_FOR_CLUSTER_SERVER_COMMAND_ID (0x1E) +#define ZCL_TRUST_CENTER_FOR_CLUSTER_SERVER_QUERY_COMMAND_ID (0x1F) +#define ZCL_USE_TRUST_CENTER_FOR_CLUSTER_SERVER_RESPONSE_COMMAND_ID (0x9E) diff --git a/examples/lighting-app/lighting-common/gen/enums.h b/examples/lighting-app/lighting-common/gen/enums.h index c1881b3732b9e3..07c2881e641e97 100644 --- a/examples/lighting-app/lighting-common/gen/enums.h +++ b/examples/lighting-app/lighting-common/gen/enums.h @@ -1,4 +1,5 @@ -/** + +/* * * Copyright (c) 2020 Project CHIP Authors * @@ -15,43 +16,18 @@ * limitations under the License. */ -/** - * - * Copyright (c) 2020 Silicon Labs - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_EMBER_AF_ENUMS -#define SILABS_EMBER_AF_ENUMS - -/** - * @addtogroup enums Application Framework Enums Reference - * This header provides Application Framework enum definitions. - * @{ - */ -/** @name Enums */ -// @{ +// Prevent multiple inclusion +#pragma once +// ZCL enums + +// Enum for 11073ConnectRequestConnectControl typedef enum { EMBER_ZCL_11073_CONNECT_REQUEST_CONNECT_CONTROL_PREEMPTIBLE = 0x01, } EmberAf11073ConnectRequestConnectControl; +// Enum for 11073TunnelConnectionStatus typedef enum { EMBER_ZCL_11073_TUNNEL_CONNECTION_STATUS_DISCONNECTED = 0x00, @@ -61,11 +37,13 @@ typedef enum EMBER_ZCL_11073_TUNNEL_CONNECTION_STATUS_ALREADY_CONNECTED = 0x04, } EmberAf11073TunnelConnectionStatus; +// Enum for AlertCountType typedef enum { EMBER_ZCL_ALERT_COUNT_TYPE_UNSTRUCTURED = 0x00, } EmberAfAlertCountType; +// Enum for AlertStructureCategory typedef enum { EMBER_ZCL_ALERT_STRUCTURE_CATEGORY_WARNING = 0x0100, @@ -73,17 +51,20 @@ typedef enum EMBER_ZCL_ALERT_STRUCTURE_CATEGORY_FAILURE = 0x0300, } EmberAfAlertStructureCategory; +// Enum for AlertStructurePresenceRecovery typedef enum { EMBER_ZCL_ALERT_STRUCTURE_PRESENCE_RECOVERY_RECOVERY = 0x0000, EMBER_ZCL_ALERT_STRUCTURE_PRESENCE_RECOVERY_PRESENCE = 0x1000, } EmberAfAlertStructurePresenceRecovery; +// Enum for AlternateCostUnit typedef enum { EMBER_ZCL_ALTERNATE_COST_UNIT_KG_OF_CO2_PER_UNIT_OF_MEASURE = 0x02, } EmberAfAlternateCostUnit; +// Enum for AmiCriticalityLevel typedef enum { EMBER_ZCL_AMI_CRITICALITY_LEVEL_RESERVED = 0x00, @@ -104,6 +85,7 @@ typedef enum EMBER_ZCL_AMI_CRITICALITY_LEVEL_UTILITY_DEFINED6 = 0x0F, } EmberAfAmiCriticalityLevel; +// Enum for AmiEventStatus typedef enum { EMBER_ZCL_AMI_EVENT_STATUS_LOAD_CONTROL_EVENT_COMMAND_RX = 0x01, @@ -125,6 +107,7 @@ typedef enum EMBER_ZCL_AMI_EVENT_STATUS_LOAD_CONTROL_EVENT_COMMAND_REJECTED = 0xFE, } EmberAfAmiEventStatus; +// Enum for AmiGetProfileStatus typedef enum { EMBER_ZCL_AMI_GET_PROFILE_STATUS_SUCCESS = 0x00, @@ -135,12 +118,14 @@ typedef enum EMBER_ZCL_AMI_GET_PROFILE_STATUS_NO_INTERVALS_AVAILABLE_FOR_THE_REQUESTED_TIME = 0x05, } EmberAfAmiGetProfileStatus; +// Enum for AmiIntervalChannel typedef enum { EMBER_ZCL_AMI_INTERVAL_CHANNEL_CONSUMPTION_DELIVERED = 0x00, EMBER_ZCL_AMI_INTERVAL_CHANNEL_CONSUMPTION_RECEIVED = 0x01, } EmberAfAmiIntervalChannel; +// Enum for AmiIntervalPeriod typedef enum { EMBER_ZCL_AMI_INTERVAL_PERIOD_DAILY = 0x00, @@ -153,6 +138,7 @@ typedef enum EMBER_ZCL_AMI_INTERVAL_PERIOD_MINUTES2P5 = 0x07, } EmberAfAmiIntervalPeriod; +// Enum for AmiKeyEstablishmentStatus typedef enum { EMBER_ZCL_AMI_KEY_ESTABLISHMENT_STATUS_SUCCESS = 0x00, @@ -164,17 +150,19 @@ typedef enum EMBER_ZCL_AMI_KEY_ESTABLISHMENT_STATUS_INVALID_KEY_USAGE = 0x06, } EmberAfAmiKeyEstablishmentStatus; +// Enum for AmiRegistrationState typedef enum { - EMBER_ZCL_AMI_REGISTRATION_STATE_UNREGISTERED = 0x00, - EMBER_ZCL_AMI_REGISTRATION_STATE_JOINING_NETWORK = 0x01, - EMBER_ZCL_AMI_REGISTRATION_STATE_JOINED_NETWORK = 0x02, - EMBER_ZCL_AMI_REGISTRATION_STATE_SUBMITTED_REGISTRATION_REQUEST = 0x03, - EMBER_ZCL_AMI_REGISTRATION_STATE_REGISTRATION_REJECTED = 0x04, - EMBER_ZCL_AMI_REGISTRATION_STATE_REGISTERED = 0x05, - EMBER_ZCL_AMI_REGISTRATION_STATE_REGISTERATION_NOT_POSSIBLE = 0x06, + EMBER_ZCL_AMI_REGISTRATION_STATE_UNREGISTERED = 0x0, + EMBER_ZCL_AMI_REGISTRATION_STATE_JOINING_NETWORK = 0x1, + EMBER_ZCL_AMI_REGISTRATION_STATE_JOINED_NETWORK = 0x2, + EMBER_ZCL_AMI_REGISTRATION_STATE_SUBMITTED_REGISTRATION_REQUEST = 0x3, + EMBER_ZCL_AMI_REGISTRATION_STATE_REGISTRATION_REJECTED = 0x4, + EMBER_ZCL_AMI_REGISTRATION_STATE_REGISTERED = 0x5, + EMBER_ZCL_AMI_REGISTRATION_STATE_REGISTERATION_NOT_POSSIBLE = 0x6, } EmberAfAmiRegistrationState; +// Enum for AmiUnitOfMeasure typedef enum { EMBER_ZCL_AMI_UNIT_OF_MEASURE_KILO_WATT_HOURS = 0x00, @@ -207,12 +195,14 @@ typedef enum EMBER_ZCL_AMI_UNIT_OF_MEASURE_K_VAR_OR_K_VAR_HOURS_BCD = 0x8D, } EmberAfAmiUnitOfMeasure; +// Enum for AnonymousDataState typedef enum { - EMBER_ZCL_ANONYMOUS_DATA_STATE_NO_SOURCE_FOUND = 0x00, - EMBER_ZCL_ANONYMOUS_DATA_STATE_SOURCE_FOUND = 0x01, + EMBER_ZCL_ANONYMOUS_DATA_STATE_NO_SOURCE_FOUND = 0x0, + EMBER_ZCL_ANONYMOUS_DATA_STATE_SOURCE_FOUND = 0x1, } EmberAfAnonymousDataState; +// Enum for ApplianceStatus typedef enum { EMBER_ZCL_APPLIANCE_STATUS_OFF = 0x01, @@ -232,12 +222,14 @@ typedef enum EMBER_ZCL_APPLIANCE_STATUS_SUPERHEATING = 0x0F, } EmberAfApplianceStatus; +// Enum for AttributeReportingStatus typedef enum { EMBER_ZCL_ATTRIBUTE_REPORTING_STATUS_PENDING = 0x00, EMBER_ZCL_ATTRIBUTE_REPORTING_STATUS_ATTRIBUTE_REPORTING_COMPLETE = 0x01, } EmberAfAttributeReportingStatus; +// Enum for AttributeWritePermission typedef enum { EMBER_ZCL_ATTRIBUTE_WRITE_PERMISSION_DENY_WRITE = 0x00, @@ -249,13 +241,15 @@ typedef enum EMBER_ZCL_ATTRIBUTE_WRITE_PERMISSION_INVALID_DATA_TYPE = 0x8D, } EmberAfAttributeWritePermission; +// Enum for BarrierControlBarrierPosition typedef enum { - EMBER_ZCL_BARRIER_CONTROL_BARRIER_POSITION_CLOSED = 0x00, - EMBER_ZCL_BARRIER_CONTROL_BARRIER_POSITION_OPEN = 0x64, + EMBER_ZCL_BARRIER_CONTROL_BARRIER_POSITION_CLOSED = 0, + EMBER_ZCL_BARRIER_CONTROL_BARRIER_POSITION_OPEN = 100, EMBER_ZCL_BARRIER_CONTROL_BARRIER_POSITION_UNKNOWN = 0xFF, } EmberAfBarrierControlBarrierPosition; +// Enum for BarrierControlMovingState typedef enum { EMBER_ZCL_BARRIER_CONTROL_MOVING_STATE_STOPPED = 0x00, @@ -263,18 +257,20 @@ typedef enum EMBER_ZCL_BARRIER_CONTROL_MOVING_STATE_OPENING = 0x02, } EmberAfBarrierControlMovingState; +// Enum for BatterySize typedef enum { - EMBER_ZCL_BATTERY_SIZE_NO_BATTERY = 0x00, - EMBER_ZCL_BATTERY_SIZE_BUILT_IN = 0x01, - EMBER_ZCL_BATTERY_SIZE_OTHER = 0x02, - EMBER_ZCL_BATTERY_SIZE_AA = 0x03, - EMBER_ZCL_BATTERY_SIZE_AAA = 0x04, - EMBER_ZCL_BATTERY_SIZE_C = 0x05, - EMBER_ZCL_BATTERY_SIZE_D = 0x06, - EMBER_ZCL_BATTERY_SIZE_UNKNOWN = 0xFF, + EMBER_ZCL_BATTERY_SIZE_NO_BATTERY = 0x0, + EMBER_ZCL_BATTERY_SIZE_BUILT_IN = 0x1, + EMBER_ZCL_BATTERY_SIZE_OTHER = 0x2, + EMBER_ZCL_BATTERY_SIZE_AA = 0x3, + EMBER_ZCL_BATTERY_SIZE_AAA = 0x4, + EMBER_ZCL_BATTERY_SIZE_C = 0x5, + EMBER_ZCL_BATTERY_SIZE_D = 0x6, + EMBER_ZCL_BATTERY_SIZE_UNKNOWN = 0xff, } EmberAfBatterySize; +// Enum for BillingPeriodDurationUnits typedef enum { EMBER_ZCL_BILLING_PERIOD_DURATION_UNITS_MINUTES = 0x000000, @@ -283,6 +279,7 @@ typedef enum EMBER_ZCL_BILLING_PERIOD_DURATION_UNITS_MONTHS = 0xC00000, } EmberAfBillingPeriodDurationUnits; +// Enum for Block typedef enum { EMBER_ZCL_BLOCK_NO_BLOCKS_IN_USE = 0x00, @@ -304,6 +301,7 @@ typedef enum EMBER_ZCL_BLOCK_BLOCK16 = 0x10, } EmberAfBlock; +// Enum for BlockPeriodDurationTypeControl typedef enum { EMBER_ZCL_BLOCK_PERIOD_DURATION_TYPE_CONTROL_START_OF_TIMEBASE = 0x00, @@ -311,6 +309,7 @@ typedef enum EMBER_ZCL_BLOCK_PERIOD_DURATION_TYPE_CONTROL_NOT_SPECIFIED = 0x20, } EmberAfBlockPeriodDurationTypeControl; +// Enum for BlockPeriodDurationTypeTimebase typedef enum { EMBER_ZCL_BLOCK_PERIOD_DURATION_TYPE_TIMEBASE_MINUTES = 0x00, @@ -319,13 +318,15 @@ typedef enum EMBER_ZCL_BLOCK_PERIOD_DURATION_TYPE_TIMEBASE_MONTHS = 0x03, } EmberAfBlockPeriodDurationTypeTimebase; +// Enum for CO2Unit typedef enum { - EMBER_ZCL_C_O2_UNIT_KILOGRAM_PER_KILOWATT_HOUR = 0x01, - EMBER_ZCL_C_O2_UNIT_KILOGRAM_PER_GALLON_OF_GASOLINE = 0x02, - EMBER_ZCL_C_O2_UNIT_KILOGRAM_PER_THERM_OF_NATURAL_GAS = 0x03, + EMBER_ZCL_CO2_UNIT_KILOGRAM_PER_KILOWATT_HOUR = 0x01, + EMBER_ZCL_CO2_UNIT_KILOGRAM_PER_GALLON_OF_GASOLINE = 0x02, + EMBER_ZCL_CO2_UNIT_KILOGRAM_PER_THERM_OF_NATURAL_GAS = 0x03, } EmberAfCO2Unit; +// Enum for CalendarTimeReference typedef enum { EMBER_ZCL_CALENDAR_TIME_REFERENCE_UTC_TIME = 0x00, @@ -333,6 +334,7 @@ typedef enum EMBER_ZCL_CALENDAR_TIME_REFERENCE_LOCAL_TIME = 0x02, } EmberAfCalendarTimeReference; +// Enum for CalendarType typedef enum { EMBER_ZCL_CALENDAR_TYPE_DELIVERED_CALENDAR = 0x00, @@ -342,23 +344,27 @@ typedef enum EMBER_ZCL_CALENDAR_TYPE_AUXILLIARY_LOAD_SWITCH_CALENDAR = 0x04, } EmberAfCalendarType; +// Enum for CalorificValueUnit typedef enum { EMBER_ZCL_CALORIFIC_VALUE_UNIT_MEGAJOULE_PER_CUBIC_METER = 0x01, EMBER_ZCL_CALORIFIC_VALUE_UNIT_MEGAJOULE_PER_KILOGRAM = 0x02, } EmberAfCalorificValueUnit; +// Enum for CecedSpecificationVersion typedef enum { EMBER_ZCL_CECED_SPECIFICATION_VERSION_COMPLIANT_WITH_V10_NOT_CERTIFIED = 0x10, EMBER_ZCL_CECED_SPECIFICATION_VERSION_COMPLIANT_WITH_V10_CERTIFIED = 0x1A, } EmberAfCecedSpecificationVersion; +// Enum for ColorControlOptions typedef enum { - EMBER_ZCL_COLOR_CONTROL_OPTIONS_EXECUTE_IF_OFF = 0x01, + EMBER_ZCL_COLOR_CONTROL_OPTIONS_EXECUTE_IF_OFF = 0x1, } EmberAfColorControlOptions; +// Enum for ColorLoopAction typedef enum { EMBER_ZCL_COLOR_LOOP_ACTION_DEACTIVATE = 0x00, @@ -366,12 +372,14 @@ typedef enum EMBER_ZCL_COLOR_LOOP_ACTION_ACTIVATE_FROM_ENHANCED_CURRENT_HUE = 0x02, } EmberAfColorLoopAction; +// Enum for ColorLoopDirection typedef enum { EMBER_ZCL_COLOR_LOOP_DIRECTION_DECREMENT_HUE = 0x00, EMBER_ZCL_COLOR_LOOP_DIRECTION_INCREMENT_HUE = 0x01, } EmberAfColorLoopDirection; +// Enum for ColorMode typedef enum { EMBER_ZCL_COLOR_MODE_CURRENT_HUE_AND_CURRENT_SATURATION = 0x00, @@ -379,6 +387,7 @@ typedef enum EMBER_ZCL_COLOR_MODE_COLOR_TEMPERATURE = 0x02, } EmberAfColorMode; +// Enum for CommandIdentification typedef enum { EMBER_ZCL_COMMAND_IDENTIFICATION_START = 0x01, @@ -394,6 +403,7 @@ typedef enum EMBER_ZCL_COMMAND_IDENTIFICATION_DISABLE_ENERGY_CONTROL = 0x0B, } EmberAfCommandIdentification; +// Enum for CommissioningStartupControl typedef enum { EMBER_ZCL_COMMISSIONING_STARTUP_CONTROL_NO_ACTION = 0x00, @@ -402,6 +412,7 @@ typedef enum EMBER_ZCL_COMMISSIONING_STARTUP_CONTROL_START_FROM_SCRATCH = 0x03, } EmberAfCommissioningStartupControl; +// Enum for CommodityType typedef enum { EMBER_ZCL_COMMODITY_TYPE_ELECTRIC_METERING = 0x00, @@ -422,24 +433,28 @@ typedef enum EMBER_ZCL_COMMODITY_TYPE_ELECTRIC_METERING_ELEMENT3 = 0x0F, } EmberAfCommodityType; +// Enum for CppEventResponseCppAuth typedef enum { EMBER_ZCL_CPP_EVENT_RESPONSE_CPP_AUTH_ACCEPTED = 0x01, EMBER_ZCL_CPP_EVENT_RESPONSE_CPP_AUTH_REJECTED = 0x02, } EmberAfCppEventResponseCppAuth; +// Enum for CppPriceTier typedef enum { EMBER_ZCL_CPP_PRICE_TIER_CPP1 = 0x00, EMBER_ZCL_CPP_PRICE_TIER_CPP2 = 0x01, } EmberAfCppPriceTier; +// Enum for CreditAdjustmentType typedef enum { EMBER_ZCL_CREDIT_ADJUSTMENT_TYPE_CREDIT_INCREMENTAL = 0x00, EMBER_ZCL_CREDIT_ADJUSTMENT_TYPE_CREDIT_ABSOLUTE = 0x01, } EmberAfCreditAdjustmentType; +// Enum for CreditPaymentStatus typedef enum { EMBER_ZCL_CREDIT_PAYMENT_STATUS_PENDING = 0x00, @@ -449,6 +464,7 @@ typedef enum EMBER_ZCL_CREDIT_PAYMENT_STATUS_3_PAYMENTS_OVERDUE = 0x04, } EmberAfCreditPaymentStatus; +// Enum for DataQualityId typedef enum { EMBER_ZCL_DATA_QUALITY_ID_ALL_DATA_CERTIFIED = 0x0000, @@ -457,6 +473,7 @@ typedef enum EMBER_ZCL_DATA_QUALITY_ID_NOT_CERTIFIED_DATA = 0x0003, } EmberAfDataQualityId; +// Enum for DebtAmountType typedef enum { EMBER_ZCL_DEBT_AMOUNT_TYPE_TYPE1_ABSOLUTE = 0x00, @@ -467,6 +484,7 @@ typedef enum EMBER_ZCL_DEBT_AMOUNT_TYPE_TYPE3_INCREMENTAL = 0x05, } EmberAfDebtAmountType; +// Enum for DebtRecoveryFrequency typedef enum { EMBER_ZCL_DEBT_RECOVERY_FREQUENCY_PER_HOUR = 0x00, @@ -476,6 +494,7 @@ typedef enum EMBER_ZCL_DEBT_RECOVERY_FREQUENCY_PER_QUARTER = 0x04, } EmberAfDebtRecoveryFrequency; +// Enum for DebtRecoveryMethod typedef enum { EMBER_ZCL_DEBT_RECOVERY_METHOD_TIME_BASED = 0x00, @@ -483,23 +502,27 @@ typedef enum EMBER_ZCL_DEBT_RECOVERY_METHOD_CATCH_UP_BASED = 0x02, } EmberAfDebtRecoveryMethod; +// Enum for DehumidifcationLockout typedef enum { - EMBER_ZCL_DEHUMIDIFCATION_LOCKOUT_NOT_ALLOWED = 0x00, - EMBER_ZCL_DEHUMIDIFCATION_LOCKOUT_ALLOWED = 0x01, + EMBER_ZCL_DEHUMIDIFCATION_LOCKOUT_NOT_ALLOWED = 0x0, + EMBER_ZCL_DEHUMIDIFCATION_LOCKOUT_ALLOWED = 0x1, } EmberAfDehumidifcationLockout; +// Enum for DeviceInformationRecordSort typedef enum { EMBER_ZCL_DEVICE_INFORMATION_RECORD_SORT_NOT_SORTED = 0x00, EMBER_ZCL_DEVICE_INFORMATION_RECORD_SORT_TOP_OF_THE_LIST = 0x01, } EmberAfDeviceInformationRecordSort; +// Enum for DeviceStatus2Structure typedef enum { EMBER_ZCL_DEVICE_STATUS2_STRUCTURE_IRIS_SYMPTOM_CODE = 0x20, } EmberAfDeviceStatus2Structure; +// Enum for DoorLockEventSource typedef enum { EMBER_ZCL_DOOR_LOCK_EVENT_SOURCE_KEYPAD = 0x00, @@ -509,6 +532,7 @@ typedef enum EMBER_ZCL_DOOR_LOCK_EVENT_SOURCE_INDETERMINATE = 0xFF, } EmberAfDoorLockEventSource; +// Enum for DoorLockEventType typedef enum { EMBER_ZCL_DOOR_LOCK_EVENT_TYPE_OPERATION = 0x00, @@ -516,6 +540,7 @@ typedef enum EMBER_ZCL_DOOR_LOCK_EVENT_TYPE_ALARM = 0x02, } EmberAfDoorLockEventType; +// Enum for DoorLockOperatingMode typedef enum { EMBER_ZCL_DOOR_LOCK_OPERATING_MODE_NORMAL_MODE = 0x00, @@ -523,9 +548,10 @@ typedef enum EMBER_ZCL_DOOR_LOCK_OPERATING_MODE_PRIVACY_MODE = 0x02, EMBER_ZCL_DOOR_LOCK_OPERATING_MODE_NO_RF_LOCK_OR_UNLOCK = 0x03, EMBER_ZCL_DOOR_LOCK_OPERATING_MODE_LOCAL_PROGRAMMING_MODE = 0x04, - EMBER_ZCL_DOOR_LOCK_OPERATING_MODE_PASSAGE_MODE = 0x05, + EMBER_ZCL_DOOR_LOCK_OPERATING_MODE_PASSAGE_MODE______ = 0x05, } EmberAfDoorLockOperatingMode; +// Enum for DoorLockOperationEventCode typedef enum { EMBER_ZCL_DOOR_LOCK_OPERATION_EVENT_CODE_UNKNOWN_OR_MFG_SPECIFIC = 0x00, @@ -545,6 +571,7 @@ typedef enum EMBER_ZCL_DOOR_LOCK_OPERATION_EVENT_CODE_MANUAL_UNLOCK = 0x0E, } EmberAfDoorLockOperationEventCode; +// Enum for DoorLockProgrammingEventCode typedef enum { EMBER_ZCL_DOOR_LOCK_PROGRAMMING_EVENT_CODE_UNKNOWN_OR_MFG_SPECIFIC = 0x00, @@ -556,12 +583,14 @@ typedef enum EMBER_ZCL_DOOR_LOCK_PROGRAMMING_EVENT_CODE_ID_DELETED = 0x06, } EmberAfDoorLockProgrammingEventCode; +// Enum for DoorLockSecurityLevel typedef enum { EMBER_ZCL_DOOR_LOCK_SECURITY_LEVEL_NETWORK_SECURITY = 0x00, EMBER_ZCL_DOOR_LOCK_SECURITY_LEVEL_APS_SECURITY = 0x01, } EmberAfDoorLockSecurityLevel; +// Enum for DoorLockSetPinOrIdStatus typedef enum { EMBER_ZCL_DOOR_LOCK_SET_PIN_OR_ID_STATUS_SUCCESS = 0x00, @@ -570,6 +599,7 @@ typedef enum EMBER_ZCL_DOOR_LOCK_SET_PIN_OR_ID_STATUS_DUPLICATE_CODE_ERROR = 0x03, } EmberAfDoorLockSetPinOrIdStatus; +// Enum for DoorLockSoundVolume typedef enum { EMBER_ZCL_DOOR_LOCK_SOUND_VOLUME_SILENT = 0x00, @@ -577,6 +607,7 @@ typedef enum EMBER_ZCL_DOOR_LOCK_SOUND_VOLUME_HIGH = 0x02, } EmberAfDoorLockSoundVolume; +// Enum for DoorLockState typedef enum { EMBER_ZCL_DOOR_LOCK_STATE_NOT_FULLY_LOCKED = 0x00, @@ -584,6 +615,7 @@ typedef enum EMBER_ZCL_DOOR_LOCK_STATE_UNLOCKED = 0x02, } EmberAfDoorLockState; +// Enum for DoorLockType typedef enum { EMBER_ZCL_DOOR_LOCK_TYPE_DEAD_BOLT = 0x00, @@ -598,6 +630,7 @@ typedef enum EMBER_ZCL_DOOR_LOCK_TYPE_OTHER = 0x09, } EmberAfDoorLockType; +// Enum for DoorLockUserStatus typedef enum { EMBER_ZCL_DOOR_LOCK_USER_STATUS_AVAILABLE = 0x00, @@ -606,15 +639,18 @@ typedef enum EMBER_ZCL_DOOR_LOCK_USER_STATUS_NOT_SUPPORTED = 0xFF, } EmberAfDoorLockUserStatus; +// Enum for DoorLockUserType typedef enum { - EMBER_ZCL_DOOR_LOCK_USER_TYPE_UNRESTRICTED = 0x00, - EMBER_ZCL_DOOR_LOCK_USER_TYPE_ONE_TIME_USER = 0x01, - EMBER_ZCL_DOOR_LOCK_USER_TYPE_USER_WITH_SCHEDULE = 0x02, - EMBER_ZCL_DOOR_LOCK_USER_TYPE_MASTER_USER = 0x03, - EMBER_ZCL_DOOR_LOCK_USER_TYPE_NOT_SUPPORTED = 0xFF, + EMBER_ZCL_DOOR_LOCK_USER_TYPE_UNRESTRICTED = 0x00, + EMBER_ZCL_DOOR_LOCK_USER_TYPE_YEAR_DAY_SCHEDULE_USER = 0x01, + EMBER_ZCL_DOOR_LOCK_USER_TYPE_WEEK_DAY_SCHEDULE_USER = 0x02, + EMBER_ZCL_DOOR_LOCK_USER_TYPE_MASTER_USER = 0x03, + EMBER_ZCL_DOOR_LOCK_USER_TYPE_NON_ACCESS_USER = 0x04, + EMBER_ZCL_DOOR_LOCK_USER_TYPE_NOT_SUPPORTED = 0xFF, } EmberAfDoorLockUserType; +// Enum for DoorState typedef enum { EMBER_ZCL_DOOR_STATE_OPEN = 0x00, @@ -624,6 +660,7 @@ typedef enum EMBER_ZCL_DOOR_STATE_ERROR_UNSPECIFIED = 0x04, } EmberAfDoorState; +// Enum for ElectricityAlarmGroups typedef enum { EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_LOW_VOLTAGE_L1 = 0x10, @@ -648,12 +685,13 @@ typedef enum EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_UNDER_VOLTAGE = 0x23, EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_OVER_VOLTAGE = 0x24, EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_NORMAL_VOLTAGE = 0x25, - EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_P_F_BELOW_THRESHOLD = 0x26, - EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_P_F_ABOVE_THRESHOLD = 0x27, + EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_PF_BELOW_THRESHOLD = 0x26, + EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_PF_ABOVE_THRESHOLD = 0x27, EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_TERMINAL_COVER_REMOVED = 0x28, EMBER_ZCL_ELECTRICITY_ALARM_GROUPS_TERMINAL_COVER_CLOSED = 0x29, } EmberAfElectricityAlarmGroups; +// Enum for EnhancedColorMode typedef enum { EMBER_ZCL_ENHANCED_COLOR_MODE_CURRENT_HUE_AND_CURRENT_SATURATION = 0x00, @@ -662,6 +700,7 @@ typedef enum EMBER_ZCL_ENHANCED_COLOR_MODE_ENHANCED_CURRENT_HUE_AND_CURRENT_SATURATION = 0x03, } EmberAfEnhancedColorMode; +// Enum for EventConfigurationControl typedef enum { EMBER_ZCL_EVENT_CONFIGURATION_CONTROL_APPLY_BY_LIST = 0x00, @@ -670,6 +709,7 @@ typedef enum EMBER_ZCL_EVENT_CONFIGURATION_CONTROL_APPLY_BY_CONFIGURATION_MATCH = 0x03, } EmberAfEventConfigurationControl; +// Enum for EventConfigurationLogAction typedef enum { EMBER_ZCL_EVENT_CONFIGURATION_LOG_ACTION_DO_NOT_LOG = 0x00, @@ -680,12 +720,14 @@ typedef enum EMBER_ZCL_EVENT_CONFIGURATION_LOG_ACTION_LOG_AS_NETWORK_EVENT = 0x05, } EmberAfEventConfigurationLogAction; +// Enum for EventControl typedef enum { EMBER_ZCL_EVENT_CONTROL_RETRIEVE_MINIMAL_INFORMATION = 0x00, EMBER_ZCL_EVENT_CONTROL_RETRIEVE_FULL_INFORMATION = 0x10, } EmberAfEventControl; +// Enum for EventId typedef enum { EMBER_ZCL_EVENT_ID_METER_COVER_REMOVED = 0x00, @@ -751,6 +793,8 @@ typedef enum EMBER_ZCL_EVENT_ID_BATTERY_COVER_REMOVED = 0xA2, EMBER_ZCL_EVENT_ID_BATTERY_COVER_CLOSED = 0xA3, EMBER_ZCL_EVENT_ID_EXCESS_FLOW = 0xA4, + EMBER_ZCL_EVENT_ID_CREDIT_OK = 0xC0, + EMBER_ZCL_EVENT_ID_LOW_CREDIT = 0xC1, EMBER_ZCL_EVENT_ID_EMERGENCY_CREDIT_IN_USE = 0xC0, EMBER_ZCL_EVENT_ID_EMERGENCY_CREDIT_EXHAUSTED = 0xC1, EMBER_ZCL_EVENT_ID_ZERO_CREDIT_EC_NOT_SELECTED = 0xC2, @@ -769,6 +813,7 @@ typedef enum EMBER_ZCL_EVENT_ID_MANUFACTURER_SPECIFIC_I = 0xE8, } EmberAfEventId; +// Enum for EventIdentification typedef enum { EMBER_ZCL_EVENT_IDENTIFICATION_END_OF_CYCLE = 0x01, @@ -778,6 +823,7 @@ typedef enum EMBER_ZCL_EVENT_IDENTIFICATION_WRONG_DATA = 0x07, } EmberAfEventIdentification; +// Enum for EventLogId typedef enum { EMBER_ZCL_EVENT_LOG_ID_ALL_LOGS = 0x00, @@ -790,12 +836,14 @@ typedef enum EMBER_ZCL_EVENT_LOG_ID_GBCS_SECURITY_EVENT_LOG = 0x07, } EmberAfEventLogId; +// Enum for EventLogPayloadControl typedef enum { EMBER_ZCL_EVENT_LOG_PAYLOAD_CONTROL_EVENTS_DO_NOT_CROSS_FRAME_BOUNDARY = 0x00, EMBER_ZCL_EVENT_LOG_PAYLOAD_CONTROL_EVENT_CROSSES_FRAME_BOUNDARY = 0x01, } EmberAfEventLogPayloadControl; +// Enum for ExtendedGenericAlarmGroups typedef enum { EMBER_ZCL_EXTENDED_GENERIC_ALARM_GROUPS_MEASUREMENT_SYSTEM_ERROR = 0x70, @@ -839,6 +887,7 @@ typedef enum EMBER_ZCL_EXTENDED_GENERIC_ALARM_GROUPS_EXTENDED_METER_ALARM_STATUS_REGISTER_CHANGED = 0x96, } EmberAfExtendedGenericAlarmGroups; +// Enum for ExtendedNumberOfPriceTiers typedef enum { EMBER_ZCL_EXTENDED_NUMBER_OF_PRICE_TIERS_REFER_TO_NUMBER_OF_PRICE_TIERS_FIELD = 0x00, @@ -877,6 +926,7 @@ typedef enum EMBER_ZCL_EXTENDED_NUMBER_OF_PRICE_TIERS_NUMBER_OF_PRICE_TIERS48 = 0x21, } EmberAfExtendedNumberOfPriceTiers; +// Enum for ExtendedPriceTier typedef enum { EMBER_ZCL_EXTENDED_PRICE_TIER_REFER_TO_PRICE_TIER_FIELD = 0x00, @@ -915,6 +965,7 @@ typedef enum EMBER_ZCL_EXTENDED_PRICE_TIER_TIER48_PRICE_LABEL = 0x21, } EmberAfExtendedPriceTier; +// Enum for ExtendedRegisterTier typedef enum { EMBER_ZCL_EXTENDED_REGISTER_TIER_REFER_TO_REGISTER_TIER_FIELD = 0x00, @@ -953,32 +1004,36 @@ typedef enum EMBER_ZCL_EXTENDED_REGISTER_TIER_CURRENT_TIER48_SUMMATION_DELIVERED_ATTRIBUTE = 0x21, } EmberAfExtendedRegisterTier; +// Enum for EzModeCommissioningClusterType typedef enum { EMBER_ZCL_EZ_MODE_COMMISSIONING_CLUSTER_TYPE_SERVER = 0x00, EMBER_ZCL_EZ_MODE_COMMISSIONING_CLUSTER_TYPE_CLIENT = 0x01, } EmberAfEzModeCommissioningClusterType; +// Enum for FanMode typedef enum { - EMBER_ZCL_FAN_MODE_OFF = 0x00, - EMBER_ZCL_FAN_MODE_LOW = 0x01, - EMBER_ZCL_FAN_MODE_MEDIUM = 0x02, - EMBER_ZCL_FAN_MODE_HIGH = 0x03, - EMBER_ZCL_FAN_MODE_ON = 0x04, - EMBER_ZCL_FAN_MODE_AUTO = 0x05, - EMBER_ZCL_FAN_MODE_SMART = 0x06, + EMBER_ZCL_FAN_MODE_OFF = 0x0, + EMBER_ZCL_FAN_MODE_LOW = 0x1, + EMBER_ZCL_FAN_MODE_MEDIUM = 0x2, + EMBER_ZCL_FAN_MODE_HIGH = 0x3, + EMBER_ZCL_FAN_MODE_ON = 0x4, + EMBER_ZCL_FAN_MODE_AUTO = 0x5, + EMBER_ZCL_FAN_MODE_SMART = 0x6, } EmberAfFanMode; +// Enum for FanModeSequence typedef enum { - EMBER_ZCL_FAN_MODE_SEQUENCE_LOW_MED_HIGH = 0x00, - EMBER_ZCL_FAN_MODE_SEQUENCE_LOW_HIGH = 0x01, - EMBER_ZCL_FAN_MODE_SEQUENCE_LOW_MED_HIGH_AUTO = 0x02, - EMBER_ZCL_FAN_MODE_SEQUENCE_LOW_HIGH_AUTO = 0x03, - EMBER_ZCL_FAN_MODE_SEQUENCE_ON_AUTO = 0x04, + EMBER_ZCL_FAN_MODE_SEQUENCE_LOW_MED_HIGH = 0x0, + EMBER_ZCL_FAN_MODE_SEQUENCE_LOW_HIGH = 0x1, + EMBER_ZCL_FAN_MODE_SEQUENCE_LOW_MED_HIGH_AUTO = 0x2, + EMBER_ZCL_FAN_MODE_SEQUENCE_LOW_HIGH_AUTO = 0x3, + EMBER_ZCL_FAN_MODE_SEQUENCE_ON_AUTO = 0x4, } EmberAfFanModeSequence; +// Enum for GasSpecificAlarmGroups typedef enum { EMBER_ZCL_GAS_SPECIFIC_ALARM_GROUPS_TILT_TAMPER = 0x60, @@ -988,6 +1043,7 @@ typedef enum EMBER_ZCL_GAS_SPECIFIC_ALARM_GROUPS_TILT_TAMPER_ENDED = 0x64, } EmberAfGasSpecificAlarmGroups; +// Enum for GenerationTier typedef enum { EMBER_ZCL_GENERATION_TIER_CURRENT_TIER1_SUMMATION_RECEIVED_ATTRIBUTE = 0x01, @@ -1040,6 +1096,7 @@ typedef enum EMBER_ZCL_GENERATION_TIER_CURRENT_TIER48_SUMMATION_RECEIVED_ATTRIBUTE = 0x30, } EmberAfGenerationTier; +// Enum for GenericAlarmGroups typedef enum { EMBER_ZCL_GENERIC_ALARM_GROUPS_CHECK_METER = 0x00, @@ -1053,22 +1110,25 @@ typedef enum EMBER_ZCL_GENERIC_ALARM_GROUPS_NO_STRONG_MAGNETIC_FIELD = 0x0B, EMBER_ZCL_GENERIC_ALARM_GROUPS_BATTERY_FAILURE = 0x0C, EMBER_ZCL_GENERIC_ALARM_GROUPS_PROGRAM_MEMORY_ERROR = 0x0D, - EMBER_ZCL_GENERIC_ALARM_GROUPS_R_A_M_ERROR = 0x0E, - EMBER_ZCL_GENERIC_ALARM_GROUPS_N_V_MEMORY_ERROR = 0x0F, + EMBER_ZCL_GENERIC_ALARM_GROUPS_RAM_ERROR = 0x0E, + EMBER_ZCL_GENERIC_ALARM_GROUPS_NV_MEMORY_ERROR = 0x0F, } EmberAfGenericAlarmGroups; +// Enum for GenericAlarmGroupsElectricity typedef enum { EMBER_ZCL_GENERIC_ALARM_GROUPS_ELECTRICITY_POWER_FAILURE = 0x03, EMBER_ZCL_GENERIC_ALARM_GROUPS_ELECTRICITY_POWER_QUALITY = 0x04, } EmberAfGenericAlarmGroupsElectricity; +// Enum for GenericAlarmGroupsGas typedef enum { EMBER_ZCL_GENERIC_ALARM_GROUPS_GAS_LOW_PRESSURE = 0x04, EMBER_ZCL_GENERIC_ALARM_GROUPS_GAS_REVERSE_FLOW = 0x07, } EmberAfGenericAlarmGroupsGas; +// Enum for GenericAlarmGroupsHeatCooling typedef enum { EMBER_ZCL_GENERIC_ALARM_GROUPS_HEAT_COOLING_TEMPERATURE_SENSOR = 0x03, @@ -1076,6 +1136,7 @@ typedef enum EMBER_ZCL_GENERIC_ALARM_GROUPS_HEAT_COOLING_FLOW_SENSOR = 0x07, } EmberAfGenericAlarmGroupsHeatCooling; +// Enum for GenericAlarmGroupsWater typedef enum { EMBER_ZCL_GENERIC_ALARM_GROUPS_WATER_WATER_PIPE_EMPTY = 0x03, @@ -1083,11 +1144,13 @@ typedef enum EMBER_ZCL_GENERIC_ALARM_GROUPS_WATER_WATER_REVERSE_FLOW = 0x07, } EmberAfGenericAlarmGroupsWater; +// Enum for GenericDeviceClass typedef enum { EMBER_ZCL_GENERIC_DEVICE_CLASS_LIGHTING = 0x00, } EmberAfGenericDeviceClass; +// Enum for GenericDeviceType typedef enum { EMBER_ZCL_GENERIC_DEVICE_TYPE_INCANDESCENT = 0x00, @@ -1113,6 +1176,7 @@ typedef enum EMBER_ZCL_GENERIC_DEVICE_TYPE_UNSPECIFIED = 0xFF, } EmberAfGenericDeviceType; +// Enum for GenericFlowPressureAlarmGroups typedef enum { EMBER_ZCL_GENERIC_FLOW_PRESSURE_ALARM_GROUPS_BURST_DETECT = 0x30, @@ -1125,14 +1189,27 @@ typedef enum EMBER_ZCL_GENERIC_FLOW_PRESSURE_ALARM_GROUPS_PIPE_EMPTY = 0x37, } EmberAfGenericFlowPressureAlarmGroups; -typedef enum -{ - EMBER_ZCL_GP_DEVICE_ID_GP_SIMPLE_GENERICE_TWO_STATE_SWITCH = 0x00, - EMBER_ZCL_GP_DEVICE_ID_GP_ON_OFF_SWITCH = 0x08, - EMBER_ZCL_GP_DEVICE_ID_GP_LEVEL_CONTROL_SWITCH = 0x10, - EMBER_ZCL_GP_DEVICE_ID_GP_INDOOR_ENVIRONMENT_SNESOR = 0x18, +// Enum for GpDeviceId +typedef enum +{ + EMBER_ZCL_GP_DEVICE_ID_GP_SIMPLE_GENERIC_ONE_STATE_SWITCH = 0x00, + EMBER_ZCL_GP_DEVICE_ID_GP_SIMPLE_GENERIC_TWO_STATE_SWITCH = 0x00, + EMBER_ZCL_GP_DEVICE_ID_GP_ON_OFF_SWITCH = 0x08, + EMBER_ZCL_GP_DEVICE_ID_GP_LEVEL_CONTROL_SWITCH = 0x10, + EMBER_ZCL_GP_DEVICE_ID_GP_SIMPLE_SENSOR = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_ADVANCED_GENERIC_ONE_STATE_SWITCH = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_ADVANCED_GENERIC_TWO_STATE_SWITCH = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_COLOR_DIMMER_SWITCH = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_LIGHT_SENSOR = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_OCCPANCY_SENSOR = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_DOOR_LOCK_CONTROLLER = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_TEMPERATURE_SENSOR = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_PRESSURE_SENSOR = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_FLOW_SENSOR = 0x18, + EMBER_ZCL_GP_DEVICE_ID_GP_INDOOR_ENVIRONMENT_SNESOR = 0x18, } EmberAfGpDeviceId; +// Enum for GpGpdf typedef enum { EMBER_ZCL_GP_GPDF_IDENTIFY = 0x00, @@ -1228,6 +1305,7 @@ typedef enum EMBER_ZCL_GP_GPDF_ZCL_TUNNELING = 0xF6, } EmberAfGpGpdf; +// Enum for GpPairingConfigurationAction typedef enum { EMBER_ZCL_GP_PAIRING_CONFIGURATION_ACTION_NO_ACTION = 0x00, @@ -1238,14 +1316,16 @@ typedef enum EMBER_ZCL_GP_PAIRING_CONFIGURATION_ACTION_APPLICATION_DESCRIPTION = 0x05, } EmberAfGpPairingConfigurationAction; +// Enum for GpPairingConfigurationOptionCommunicationMode typedef enum { EMBER_ZCL_GP_PAIRING_CONFIGURATION_OPTION_COMMUNICATION_MODE_UNICAST_FORWARDING = 0x00, - EMBER_ZCL_GP_PAIRING_CONFIGURATION_OPTION_COMMUNICATION_MODE_GROUPCAST_FORWARDING_TO_D_GROUP_I_D = 0x08, + EMBER_ZCL_GP_PAIRING_CONFIGURATION_OPTION_COMMUNICATION_MODE_GROUPCAST_FORWARDING_TO_D_GROUP_ID = 0x08, EMBER_ZCL_GP_PAIRING_CONFIGURATION_OPTION_COMMUNICATION_MODE_GROUPCAST_FORWARDING_TO_PRE_COMMISSIONED = 0x10, EMBER_ZCL_GP_PAIRING_CONFIGURATION_OPTION_COMMUNICATION_MODE_UNICAST_FORWARDING_LIGHTWEIGHT = 0x18, } EmberAfGpPairingConfigurationOptionCommunicationMode; +// Enum for GpPairingOptionsCommunicationMode typedef enum { EMBER_ZCL_GP_PAIRING_OPTIONS_COMMUNICATION_MODE_FULL_UNICAST_FORWARDING = 0x00, @@ -1254,18 +1334,21 @@ typedef enum EMBER_ZCL_GP_PAIRING_OPTIONS_COMMUNICATION_MODE_UNICAST_FORWARDING_BY_PROX_SUPPORT = 0x11, } EmberAfGpPairingOptionsCommunicationMode; +// Enum for GpProxyTableRequestOptionsRequestType typedef enum { EMBER_ZCL_GP_PROXY_TABLE_REQUEST_OPTIONS_REQUEST_TYPE_BY_GPD_ID = 0x00, EMBER_ZCL_GP_PROXY_TABLE_REQUEST_OPTIONS_REQUEST_TYPE_BY_INDEX = 0x01, } EmberAfGpProxyTableRequestOptionsRequestType; +// Enum for GpProxyTableResponseStatus typedef enum { EMBER_ZCL_GP_PROXY_TABLE_RESPONSE_STATUS_SUCCESS = 0x00, EMBER_ZCL_GP_PROXY_TABLE_RESPONSE_STATUS_NOT_FOUND = 0x8B, } EmberAfGpProxyTableResponseStatus; +// Enum for GpSecurityKeyType typedef enum { EMBER_ZCL_GP_SECURITY_KEY_TYPE_NONE = 0x00, @@ -1276,24 +1359,28 @@ typedef enum EMBER_ZCL_GP_SECURITY_KEY_TYPE_DERIVED_INDIVIDUAL_GPD_KEY = 0x07, } EmberAfGpSecurityKeyType; +// Enum for GpSinkTableRequestOptions typedef enum { EMBER_ZCL_GP_SINK_TABLE_REQUEST_OPTIONS_REQUEST_TABLE_ENTRIES_BY_GPD_ID = 0x00, EMBER_ZCL_GP_SINK_TABLE_REQUEST_OPTIONS_REQUEST_TABLE_ENTRIES_BY_INDEX = 0x01, } EmberAfGpSinkTableRequestOptions; +// Enum for GpSinkTableResponseStatus typedef enum { EMBER_ZCL_GP_SINK_TABLE_RESPONSE_STATUS_SUCCESS = 0x00, EMBER_ZCL_GP_SINK_TABLE_RESPONSE_STATUS_NOT_FOUND = 0x8B, } EmberAfGpSinkTableResponseStatus; +// Enum for GpTranslationTableResponseStatus typedef enum { EMBER_ZCL_GP_TRANSLATION_TABLE_RESPONSE_STATUS_SUCCESS = 0x00, EMBER_ZCL_GP_TRANSLATION_TABLE_RESPONSE_STATUS_NOT_FOUND = 0x8B, } EmberAfGpTranslationTableResponseStatus; +// Enum for GpTranslationTableUpdateAction typedef enum { EMBER_ZCL_GP_TRANSLATION_TABLE_UPDATE_ACTION_ADD_TRANSLATION_TABLE_ENTRY = 0x00, @@ -1302,79 +1389,89 @@ typedef enum EMBER_ZCL_GP_TRANSLATION_TABLE_UPDATE_ACTION_RESERVED = 0x18, } EmberAfGpTranslationTableUpdateAction; +// Enum for HeatAndCoolingSpecificAlarmGroups typedef enum { EMBER_ZCL_HEAT_AND_COOLING_SPECIFIC_ALARM_GROUPS_INLET_TEMPERATURE_SENSOR_FAULT = 0x50, EMBER_ZCL_HEAT_AND_COOLING_SPECIFIC_ALARM_GROUPS_OUTLET_TEMPERATURE_SENSOR_FAULT = 0x51, } EmberAfHeatAndCoolingSpecificAlarmGroups; +// Enum for HueDirection typedef enum { - EMBER_ZCL_HUE_DIRECTION_SHORTEST_DISTANCE = 0x00, - EMBER_ZCL_HUE_DIRECTION_LONGEST_DISTANCE = 0x01, - EMBER_ZCL_HUE_DIRECTION_UP = 0x02, - EMBER_ZCL_HUE_DIRECTION_DOWN = 0x03, + EMBER_ZCL_HUE_DIRECTION_SHORTEST_DISTANCE = 0x0, + EMBER_ZCL_HUE_DIRECTION_LONGEST_DISTANCE = 0x1, + EMBER_ZCL_HUE_DIRECTION_UP = 0x2, + EMBER_ZCL_HUE_DIRECTION_DOWN = 0x3, } EmberAfHueDirection; +// Enum for HueMoveMode typedef enum { - EMBER_ZCL_HUE_MOVE_MODE_STOP = 0x00, - EMBER_ZCL_HUE_MOVE_MODE_UP = 0x01, - EMBER_ZCL_HUE_MOVE_MODE_DOWN = 0x03, + EMBER_ZCL_HUE_MOVE_MODE_STOP = 0x0, + EMBER_ZCL_HUE_MOVE_MODE_UP = 0x1, + EMBER_ZCL_HUE_MOVE_MODE_DOWN = 0x3, } EmberAfHueMoveMode; +// Enum for HueStepMode typedef enum { - EMBER_ZCL_HUE_STEP_MODE_UP = 0x01, - EMBER_ZCL_HUE_STEP_MODE_DOWN = 0x03, + EMBER_ZCL_HUE_STEP_MODE_UP = 0x1, + EMBER_ZCL_HUE_STEP_MODE_DOWN = 0x3, } EmberAfHueStepMode; +// Enum for IasAceAlarmStatus typedef enum { - EMBER_ZCL_IAS_ACE_ALARM_STATUS_NO_ALARM = 0x00, - EMBER_ZCL_IAS_ACE_ALARM_STATUS_BURGLAR = 0x01, - EMBER_ZCL_IAS_ACE_ALARM_STATUS_FIRE = 0x02, - EMBER_ZCL_IAS_ACE_ALARM_STATUS_EMERGENCY = 0x03, - EMBER_ZCL_IAS_ACE_ALARM_STATUS_POLICE_PANIC = 0x04, - EMBER_ZCL_IAS_ACE_ALARM_STATUS_FIRE_PANIC = 0x05, - EMBER_ZCL_IAS_ACE_ALARM_STATUS_EMERGENCY_PANIC = 0x06, + EMBER_ZCL_IAS_ACE_ALARM_STATUS_NO_ALARM = 0x0, + EMBER_ZCL_IAS_ACE_ALARM_STATUS_BURGLAR = 0x1, + EMBER_ZCL_IAS_ACE_ALARM_STATUS_FIRE = 0x2, + EMBER_ZCL_IAS_ACE_ALARM_STATUS_EMERGENCY = 0x3, + EMBER_ZCL_IAS_ACE_ALARM_STATUS_POLICE_PANIC = 0x4, + EMBER_ZCL_IAS_ACE_ALARM_STATUS_FIRE_PANIC = 0x5, + EMBER_ZCL_IAS_ACE_ALARM_STATUS_EMERGENCY_PANIC = 0x6, } EmberAfIasAceAlarmStatus; +// Enum for IasAceArmMode typedef enum { - EMBER_ZCL_IAS_ACE_ARM_MODE_DISARM = 0x00, - EMBER_ZCL_IAS_ACE_ARM_MODE_ARM_DAY_HOME_ZONES_ONLY = 0x01, - EMBER_ZCL_IAS_ACE_ARM_MODE_ARM_NIGHT_SLEEP_ZONES_ONLY = 0x02, - EMBER_ZCL_IAS_ACE_ARM_MODE_ARM_ALL_ZONES = 0x03, + EMBER_ZCL_IAS_ACE_ARM_MODE_DISARM = 0x0, + EMBER_ZCL_IAS_ACE_ARM_MODE_ARM_DAY_HOME_ZONES_ONLY = 0x1, + EMBER_ZCL_IAS_ACE_ARM_MODE_ARM_NIGHT_SLEEP_ZONES_ONLY = 0x2, + EMBER_ZCL_IAS_ACE_ARM_MODE_ARM_ALL_ZONES = 0x3, } EmberAfIasAceArmMode; +// Enum for IasAceArmNotification typedef enum { - EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_ALL_ZONES_DISARMED = 0x00, - EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_ONLY_DAY_HOME_ZONES_ARMED = 0x01, - EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_ONLY_NIGHT_SLEEP_ZONES_ARMED = 0x02, - EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_ALL_ZONES_ARMED = 0x03, + EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_ALL_ZONES_DISARMED = 0x0, + EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_ONLY_DAY_HOME_ZONES_ARMED = 0x1, + EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_ONLY_NIGHT_SLEEP_ZONES_ARMED = 0x2, + EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_ALL_ZONES_ARMED = 0x3, EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_INVALID_ARM_DISARM_CODE = 0x04, EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_NOT_READY_TO_ARM = 0x05, EMBER_ZCL_IAS_ACE_ARM_NOTIFICATION_ALREADY_DISARMED = 0x06, } EmberAfIasAceArmNotification; +// Enum for IasAceAudibleNotification typedef enum { - EMBER_ZCL_IAS_ACE_AUDIBLE_NOTIFICATION_MUTE = 0x00, - EMBER_ZCL_IAS_ACE_AUDIBLE_NOTIFICATION_DEFAULT_SOUND = 0x01, + EMBER_ZCL_IAS_ACE_AUDIBLE_NOTIFICATION_MUTE = 0x0, + EMBER_ZCL_IAS_ACE_AUDIBLE_NOTIFICATION_DEFAULT_SOUND = 0x1, } EmberAfIasAceAudibleNotification; +// Enum for IasAceBypassResult typedef enum { - EMBER_ZCL_IAS_ACE_BYPASS_RESULT_ZONE_BYPASSED = 0x00, - EMBER_ZCL_IAS_ACE_BYPASS_RESULT_ZONE_NOT_BYPASSED = 0x01, - EMBER_ZCL_IAS_ACE_BYPASS_RESULT_NOT_ALLOWED = 0x02, - EMBER_ZCL_IAS_ACE_BYPASS_RESULT_INVALID_ZONE_ID = 0x03, - EMBER_ZCL_IAS_ACE_BYPASS_RESULT_UNKNOWN_ZONE_ID = 0x04, - EMBER_ZCL_IAS_ACE_BYPASS_RESULT_INVALID_ARM_DISARM_CODE = 0x05, + EMBER_ZCL_IAS_ACE_BYPASS_RESULT_ZONE_BYPASSED = 0x0, + EMBER_ZCL_IAS_ACE_BYPASS_RESULT_ZONE_NOT_BYPASSED = 0x1, + EMBER_ZCL_IAS_ACE_BYPASS_RESULT_NOT_ALLOWED = 0x2, + EMBER_ZCL_IAS_ACE_BYPASS_RESULT_INVALID_ZONE_ID = 0x3, + EMBER_ZCL_IAS_ACE_BYPASS_RESULT_UNKNOWN_ZONE_ID = 0x4, + EMBER_ZCL_IAS_ACE_BYPASS_RESULT_INVALID_ARM_DISARM_CODE = 0x5, } EmberAfIasAceBypassResult; +// Enum for IasAcePanelStatus typedef enum { EMBER_ZCL_IAS_ACE_PANEL_STATUS_PANEL_DISARMED = 0x00, @@ -1390,40 +1487,44 @@ typedef enum EMBER_ZCL_IAS_ACE_PANEL_STATUS_ARMING_AWAY = 0x0A, } EmberAfIasAcePanelStatus; +// Enum for IasEnrollResponseCode typedef enum { - EMBER_ZCL_IAS_ENROLL_RESPONSE_CODE_SUCCESS = 0x00, - EMBER_ZCL_IAS_ENROLL_RESPONSE_CODE_NOT_SUPPORTED = 0x01, - EMBER_ZCL_IAS_ENROLL_RESPONSE_CODE_NO_ENROLL_PERMIT = 0x02, - EMBER_ZCL_IAS_ENROLL_RESPONSE_CODE_TOO_MANY_ZONES = 0x03, + EMBER_ZCL_IAS_ENROLL_RESPONSE_CODE_SUCCESS = 0x0, + EMBER_ZCL_IAS_ENROLL_RESPONSE_CODE_NOT_SUPPORTED = 0x1, + EMBER_ZCL_IAS_ENROLL_RESPONSE_CODE_NO_ENROLL_PERMIT = 0x2, + EMBER_ZCL_IAS_ENROLL_RESPONSE_CODE_TOO_MANY_ZONES = 0x3, } EmberAfIasEnrollResponseCode; +// Enum for IasZoneState typedef enum { - EMBER_ZCL_IAS_ZONE_STATE_NOT_ENROLLED = 0x00, - EMBER_ZCL_IAS_ZONE_STATE_ENROLLED = 0x01, + EMBER_ZCL_IAS_ZONE_STATE_NOT_ENROLLED = 0x0, + EMBER_ZCL_IAS_ZONE_STATE_ENROLLED = 0x1, } EmberAfIasZoneState; -typedef enum -{ - EMBER_ZCL_IAS_ZONE_TYPE_STANDARD_CIE = 0x0000, - EMBER_ZCL_IAS_ZONE_TYPE_MOTION_SENSOR = 0x000D, - EMBER_ZCL_IAS_ZONE_TYPE_CONTACT_SWITCH = 0x0015, - EMBER_ZCL_IAS_ZONE_TYPE_FIRE_SENSOR = 0x0028, - EMBER_ZCL_IAS_ZONE_TYPE_WATER_SENSOR = 0x002A, - EMBER_ZCL_IAS_ZONE_TYPE_GAS_SENSOR = 0x002B, - EMBER_ZCL_IAS_ZONE_TYPE_PERSONAL_EMERGENCY_DEVICE = 0x002C, - EMBER_ZCL_IAS_ZONE_TYPE_VIBRATION_MOVEMENT_SENSOR = 0x002D, - EMBER_ZCL_IAS_ZONE_TYPE_REMOTE_CONTROL = 0x010F, - EMBER_ZCL_IAS_ZONE_TYPE_KEY_FOB = 0x0115, - EMBER_ZCL_IAS_ZONE_TYPE_KEYPAD = 0x021D, - EMBER_ZCL_IAS_ZONE_TYPE_STANDARD_WARNING_DEVICE = 0x0225, - EMBER_ZCL_IAS_ZONE_TYPE_GLASS_BREAK_SENSOR = 0x0226, - EMBER_ZCL_IAS_ZONE_TYPE_CARBON_MONOXIDE_SENSOR = 0x0227, +// Enum for IasZoneType +typedef enum +{ + EMBER_ZCL_IAS_ZONE_TYPE_STANDARD_CIE = 0x0, + EMBER_ZCL_IAS_ZONE_TYPE_MOTION_SENSOR = 0xd, + EMBER_ZCL_IAS_ZONE_TYPE_CONTACT_SWITCH = 0x15, + EMBER_ZCL_IAS_ZONE_TYPE_FIRE_SENSOR = 0x28, + EMBER_ZCL_IAS_ZONE_TYPE_WATER_SENSOR = 0x2a, + EMBER_ZCL_IAS_ZONE_TYPE_GAS_SENSOR = 0x2b, + EMBER_ZCL_IAS_ZONE_TYPE_PERSONAL_EMERGENCY_DEVICE = 0x2c, + EMBER_ZCL_IAS_ZONE_TYPE_VIBRATION_MOVEMENT_SENSOR = 0x2d, + EMBER_ZCL_IAS_ZONE_TYPE_REMOTE_CONTROL = 0x10f, + EMBER_ZCL_IAS_ZONE_TYPE_KEY_FOB = 0x115, + EMBER_ZCL_IAS_ZONE_TYPE_KEYPAD = 0x21d, + EMBER_ZCL_IAS_ZONE_TYPE_STANDARD_WARNING_DEVICE = 0x225, + EMBER_ZCL_IAS_ZONE_TYPE_GLASS_BREAK_SENSOR = 0x226, + EMBER_ZCL_IAS_ZONE_TYPE_CARBON_MONOXIDE_SENSOR = 0x227, EMBER_ZCL_IAS_ZONE_TYPE_SECURITY_REPEATER = 0x0229, EMBER_ZCL_IAS_ZONE_TYPE_INVALID_ZONE_TYPE = 0xFFFF, } EmberAfIasZoneType; +// Enum for IdentifyEffectIdentifier typedef enum { EMBER_ZCL_IDENTIFY_EFFECT_IDENTIFIER_BLINK = 0x00, @@ -1434,11 +1535,13 @@ typedef enum EMBER_ZCL_IDENTIFY_EFFECT_IDENTIFIER_STOP_EFFECT = 0xFF, } EmberAfIdentifyEffectIdentifier; +// Enum for IdentifyEffectVariant typedef enum { EMBER_ZCL_IDENTIFY_EFFECT_VARIANT_DEFAULT = 0x00, } EmberAfIdentifyEffectVariant; +// Enum for KeyIndex typedef enum { EMBER_ZCL_KEY_INDEX_DEVELOPMENT = 0x00, @@ -1446,37 +1549,42 @@ typedef enum EMBER_ZCL_KEY_INDEX_CERTIFICATION = 0x0F, } EmberAfKeyIndex; +// Enum for KeypadLockout typedef enum { - EMBER_ZCL_KEYPAD_LOCKOUT_NO_LOCKOUT = 0x00, - EMBER_ZCL_KEYPAD_LOCKOUT_LEVEL_ONE_LOCKOUT = 0x01, - EMBER_ZCL_KEYPAD_LOCKOUT_LEVEL_TWO_LOCKOUT = 0x02, - EMBER_ZCL_KEYPAD_LOCKOUT_LEVEL_THREE_LOCKOUT = 0x03, - EMBER_ZCL_KEYPAD_LOCKOUT_LEVEL_FOUR_LOCKOUT = 0x04, - EMBER_ZCL_KEYPAD_LOCKOUT_LEVELFIVE_LOCKOUT = 0x05, + EMBER_ZCL_KEYPAD_LOCKOUT_NO_LOCKOUT = 0x0, + EMBER_ZCL_KEYPAD_LOCKOUT_LEVEL_ONE_LOCKOUT = 0x1, + EMBER_ZCL_KEYPAD_LOCKOUT_LEVEL_TWO_LOCKOUT = 0x2, + EMBER_ZCL_KEYPAD_LOCKOUT_LEVEL_THREE_LOCKOUT = 0x3, + EMBER_ZCL_KEYPAD_LOCKOUT_LEVEL_FOUR_LOCKOUT = 0x4, + EMBER_ZCL_KEYPAD_LOCKOUT_LEVELFIVE_LOCKOUT = 0x5, } EmberAfKeypadLockout; +// Enum for LevelControlOptions typedef enum { - EMBER_ZCL_LEVEL_CONTROL_OPTIONS_EXECUTE_IF_OFF = 0x01, + EMBER_ZCL_LEVEL_CONTROL_OPTIONS_EXECUTE_IF_OFF = 0x1, EMBER_ZCL_LEVEL_CONTROL_OPTIONS_COUPLE_COLOR_TEMP_TO_LEVEL = 0x02, } EmberAfLevelControlOptions; +// Enum for LevelStatus typedef enum { - EMBER_ZCL_LEVEL_STATUS_ON_TARGET = 0x00, - EMBER_ZCL_LEVEL_STATUS_BELOW_TARGET = 0x01, - EMBER_ZCL_LEVEL_STATUS_ABOVE_TARGET = 0x02, + EMBER_ZCL_LEVEL_STATUS_ON_TARGET = 0x0, + EMBER_ZCL_LEVEL_STATUS_BELOW_TARGET = 0x1, + EMBER_ZCL_LEVEL_STATUS_ABOVE_TARGET = 0x2, } EmberAfLevelStatus; +// Enum for LocationMethod typedef enum { - EMBER_ZCL_LOCATION_METHOD_LATERATION = 0x00, - EMBER_ZCL_LOCATION_METHOD_SIGNPOSTING = 0x01, - EMBER_ZCL_LOCATION_METHOD_RF_FINGERPRINTING = 0x02, - EMBER_ZCL_LOCATION_METHOD_OUT_OF_BAND = 0x03, + EMBER_ZCL_LOCATION_METHOD_LATERATION = 0x0, + EMBER_ZCL_LOCATION_METHOD_SIGNPOSTING = 0x1, + EMBER_ZCL_LOCATION_METHOD_RF_FINGERPRINTING = 0x2, + EMBER_ZCL_LOCATION_METHOD_OUT_OF_BAND = 0x3, } EmberAfLocationMethod; +// Enum for ManufacturerSpecificAlarmGroups typedef enum { EMBER_ZCL_MANUFACTURER_SPECIFIC_ALARM_GROUPS_MANUFACTURER_SPECIFIC_A = 0xB0, @@ -1490,24 +1598,28 @@ typedef enum EMBER_ZCL_MANUFACTURER_SPECIFIC_ALARM_GROUPS_MANUFACTURER_SPECIFIC_I = 0xB8, } EmberAfManufacturerSpecificAlarmGroups; +// Enum for MeasurementLightSensorType typedef enum { - EMBER_ZCL_MEASUREMENT_LIGHT_SENSOR_TYPE_PHOTODIODE = 0x00, - EMBER_ZCL_MEASUREMENT_LIGHT_SENSOR_TYPE_CMOS = 0x01, + EMBER_ZCL_MEASUREMENT_LIGHT_SENSOR_TYPE_PHOTODIODE = 0x0, + EMBER_ZCL_MEASUREMENT_LIGHT_SENSOR_TYPE_CMOS = 0x1, } EmberAfMeasurementLightSensorType; +// Enum for MessagingControlConfirmation typedef enum { EMBER_ZCL_MESSAGING_CONTROL_CONFIRMATION_NOT_REQUIRED = 0x00, EMBER_ZCL_MESSAGING_CONTROL_CONFIRMATION_REQUIRED = 0x80, } EmberAfMessagingControlConfirmation; +// Enum for MessagingControlEnhancedConfirmation typedef enum { EMBER_ZCL_MESSAGING_CONTROL_ENHANCED_CONFIRMATION_NOT_REQUIRED = 0x00, EMBER_ZCL_MESSAGING_CONTROL_ENHANCED_CONFIRMATION_REQUIRED = 0x20, } EmberAfMessagingControlEnhancedConfirmation; +// Enum for MessagingControlImportance typedef enum { EMBER_ZCL_MESSAGING_CONTROL_IMPORTANCE_LOW = 0x00, @@ -1516,6 +1628,7 @@ typedef enum EMBER_ZCL_MESSAGING_CONTROL_IMPORTANCE_CRITICAL = 0x0C, } EmberAfMessagingControlImportance; +// Enum for MessagingControlTransmission typedef enum { EMBER_ZCL_MESSAGING_CONTROL_TRANSMISSION_NORMAL = 0x00, @@ -1524,6 +1637,7 @@ typedef enum EMBER_ZCL_MESSAGING_CONTROL_TRANSMISSION_RESERVED = 0x03, } EmberAfMessagingControlTransmission; +// Enum for MeterDeviceType typedef enum { EMBER_ZCL_METER_DEVICE_TYPE_ELECTRIC_METER = 0x00, @@ -1542,6 +1656,7 @@ typedef enum EMBER_ZCL_METER_DEVICE_TYPE_UNDEFINED_MIRROR_METER = 0xFE, } EmberAfMeterDeviceType; +// Enum for MeterTypeId typedef enum { EMBER_ZCL_METER_TYPE_ID_UTILITY_PRIMARY_METER = 0x0000, @@ -1553,6 +1668,7 @@ typedef enum EMBER_ZCL_METER_TYPE_ID_GENERIC_METER = 0x0110, } EmberAfMeterTypeId; +// Enum for MeteringAlarmCode typedef enum { EMBER_ZCL_METERING_ALARM_CODE_CHECK_METER = 0x00, @@ -1569,8 +1685,8 @@ typedef enum EMBER_ZCL_METERING_ALARM_CODE_NO_STRONG_MAGNETIC_FIELD = 0x0B, EMBER_ZCL_METERING_ALARM_CODE_BATTERY_FAILURE = 0x0C, EMBER_ZCL_METERING_ALARM_CODE_PROGRAM_MEMORY_ERROR = 0x0D, - EMBER_ZCL_METERING_ALARM_CODE_R_A_M_ERROR = 0x0E, - EMBER_ZCL_METERING_ALARM_CODE_N_V_MEMORY_ERROR = 0x0F, + EMBER_ZCL_METERING_ALARM_CODE_RAM_ERROR = 0x0E, + EMBER_ZCL_METERING_ALARM_CODE_NV_MEMORY_ERROR = 0x0F, EMBER_ZCL_METERING_ALARM_CODE_LOW_VOLTAGE_L1 = 0x10, EMBER_ZCL_METERING_ALARM_CODE_HIGH_VOLTAGE_L1 = 0x11, EMBER_ZCL_METERING_ALARM_CODE_LOW_VOLTAGE_L2 = 0x12, @@ -1593,8 +1709,8 @@ typedef enum EMBER_ZCL_METERING_ALARM_CODE_UNDER_VOLTAGE = 0x23, EMBER_ZCL_METERING_ALARM_CODE_OVER_VOLTAGE = 0x24, EMBER_ZCL_METERING_ALARM_CODE_NORMAL_VOLTAGE = 0x25, - EMBER_ZCL_METERING_ALARM_CODE_P_F_BELOW_THRESHOLD = 0x26, - EMBER_ZCL_METERING_ALARM_CODE_P_F_ABOVE_THRESHOLD = 0x27, + EMBER_ZCL_METERING_ALARM_CODE_PF_BELOW_THRESHOLD = 0x26, + EMBER_ZCL_METERING_ALARM_CODE_PF_ABOVE_THRESHOLD = 0x27, EMBER_ZCL_METERING_ALARM_CODE_TERMINAL_COVER_REMOVED = 0x28, EMBER_ZCL_METERING_ALARM_CODE_TERMINAL_COVER_CLOSED = 0x29, EMBER_ZCL_METERING_ALARM_CODE_BURST_DETECT = 0x30, @@ -1662,6 +1778,7 @@ typedef enum EMBER_ZCL_METERING_ALARM_CODE_MANUFACTURER_SPECIFIC_I = 0xB8, } EmberAfMeteringAlarmCode; +// Enum for MeteringBlockEnumerations typedef enum { EMBER_ZCL_METERING_BLOCK_ENUMERATIONS_NO_BLOCKS_IN_USE = 0x00, @@ -1683,6 +1800,7 @@ typedef enum EMBER_ZCL_METERING_BLOCK_ENUMERATIONS_BLOCK16 = 0x10, } EmberAfMeteringBlockEnumerations; +// Enum for MeteringConsumptionStatus typedef enum { EMBER_ZCL_METERING_CONSUMPTION_STATUS_LOW_ENERGY_USAGE = 0x00, @@ -1690,6 +1808,7 @@ typedef enum EMBER_ZCL_METERING_CONSUMPTION_STATUS_HIGH_ENERGY_USAGE = 0x02, } EmberAfMeteringConsumptionStatus; +// Enum for MeteringDeviceType typedef enum { EMBER_ZCL_METERING_DEVICE_TYPE_ELECTRIC_METERING = 0x00, @@ -1727,6 +1846,7 @@ typedef enum EMBER_ZCL_METERING_DEVICE_TYPE_UNDEFINED_MIRROR_METER = 0xFE, } EmberAfMeteringDeviceType; +// Enum for MeteringSupplyStatus typedef enum { EMBER_ZCL_METERING_SUPPLY_STATUS_SUPPLY_OFF = 0x00, @@ -1734,6 +1854,7 @@ typedef enum EMBER_ZCL_METERING_SUPPLY_STATUS_SUPPLY_ON = 0x02, } EmberAfMeteringSupplyStatus; +// Enum for MeteringTemperatureUnitOfMeasure typedef enum { EMBER_ZCL_METERING_TEMPERATURE_UNIT_OF_MEASURE_KELVIN = 0x00, @@ -1744,12 +1865,14 @@ typedef enum EMBER_ZCL_METERING_TEMPERATURE_UNIT_OF_MEASURE_FAHRENHEIT_BCD = 0x82, } EmberAfMeteringTemperatureUnitOfMeasure; +// Enum for MoveMode typedef enum { - EMBER_ZCL_MOVE_MODE_UP = 0x00, - EMBER_ZCL_MOVE_MODE_DOWN = 0x01, + EMBER_ZCL_MOVE_MODE_UP = 0x0, + EMBER_ZCL_MOVE_MODE_DOWN = 0x1, } EmberAfMoveMode; +// Enum for NotificationScheme typedef enum { EMBER_ZCL_NOTIFICATION_SCHEME_NO_NOTIFICATION_SCHEME_DEFINED = 0x00, @@ -1757,14 +1880,16 @@ typedef enum EMBER_ZCL_NOTIFICATION_SCHEME_PREDEFINED_NOTIFICATION_SCHEME_B = 0x02, } EmberAfNotificationScheme; +// Enum for OccupancySensorType typedef enum { - EMBER_ZCL_OCCUPANCY_SENSOR_TYPE_PIR = 0x00, - EMBER_ZCL_OCCUPANCY_SENSOR_TYPE_ULTRASONIC = 0x01, - EMBER_ZCL_OCCUPANCY_SENSOR_TYPE_PIR_AND_ULTRASONIC = 0x02, - EMBER_ZCL_OCCUPANCY_SENSOR_TYPE_PHYSICAL_CONTACT = 0x03, + EMBER_ZCL_OCCUPANCY_SENSOR_TYPE_PIR = 0x0, + EMBER_ZCL_OCCUPANCY_SENSOR_TYPE_ULTRASONIC = 0x1, + EMBER_ZCL_OCCUPANCY_SENSOR_TYPE_PIR_AND_ULTRASONIC = 0x2, + EMBER_ZCL_OCCUPANCY_SENSOR_TYPE_PHYSICAL_CONTACT = 0x3, } EmberAfOccupancySensorType; +// Enum for OnOffDelayedAllOffEffectVariant typedef enum { EMBER_ZCL_ON_OFF_DELAYED_ALL_OFF_EFFECT_VARIANT_FADE_TO_OFF_IN_0P8_SECONDS = 0x00, @@ -1772,23 +1897,27 @@ typedef enum EMBER_ZCL_ON_OFF_DELAYED_ALL_OFF_EFFECT_VARIANT_50_PERCENT_DIM_DOWN_IN_0P8_SECONDS_THEN_FADE_TO_OFF_IN_12_SECONDS = 0x02, } EmberAfOnOffDelayedAllOffEffectVariant; +// Enum for OnOffDyingLightEffectVariant typedef enum { EMBER_ZCL_ON_OFF_DYING_LIGHT_EFFECT_VARIANT_20_PERCENTER_DIM_UP_IN_0P5_SECONDS_THEN_FADE_TO_OFF_IN_1_SECOND = 0x00, } EmberAfOnOffDyingLightEffectVariant; +// Enum for OnOffEffectIdentifier typedef enum { EMBER_ZCL_ON_OFF_EFFECT_IDENTIFIER_DELAYED_ALL_OFF = 0x00, EMBER_ZCL_ON_OFF_EFFECT_IDENTIFIER_DYING_LIGHT = 0x01, } EmberAfOnOffEffectIdentifier; +// Enum for OperatingMode typedef enum { - EMBER_ZCL_OPERATING_MODE_NORMAL = 0x00, - EMBER_ZCL_OPERATING_MODE_CONFIGURE = 0x01, + EMBER_ZCL_OPERATING_MODE_NORMAL = 0x0, + EMBER_ZCL_OPERATING_MODE_CONFIGURE = 0x1, } EmberAfOperatingMode; +// Enum for OriginatingDevice typedef enum { EMBER_ZCL_ORIGINATING_DEVICE_ENERGY_SERVICE_INTERFACE = 0x00, @@ -1796,6 +1925,7 @@ typedef enum EMBER_ZCL_ORIGINATING_DEVICE_IN_HOME_DISPLAY_DEVICE = 0x02, } EmberAfOriginatingDevice; +// Enum for PasswordType typedef enum { EMBER_ZCL_PASSWORD_TYPE_PASSWORD1_SERVICE_MENU_ACCESS = 0x01, @@ -1804,6 +1934,7 @@ typedef enum EMBER_ZCL_PASSWORD_TYPE_PASSWORD4 = 0x04, } EmberAfPasswordType; +// Enum for PaymentDiscountDuration typedef enum { EMBER_ZCL_PAYMENT_DISCOUNT_DURATION_CURRENT_BILLING_PERIOD = 0x00, @@ -1813,14 +1944,16 @@ typedef enum EMBER_ZCL_PAYMENT_DISCOUNT_DURATION_ONE_YEAR = 0x04, } EmberAfPaymentDiscountDuration; +// Enum for PhysicalEnvironment typedef enum { - EMBER_ZCL_PHYSICAL_ENVIRONMENT_UNSPECIFIED = 0x00, - EMBER_ZCL_PHYSICAL_ENVIRONMENT_FIRST_PROFILE_SPECIFIED_VALUE = 0x01, - EMBER_ZCL_PHYSICAL_ENVIRONMENT_LAST_PROFILE_SPECIFIED_VALUE = 0x7F, - EMBER_ZCL_PHYSICAL_ENVIRONMENT_UNKNOWN = 0xFF, + EMBER_ZCL_PHYSICAL_ENVIRONMENT_UNSPECIFIED = 0x0, + EMBER_ZCL_PHYSICAL_ENVIRONMENT_FIRST_PROFILE_SPECIFIED_VALUE = 0x1, + EMBER_ZCL_PHYSICAL_ENVIRONMENT_LAST_PROFILE_SPECIFIED_VALUE = 0x7f, + EMBER_ZCL_PHYSICAL_ENVIRONMENT_UNKNOWN = 0xff, } EmberAfPhysicalEnvironment; +// Enum for PowerProfileState typedef enum { EMBER_ZCL_POWER_PROFILE_STATE_POWER_PROFILE_WAITING_TO_START = 0x01, @@ -1834,18 +1967,20 @@ typedef enum EMBER_ZCL_POWER_PROFILE_STATE_POWER_PROFILE_SCHEDULED = 0x09, } EmberAfPowerProfileState; +// Enum for PowerSource typedef enum { - EMBER_ZCL_POWER_SOURCE_UNKNOWN = 0x00, - EMBER_ZCL_POWER_SOURCE_SINGLE_PHASE_MAINS = 0x01, - EMBER_ZCL_POWER_SOURCE_THREE_PHASE_MAINS = 0x02, - EMBER_ZCL_POWER_SOURCE_BATTERY = 0x03, - EMBER_ZCL_POWER_SOURCE_DC_SOURCE = 0x04, - EMBER_ZCL_POWER_SOURCE_EMERGENCY_MAINS_CONSTANT_POWER = 0x05, - EMBER_ZCL_POWER_SOURCE_EMERGENCY_MAINS_TRANSFER_SWITCH = 0x06, + EMBER_ZCL_POWER_SOURCE_UNKNOWN = 0x0, + EMBER_ZCL_POWER_SOURCE_SINGLE_PHASE_MAINS = 0x1, + EMBER_ZCL_POWER_SOURCE_THREE_PHASE_MAINS = 0x2, + EMBER_ZCL_POWER_SOURCE_BATTERY = 0x3, + EMBER_ZCL_POWER_SOURCE_DC_SOURCE = 0x4, + EMBER_ZCL_POWER_SOURCE_EMERGENCY_MAINS_CONSTANT_POWER = 0x5, + EMBER_ZCL_POWER_SOURCE_EMERGENCY_MAINS_TRANSFER_SWITCH = 0x6, EMBER_ZCL_POWER_SOURCE_BATTERY_BACKUP = 0x80, } EmberAfPowerSource; +// Enum for PrePayGenericAlarmGroup typedef enum { EMBER_ZCL_PRE_PAY_GENERIC_ALARM_GROUP_LOW_CREDIT = 0x00, @@ -1857,6 +1992,7 @@ typedef enum EMBER_ZCL_PRE_PAY_GENERIC_ALARM_GROUP_EVENT_LOG_CLEARED = 0x06, } EmberAfPrePayGenericAlarmGroup; +// Enum for PrepayEventAlarmGroup typedef enum { EMBER_ZCL_PREPAY_EVENT_ALARM_GROUP_PHYSICAL_ATTACK_ON_THE_PREPAY_METER = 0x20, @@ -1881,12 +2017,14 @@ typedef enum EMBER_ZCL_PREPAY_EVENT_ALARM_GROUP_MODE_DEFAULT = 0x43, } EmberAfPrepayEventAlarmGroup; +// Enum for PrepaySnapshotPayloadType typedef enum { EMBER_ZCL_PREPAY_SNAPSHOT_PAYLOAD_TYPE_DEBT_CREDIT_STATUS = 0x00, EMBER_ZCL_PREPAY_SNAPSHOT_PAYLOAD_TYPE_NOT_USED = 0xFF, } EmberAfPrepaySnapshotPayloadType; +// Enum for PrepaySwitchAlarmGroup typedef enum { EMBER_ZCL_PREPAY_SWITCH_ALARM_GROUP_SUPPLY_ON = 0x10, @@ -1898,32 +2036,36 @@ typedef enum EMBER_ZCL_PREPAY_SWITCH_ALARM_GROUP_REMOTE_DISCONNECTED = 0x16, } EmberAfPrepaySwitchAlarmGroup; +// Enum for PriceControlAcknowledgement typedef enum { EMBER_ZCL_PRICE_CONTROL_ACKNOWLEDGEMENT_NOT_REQUIRED = 0x00, EMBER_ZCL_PRICE_CONTROL_ACKNOWLEDGEMENT_REQUIRED = 0x01, } EmberAfPriceControlAcknowledgement; -typedef enum -{ - EMBER_ZCL_PRICE_TIER_NO_TIER_RELATED = 0x00, - EMBER_ZCL_PRICE_TIER_TIER1_PRICE_LABEL = 0x01, - EMBER_ZCL_PRICE_TIER_TIER2_PRICE_LABEL = 0x02, - EMBER_ZCL_PRICE_TIER_TIER3_PRICE_LABEL = 0x03, - EMBER_ZCL_PRICE_TIER_TIER4_PRICE_LABEL = 0x04, - EMBER_ZCL_PRICE_TIER_TIER5_PRICE_LABEL = 0x05, - EMBER_ZCL_PRICE_TIER_TIER6_PRICE_LABEL = 0x06, - EMBER_ZCL_PRICE_TIER_TIER7_PRICE_LABEL = 0x07, - EMBER_ZCL_PRICE_TIER_TIER8_PRICE_LABEL = 0x08, - EMBER_ZCL_PRICE_TIER_TIER9_PRICE_LABEL = 0x09, - EMBER_ZCL_PRICE_TIER_TIER10_PRICE_LABEL = 0x0A, - EMBER_ZCL_PRICE_TIER_TIER11_PRICE_LABEL = 0x0B, - EMBER_ZCL_PRICE_TIER_TIER12_PRICE_LABEL = 0x0C, - EMBER_ZCL_PRICE_TIER_TIER13_PRICE_LABEL = 0x0D, - EMBER_ZCL_PRICE_TIER_TIER14_PRICE_LABEL = 0x0E, - EMBER_ZCL_PRICE_TIER_TIER15_PRICE_LABEL = 0x0F, +// Enum for PriceTier +typedef enum +{ + EMBER_ZCL_PRICE_TIER_NO_TIER_RELATED = 0x00, + EMBER_ZCL_PRICE_TIER_TIER1_PRICE_LABEL = 0x01, + EMBER_ZCL_PRICE_TIER_TIER2_PRICE_LABEL = 0x02, + EMBER_ZCL_PRICE_TIER_TIER3_PRICE_LABEL = 0x03, + EMBER_ZCL_PRICE_TIER_TIER4_PRICE_LABEL = 0x04, + EMBER_ZCL_PRICE_TIER_TIER5_PRICE_LABEL = 0x05, + EMBER_ZCL_PRICE_TIER_TIER6_PRICE_LABEL = 0x06, + EMBER_ZCL_PRICE_TIER_TIER7_PRICE_LABEL = 0x07, + EMBER_ZCL_PRICE_TIER_TIER8_PRICE_LABEL = 0x08, + EMBER_ZCL_PRICE_TIER_TIER9_PRICE_LABEL = 0x09, + EMBER_ZCL_PRICE_TIER_TIER10_PRICE_LABEL = 0x0A, + EMBER_ZCL_PRICE_TIER_TIER11_PRICE_LABEL = 0x0B, + EMBER_ZCL_PRICE_TIER_TIER12_PRICE_LABEL = 0x0C, + EMBER_ZCL_PRICE_TIER_TIER13_PRICE_LABEL = 0x0D, + EMBER_ZCL_PRICE_TIER_TIER14_PRICE_LABEL = 0x0E, + EMBER_ZCL_PRICE_TIER_REFER_TO_EXTENDED_PRICE_TIER_FIELD = 0x0F, + EMBER_ZCL_PRICE_TIER_TIER15_PRICE_LABEL = 0x0F, } EmberAfPriceTier; +// Enum for ProductCode typedef enum { EMBER_ZCL_PRODUCT_CODE_MANUFACTURER_DEFINED = 0x00, @@ -1933,6 +2075,7 @@ typedef enum EMBER_ZCL_PRODUCT_CODE_STOCK_KEEPING_UNIT = 0x04, } EmberAfProductCode; +// Enum for ProductTypeId typedef enum { EMBER_ZCL_PRODUCT_TYPE_ID_WHITE_GOODS = 0x0000, @@ -1947,6 +2090,7 @@ typedef enum EMBER_ZCL_PRODUCT_TYPE_ID_REFRIGERATOR_FREEZER = 0x6601, } EmberAfProductTypeId; +// Enum for ProposedSupplyStatus typedef enum { EMBER_ZCL_PROPOSED_SUPPLY_STATUS_RESERVED = 0x00, @@ -1954,6 +2098,7 @@ typedef enum EMBER_ZCL_PROPOSED_SUPPLY_STATUS_SUPPLY_ON = 0x02, } EmberAfProposedSupplyStatus; +// Enum for PublishCppEventCppAuth typedef enum { EMBER_ZCL_PUBLISH_CPP_EVENT_CPP_AUTH_PENDING = 0x00, @@ -1962,24 +2107,27 @@ typedef enum EMBER_ZCL_PUBLISH_CPP_EVENT_CPP_AUTH_FORCED = 0x03, } EmberAfPublishCppEventCppAuth; +// Enum for PumpControlMode typedef enum { - EMBER_ZCL_PUMP_CONTROL_MODE_CONSTANT_SPEED = 0x00, - EMBER_ZCL_PUMP_CONTROL_MODE_CONSTANT_PRESSURE = 0x01, - EMBER_ZCL_PUMP_CONTROL_MODE_PROPORTIONAL_PRESSURE = 0x02, - EMBER_ZCL_PUMP_CONTROL_MODE_CONSTANT_FLOW = 0x03, - EMBER_ZCL_PUMP_CONTROL_MODE_CONSTANT_TEMPERATURE = 0x05, - EMBER_ZCL_PUMP_CONTROL_MODE_AUTOMATIC = 0x07, + EMBER_ZCL_PUMP_CONTROL_MODE_CONSTANT_SPEED = 0x0, + EMBER_ZCL_PUMP_CONTROL_MODE_CONSTANT_PRESSURE = 0x1, + EMBER_ZCL_PUMP_CONTROL_MODE_PROPORTIONAL_PRESSURE = 0x2, + EMBER_ZCL_PUMP_CONTROL_MODE_CONSTANT_FLOW = 0x3, + EMBER_ZCL_PUMP_CONTROL_MODE_CONSTANT_TEMPERATURE = 0x5, + EMBER_ZCL_PUMP_CONTROL_MODE_AUTOMATIC = 0x7, } EmberAfPumpControlMode; +// Enum for PumpOperationMode typedef enum { - EMBER_ZCL_PUMP_OPERATION_MODE_NORMAL = 0x00, - EMBER_ZCL_PUMP_OPERATION_MODE_MINIMUM = 0x01, - EMBER_ZCL_PUMP_OPERATION_MODE_MAXIMUM = 0x02, - EMBER_ZCL_PUMP_OPERATION_MODE_LOCAL = 0x03, + EMBER_ZCL_PUMP_OPERATION_MODE_NORMAL = 0x0, + EMBER_ZCL_PUMP_OPERATION_MODE_MINIMUM = 0x1, + EMBER_ZCL_PUMP_OPERATION_MODE_MAXIMUM = 0x2, + EMBER_ZCL_PUMP_OPERATION_MODE_LOCAL = 0x3, } EmberAfPumpOperationMode; +// Enum for PushHistoricalMeteringData typedef enum { EMBER_ZCL_PUSH_HISTORICAL_METERING_DATA_DAY = 0x0040, @@ -1988,6 +2136,7 @@ typedef enum EMBER_ZCL_PUSH_HISTORICAL_METERING_DATA_YEAR = 0x01C0, } EmberAfPushHistoricalMeteringData; +// Enum for PushHistoricalPaymentData typedef enum { EMBER_ZCL_PUSH_HISTORICAL_PAYMENT_DATA_DAY = 0x0200, @@ -1996,6 +2145,7 @@ typedef enum EMBER_ZCL_PUSH_HISTORICAL_PAYMENT_DATA_YEAR = 0x0E00, } EmberAfPushHistoricalPaymentData; +// Enum for RegisterTier typedef enum { EMBER_ZCL_REGISTER_TIER_NO_TIER_RELATED = 0x00, @@ -2013,21 +2163,25 @@ typedef enum EMBER_ZCL_REGISTER_TIER_CURRENT_TIER12_SUMMATION_DELIVERED_ATTRIBUTE = 0x0C, EMBER_ZCL_REGISTER_TIER_CURRENT_TIER13_SUMMATION_DELIVERED_ATTRIBUTE = 0x0D, EMBER_ZCL_REGISTER_TIER_CURRENT_TIER14_SUMMATION_DELIVERED_ATTRIBUTE = 0x0E, + EMBER_ZCL_REGISTER_TIER_REFER_TO_EXTENDED_REGISTER_TIER_FIELD = 0x0F, EMBER_ZCL_REGISTER_TIER_CURRENT_TIER15_SUMMATION_DELIVERED_ATTRIBUTE = 0x0F, } EmberAfRegisterTier; +// Enum for RelativeHumidityDisplay typedef enum { - EMBER_ZCL_RELATIVE_HUMIDITY_DISPLAY_NOT_DISPLAYED = 0x00, - EMBER_ZCL_RELATIVE_HUMIDITY_DISPLAY_DISPLAYED = 0x01, + EMBER_ZCL_RELATIVE_HUMIDITY_DISPLAY_NOT_DISPLAYED = 0x0, + EMBER_ZCL_RELATIVE_HUMIDITY_DISPLAY_DISPLAYED = 0x1, } EmberAfRelativeHumidityDisplay; +// Enum for RelativeHumidityMode typedef enum { - EMBER_ZCL_RELATIVE_HUMIDITY_MODE_MEASURE_LOCALLY = 0x00, - EMBER_ZCL_RELATIVE_HUMIDITY_MODE_UPDATED_OVER_THE_NETWORK = 0x01, + EMBER_ZCL_RELATIVE_HUMIDITY_MODE_MEASURE_LOCALLY = 0x0, + EMBER_ZCL_RELATIVE_HUMIDITY_MODE_UPDATED_OVER_THE_NETWORK = 0x1, } EmberAfRelativeHumidityMode; +// Enum for RemoteEnableFlags typedef enum { EMBER_ZCL_REMOTE_ENABLE_FLAGS_DISABLED = 0x00, @@ -2036,6 +2190,7 @@ typedef enum EMBER_ZCL_REMOTE_ENABLE_FLAGS_ENABLED_REMOTE_AND_ENERGY_CONTROL = 0x01, } EmberAfRemoteEnableFlags; +// Enum for RepaymentDebtType typedef enum { EMBER_ZCL_REPAYMENT_DEBT_TYPE_DEBT1 = 0x00, @@ -2044,12 +2199,14 @@ typedef enum EMBER_ZCL_REPAYMENT_DEBT_TYPE_ALL_DEBTS = 0xFF, } EmberAfRepaymentDebtType; +// Enum for ReportingDirection typedef enum { EMBER_ZCL_REPORTING_DIRECTION_REPORTED = 0x00, EMBER_ZCL_REPORTING_DIRECTION_RECEIVED = 0x01, } EmberAfReportingDirection; +// Enum for ResultType typedef enum { EMBER_ZCL_RESULT_TYPE_ACCEPTED = 0x00, @@ -2064,49 +2221,57 @@ typedef enum EMBER_ZCL_RESULT_TYPE_ACCEPTED_SUPPLY_ARMED = 0x12, } EmberAfResultType; +// Enum for SampleType typedef enum { EMBER_ZCL_SAMPLE_TYPE_CONSUMPTION_DELIVERED = 0x00, } EmberAfSampleType; +// Enum for SaturationMoveMode typedef enum { - EMBER_ZCL_SATURATION_MOVE_MODE_STOP = 0x00, - EMBER_ZCL_SATURATION_MOVE_MODE_UP = 0x01, - EMBER_ZCL_SATURATION_MOVE_MODE_DOWN = 0x03, + EMBER_ZCL_SATURATION_MOVE_MODE_STOP = 0x0, + EMBER_ZCL_SATURATION_MOVE_MODE_UP = 0x1, + EMBER_ZCL_SATURATION_MOVE_MODE_DOWN = 0x3, } EmberAfSaturationMoveMode; +// Enum for SaturationStepMode typedef enum { - EMBER_ZCL_SATURATION_STEP_MODE_UP = 0x01, - EMBER_ZCL_SATURATION_STEP_MODE_DOWN = 0x03, + EMBER_ZCL_SATURATION_STEP_MODE_UP = 0x1, + EMBER_ZCL_SATURATION_STEP_MODE_DOWN = 0x3, } EmberAfSaturationStepMode; +// Enum for SensingLightSensorType typedef enum { - EMBER_ZCL_SENSING_LIGHT_SENSOR_TYPE_PHOTODIODE = 0x00, - EMBER_ZCL_SENSING_LIGHT_SENSOR_TYPE_CMOS = 0x01, + EMBER_ZCL_SENSING_LIGHT_SENSOR_TYPE_PHOTODIODE = 0x0, + EMBER_ZCL_SENSING_LIGHT_SENSOR_TYPE_CMOS = 0x1, } EmberAfSensingLightSensorType; +// Enum for SetpointAdjustMode typedef enum { - EMBER_ZCL_SETPOINT_ADJUST_MODE_HEAT_SETPOINT = 0x00, - EMBER_ZCL_SETPOINT_ADJUST_MODE_COOL_SETPOINT = 0x01, - EMBER_ZCL_SETPOINT_ADJUST_MODE_HEAT_AND_COOL_SETPOINTS = 0x02, + EMBER_ZCL_SETPOINT_ADJUST_MODE_HEAT_SETPOINT = 0x0, + EMBER_ZCL_SETPOINT_ADJUST_MODE_COOL_SETPOINT = 0x1, + EMBER_ZCL_SETPOINT_ADJUST_MODE_HEAT_AND_COOL_SETPOINTS = 0x2, } EmberAfSetpointAdjustMode; +// Enum for SignatureType typedef enum { EMBER_ZCL_SIGNATURE_TYPE_RESERVED = 0x00, EMBER_ZCL_SIGNATURE_TYPE_ECDSA = 0x01, } EmberAfSignatureType; +// Enum for SnapshotConfirmation typedef enum { EMBER_ZCL_SNAPSHOT_CONFIRMATION_ACCEPTED = 0x00, EMBER_ZCL_SNAPSHOT_CONFIRMATION_SNAPSHOT_CAUSE_NOT_SUPPORTED = 0x01, } EmberAfSnapshotConfirmation; +// Enum for SnapshotPayloadType typedef enum { EMBER_ZCL_SNAPSHOT_PAYLOAD_TYPE_TOU_INFORMATION_SET_DELIVERED_REGISTERS = 0x00, @@ -2120,6 +2285,7 @@ typedef enum EMBER_ZCL_SNAPSHOT_PAYLOAD_TYPE_DATA_UNAVAILABLE = 0x80, } EmberAfSnapshotPayloadType; +// Enum for SnapshotScheduleConfirmation typedef enum { EMBER_ZCL_SNAPSHOT_SCHEDULE_CONFIRMATION_ACCEPTED = 0x00, @@ -2130,25 +2296,30 @@ typedef enum EMBER_ZCL_SNAPSHOT_SCHEDULE_CONFIRMATION_INSUFFICIENT_SPACE_FOR_SNAPSHOT_SCHEDULE = 0x05, } EmberAfSnapshotScheduleConfirmation; +// Enum for SquawkLevel typedef enum { - EMBER_ZCL_SQUAWK_LEVEL_LOW_LEVEL = 0x00, - EMBER_ZCL_SQUAWK_LEVEL_MEDIUM_LEVEL = 0x01, - EMBER_ZCL_SQUAWK_LEVEL_VERY_HIGH_LEVEL = 0x02, + EMBER_ZCL_SQUAWK_LEVEL_LOW_LEVEL = 0x0, + EMBER_ZCL_SQUAWK_LEVEL_MEDIUM_LEVEL = 0x1, + EMBER_ZCL_SQUAWK_LEVEL_HIGH_LEVEL = 0x2, + EMBER_ZCL_SQUAWK_LEVEL_VERY_HIGH_LEVEL = 0x2, } EmberAfSquawkLevel; +// Enum for SquawkMode typedef enum { - EMBER_ZCL_SQUAWK_MODE_SYSTEM_IS_ARMED = 0x00, - EMBER_ZCL_SQUAWK_MODE_SYSTEM_IS_DISARMED = 0x01, + EMBER_ZCL_SQUAWK_MODE_SYSTEM_IS_ARMED = 0x0, + EMBER_ZCL_SQUAWK_MODE_SYSTEM_IS_DISARMED = 0x1, } EmberAfSquawkMode; +// Enum for SquawkStobe typedef enum { - EMBER_ZCL_SQUAWK_STOBE_NO_STROBE = 0x00, - EMBER_ZCL_SQUAWK_STOBE_USE_STROBE = 0x01, + EMBER_ZCL_SQUAWK_STOBE_NO_STROBE = 0x0, + EMBER_ZCL_SQUAWK_STOBE_USE_STROBE = 0x1, } EmberAfSquawkStobe; +// Enum for StartOfWeek typedef enum { EMBER_ZCL_START_OF_WEEK_SUNDAY = 0x00, @@ -2160,6 +2331,7 @@ typedef enum EMBER_ZCL_START_OF_WEEK_SATURDAY = 0x06, } EmberAfStartOfWeek; +// Enum for StartUpOnOffValue typedef enum { EMBER_ZCL_START_UP_ON_OFF_VALUE_SET_TO_OFF = 0x00, @@ -2168,55 +2340,52 @@ typedef enum EMBER_ZCL_START_UP_ON_OFF_VALUE_SET_TO_PREVIOUS = 0xFF, } EmberAfStartUpOnOffValue; -typedef enum -{ - EMBER_ZCL_STATUS_SUCCESS = 0x00, - EMBER_ZCL_STATUS_FAILURE = 0x01, - EMBER_ZCL_STATUS_REQUEST_DENIED = 0x70, - EMBER_ZCL_STATUS_MULTIPLE_REQUEST_NOT_ALLOWED = 0x71, - EMBER_ZCL_STATUS_INDICATION_REDIRECTION_TO_AP = 0x72, - EMBER_ZCL_STATUS_PREFERENCE_DENIED = 0x73, - EMBER_ZCL_STATUS_PREFERENCE_IGNORED = 0x74, - EMBER_ZCL_STATUS_NOT_AUTHORIZED = 0x7E, - EMBER_ZCL_STATUS_RESERVED_FIELD_NOT_ZERO = 0x7F, - EMBER_ZCL_STATUS_MALFORMED_COMMAND = 0x80, - EMBER_ZCL_STATUS_UNSUP_CLUSTER_COMMAND = 0x81, - EMBER_ZCL_STATUS_UNSUP_GENERAL_COMMAND = 0x82, - EMBER_ZCL_STATUS_UNSUP_MANUF_CLUSTER_COMMAND = 0x83, - EMBER_ZCL_STATUS_UNSUP_MANUF_GENERAL_COMMAND = 0x84, - EMBER_ZCL_STATUS_INVALID_FIELD = 0x85, - EMBER_ZCL_STATUS_UNSUPPORTED_ATTRIBUTE = 0x86, - EMBER_ZCL_STATUS_INVALID_VALUE = 0x87, - EMBER_ZCL_STATUS_READ_ONLY = 0x88, - EMBER_ZCL_STATUS_INSUFFICIENT_SPACE = 0x89, - EMBER_ZCL_STATUS_DUPLICATE_EXISTS = 0x8A, - EMBER_ZCL_STATUS_NOT_FOUND = 0x8B, - EMBER_ZCL_STATUS_UNREPORTABLE_ATTRIBUTE = 0x8C, - EMBER_ZCL_STATUS_INVALID_DATA_TYPE = 0x8D, - EMBER_ZCL_STATUS_INVALID_SELECTOR = 0x8E, - EMBER_ZCL_STATUS_WRITE_ONLY = 0x8F, - EMBER_ZCL_STATUS_INCONSISTENT_STARTUP_STATE = 0x90, - EMBER_ZCL_STATUS_DEFINED_OUT_OF_BAND = 0x91, - EMBER_ZCL_STATUS_INCONSISTENT = 0x92, - EMBER_ZCL_STATUS_ACTION_DENIED = 0x93, - EMBER_ZCL_STATUS_TIMEOUT = 0x94, - EMBER_ZCL_STATUS_ABORT = 0x95, - EMBER_ZCL_STATUS_INVALID_IMAGE = 0x96, - EMBER_ZCL_STATUS_WAIT_FOR_DATA = 0x97, - EMBER_ZCL_STATUS_NO_IMAGE_AVAILABLE = 0x98, - EMBER_ZCL_STATUS_REQUIRE_MORE_IMAGE = 0x99, - EMBER_ZCL_STATUS_HARDWARE_FAILURE = 0xC0, - EMBER_ZCL_STATUS_SOFTWARE_FAILURE = 0xC1, - EMBER_ZCL_STATUS_CALIBRATION_ERROR = 0xC2, - EMBER_ZCL_STATUS_UNSUPPORTED_CLUSTER = 0xC3, +// Enum for Status +typedef enum +{ + EMBER_ZCL_STATUS_SUCCESS = 0x00, + EMBER_ZCL_STATUS_FAILURE = 0x01, + EMBER_ZCL_STATUS_NOT_AUTHORIZED = 0x7E, + EMBER_ZCL_STATUS_MALFORMED_COMMAND = 0x80, + EMBER_ZCL_STATUS_UNSUP_COMMAND = 0x81, + EMBER_ZCL_STATUS_UNSUP_GENERAL_COMMAND = 0x82, + EMBER_ZCL_STATUS_UNSUP_MANUF_CLUSTER_COMMAND = 0x83, + EMBER_ZCL_STATUS_UNSUP_MANUF_GENERAL_COMMAND = 0x84, + EMBER_ZCL_STATUS_INVALID_FIELD = 0x85, + EMBER_ZCL_STATUS_UNSUPPORTED_ATTRIBUTE = 0x86, + EMBER_ZCL_STATUS_INVALID_VALUE = 0x87, + EMBER_ZCL_STATUS_READ_ONLY = 0x88, + EMBER_ZCL_STATUS_INSUFFICIENT_SPACE = 0x89, + EMBER_ZCL_STATUS_DUPLICATE_EXISTS = 0x8A, + EMBER_ZCL_STATUS_NOT_FOUND = 0x8B, + EMBER_ZCL_STATUS_UNREPORTABLE_ATTRIBUTE = 0x8C, + EMBER_ZCL_STATUS_INVALID_DATA_TYPE = 0x8D, + EMBER_ZCL_STATUS_INVALID_SELECTOR = 0x8E, + EMBER_ZCL_STATUS_WRITE_ONLY = 0x8F, + EMBER_ZCL_STATUS_INCONSISTENT_STARTUP_STATE = 0x90, + EMBER_ZCL_STATUS_DEFINED_OUT_OF_BAND = 0x91, + EMBER_ZCL_STATUS_ACTION_DENIED = 0x93, + EMBER_ZCL_STATUS_TIMEOUT = 0x94, + EMBER_ZCL_STATUS_ABORT = 0x95, + EMBER_ZCL_STATUS_INVALID_IMAGE = 0x96, + EMBER_ZCL_STATUS_WAIT_FOR_DATA = 0x97, + EMBER_ZCL_STATUS_NO_IMAGE_AVAILABLE = 0x98, + EMBER_ZCL_STATUS_REQUIRE_MORE_IMAGE = 0x99, + EMBER_ZCL_STATUS_NOTIFICATION_PENDING = 0x9A, + EMBER_ZCL_STATUS_HARDWARE_FAILURE = 0xC0, + EMBER_ZCL_STATUS_SOFTWARE_FAILURE = 0xC1, + EMBER_ZCL_STATUS_UNSUPPORTED_CLUSTER = 0xC3, + EMBER_ZCL_STATUS_LIMIT_REACHED = 0xC4, } EmberAfStatus; +// Enum for StepMode typedef enum { - EMBER_ZCL_STEP_MODE_UP = 0x00, - EMBER_ZCL_STEP_MODE_DOWN = 0x01, + EMBER_ZCL_STEP_MODE_UP = 0x0, + EMBER_ZCL_STEP_MODE_DOWN = 0x1, } EmberAfStepMode; +// Enum for SupplyStatus typedef enum { EMBER_ZCL_SUPPLY_STATUS_SUPPLY_OFF = 0x00, @@ -2225,13 +2394,15 @@ typedef enum EMBER_ZCL_SUPPLY_STATUS_SUPPLY_UNCHANGED = 0x03, } EmberAfSupplyStatus; +// Enum for SwitchActions typedef enum { - EMBER_ZCL_SWITCH_ACTIONS_ON = 0x00, - EMBER_ZCL_SWITCH_ACTIONS_OFF = 0x01, - EMBER_ZCL_SWITCH_ACTIONS_TOGGLE = 0x02, + EMBER_ZCL_SWITCH_ACTIONS_ON = 0x0, + EMBER_ZCL_SWITCH_ACTIONS_OFF = 0x1, + EMBER_ZCL_SWITCH_ACTIONS_TOGGLE = 0x2, } EmberAfSwitchActions; +// Enum for SwitchType typedef enum { EMBER_ZCL_SWITCH_TYPE_TOGGLE = 0x00, @@ -2239,6 +2410,7 @@ typedef enum EMBER_ZCL_SWITCH_TYPE_MULTI_FUNCTION = 0x02, } EmberAfSwitchType; +// Enum for TariffChargingScheme typedef enum { EMBER_ZCL_TARIFF_CHARGING_SCHEME_TOU_TARIFF = 0x00, @@ -2247,6 +2419,7 @@ typedef enum EMBER_ZCL_TARIFF_CHARGING_SCHEME_BLOCK_TOU_TARIFF_WITH_INDIVIDUAL_THRESHOLDS_PER_TIER = 0x30, } EmberAfTariffChargingScheme; +// Enum for TariffResolutionPeriod typedef enum { EMBER_ZCL_TARIFF_RESOLUTION_PERIOD_NOT_DEFINED = 0x00, @@ -2254,6 +2427,7 @@ typedef enum EMBER_ZCL_TARIFF_RESOLUTION_PERIOD_ONE_DAY = 0x02, } EmberAfTariffResolutionPeriod; +// Enum for TariffType typedef enum { EMBER_ZCL_TARIFF_TYPE_DELIVERED_TARIFF = 0x00, @@ -2261,28 +2435,32 @@ typedef enum EMBER_ZCL_TARIFF_TYPE_DELIVERED_AND_RECEIVED_TARIFF = 0x02, } EmberAfTariffType; +// Enum for TemperatureDisplayMode typedef enum { - EMBER_ZCL_TEMPERATURE_DISPLAY_MODE_CELSIUS = 0x00, - EMBER_ZCL_TEMPERATURE_DISPLAY_MODE_FAHRENHEIT = 0x01, + EMBER_ZCL_TEMPERATURE_DISPLAY_MODE_CELSIUS = 0x0, + EMBER_ZCL_TEMPERATURE_DISPLAY_MODE_FAHRENHEIT = 0x1, } EmberAfTemperatureDisplayMode; +// Enum for TemperatureSetpointHold typedef enum { EMBER_ZCL_TEMPERATURE_SETPOINT_HOLD_SETPOINT_HOLD_OFF = 0x00, EMBER_ZCL_TEMPERATURE_SETPOINT_HOLD_SETPOINT_HOLD_ON = 0x01, } EmberAfTemperatureSetpointHold; +// Enum for ThermostatControlSequence typedef enum { - EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_COOLING_ONLY = 0x00, - EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_COOLING_WITH_REHEAT = 0x01, - EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_HEATING_ONLY = 0x02, - EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_HEATING_WITH_REHEAT = 0x03, - EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_COOLING_AND_HEATING = 0x04, - EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_COOLING_AND_HEATING_WITH_REHEAT = 0x05, + EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_COOLING_ONLY = 0x0, + EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_COOLING_WITH_REHEAT = 0x1, + EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_HEATING_ONLY = 0x2, + EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_HEATING_WITH_REHEAT = 0x3, + EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_COOLING_AND_HEATING = 0x4, + EMBER_ZCL_THERMOSTAT_CONTROL_SEQUENCE_COOLING_AND_HEATING_WITH_REHEAT = 0x5, } EmberAfThermostatControlSequence; +// Enum for ThermostatRunningMode typedef enum { EMBER_ZCL_THERMOSTAT_RUNNING_MODE_OFF = 0x00, @@ -2290,17 +2468,19 @@ typedef enum EMBER_ZCL_THERMOSTAT_RUNNING_MODE_HEAT = 0x04, } EmberAfThermostatRunningMode; +// Enum for ThermostatSystemMode typedef enum { - EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_OFF = 0x00, - EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_AUTO = 0x01, - EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_COOL = 0x03, - EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_HEAT = 0x04, - EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_EMERGENCY_HEATING = 0x05, - EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_PRECOOLING = 0x06, - EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_FAN_ONLY = 0x07, + EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_OFF = 0x0, + EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_AUTO = 0x1, + EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_COOL = 0x3, + EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_HEAT = 0x4, + EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_EMERGENCY_HEATING = 0x5, + EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_PRECOOLING = 0x6, + EMBER_ZCL_THERMOSTAT_SYSTEM_MODE_FAN_ONLY = 0x7, } EmberAfThermostatSystemMode; +// Enum for TierBlockMode typedef enum { EMBER_ZCL_TIER_BLOCK_MODE_ACTIVE_BLOCK = 0x00, @@ -2309,12 +2489,14 @@ typedef enum EMBER_ZCL_TIER_BLOCK_MODE_NOT_USED = 0xFF, } EmberAfTierBlockMode; +// Enum for TimeEncoding typedef enum { EMBER_ZCL_TIME_ENCODING_RELATIVE = 0x00, EMBER_ZCL_TIME_ENCODING_ABSOLUTE = 0x40, } EmberAfTimeEncoding; +// Enum for TunnelingProtocolId typedef enum { EMBER_ZCL_TUNNELING_PROTOCOL_ID_DLMS_COSEM = 0x00, @@ -2324,9 +2506,12 @@ typedef enum EMBER_ZCL_TUNNELING_PROTOCOL_ID_SML = 0x04, EMBER_ZCL_TUNNELING_PROTOCOL_ID_CLIMATE_TALK = 0x05, EMBER_ZCL_TUNNELING_PROTOCOL_ID_GB_HRGP = 0x06, + EMBER_ZCL_TUNNELING_PROTOCOL_ID_IP_V4 = 0x07, + EMBER_ZCL_TUNNELING_PROTOCOL_ID_IP_V6 = 0x08, EMBER_ZCL_TUNNELING_PROTOCOL_ID_TEST = 0xC7, } EmberAfTunnelingProtocolId; +// Enum for TunnelingTransferDataStatus typedef enum { EMBER_ZCL_TUNNELING_TRANSFER_DATA_STATUS_NO_SUCH_TUNNEL = 0x00, @@ -2334,6 +2519,7 @@ typedef enum EMBER_ZCL_TUNNELING_TRANSFER_DATA_STATUS_DATA_OVERFLOW = 0x02, } EmberAfTunnelingTransferDataStatus; +// Enum for TunnelingTunnelStatus typedef enum { EMBER_ZCL_TUNNELING_TUNNEL_STATUS_SUCCESS = 0x00, @@ -2343,12 +2529,14 @@ typedef enum EMBER_ZCL_TUNNELING_TUNNEL_STATUS_FLOW_CONTROL_NOT_SUPPORTED = 0x04, } EmberAfTunnelingTunnelStatus; +// Enum for WanStatus typedef enum { EMBER_ZCL_WAN_STATUS_CONNECTION_TO_WAN_IS_NOT_AVAILABLE = 0x00, EMBER_ZCL_WAN_STATUS_CONNECTION_TO_WAN_IS_AVAILABLE = 0x01, } EmberAfWanStatus; +// Enum for WarningEvent typedef enum { EMBER_ZCL_WARNING_EVENT_WARNING1_OVERALL_POWER_ABOVE_AVAILABLE_POWER_LEVEL = 0x00, @@ -2358,23 +2546,26 @@ typedef enum EMBER_ZCL_WARNING_EVENT_WARNING5_OVERALL_POWER_WILL_BE_POTENTIALLY_ABOVE_AVAILABLE_POWER_LEVEL_IF_THE_APPLIANCE_STARTS = 0x04, } EmberAfWarningEvent; +// Enum for WarningMode typedef enum { - EMBER_ZCL_WARNING_MODE_STOP = 0x00, - EMBER_ZCL_WARNING_MODE_BURGLAR = 0x01, - EMBER_ZCL_WARNING_MODE_FIRE = 0x02, - EMBER_ZCL_WARNING_MODE_EMERGENCY = 0x03, - EMBER_ZCL_WARNING_MODE_POLICE_PANIC = 0x04, - EMBER_ZCL_WARNING_MODE_FIRE_PANIC = 0x05, - EMBER_ZCL_WARNING_MODE_EMERGENCY_PANIC = 0x06, + EMBER_ZCL_WARNING_MODE_STOP = 0x0, + EMBER_ZCL_WARNING_MODE_BURGLAR = 0x1, + EMBER_ZCL_WARNING_MODE_FIRE = 0x2, + EMBER_ZCL_WARNING_MODE_EMERGENCY = 0x3, + EMBER_ZCL_WARNING_MODE_POLICE_PANIC = 0x4, + EMBER_ZCL_WARNING_MODE_FIRE_PANIC = 0x5, + EMBER_ZCL_WARNING_MODE_EMERGENCY_PANIC = 0x6, } EmberAfWarningMode; +// Enum for WarningStobe typedef enum { - EMBER_ZCL_WARNING_STOBE_NO_STROBE = 0x00, - EMBER_ZCL_WARNING_STOBE_USE_STROBE = 0x01, + EMBER_ZCL_WARNING_STOBE_NO_STROBE = 0x0, + EMBER_ZCL_WARNING_STOBE_USE_STROBE = 0x1, } EmberAfWarningStobe; +// Enum for WwahIasZoneEnrollmentMode typedef enum { EMBER_ZCL_WWAH_IAS_ZONE_ENROLLMENT_MODE_TRIP_TO_PAIR = 0x00, @@ -2382,6 +2573,7 @@ typedef enum EMBER_ZCL_WWAH_IAS_ZONE_ENROLLMENT_MODE_REQUEST = 0x02, } EmberAfWwahIasZoneEnrollmentMode; +// Enum for WwahPowerNotificationReason typedef enum { EMBER_ZCL_WWAH_POWER_NOTIFICATION_REASON_UNKNOWN = 0x00, @@ -2398,6 +2590,7 @@ typedef enum EMBER_ZCL_WWAH_POWER_NOTIFICATION_REASON_BOOTLOAD_FAILURE = 0x0B, } EmberAfWwahPowerNotificationReason; +// Enum for ZigbeeInformationLogicalType typedef enum { EMBER_ZCL_ZIGBEE_INFORMATION_LOGICAL_TYPE_COORDINATOR = 0x00, @@ -2405,308 +2598,35 @@ typedef enum EMBER_ZCL_ZIGBEE_INFORMATION_LOGICAL_TYPE_END_DEVICE = 0x02, } EmberAfZigbeeInformationLogicalType; +// Enum for ZllStatus typedef enum { EMBER_ZCL_ZLL_STATUS_SUCCESS = 0x00, EMBER_ZCL_ZLL_STATUS_FAILURE = 0x01, } EmberAfZllStatus; -#define EMBER_AF_SHADE_CLOSURE_STATUS_OPERATIONAL (0x01) -#define EMBER_AF_SHADE_CLOSURE_STATUS_ADJUSTING (0x02) -#define EMBER_AF_SHADE_CLOSURE_STATUS_ADJUSTING_OFFSET (1) -#define EMBER_AF_SHADE_CLOSURE_STATUS_OPENING (0x04) -#define EMBER_AF_SHADE_CLOSURE_STATUS_OPENING_OFFSET (2) -#define EMBER_AF_SHADE_CLOSURE_STATUS_MOTOR_OPENING (0x08) -#define EMBER_AF_SHADE_CLOSURE_STATUS_MOTOR_OPENING_OFFSET (3) -#define EMBER_AF_ALARM_MASK_GENERAL_HW_FAULT (0x01) -#define EMBER_AF_ALARM_MASK_GENERAL_SW_FAULT (0x02) +#define EMBER_AF_ALARM_MASK_GENERAL_HW_FAULT (0x1) +#define EMBER_AF_ALARM_MASK_GENERAL_HW_FAULT_OFFSET (0) +#define EMBER_AF_ALARM_MASK_GENERAL_SW_FAULT (0x2) #define EMBER_AF_ALARM_MASK_GENERAL_SW_FAULT_OFFSET (1) -#define EMBER_AF_RESTART_OPTIONS_START_MODE1 (0x01) -#define EMBER_AF_RESTART_OPTIONS_STARTUP_MODE2 (0x02) -#define EMBER_AF_RESTART_OPTIONS_STARTUP_MODE2_OFFSET (1) -#define EMBER_AF_RESTART_OPTIONS_STARTUP_MODE3 (0x04) -#define EMBER_AF_RESTART_OPTIONS_STARTUP_MODE3_OFFSET (2) -#define EMBER_AF_RESTART_OPTIONS_IMMEDIATE (0x08) -#define EMBER_AF_RESTART_OPTIONS_IMMEDIATE_OFFSET (3) -#define EMBER_AF_RESET_OPTIONS_RESET_CURRENT (0x01) -#define EMBER_AF_RESET_OPTIONS_RESET_ALL (0x02) -#define EMBER_AF_RESET_OPTIONS_RESET_ALL_OFFSET (1) -#define EMBER_AF_RESET_OPTIONS_ERASE_INDEX (0x04) -#define EMBER_AF_RESET_OPTIONS_ERASE_INDEX_OFFSET (2) -#define EMBER_AF_MAINS_ALARM_MASK_VOLTAGE_TOO_LOW (0x01) -#define EMBER_AF_MAINS_ALARM_MASK_VOLTAGE_TOO_HIGH (0x02) -#define EMBER_AF_MAINS_ALARM_MASK_VOLTAGE_TOO_HIGH_OFFSET (1) -#define EMBER_AF_MAINS_ALARM_MASK_MAINS_POWER_SUPPLY_LOST (0x04) -#define EMBER_AF_MAINS_ALARM_MASK_MAINS_POWER_SUPPLY_LOST_OFFSET (2) -#define EMBER_AF_BATTERY_ALARM_MASK_VOLTAGE_TOO_LOW (0x01) -#define EMBER_AF_DEVICE_TEMP_ALARM_MASK_TOO_LOW (0x01) -#define EMBER_AF_DEVICE_TEMP_ALARM_MASK_TOO_HIGH (0x02) -#define EMBER_AF_DEVICE_TEMP_ALARM_MASK_TOO_HIGH_OFFSET (1) -#define EMBER_AF_TIME_STATUS_MASK_MASTER_CLOCK (0x01) -#define EMBER_AF_TIME_STATUS_MASK_SYNCHRONIZED (0x02) -#define EMBER_AF_TIME_STATUS_MASK_SYNCHRONIZED_OFFSET (1) -#define EMBER_AF_TIME_STATUS_MASK_MASTER_ZONE_DST (0x04) -#define EMBER_AF_TIME_STATUS_MASK_MASTER_ZONE_DST_OFFSET (2) -#define EMBER_AF_TIME_STATUS_MASK_SUPERSEDING (0x08) -#define EMBER_AF_TIME_STATUS_MASK_SUPERSEDING_OFFSET (3) -#define EMBER_AF_LOCATION_TYPE_ABSOLUTE (0x01) -#define EMBER_AF_LOCATION_TYPE2_D (0x02) -#define EMBER_AF_LOCATION_TYPE2_D_OFFSET (1) -#define EMBER_AF_LOCATION_TYPE_COORDINATE_SYSTEM (0x0C) -#define EMBER_AF_LOCATION_TYPE_COORDINATE_SYSTEM_OFFSET (2) -#define EMBER_AF_GET_LOCATION_DATA_FLAGS_ABSOLUTE_ONLY (0x01) -#define EMBER_AF_GET_LOCATION_DATA_FLAGS_RECALCULATE (0x02) -#define EMBER_AF_GET_LOCATION_DATA_FLAGS_RECALCULATE_OFFSET (1) -#define EMBER_AF_GET_LOCATION_DATA_FLAGS_BROADCAST (0x04) -#define EMBER_AF_GET_LOCATION_DATA_FLAGS_BROADCAST_OFFSET (2) -#define EMBER_AF_GET_LOCATION_DATA_FLAGS_BROADCAST_RESPONSE (0x08) -#define EMBER_AF_GET_LOCATION_DATA_FLAGS_BROADCAST_RESPONSE_OFFSET (3) -#define EMBER_AF_GET_LOCATION_DATA_FLAGS_COMPACT_RESPONSE (0x10) -#define EMBER_AF_GET_LOCATION_DATA_FLAGS_COMPACT_RESPONSE_OFFSET (4) -#define EMBER_AF_PUMP_STATUS_DEVICE_FAULT (0x0001) -#define EMBER_AF_PUMP_STATUS_SUPPLYFAULT (0x0002) -#define EMBER_AF_PUMP_STATUS_SUPPLYFAULT_OFFSET (1) -#define EMBER_AF_PUMP_STATUS_SPEED_LOW (0x0004) -#define EMBER_AF_PUMP_STATUS_SPEED_LOW_OFFSET (2) -#define EMBER_AF_PUMP_STATUS_SPEED_HIGH (0x0008) -#define EMBER_AF_PUMP_STATUS_SPEED_HIGH_OFFSET (3) -#define EMBER_AF_PUMP_STATUS_LOCAL_OVERRIDE (0x0010) -#define EMBER_AF_PUMP_STATUS_LOCAL_OVERRIDE_OFFSET (4) -#define EMBER_AF_PUMP_STATUS_RUNNING (0x0020) -#define EMBER_AF_PUMP_STATUS_RUNNING_OFFSET (5) -#define EMBER_AF_PUMP_STATUS_REMOTE_PRESSURE (0x0040) -#define EMBER_AF_PUMP_STATUS_REMOTE_PRESSURE_OFFSET (6) -#define EMBER_AF_PUMP_STATUS_REMOTE_FLOW (0x0080) -#define EMBER_AF_PUMP_STATUS_REMOTE_FLOW_OFFSET (7) -#define EMBER_AF_PUMP_STATUS_REMOTE_TEMPERATURE (0x0100) -#define EMBER_AF_PUMP_STATUS_REMOTE_TEMPERATURE_OFFSET (8) -#define EMBER_AF_PUMP_ALARM_MASK_SUPPLY_VOLTAGE_TOO_LOW (0x0001) -#define EMBER_AF_PUMP_ALARM_MASK_SUPPLY_VOLTAGE_TOO_HIGH (0x0002) -#define EMBER_AF_PUMP_ALARM_MASK_SUPPLY_VOLTAGE_TOO_HIGH_OFFSET (1) -#define EMBER_AF_PUMP_ALARM_MASK_POWER_MISSING_PHASE (0x0004) -#define EMBER_AF_PUMP_ALARM_MASK_POWER_MISSING_PHASE_OFFSET (2) -#define EMBER_AF_PUMP_ALARM_MASK_SYSTEM_PRESSURE_TOO_LOW (0x0008) -#define EMBER_AF_PUMP_ALARM_MASK_SYSTEM_PRESSURE_TOO_LOW_OFFSET (3) -#define EMBER_AF_PUMP_ALARM_MASK_SYSTEM_PRESSURE_TOO_HIGH (0x0010) -#define EMBER_AF_PUMP_ALARM_MASK_SYSTEM_PRESSURE_TOO_HIGH_OFFSET (4) -#define EMBER_AF_PUMP_ALARM_MASK_DRY_RUNNING (0x0020) -#define EMBER_AF_PUMP_ALARM_MASK_DRY_RUNNING_OFFSET (5) -#define EMBER_AF_PUMP_ALARM_MASK_MOTOR_TEMPERATURE_TOO_HIGH (0x0040) -#define EMBER_AF_PUMP_ALARM_MASK_MOTOR_TEMPERATURE_TOO_HIGH_OFFSET (6) -#define EMBER_AF_PUMP_ALARM_MASK_PUMP_MOTOR_HAS_FATAL_FAILURE (0x0080) -#define EMBER_AF_PUMP_ALARM_MASK_PUMP_MOTOR_HAS_FATAL_FAILURE_OFFSET (7) -#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_TEMPERATURE_TOO_HIGH (0x0100) -#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_TEMPERATURE_TOO_HIGH_OFFSET (8) -#define EMBER_AF_PUMP_ALARM_MASK_PUMP_BLOCKED (0x0200) -#define EMBER_AF_PUMP_ALARM_MASK_PUMP_BLOCKED_OFFSET (9) -#define EMBER_AF_PUMP_ALARM_MASK_SENSOR_FAILURE (0x0400) -#define EMBER_AF_PUMP_ALARM_MASK_SENSOR_FAILURE_OFFSET (10) -#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_NON_FATAL_FAILURE (0x0800) -#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_NON_FATAL_FAILURE_OFFSET (11) -#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_FATAL_FAILURE (0x1000) -#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_FATAL_FAILURE_OFFSET (12) -#define EMBER_AF_PUMP_ALARM_MASK_GENERAL_FAULT (0x2000) -#define EMBER_AF_PUMP_ALARM_MASK_GENERAL_FAULT_OFFSET (13) -#define EMBER_AF_THERMOSTAT_OCCUPANCY_OCCUPIED (0x01) -#define EMBER_AF_THERMOSTAT_SENSING_LOCAL_TEMP_SENSED_REMOTELY (0x01) -#define EMBER_AF_THERMOSTAT_SENSING_OUTDOOR_TEMP_SENSED_REMOTELY (0x02) -#define EMBER_AF_THERMOSTAT_SENSING_OUTDOOR_TEMP_SENSED_REMOTELY_OFFSET (1) -#define EMBER_AF_THERMOSTAT_SENSING_OCCUPANCY_SENSED_REMOTELY (0x04) -#define EMBER_AF_THERMOSTAT_SENSING_OCCUPANCY_SENSED_REMOTELY_OFFSET (2) -#define EMBER_AF_THERMOSTAT_ALARM_MASK_INITIALIZATION_FAILURE (0x01) -#define EMBER_AF_THERMOSTAT_ALARM_MASK_HARDWARE_FAILURE (0x02) -#define EMBER_AF_THERMOSTAT_ALARM_MASK_HARDWARE_FAILURE_OFFSET (1) -#define EMBER_AF_THERMOSTAT_ALARM_MASK_SELFCALIBRATION_FAILURE (0x04) -#define EMBER_AF_THERMOSTAT_ALARM_MASK_SELFCALIBRATION_FAILURE_OFFSET (2) -#define EMBER_AF_BALLAST_STATUS_NON_OPERATIONAL (0x01) -#define EMBER_AF_BALLAST_STATUS_LAMP_NOT_IN_SOCKET (0x02) -#define EMBER_AF_BALLAST_STATUS_LAMP_NOT_IN_SOCKET_OFFSET (1) -#define EMBER_AF_LAMP_ALARM_MODE_LAMP_BURN_HOURS (0x01) -#define EMBER_AF_OCCUPANCY_OCCUPIED (0x01) -#define EMBER_AF_IAS_ZONE_STATUS_ALARM1 (0x0001) -#define EMBER_AF_IAS_ZONE_STATUS_ALARM2 (0x0002) -#define EMBER_AF_IAS_ZONE_STATUS_ALARM2_OFFSET (1) -#define EMBER_AF_IAS_ZONE_STATUS_TAMPER (0x0004) -#define EMBER_AF_IAS_ZONE_STATUS_TAMPER_OFFSET (2) -#define EMBER_AF_IAS_ZONE_STATUS_BATTERY (0x0008) -#define EMBER_AF_IAS_ZONE_STATUS_BATTERY_OFFSET (3) -#define EMBER_AF_IAS_ZONE_STATUS_SUPERVISION_REPORTS (0x0010) -#define EMBER_AF_IAS_ZONE_STATUS_SUPERVISION_REPORTS_OFFSET (4) -#define EMBER_AF_IAS_ZONE_STATUS_RESTORE_REPORTS (0x0020) -#define EMBER_AF_IAS_ZONE_STATUS_RESTORE_REPORTS_OFFSET (5) -#define EMBER_AF_IAS_ZONE_STATUS_TROUBLE (0x0040) -#define EMBER_AF_IAS_ZONE_STATUS_TROUBLE_OFFSET (6) -#define EMBER_AF_IAS_ZONE_STATUS_A_C (0x0080) -#define EMBER_AF_IAS_ZONE_STATUS_A_C_OFFSET (7) -#define EMBER_AF_IAS_ZONE_STATUS_TEST (0x0100) -#define EMBER_AF_IAS_ZONE_STATUS_TEST_OFFSET (8) -#define EMBER_AF_IAS_ZONE_STATUS_BATTERY_DEFECT (0x0200) -#define EMBER_AF_IAS_ZONE_STATUS_BATTERY_DEFECT_OFFSET (9) -#define EMBER_AF_WARNING_INFO_MODE (0xF0) -#define EMBER_AF_WARNING_INFO_MODE_OFFSET (4) -#define EMBER_AF_WARNING_INFO_STROBE (0x0C) -#define EMBER_AF_WARNING_INFO_STROBE_OFFSET (2) -#define EMBER_AF_WARNING_INFO_SIREN_LEVEL (0x03) -#define EMBER_AF_SQUAWK_INFO_MODE (0xF0) -#define EMBER_AF_SQUAWK_INFO_MODE_OFFSET (4) -#define EMBER_AF_SQUAWK_INFO_STROBE (0x08) -#define EMBER_AF_SQUAWK_INFO_STROBE_OFFSET (3) -#define EMBER_AF_SQUAWK_INFO_LEVEL (0x03) -#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_PIR (0x01) -#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_ULTRASONIC (0x02) -#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_ULTRASONIC_OFFSET (1) -#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_PHYSICAL_CONTACT (0x04) -#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_PHYSICAL_CONTACT_OFFSET (2) -#define EMBER_AF_ENERGY_FORMATTING_NUMBER_OF_DIGITS_TO_THE_RIGHT_OF_THE_DECIMAL_POINT (0x07) -#define EMBER_AF_ENERGY_FORMATTING_NUMBER_OF_DIGITS_TO_THE_LEFT_OF_THE_DECIMAL_POINT (0x78) -#define EMBER_AF_ENERGY_FORMATTING_NUMBER_OF_DIGITS_TO_THE_LEFT_OF_THE_DECIMAL_POINT_OFFSET (3) -#define EMBER_AF_ENERGY_FORMATTING_SUPPRESS_LEADING_ZEROS (0x80) -#define EMBER_AF_ENERGY_FORMATTING_SUPPRESS_LEADING_ZEROS_OFFSET (7) -#define EMBER_AF_REMOTE_ENABLE_FLAGS_AND_DEVICE_STATUS2_REMOTE_ENABLE_FLAGS (0x0F) -#define EMBER_AF_REMOTE_ENABLE_FLAGS_AND_DEVICE_STATUS2_DEVICE_STATUS2_STRUCTURE (0xF0) -#define EMBER_AF_REMOTE_ENABLE_FLAGS_AND_DEVICE_STATUS2_DEVICE_STATUS2_STRUCTURE_OFFSET (4) -#define EMBER_AF_START_TIME_MINUTES (0x003F) -#define EMBER_AF_START_TIME_TIME_ENCODING (0x00C0) -#define EMBER_AF_START_TIME_TIME_ENCODING_OFFSET (6) -#define EMBER_AF_START_TIME_HOURS (0xFF00) -#define EMBER_AF_START_TIME_HOURS_OFFSET (8) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_SUNDAY (0x01) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_MONDAY (0x02) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_MONDAY_OFFSET (1) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_TUESDAY (0x04) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_TUESDAY_OFFSET (2) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_WEDNESDAY (0x08) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_WEDNESDAY_OFFSET (3) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_THURSDAY (0x10) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_THURSDAY_OFFSET (4) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_FRIDAY (0x20) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_FRIDAY_OFFSET (5) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_SATURDAY (0x40) -#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_SATURDAY_OFFSET (6) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_HEAT_STATE_ON (0x0001) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_COOL_STATE_ON (0x0002) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_COOL_STATE_ON_OFFSET (1) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_STATE_ON (0x0004) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_STATE_ON_OFFSET (2) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_HEAT_SECOND_STAGE_STATE_ON (0x0008) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_HEAT_SECOND_STAGE_STATE_ON_OFFSET (3) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_COOL_SECOND_STAGE_STATE_ON (0x0010) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_COOL_SECOND_STAGE_STATE_ON_OFFSET (4) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_SECOND_STAGE_STATE_ON (0x0020) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_SECOND_STAGE_STATE_ON_OFFSET (5) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_THIRD_STAGE_STATE_ON (0x0040) -#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_THIRD_STAGE_STATE_ON_OFFSET (6) -#define EMBER_AF_DAY_OF_WEEK_SUNDAY (0x01) -#define EMBER_AF_DAY_OF_WEEK_MONDAY (0x02) -#define EMBER_AF_DAY_OF_WEEK_MONDAY_OFFSET (1) -#define EMBER_AF_DAY_OF_WEEK_TUESDAY (0x04) -#define EMBER_AF_DAY_OF_WEEK_TUESDAY_OFFSET (2) -#define EMBER_AF_DAY_OF_WEEK_WEDNESDAY (0x08) -#define EMBER_AF_DAY_OF_WEEK_WEDNESDAY_OFFSET (3) -#define EMBER_AF_DAY_OF_WEEK_THURSDAY (0x10) -#define EMBER_AF_DAY_OF_WEEK_THURSDAY_OFFSET (4) -#define EMBER_AF_DAY_OF_WEEK_FRIDAY (0x20) -#define EMBER_AF_DAY_OF_WEEK_FRIDAY_OFFSET (5) -#define EMBER_AF_DAY_OF_WEEK_SATURDAY (0x40) -#define EMBER_AF_DAY_OF_WEEK_SATURDAY_OFFSET (6) -#define EMBER_AF_DAY_OF_WEEK_AWAY_OR_VACATION (0x80) -#define EMBER_AF_DAY_OF_WEEK_AWAY_OR_VACATION_OFFSET (7) -#define EMBER_AF_MODE_FOR_SEQUENCE_HEAT_SETPOINT_FIELD_PRESENT (0x01) -#define EMBER_AF_MODE_FOR_SEQUENCE_COOL_SETPOINT_FIELD_PRESENT (0x02) -#define EMBER_AF_MODE_FOR_SEQUENCE_COOL_SETPOINT_FIELD_PRESENT_OFFSET (1) +#define EMBER_AF_ALERT_COUNT_NUMBER_OF_ALERTS (0x0F) +#define EMBER_AF_ALERT_COUNT_NUMBER_OF_ALERTS_OFFSET (0) +#define EMBER_AF_ALERT_COUNT_TYPE_OF_ALERT (0xF0) +#define EMBER_AF_ALERT_COUNT_TYPE_OF_ALERT_OFFSET (4) #define EMBER_AF_ALERT_STRUCTURE_ALERT_ID (0x0000FF) +#define EMBER_AF_ALERT_STRUCTURE_ALERT_ID_OFFSET (0) #define EMBER_AF_ALERT_STRUCTURE_CATEGORY (0x000F00) #define EMBER_AF_ALERT_STRUCTURE_CATEGORY_OFFSET (8) #define EMBER_AF_ALERT_STRUCTURE_PRESENCE_RECOVERY (0x003000) #define EMBER_AF_ALERT_STRUCTURE_PRESENCE_RECOVERY_OFFSET (12) -#define EMBER_AF_ALERT_COUNT_NUMBER_OF_ALERTS (0x0F) -#define EMBER_AF_ALERT_COUNT_TYPE_OF_ALERT (0xF0) -#define EMBER_AF_ALERT_COUNT_TYPE_OF_ALERT_OFFSET (4) -#define EMBER_AF_BARRIER_CONTROL_CAPABILITIES_PARTIAL_BARRIER (0x01) -#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_REMOTE_LOCKOUT (0x0001) -#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_TEMPER_DETECTED (0x0002) -#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_TEMPER_DETECTED_OFFSET (1) -#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_FAILED_COMMUNICATION (0x0004) -#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_FAILED_COMMUNICATION_OFFSET (2) -#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_POSITION_FAILURE (0x0008) -#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_POSITION_FAILURE_OFFSET (3) -#define EMBER_AF_BLOCK_PERIOD_DURATION_TYPE_TIMEBASE (0x0F) -#define EMBER_AF_BLOCK_PERIOD_DURATION_TYPE_CONTROL (0xF0) -#define EMBER_AF_BLOCK_PERIOD_DURATION_TYPE_CONTROL_OFFSET (4) -#define EMBER_AF_CONVERSION_FACTOR_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) -#define EMBER_AF_CONVERSION_FACTOR_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) -#define EMBER_AF_CALORIFIC_VALUE_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) -#define EMBER_AF_CALORIFIC_VALUE_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) -#define EMBER_AF_PRICE_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) -#define EMBER_AF_PRICE_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) -#define EMBER_AF_C_O2_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) -#define EMBER_AF_C_O2_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) -#define EMBER_AF_PRICE_TRAILING_DIGIT_AND_PRICE_TIER_PRICE_TIER (0x0F) -#define EMBER_AF_PRICE_TRAILING_DIGIT_AND_PRICE_TIER_TRAILING_DIGIT (0xF0) -#define EMBER_AF_PRICE_TRAILING_DIGIT_AND_PRICE_TIER_TRAILING_DIGIT_OFFSET (4) -#define EMBER_AF_PRICE_NUMBER_OF_PRICE_TIERS_AND_REGISTER_TIER_REGISTER_TIER (0x0F) -#define EMBER_AF_PRICE_NUMBER_OF_PRICE_TIERS_AND_REGISTER_TIER_NUMBER_OF_PRICE_TIERS (0xF0) -#define EMBER_AF_PRICE_NUMBER_OF_PRICE_TIERS_AND_REGISTER_TIER_NUMBER_OF_PRICE_TIERS_OFFSET (4) #define EMBER_AF_ALTERNATE_COST_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) #define EMBER_AF_ALTERNATE_COST_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) -#define EMBER_AF_PRICE_CONTROL_MASK_PRICE_ACKNOWLEDGEMENT_REQUIRED (0x01) -#define EMBER_AF_PRICE_CONTROL_MASK_TOTAL_TIERS_EXCEEDS15 (0x02) -#define EMBER_AF_PRICE_CONTROL_MASK_TOTAL_TIERS_EXCEEDS15_OFFSET (1) -#define EMBER_AF_BLOCK_PERIOD_CONTROL_PRICE_ACKNOWLEDGEMENT_REQUIREMENT (0x01) -#define EMBER_AF_BLOCK_PERIOD_CONTROL_REPEATING_BLOCK (0x02) -#define EMBER_AF_BLOCK_PERIOD_CONTROL_REPEATING_BLOCK_OFFSET (1) -#define EMBER_AF_TARIFF_TYPE_CHARGING_SCHEME_TARIFF_TYPE (0x0F) -#define EMBER_AF_TARIFF_TYPE_CHARGING_SCHEME_TARIFF_CHARGING_SCHEME (0xF0) -#define EMBER_AF_TARIFF_TYPE_CHARGING_SCHEME_TARIFF_CHARGING_SCHEME_OFFSET (4) -#define EMBER_AF_PRICE_MATRIX_SUB_PAYLOAD_CONTROL_TOU_BASED (0x01) -#define EMBER_AF_BLOCK_THRESHOLD_SUB_PAYLOAD_CONTROL_APPLY_TO_ALL_TOU_TIERS_OR_WHEN_BLOCK_ONLY_CHARGING (0x01) -#define EMBER_AF_BILLING_PERIOD_DURATION_DURATION (0x3FFFFF) -#define EMBER_AF_BILLING_PERIOD_DURATION_UNITS (0xC00000) -#define EMBER_AF_BILLING_PERIOD_DURATION_UNITS_OFFSET (22) -#define EMBER_AF_BILLING_PERIOD_DURATION_TYPE_TIMEBASE (0x0F) -#define EMBER_AF_BILLING_PERIOD_DURATION_TYPE_CONTROL (0xF0) -#define EMBER_AF_BILLING_PERIOD_DURATION_TYPE_CONTROL_OFFSET (4) -#define EMBER_AF_BILL_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) -#define EMBER_AF_BILL_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) -#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CLEAR_BILLING_INFO (0x00000001) -#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CONVERT_BILLING_INFO_USING_NEW_CURRENCY (0x00000002) -#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CONVERT_BILLING_INFO_USING_NEW_CURRENCY_OFFSET (1) -#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CLEAR_OLD_CONSUMPTION_DATA (0x00000004) -#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CLEAR_OLD_CONSUMPTION_DATA_OFFSET (2) -#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CONVERT_OLD_CONSUMPTION_DATA_USING_NEW_CURRENCY (0x00000008) -#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CONVERT_OLD_CONSUMPTION_DATA_USING_NEW_CURRENCY_OFFSET (3) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER1 (0x0002) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER1_OFFSET (1) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER2 (0x0004) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER2_OFFSET (2) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER3 (0x0008) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER3_OFFSET (3) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER4 (0x0010) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER4_OFFSET (4) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER5 (0x0020) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER5_OFFSET (5) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER6 (0x0040) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER6_OFFSET (6) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER7 (0x0080) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER7_OFFSET (7) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER8 (0x0100) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER8_OFFSET (8) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER9 (0x0200) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER9_OFFSET (9) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER10 (0x0400) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER10_OFFSET (10) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER11 (0x0800) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER11_OFFSET (11) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER12 (0x1000) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER12_OFFSET (12) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER13 (0x2000) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER13_OFFSET (13) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER14 (0x4000) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER14_OFFSET (14) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER15 (0x8000) -#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER15_OFFSET (15) +#define EMBER_AF_AMI_CANCEL_CONTROL_TERMINATE_WITH_RANDOMIZATION (0x01) +#define EMBER_AF_AMI_CANCEL_CONTROL_TERMINATE_WITH_RANDOMIZATION_OFFSET (0) #define EMBER_AF_AMI_COMMAND_OPTIONS_REQUEST_RX_ON_WHEN_IDLE (0x01) +#define EMBER_AF_AMI_COMMAND_OPTIONS_REQUEST_RX_ON_WHEN_IDLE_OFFSET (0) #define EMBER_AF_AMI_DEVICE_CLASS_HVAC_COMPRESSOR_OR_FURNACE (0x0001) +#define EMBER_AF_AMI_DEVICE_CLASS_HVAC_COMPRESSOR_OR_FURNACE_OFFSET (0) #define EMBER_AF_AMI_DEVICE_CLASS_STRIP_HEAT_BASEBOARD_HEAT (0x0002) #define EMBER_AF_AMI_DEVICE_CLASS_STRIP_HEAT_BASEBOARD_HEAT_OFFSET (1) #define EMBER_AF_AMI_DEVICE_CLASS_WATER_HEATER (0x0004) @@ -2730,10 +2650,11 @@ typedef enum #define EMBER_AF_AMI_DEVICE_CLASS_GENERATION_SYSTEMS (0x0800) #define EMBER_AF_AMI_DEVICE_CLASS_GENERATION_SYSTEMS_OFFSET (11) #define EMBER_AF_AMI_EVENT_CONTROL_RANDOMIZED_START_TIME (0x01) +#define EMBER_AF_AMI_EVENT_CONTROL_RANDOMIZED_START_TIME_OFFSET (0) #define EMBER_AF_AMI_EVENT_CONTROL_RANDOMIZED_END_TIME (0x02) #define EMBER_AF_AMI_EVENT_CONTROL_RANDOMIZED_END_TIME_OFFSET (1) -#define EMBER_AF_AMI_CANCEL_CONTROL_TERMINATE_WITH_RANDOMIZATION (0x01) #define EMBER_AF_AMI_METER_STATUS_CHECK_METER (0x01) +#define EMBER_AF_AMI_METER_STATUS_CHECK_METER_OFFSET (0) #define EMBER_AF_AMI_METER_STATUS_LOW_BATTERY (0x02) #define EMBER_AF_AMI_METER_STATUS_LOW_BATTERY_OFFSET (1) #define EMBER_AF_AMI_METER_STATUS_TAMPER_DETECT (0x04) @@ -2748,324 +2669,8 @@ typedef enum #define EMBER_AF_AMI_METER_STATUS_SERVICE_DISCONNECT_OPEN_OFFSET (6) #define EMBER_AF_AMI_METER_STATUS_RESERVED (0x80) #define EMBER_AF_AMI_METER_STATUS_RESERVED_OFFSET (7) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_CHECK_METER (0x01) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_LOW_BATTERY (0x02) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_LOW_BATTERY_OFFSET (1) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_TAMPER_DETECT (0x04) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_TAMPER_DETECT_OFFSET (2) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_POWER_FAILURE (0x08) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_POWER_FAILURE_OFFSET (3) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_POWER_QUALITY (0x10) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_POWER_QUALITY_OFFSET (4) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_LEAK_DETECT (0x20) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_LEAK_DETECT_OFFSET (5) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_SERVICE_DISCONNECT_OPEN (0x40) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_SERVICE_DISCONNECT_OPEN_OFFSET (6) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_RESERVED (0x80) -#define EMBER_AF_METERING_STATUS_ELECTRICITY_RESERVED_OFFSET (7) -#define EMBER_AF_METERING_STATUS_GAS_CHECK_METER (0x01) -#define EMBER_AF_METERING_STATUS_GAS_LOW_BATTERY (0x02) -#define EMBER_AF_METERING_STATUS_GAS_LOW_BATTERY_OFFSET (1) -#define EMBER_AF_METERING_STATUS_GAS_TAMPER_DETECT (0x04) -#define EMBER_AF_METERING_STATUS_GAS_TAMPER_DETECT_OFFSET (2) -#define EMBER_AF_METERING_STATUS_GAS_NOT_DEFINED (0x08) -#define EMBER_AF_METERING_STATUS_GAS_NOT_DEFINED_OFFSET (3) -#define EMBER_AF_METERING_STATUS_GAS_LOW_PRESSURE (0x10) -#define EMBER_AF_METERING_STATUS_GAS_LOW_PRESSURE_OFFSET (4) -#define EMBER_AF_METERING_STATUS_GAS_LEAK_DETECT (0x20) -#define EMBER_AF_METERING_STATUS_GAS_LEAK_DETECT_OFFSET (5) -#define EMBER_AF_METERING_STATUS_GAS_SERVICE_DISCONNECT (0x40) -#define EMBER_AF_METERING_STATUS_GAS_SERVICE_DISCONNECT_OFFSET (6) -#define EMBER_AF_METERING_STATUS_GAS_REVERSE_FLOW (0x80) -#define EMBER_AF_METERING_STATUS_GAS_REVERSE_FLOW_OFFSET (7) -#define EMBER_AF_METERING_STATUS_WATER_CHECK_METER (0x01) -#define EMBER_AF_METERING_STATUS_WATER_LOW_BATTERY (0x02) -#define EMBER_AF_METERING_STATUS_WATER_LOW_BATTERY_OFFSET (1) -#define EMBER_AF_METERING_STATUS_WATER_TAMPER_DETECT (0x04) -#define EMBER_AF_METERING_STATUS_WATER_TAMPER_DETECT_OFFSET (2) -#define EMBER_AF_METERING_STATUS_WATER_PIPE_EMPTY (0x08) -#define EMBER_AF_METERING_STATUS_WATER_PIPE_EMPTY_OFFSET (3) -#define EMBER_AF_METERING_STATUS_WATER_LOW_PRESSURE (0x10) -#define EMBER_AF_METERING_STATUS_WATER_LOW_PRESSURE_OFFSET (4) -#define EMBER_AF_METERING_STATUS_WATER_LEAK_DETECT (0x20) -#define EMBER_AF_METERING_STATUS_WATER_LEAK_DETECT_OFFSET (5) -#define EMBER_AF_METERING_STATUS_WATER_SERVICE_DISCONNECT (0x40) -#define EMBER_AF_METERING_STATUS_WATER_SERVICE_DISCONNECT_OFFSET (6) -#define EMBER_AF_METERING_STATUS_WATER_REVERSE_FLOW (0x80) -#define EMBER_AF_METERING_STATUS_WATER_REVERSE_FLOW_OFFSET (7) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_CHECK_METER (0x01) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_LOW_BATTERY (0x02) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_LOW_BATTERY_OFFSET (1) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_TAMPER_DETECT (0x04) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_TAMPER_DETECT_OFFSET (2) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_TEMPERATURE_SENSOR (0x08) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_TEMPERATURE_SENSOR_OFFSET (3) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_BURST_DETECT (0x10) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_BURST_DETECT_OFFSET (4) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_LEAK_DETECT (0x20) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_LEAK_DETECT_OFFSET (5) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_SERVICE_DISCONNECT (0x40) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_SERVICE_DISCONNECT_OFFSET (6) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_FLOW_SENSOR (0x80) -#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_FLOW_SENSOR_OFFSET (7) -#define EMBER_AF_METERING_EXTENDED_STATUS_METER_COVER_REMOVED (0x0000000000000001) -#define EMBER_AF_METERING_EXTENDED_STATUS_STRONG_MAGNETIC_FIELD_DETECTED (0x0000000000000002) -#define EMBER_AF_METERING_EXTENDED_STATUS_STRONG_MAGNETIC_FIELD_DETECTED_OFFSET (1) -#define EMBER_AF_METERING_EXTENDED_STATUS_BATTERY_FAILURE (0x0000000000000004) -#define EMBER_AF_METERING_EXTENDED_STATUS_BATTERY_FAILURE_OFFSET (2) -#define EMBER_AF_METERING_EXTENDED_STATUS_PROGRAM_MEMORY_ERROR (0x0000000000000008) -#define EMBER_AF_METERING_EXTENDED_STATUS_PROGRAM_MEMORY_ERROR_OFFSET (3) -#define EMBER_AF_METERING_EXTENDED_STATUS_RAM_ERROR (0x0000000000000010) -#define EMBER_AF_METERING_EXTENDED_STATUS_RAM_ERROR_OFFSET (4) -#define EMBER_AF_METERING_EXTENDED_STATUS_NV_MEMORY_ERROR (0x0000000000000020) -#define EMBER_AF_METERING_EXTENDED_STATUS_NV_MEMORY_ERROR_OFFSET (5) -#define EMBER_AF_METERING_EXTENDED_STATUS_MEASUREMENT_SYSTEM_ERROR (0x0000000000000040) -#define EMBER_AF_METERING_EXTENDED_STATUS_MEASUREMENT_SYSTEM_ERROR_OFFSET (6) -#define EMBER_AF_METERING_EXTENDED_STATUS_WATCHDOG_ERROR (0x0000000000000080) -#define EMBER_AF_METERING_EXTENDED_STATUS_WATCHDOG_ERROR_OFFSET (7) -#define EMBER_AF_METERING_EXTENDED_STATUS_SUPPLY_DISCONNECT_FAILURE (0x0000000000000100) -#define EMBER_AF_METERING_EXTENDED_STATUS_SUPPLY_DISCONNECT_FAILURE_OFFSET (8) -#define EMBER_AF_METERING_EXTENDED_STATUS_SUPPLY_CONNECT_FAILURE (0x0000000000000200) -#define EMBER_AF_METERING_EXTENDED_STATUS_SUPPLY_CONNECT_FAILURE_OFFSET (9) -#define EMBER_AF_METERING_EXTENDED_STATUS_MEASUREMENT_SW_CHANGED_TAMPERED (0x0000000000000400) -#define EMBER_AF_METERING_EXTENDED_STATUS_MEASUREMENT_SW_CHANGED_TAMPERED_OFFSET (10) -#define EMBER_AF_METERING_EXTENDED_STATUS_CLOCK_INVALID (0x0000000000000800) -#define EMBER_AF_METERING_EXTENDED_STATUS_CLOCK_INVALID_OFFSET (11) -#define EMBER_AF_METERING_EXTENDED_STATUS_TEMPERATURE_EXCEEDED (0x0000000000001000) -#define EMBER_AF_METERING_EXTENDED_STATUS_TEMPERATURE_EXCEEDED_OFFSET (12) -#define EMBER_AF_METERING_EXTENDED_STATUS_MOISTURE_DETECTED (0x0000000000002000) -#define EMBER_AF_METERING_EXTENDED_STATUS_MOISTURE_DETECTED_OFFSET (13) -#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_BATTERY_COVER_REMOVED (0x0000000001000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_BATTERY_COVER_REMOVED_OFFSET (24) -#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_TILT_TAMPER (0x0000000002000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_TILT_TAMPER_OFFSET (25) -#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_EXCESS_FLOW (0x0000000004000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_EXCESS_FLOW_OFFSET (26) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_LIMIT_THRESHOLD_EXCEEDED (0x0000000008000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_LIMIT_THRESHOLD_EXCEEDED_OFFSET (27) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_UNDER_VOLTAGE (0x0000000010000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_UNDER_VOLTAGE_OFFSET (28) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_OVER_VOLTAGE (0x0000000020000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_OVER_VOLTAGE_OFFSET (29) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVER_POWER (0x0000000040000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVER_POWER_OFFSET (30) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVER_VOLTAGE \ - (0x0000000080000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVER_VOLTAGE_OFFSET (31) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_REMOTE_LOAD_CONTROL \ - (0x00000000C0000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_REMOTE_LOAD_CONTROL_OFFSET (30) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_BY_OTHER_REMOTE_COMMAND \ - (0x0000000100000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_BY_OTHER_REMOTE_COMMAND_OFFSET (32) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVERHEATING_SHORT_CIRCUIT \ - (0x0000000140000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVERHEATING_SHORT_CIRCUIT_OFFSET \ - (30) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVERHEATING_OTHER \ - (0x0000000180000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVERHEATING_OTHER_OFFSET (31) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_BI_DIRECTIONAL_OPERATION (0x0000000400000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_BI_DIRECTIONAL_OPERATION_OFFSET (34) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_ACTIVE_POWER_RECEIVED (0x0000000800000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_ACTIVE_POWER_RECEIVED_OFFSET (35) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_MODE_OF_OPERATION (0x0000001000000000) -#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_MODE_OF_OPERATION_OFFSET (36) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NEW_OTA_FIRMWARE (0x00000001) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CBKE_UPDATE_REQUEST (0x00000002) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CBKE_UPDATE_REQUEST_OFFSET (1) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_TIME_SYNC (0x00000004) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_TIME_SYNC_OFFSET (2) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_STAY_AWAKE_REQUEST_HAN (0x00000010) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_STAY_AWAKE_REQUEST_HAN_OFFSET (4) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_STAY_AWAKE_REQUEST_WAN (0x00000020) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_STAY_AWAKE_REQUEST_WAN_OFFSET (5) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_HISTORICAL_METERING_DATA_ATTRIBUTE_SET (0x000001C0) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_HISTORICAL_METERING_DATA_ATTRIBUTE_SET_OFFSET (6) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_HISTORICAL_PREPAYMENT_DATA_ATTRIBUTE_SET (0x00000E00) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_HISTORICAL_PREPAYMENT_DATA_ATTRIBUTE_SET_OFFSET (9) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_BASIC_CLUSTER (0x00001000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_BASIC_CLUSTER_OFFSET (12) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_METERING_CLUSTER (0x00002000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_METERING_CLUSTER_OFFSET (13) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_PREPAYMENT_CLUSTER (0x00004000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_PREPAYMENT_CLUSTER_OFFSET (14) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NETWORK_KEY_ACTIVE (0x00008000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NETWORK_KEY_ACTIVE_OFFSET (15) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_DISPLAY_MESSAGE (0x00010000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_DISPLAY_MESSAGE_OFFSET (16) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CANCEL_ALL_MESSAGES (0x00020000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CANCEL_ALL_MESSAGES_OFFSET (17) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CHANGE_SUPPLY (0x00040000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CHANGE_SUPPLY_OFFSET (18) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_LOCAL_CHANGE_SUPPLY (0x00080000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_LOCAL_CHANGE_SUPPLY_OFFSET (19) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_SET_UNCONTROLLED_FLOW_THRESHOLD (0x00100000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_SET_UNCONTROLLED_FLOW_THRESHOLD_OFFSET (20) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_TUNNEL_MESSAGE_PENDING (0x00200000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_TUNNEL_MESSAGE_PENDING_OFFSET (21) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_GET_SNAPSHOT (0x00400000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_GET_SNAPSHOT_OFFSET (22) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_GET_SAMPLED_DATA (0x00800000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_GET_SAMPLED_DATA_OFFSET (23) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NEW_SUB_GHZ_CHANNEL_MASKS_AVAILABLE (0x01000000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NEW_SUB_GHZ_CHANNEL_MASKS_AVAILABLE_OFFSET (24) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_ENERGY_SCAN_PENDING (0x02000000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_ENERGY_SCAN_PENDING_OFFSET (25) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CHANNEL_CHANGE_PENDING (0x04000000) -#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CHANNEL_CHANGE_PENDING_OFFSET (26) -#define EMBER_AF_SNAPSHOT_CAUSE_GENERAL (0x00000001) -#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_BILLING_PERIOD (0x00000002) -#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_BILLING_PERIOD_OFFSET (1) -#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_BLOCK_PERIOD (0x00000004) -#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_BLOCK_PERIOD_OFFSET (2) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_TARIFF_INFORMATION (0x00000008) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_TARIFF_INFORMATION_OFFSET (3) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_PRICE_MATRIX (0x00000010) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_PRICE_MATRIX_OFFSET (4) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_BLOCK_THRESHOLDS (0x00000020) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_BLOCK_THRESHOLDS_OFFSET (5) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CV (0x00000040) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CV_OFFSET (6) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CF (0x00000080) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CF_OFFSET (7) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CALENDAR (0x00000100) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CALENDAR_OFFSET (8) -#define EMBER_AF_SNAPSHOT_CAUSE_CRITICAL_PEAK_PRICING (0x00000200) -#define EMBER_AF_SNAPSHOT_CAUSE_CRITICAL_PEAK_PRICING_OFFSET (9) -#define EMBER_AF_SNAPSHOT_CAUSE_MANUALLY_TRIGGERED_FROM_CLIENT (0x00000400) -#define EMBER_AF_SNAPSHOT_CAUSE_MANUALLY_TRIGGERED_FROM_CLIENT_OFFSET (10) -#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_RESOLVE_PERIOD (0x00000800) -#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_RESOLVE_PERIOD_OFFSET (11) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_TENANCY (0x00001000) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_TENANCY_OFFSET (12) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_SUPPLIER (0x00002000) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_SUPPLIER_OFFSET (13) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_MODE (0x00004000) -#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_MODE_OFFSET (14) -#define EMBER_AF_SNAPSHOT_CAUSE_DEBT_PAYMENT (0x00008000) -#define EMBER_AF_SNAPSHOT_CAUSE_DEBT_PAYMENT_OFFSET (15) -#define EMBER_AF_SNAPSHOT_CAUSE_SCHEDULED_SNAPSHOT (0x00010000) -#define EMBER_AF_SNAPSHOT_CAUSE_SCHEDULED_SNAPSHOT_OFFSET (16) -#define EMBER_AF_SNAPSHOT_CAUSE_OTA_FIRMWARE_DOWNLOAD (0x00020000) -#define EMBER_AF_SNAPSHOT_CAUSE_OTA_FIRMWARE_DOWNLOAD_OFFSET (17) -#define EMBER_AF_SUPPLY_CONTROL_BITS_ACKNOWLEDGE_REQUIRED (0x01) -#define EMBER_AF_MESSAGING_CONTROL_MASK_TRANS_MECHANISM (0x03) -#define EMBER_AF_MESSAGING_CONTROL_MASK_MESSAGE_URGENCY (0x0C) -#define EMBER_AF_MESSAGING_CONTROL_MASK_MESSAGE_URGENCY_OFFSET (2) -#define EMBER_AF_MESSAGING_CONTROL_MASK_ENHANCED_CONFIRMATION_REQUEST (0x20) -#define EMBER_AF_MESSAGING_CONTROL_MASK_ENHANCED_CONFIRMATION_REQUEST_OFFSET (5) -#define EMBER_AF_MESSAGING_CONTROL_MASK_MESSAGE_CONFIRMATION (0x80) -#define EMBER_AF_MESSAGING_CONTROL_MASK_MESSAGE_CONFIRMATION_OFFSET (7) -#define EMBER_AF_MESSAGING_EXTENDED_CONTROL_MASK_MESSAGE_CONFIRMATION_STATUS (0x01) -#define EMBER_AF_MESSAGING_CONFIRMATION_CONTROL_NO_RETURNED (0x01) -#define EMBER_AF_MESSAGING_CONFIRMATION_CONTROL_YES_RETURNED (0x02) -#define EMBER_AF_MESSAGING_CONFIRMATION_CONTROL_YES_RETURNED_OFFSET (1) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_DISCONNECTION_ENABLED (0x0001) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_PREPAYMENT_ENABLED (0x0002) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_PREPAYMENT_ENABLED_OFFSET (1) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CREDIT_MANAGEMENT_ENABLED (0x0004) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CREDIT_MANAGEMENT_ENABLED_OFFSET (2) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CREDIT_DISPLAY_ENABLED (0x0010) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CREDIT_DISPLAY_ENABLED_OFFSET (4) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_ACCOUNT_BASE (0x0040) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_ACCOUNT_BASE_OFFSET (6) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CONTACTOR_FITTED (0x0080) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CONTACTOR_FITTED_OFFSET (7) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_STANDING_CHARGE_CONFIGURATION (0x0100) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_STANDING_CHARGE_CONFIGURATION_OFFSET (8) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_EMERGENCY_STANDING_CHARGE_CONFIGURATION (0x0200) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_EMERGENCY_STANDING_CHARGE_CONFIGURATION_OFFSET (9) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_DEBT_CONFIGURATION (0x0400) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_DEBT_CONFIGURATION_OFFSET (10) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_EMERGENCY_DEBT_CONFIGURATION (0x0800) -#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_EMERGENCY_DEBT_CONFIGURATION_OFFSET (11) -#define EMBER_AF_CREDIT_STATUS_CREDIT_OK (0x01) -#define EMBER_AF_CREDIT_STATUS_LOW_CREDIT (0x02) -#define EMBER_AF_CREDIT_STATUS_LOW_CREDIT_OFFSET (1) -#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_ENABLED (0x04) -#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_ENABLED_OFFSET (2) -#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_AVAILABLE (0x08) -#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_AVAILABLE_OFFSET (3) -#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_SELECTED (0x10) -#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_SELECTED_OFFSET (4) -#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_IN_USE (0x20) -#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_IN_USE_OFFSET (5) -#define EMBER_AF_CREDIT_STATUS_CREDIT_EXHAUSTED (0x40) -#define EMBER_AF_CREDIT_STATUS_CREDIT_EXHAUSTED_OFFSET (6) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_LOW_CREDIT_WARNING (0x0001) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_ERROR (0x0002) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_ERROR_OFFSET (1) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_ALREADY_USED (0x0004) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_ALREADY_USED_OFFSET (2) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_INVALID (0x0008) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_INVALID_OFFSET (3) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_FRIENDLY_CREDIT_IN_USE (0x0010) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_FRIENDLY_CREDIT_IN_USE_OFFSET (4) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_FRIENDLY_CREDIT_PERIOD_END_WARNING (0x0020) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_FRIENDLY_CREDIT_PERIOD_END_WARNING_OFFSET (5) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_EC_AVAILABLE (0x0040) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_EC_AVAILABLE_OFFSET (6) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_UNAUTHORISED_ENERGY_USE (0x0080) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_UNAUTHORISED_ENERGY_USE_OFFSET (7) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_CREDIT (0x0100) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_CREDIT_OFFSET (8) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_TAMPER (0x0200) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_TAMPER_OFFSET (9) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_HES (0x0400) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_HES_OFFSET (10) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_PHYSICAL_ATTACK (0x0800) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_PHYSICAL_ATTACK_OFFSET (11) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_ELECTRONIC_ATTACK (0x1000) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_ELECTRONIC_ATTACK_OFFSET (12) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_MANUFACTURE_ALARM_CODE_A (0x2000) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_MANUFACTURE_ALARM_CODE_A_OFFSET (13) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_MANUFACTURE_ALARM_CODE_B (0x4000) -#define EMBER_AF_PREPAYMENT_ALARM_STATUS_MANUFACTURE_ALARM_CODE_B_OFFSET (14) -#define EMBER_AF_ORIGINATOR_ID_SUPPLY_CONTROL_BITS_ACKNOWLEDGE_REQUIRED (0x01) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_GENERAL (0x00000001) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_TARIFF_INFORMATION (0x00000008) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_TARIFF_INFORMATION_OFFSET (3) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_PRICE_MATRIX (0x00000010) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_PRICE_MATRIX_OFFSET (4) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_MANUALLY_TRIGGERED_FROM_CLIENT (0x00000400) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_MANUALLY_TRIGGERED_FROM_CLIENT_OFFSET (10) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_TENANCY (0x00001000) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_TENANCY_OFFSET (12) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_SUPPLIER (0x00002000) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_SUPPLIER_OFFSET (13) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_METER_MODE (0x00004000) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_METER_MODE_OFFSET (14) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_TOP_UP_ADDITION (0x00040000) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_TOP_UP_ADDITION_OFFSET (18) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_DEBT_CREDIT_ADDITION (0x00080000) -#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_DEBT_CREDIT_ADDITION_OFFSET (19) -#define EMBER_AF_FRIENDLY_CREDIT_FRIENDLY_CREDIT_ENABLED (0x01) -#define EMBER_AF_LOAD_CONTROL_STATE_RELAY_OPEN_OR_CONSUMPTION_INTERUPTED (0x01) -#define EMBER_AF_LOAD_CONTROL_STATE_EVENT_IN_PROGRESS (0x02) -#define EMBER_AF_LOAD_CONTROL_STATE_EVENT_IN_PROGRESS_OFFSET (1) -#define EMBER_AF_LOAD_CONTROL_STATE_POWER_STABILIZING (0x04) -#define EMBER_AF_LOAD_CONTROL_STATE_POWER_STABILIZING_OFFSET (2) -#define EMBER_AF_LOAD_CONTROL_STATE_OTHER_LOAD_REDUCTION (0x08) -#define EMBER_AF_LOAD_CONTROL_STATE_OTHER_LOAD_REDUCTION_OFFSET (3) -#define EMBER_AF_LOAD_CONTROL_STATE_CURRENT_FLOW_OR_CONSUMING_COMMODITY (0x10) -#define EMBER_AF_LOAD_CONTROL_STATE_CURRENT_FLOW_OR_CONSUMING_COMMODITY_OFFSET (4) -#define EMBER_AF_LOAD_CONTROL_STATE_LOAD_CALL (0x20) -#define EMBER_AF_LOAD_CONTROL_STATE_LOAD_CALL_OFFSET (5) -#define EMBER_AF_CURRENT_EVENT_STATUS_RANDOMIZED_START_TIME (0x01) -#define EMBER_AF_CURRENT_EVENT_STATUS_RANDOMIZED_DURATION (0x02) -#define EMBER_AF_CURRENT_EVENT_STATUS_RANDOMIZED_DURATION_OFFSET (1) -#define EMBER_AF_CURRENT_EVENT_STATUS_EXTENDED_BITS_PRESENT (0x04) -#define EMBER_AF_CURRENT_EVENT_STATUS_EXTENDED_BITS_PRESENT_OFFSET (2) -#define EMBER_AF_CURRENT_EVENT_STATUS_EVENT_ACTIVE (0x08) -#define EMBER_AF_CURRENT_EVENT_STATUS_EVENT_ACTIVE_OFFSET (3) -#define EMBER_AF_CURRENT_EVENT_STATUS_DEVICE_PARTICIPATING_IN_EVENT (0x10) -#define EMBER_AF_CURRENT_EVENT_STATUS_DEVICE_PARTICIPATING_IN_EVENT_OFFSET (4) -#define EMBER_AF_CURRENT_EVENT_STATUS_REDUCING_LOAD (0x20) -#define EMBER_AF_CURRENT_EVENT_STATUS_REDUCING_LOAD_OFFSET (5) -#define EMBER_AF_CURRENT_EVENT_STATUS_ON_AT_END_OF_EVENT (0x40) -#define EMBER_AF_CURRENT_EVENT_STATUS_ON_AT_END_OF_EVENT_OFFSET (6) #define EMBER_AF_AUXILIARY_LOAD_SWITCH_STATE_AUXILIARY_SWITCH1 (0x01) +#define EMBER_AF_AUXILIARY_LOAD_SWITCH_STATE_AUXILIARY_SWITCH1_OFFSET (0) #define EMBER_AF_AUXILIARY_LOAD_SWITCH_STATE_AUXILIARY_SWITCH2 (0x02) #define EMBER_AF_AUXILIARY_LOAD_SWITCH_STATE_AUXILIARY_SWITCH2_OFFSET (1) #define EMBER_AF_AUXILIARY_LOAD_SWITCH_STATE_AUXILIARY_SWITCH3 (0x04) @@ -3080,52 +2685,314 @@ typedef enum #define EMBER_AF_AUXILIARY_LOAD_SWITCH_STATE_AUXILIARY_SWITCH7_OFFSET (6) #define EMBER_AF_AUXILIARY_LOAD_SWITCH_STATE_AUXILIARY_SWITCH8 (0x80) #define EMBER_AF_AUXILIARY_LOAD_SWITCH_STATE_AUXILIARY_SWITCH8_OFFSET (7) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_PRE_SNAPSHOTS (0x00000001) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_POST_SNAPSHOTS (0x00000002) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_POST_SNAPSHOTS_OFFSET (1) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_CREDIT_REGISTER (0x00000004) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_CREDIT_REGISTER_OFFSET (2) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_DEBIT_REGISTER (0x00000008) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_DEBIT_REGISTER_OFFSET (3) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_BILLING_PERIOD (0x00000010) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_BILLING_PERIOD_OFFSET (4) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_TARIFF_PLAN (0x00000020) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_TARIFF_PLAN_OFFSET (5) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_STANDING_CHARGE (0x00000040) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_STANDING_CHARGE_OFFSET (6) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_BLOCK_HISTORICAL_LOAD_PROFILE_INFORMATION (0x00000080) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_BLOCK_HISTORICAL_LOAD_PROFILE_INFORMATION_OFFSET (7) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_HISTORICAL_LOAD_PROFILE_INFORMATION (0x00000100) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_HISTORICAL_LOAD_PROFILE_INFORMATION_OFFSET (8) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_IHD_DATA_CONSUMER (0x00000200) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_IHD_DATA_CONSUMER_OFFSET (9) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_IHD_DATA_SUPPLIER (0x00000400) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_IHD_DATA_SUPPLIER_OFFSET (10) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_METER_CONNECTOR_STATE_ON_OFF_ARMED (0x00001800) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_METER_CONNECTOR_STATE_ON_OFF_ARMED_OFFSET (11) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_TRANSACTION_LOG (0x00002000) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_TRANSACTION_LOG_OFFSET (13) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_PREPAYMENT_LOG (0x00004000) -#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_PREPAYMENT_LOG_OFFSET (14) -#define EMBER_AF_EVENT_CONFIGURATION_LOG_ACTION (0x07) -#define EMBER_AF_EVENT_CONFIGURATION_PUSH_EVENT_TO_W_A_N (0x08) -#define EMBER_AF_EVENT_CONFIGURATION_PUSH_EVENT_TO_W_A_N_OFFSET (3) -#define EMBER_AF_EVENT_CONFIGURATION_PUSH_EVENT_TO_H_A_N (0x10) -#define EMBER_AF_EVENT_CONFIGURATION_PUSH_EVENT_TO_H_A_N_OFFSET (4) -#define EMBER_AF_EVENT_CONFIGURATION_RAISE_ALARM_ZIG_BEE (0x20) -#define EMBER_AF_EVENT_CONFIGURATION_RAISE_ALARM_ZIG_BEE_OFFSET (5) -#define EMBER_AF_EVENT_CONFIGURATION_RAISE_ALARM_PHYSICAL (0x40) -#define EMBER_AF_EVENT_CONFIGURATION_RAISE_ALARM_PHYSICAL_OFFSET (6) -#define EMBER_AF_EVENT_CONTROL_LOG_ID_LOG_ID (0x0F) -#define EMBER_AF_EVENT_CONTROL_LOG_ID_EVENT_CONTROL (0xF0) -#define EMBER_AF_EVENT_CONTROL_LOG_ID_EVENT_CONTROL_OFFSET (4) -#define EMBER_AF_EVENT_ACTION_CONTROL_REPORT_EVENT_TO_H_A_N_DEVICES (0x01) -#define EMBER_AF_EVENT_ACTION_CONTROL_REPORT_EVENT_TO_W_A_N (0x02) -#define EMBER_AF_EVENT_ACTION_CONTROL_REPORT_EVENT_TO_W_A_N_OFFSET (1) -#define EMBER_AF_NUMBER_OF_EVENTS_LOG_PAYLOAD_CONTROL_LOG_PAYLOAD_CONTROL (0x0F) -#define EMBER_AF_NUMBER_OF_EVENTS_LOG_PAYLOAD_CONTROL_NUMBER_OF_EVENTS (0xF0) -#define EMBER_AF_NUMBER_OF_EVENTS_LOG_PAYLOAD_CONTROL_NUMBER_OF_EVENTS_OFFSET (4) +#define EMBER_AF_BALLAST_STATUS_NON_OPERATIONAL (0x1) +#define EMBER_AF_BALLAST_STATUS_NON_OPERATIONAL_OFFSET (0) +#define EMBER_AF_BALLAST_STATUS_LAMP_NOT_IN_SOCKET (0x2) +#define EMBER_AF_BALLAST_STATUS_LAMP_NOT_IN_SOCKET_OFFSET (1) +#define EMBER_AF_BARRIER_CONTROL_CAPABILITIES_PARTIAL_BARRIER (0x01) +#define EMBER_AF_BARRIER_CONTROL_CAPABILITIES_PARTIAL_BARRIER_OFFSET (0) +#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_REMOTE_LOCKOUT (0x01) +#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_REMOTE_LOCKOUT_OFFSET (0) +#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_TEMPER_DETECTED (0x02) +#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_TEMPER_DETECTED_OFFSET (1) +#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_FAILED_COMMUNICATION (0x04) +#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_FAILED_COMMUNICATION_OFFSET (2) +#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_POSITION_FAILURE (0x08) +#define EMBER_AF_BARRIER_CONTROL_SAFETY_STATUS_POSITION_FAILURE_OFFSET (3) +#define EMBER_AF_BATTERY_ALARM_MASK_VOLTAGE_TOO_LOW (0x1) +#define EMBER_AF_BATTERY_ALARM_MASK_VOLTAGE_TOO_LOW_OFFSET (0) +#define EMBER_AF_BILL_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) +#define EMBER_AF_BILL_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) +#define EMBER_AF_BILLING_PERIOD_DURATION_DURATION (0x3FFFFF) +#define EMBER_AF_BILLING_PERIOD_DURATION_DURATION_OFFSET (0) +#define EMBER_AF_BILLING_PERIOD_DURATION_UNITS (0xC00000) +#define EMBER_AF_BILLING_PERIOD_DURATION_UNITS_OFFSET (22) +#define EMBER_AF_BILLING_PERIOD_DURATION_TYPE_TIMEBASE (0x0F) +#define EMBER_AF_BILLING_PERIOD_DURATION_TYPE_TIMEBASE_OFFSET (0) +#define EMBER_AF_BILLING_PERIOD_DURATION_TYPE_CONTROL (0xF0) +#define EMBER_AF_BILLING_PERIOD_DURATION_TYPE_CONTROL_OFFSET (4) +#define EMBER_AF_BLOCK_PERIOD_CONTROL_PRICE_ACKNOWLEDGEMENT_REQUIREMENT (0x01) +#define EMBER_AF_BLOCK_PERIOD_CONTROL_PRICE_ACKNOWLEDGEMENT_REQUIREMENT_OFFSET (0) +#define EMBER_AF_BLOCK_PERIOD_CONTROL_REPEATING_BLOCK (0x02) +#define EMBER_AF_BLOCK_PERIOD_CONTROL_REPEATING_BLOCK_OFFSET (1) +#define EMBER_AF_BLOCK_PERIOD_DURATION_TYPE_TIMEBASE (0x0F) +#define EMBER_AF_BLOCK_PERIOD_DURATION_TYPE_TIMEBASE_OFFSET (0) +#define EMBER_AF_BLOCK_PERIOD_DURATION_TYPE_CONTROL (0xF0) +#define EMBER_AF_BLOCK_PERIOD_DURATION_TYPE_CONTROL_OFFSET (4) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER1 (0x0002) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER1_OFFSET (1) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER2 (0x0004) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER2_OFFSET (2) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER3 (0x0008) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER3_OFFSET (3) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER4 (0x0010) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER4_OFFSET (4) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER5 (0x0020) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER5_OFFSET (5) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER6 (0x0040) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER6_OFFSET (6) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER7 (0x0080) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER7_OFFSET (7) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER8 (0x0100) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER8_OFFSET (8) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER9 (0x0200) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER9_OFFSET (9) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER10 (0x0400) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER10_OFFSET (10) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER11 (0x0800) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER11_OFFSET (11) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER12 (0x1000) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER12_OFFSET (12) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER13 (0x2000) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER13_OFFSET (13) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER14 (0x4000) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER14_OFFSET (14) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER15 (0x8000) +#define EMBER_AF_BLOCK_THRESHOLD_MASK_TIER15_OFFSET (15) +#define EMBER_AF_BLOCK_THRESHOLD_SUB_PAYLOAD_CONTROL_APPLY_TO_ALL_TOU_TIERS_OR_WHEN_BLOCK_ONLY_CHARGING (0x01) +#define EMBER_AF_BLOCK_THRESHOLD_SUB_PAYLOAD_CONTROL_APPLY_TO_ALL_TOU_TIERS_OR_WHEN_BLOCK_ONLY_CHARGING_OFFSET (0) +#define EMBER_AF_CO2_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) +#define EMBER_AF_CO2_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) +#define EMBER_AF_CALORIFIC_VALUE_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) +#define EMBER_AF_CALORIFIC_VALUE_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) +#define EMBER_AF_CHANNEL_MASK_CHANNEL0 (0x00000001) +#define EMBER_AF_CHANNEL_MASK_CHANNEL0_OFFSET (0) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL0 (0x00000001) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL0_OFFSET (0) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL27 (0x00000001) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL27_OFFSET (0) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL35 (0x00000001) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL35_OFFSET (0) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL0 (0x00000001) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL0_OFFSET (0) +#define EMBER_AF_CHANNEL_MASK_CHANNEL1 (0x00000002) +#define EMBER_AF_CHANNEL_MASK_CHANNEL1_OFFSET (1) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL1 (0x00000002) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL1_OFFSET (1) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL28 (0x00000002) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL28_OFFSET (1) +#define EMBER_AF_CHANNEL_MASK_853_CHANNEL36 (0x00000002) +#define EMBER_AF_CHANNEL_MASK_853_CHANNEL36_OFFSET (1) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL1 (0x00000002) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL1_OFFSET (1) +#define EMBER_AF_CHANNEL_MASK_CHANNEL2 (0x00000004) +#define EMBER_AF_CHANNEL_MASK_CHANNEL2_OFFSET (2) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL2 (0x00000004) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL2_OFFSET (2) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL29 (0x00000004) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL29_OFFSET (2) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL37 (0x00000004) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL37_OFFSET (2) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL2 (0x00000004) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL2_OFFSET (2) +#define EMBER_AF_CHANNEL_MASK_CHANNEL3 (0x00000008) +#define EMBER_AF_CHANNEL_MASK_CHANNEL3_OFFSET (3) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL3 (0x00000008) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL3_OFFSET (3) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL30 (0x00000008) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL30_OFFSET (3) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL38 (0x00000008) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL38_OFFSET (3) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL3 (0x00000008) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL3_OFFSET (3) +#define EMBER_AF_CHANNEL_MASK_CHANNEL4 (0x00000010) +#define EMBER_AF_CHANNEL_MASK_CHANNEL4_OFFSET (4) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL4 (0x00000010) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL4_OFFSET (4) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL31 (0x00000010) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL31_OFFSET (4) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL39 (0x00000010) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL39_OFFSET (4) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL4 (0x00000010) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL4_OFFSET (4) +#define EMBER_AF_CHANNEL_MASK_CHANNEL5 (0x00000020) +#define EMBER_AF_CHANNEL_MASK_CHANNEL5_OFFSET (5) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL5 (0x00000020) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL5_OFFSET (5) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL32 (0x00000020) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL32_OFFSET (5) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL40 (0x00000020) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL40_OFFSET (5) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL5 (0x00000020) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL5_OFFSET (5) +#define EMBER_AF_CHANNEL_MASK_CHANNEL6 (0x00000040) +#define EMBER_AF_CHANNEL_MASK_CHANNEL6_OFFSET (6) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL6 (0x00000040) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL6_OFFSET (6) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL33 (0x00000040) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL33_OFFSET (6) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL41 (0x00000040) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL41_OFFSET (6) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL6 (0x00000040) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL6_OFFSET (6) +#define EMBER_AF_CHANNEL_MASK_CHANNEL7 (0x00000080) +#define EMBER_AF_CHANNEL_MASK_CHANNEL7_OFFSET (7) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL7 (0x00000080) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL7_OFFSET (7) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL34 (0x00000080) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL34_OFFSET (7) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL42 (0x00000080) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL42_OFFSET (7) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL7 (0x00000080) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL7_OFFSET (7) +#define EMBER_AF_CHANNEL_MASK_CHANNEL8 (0x00000100) +#define EMBER_AF_CHANNEL_MASK_CHANNEL8_OFFSET (8) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL8 (0x00000100) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL8_OFFSET (8) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL62 (0x00000100) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL62_OFFSET (8) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL43 (0x00000100) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL43_OFFSET (8) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL8 (0x00000100) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL8_OFFSET (8) +#define EMBER_AF_CHANNEL_MASK_CHANNEL9 (0x00000200) +#define EMBER_AF_CHANNEL_MASK_CHANNEL9_OFFSET (9) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL9 (0x00000200) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL9_OFFSET (9) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL44 (0x00000200) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL44_OFFSET (9) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL9 (0x00000200) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL9_OFFSET (9) +#define EMBER_AF_CHANNEL_MASK_CHANNEL10 (0x00000400) +#define EMBER_AF_CHANNEL_MASK_CHANNEL10_OFFSET (10) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL10 (0x00000400) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL10_OFFSET (10) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL45 (0x00000400) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL45_OFFSET (10) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL10 (0x00000400) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL10_OFFSET (10) +#define EMBER_AF_CHANNEL_MASK_CHANNEL11 (0x00000800) +#define EMBER_AF_CHANNEL_MASK_CHANNEL11_OFFSET (11) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL11 (0x00000800) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL11_OFFSET (11) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL46 (0x00000800) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL46_OFFSET (11) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL11 (0x00000800) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL11_OFFSET (11) +#define EMBER_AF_CHANNEL_MASK_CHANNEL12 (0x00001000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL12_OFFSET (12) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL12 (0x00001000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL12_OFFSET (12) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL47 (0x00001000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL47_OFFSET (12) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL12 (0x00001000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL12_OFFSET (12) +#define EMBER_AF_CHANNEL_MASK_CHANNEL13 (0x00002000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL13_OFFSET (13) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL13 (0x00002000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL13_OFFSET (13) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL48 (0x00002000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL48_OFFSET (13) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL13 (0x00002000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL13_OFFSET (13) +#define EMBER_AF_CHANNEL_MASK_CHANNEL14 (0x00004000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL14_OFFSET (14) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL14 (0x00004000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL14_OFFSET (14) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL49 (0x00004000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL49_OFFSET (14) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL14 (0x00004000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL14_OFFSET (14) +#define EMBER_AF_CHANNEL_MASK_CHANNEL15 (0x00008000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL15_OFFSET (15) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL15 (0x00008000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL15_OFFSET (15) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL50 (0x00008000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL50_OFFSET (15) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL15 (0x00008000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL15_OFFSET (15) +#define EMBER_AF_CHANNEL_MASK_CHANNEL16 (0x00010000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL16_OFFSET (16) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL16 (0x00010000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL16_OFFSET (16) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL51 (0x00010000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL51_OFFSET (16) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL16 (0x00010000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL16_OFFSET (16) +#define EMBER_AF_CHANNEL_MASK_CHANNEL17 (0x00020000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL17_OFFSET (17) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL17 (0x00020000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL17_OFFSET (17) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL52 (0x00020000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL52_OFFSET (17) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL17 (0x00020000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL17_OFFSET (17) +#define EMBER_AF_CHANNEL_MASK_CHANNEL18 (0x00040000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL18_OFFSET (18) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL18 (0x00040000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL18_OFFSET (18) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL53 (0x00040000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL53_OFFSET (18) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL18 (0x00040000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL18_OFFSET (18) +#define EMBER_AF_CHANNEL_MASK_CHANNEL19 (0x00080000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL19_OFFSET (19) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL19 (0x00080000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL19_OFFSET (19) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL54 (0x00080000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL54_OFFSET (19) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL19 (0x00080000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL19_OFFSET (19) +#define EMBER_AF_CHANNEL_MASK_CHANNEL20 (0x00100000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL20_OFFSET (20) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL20 (0x00100000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL20_OFFSET (20) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL55 (0x00100000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL55_OFFSET (20) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL20 (0x00100000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL20_OFFSET (20) +#define EMBER_AF_CHANNEL_MASK_CHANNEL21 (0x00200000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL21_OFFSET (21) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL21 (0x00200000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL21_OFFSET (21) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL56 (0x00200000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL56_OFFSET (21) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL21 (0x00200000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL21_OFFSET (21) +#define EMBER_AF_CHANNEL_MASK_CHANNEL22 (0x00400000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL22_OFFSET (22) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL22 (0x00400000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL22_OFFSET (22) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL57 (0x00400000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL57_OFFSET (22) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL22 (0x00400000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL22_OFFSET (22) +#define EMBER_AF_CHANNEL_MASK_CHANNEL23 (0x00800000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL23_OFFSET (23) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL23 (0x00800000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL23_OFFSET (23) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL58 (0x00800000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL58_OFFSET (23) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL23 (0x00800000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL23_OFFSET (23) +#define EMBER_AF_CHANNEL_MASK_CHANNEL24 (0x01000000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL24_OFFSET (24) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL24 (0x01000000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL24_OFFSET (24) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL59 (0x01000000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL59_OFFSET (24) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL24 (0x01000000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL24_OFFSET (24) +#define EMBER_AF_CHANNEL_MASK_CHANNEL25 (0x02000000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL25_OFFSET (25) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL25 (0x02000000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL25_OFFSET (25) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL60 (0x02000000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL60_OFFSET (25) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL25 (0x02000000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL25_OFFSET (25) +#define EMBER_AF_CHANNEL_MASK_CHANNEL26 (0x04000000) +#define EMBER_AF_CHANNEL_MASK_CHANNEL26_OFFSET (26) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL26 (0x04000000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL26_OFFSET (26) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL61 (0x04000000) +#define EMBER_AF_CHANNEL_MASK_863_CHANNEL61_OFFSET (26) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL26 (0x04000000) +#define EMBER_AF_CHANNEL_MASK_915_CHANNEL26_OFFSET (26) +#define EMBER_AF_CHANNEL_MASK_PAGE (0xF8000000) +#define EMBER_AF_CHANNEL_MASK_PAGE_OFFSET (27) #define EMBER_AF_CLEARED_EVENTS_LOGS_ALL_LOGS_CLEARED (0x01) +#define EMBER_AF_CLEARED_EVENTS_LOGS_ALL_LOGS_CLEARED_OFFSET (0) #define EMBER_AF_CLEARED_EVENTS_LOGS_TAMPER_LOG_CLEARED (0x02) #define EMBER_AF_CLEARED_EVENTS_LOGS_TAMPER_LOG_CLEARED_OFFSET (1) #define EMBER_AF_CLEARED_EVENTS_LOGS_FAULT_LOG_CLEARED (0x04) @@ -3136,97 +3003,254 @@ typedef enum #define EMBER_AF_CLEARED_EVENTS_LOGS_SECURITY_EVENT_LOG_CLEARED_OFFSET (4) #define EMBER_AF_CLEARED_EVENTS_LOGS_NETWORK_EVENT_LOG_CLEARED (0x20) #define EMBER_AF_CLEARED_EVENTS_LOGS_NETWORK_EVENT_LOG_CLEARED_OFFSET (5) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL0 (0x00000001) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL1 (0x00000002) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL1_OFFSET (1) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL2 (0x00000004) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL2_OFFSET (2) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL3 (0x00000008) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL3_OFFSET (3) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL4 (0x00000010) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL4_OFFSET (4) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL5 (0x00000020) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL5_OFFSET (5) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL6 (0x00000040) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL6_OFFSET (6) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL7 (0x00000080) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL7_OFFSET (7) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL8 (0x00000100) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL8_OFFSET (8) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL9 (0x00000200) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL9_OFFSET (9) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL10 (0x00000400) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL10_OFFSET (10) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL11 (0x00000800) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL11_OFFSET (11) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL12 (0x00001000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL12_OFFSET (12) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL13 (0x00002000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL13_OFFSET (13) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL14 (0x00004000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL14_OFFSET (14) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL15 (0x00008000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL15_OFFSET (15) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL16 (0x00010000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL16_OFFSET (16) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL17 (0x00020000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL17_OFFSET (17) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL18 (0x00040000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL18_OFFSET (18) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL19 (0x00080000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL19_OFFSET (19) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL20 (0x00100000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL20_OFFSET (20) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL21 (0x00200000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL21_OFFSET (21) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL22 (0x00400000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL22_OFFSET (22) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL23 (0x00800000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL23_OFFSET (23) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL24 (0x01000000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL24_OFFSET (24) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL25 (0x02000000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL25_OFFSET (25) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL26 (0x04000000) -#define EMBER_AF_CHANNEL_MASK915_CHANNEL26_OFFSET (26) -#define EMBER_AF_CHANNEL_MASK_PAGE (0xF8000000) -#define EMBER_AF_CHANNEL_MASK_PAGE_OFFSET (27) -#define EMBER_AF_SCENES_COPY_MODE_COPY_ALL_SCENES (0x01) -#define EMBER_AF_ON_OFF_CONTROL_ACCEPT_ONLY_WHEN_ON (0x01) #define EMBER_AF_COLOR_CAPABILITIES_HUE_SATURATION_SUPPORTED (0x0001) +#define EMBER_AF_COLOR_CAPABILITIES_HUE_SATURATION_SUPPORTED_OFFSET (0) #define EMBER_AF_COLOR_CAPABILITIES_ENHANCED_HUE_SUPPORTED (0x0002) #define EMBER_AF_COLOR_CAPABILITIES_ENHANCED_HUE_SUPPORTED_OFFSET (1) #define EMBER_AF_COLOR_CAPABILITIES_COLOR_LOOP_SUPPORTED (0x0004) #define EMBER_AF_COLOR_CAPABILITIES_COLOR_LOOP_SUPPORTED_OFFSET (2) -#define EMBER_AF_COLOR_CAPABILITIES_X_Y_ATTRIBUTES_SUPPORTED (0x0008) -#define EMBER_AF_COLOR_CAPABILITIES_X_Y_ATTRIBUTES_SUPPORTED_OFFSET (3) +#define EMBER_AF_COLOR_CAPABILITIES_XY_ATTRIBUTES_SUPPORTED (0x0008) +#define EMBER_AF_COLOR_CAPABILITIES_XY_ATTRIBUTES_SUPPORTED_OFFSET (3) #define EMBER_AF_COLOR_CAPABILITIES_COLOR_TEMPERATURE_SUPPORTED (0x0010) #define EMBER_AF_COLOR_CAPABILITIES_COLOR_TEMPERATURE_SUPPORTED_OFFSET (4) #define EMBER_AF_COLOR_LOOP_UPDATE_FLAGS_UPDATE_ACTION (0x01) +#define EMBER_AF_COLOR_LOOP_UPDATE_FLAGS_UPDATE_ACTION_OFFSET (0) #define EMBER_AF_COLOR_LOOP_UPDATE_FLAGS_UPDATE_DIRECTION (0x02) #define EMBER_AF_COLOR_LOOP_UPDATE_FLAGS_UPDATE_DIRECTION_OFFSET (1) #define EMBER_AF_COLOR_LOOP_UPDATE_FLAGS_UPDATE_TIME (0x04) #define EMBER_AF_COLOR_LOOP_UPDATE_FLAGS_UPDATE_TIME_OFFSET (2) #define EMBER_AF_COLOR_LOOP_UPDATE_FLAGS_UPDATE_START_HUE (0x08) #define EMBER_AF_COLOR_LOOP_UPDATE_FLAGS_UPDATE_START_HUE_OFFSET (3) -#define EMBER_AF_ZIGBEE_INFORMATION_LOGICAL_TYPE (0x03) -#define EMBER_AF_ZIGBEE_INFORMATION_RX_ON_WHEN_IDLE (0x04) -#define EMBER_AF_ZIGBEE_INFORMATION_RX_ON_WHEN_IDLE_OFFSET (2) -#define EMBER_AF_ZLL_INFORMATION_FACTORY_NEW (0x01) -#define EMBER_AF_ZLL_INFORMATION_ADDRESS_ASSIGNMENT (0x02) -#define EMBER_AF_ZLL_INFORMATION_ADDRESS_ASSIGNMENT_OFFSET (1) -#define EMBER_AF_ZLL_INFORMATION_TOUCH_LINK_INITIATOR (0x10) -#define EMBER_AF_ZLL_INFORMATION_TOUCH_LINK_INITIATOR_OFFSET (4) -#define EMBER_AF_ZLL_INFORMATION_TOUCH_LINK_PRIORITY_REQUEST (0x20) -#define EMBER_AF_ZLL_INFORMATION_TOUCH_LINK_PRIORITY_REQUEST_OFFSET (5) -#define EMBER_AF_ZLL_INFORMATION_PROFILE_INTEROP (0x80) -#define EMBER_AF_ZLL_INFORMATION_PROFILE_INTEROP_OFFSET (7) -#define EMBER_AF_KEY_BITMASK_DEVELOPMENT (0x0001) -#define EMBER_AF_KEY_BITMASK_MASTER (0x0010) -#define EMBER_AF_KEY_BITMASK_MASTER_OFFSET (4) -#define EMBER_AF_KEY_BITMASK_CERTIFICATION (0x8000) -#define EMBER_AF_KEY_BITMASK_CERTIFICATION_OFFSET (15) +#define EMBER_AF_CONVERSION_FACTOR_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) +#define EMBER_AF_CONVERSION_FACTOR_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) +#define EMBER_AF_CREDIT_STATUS_CREDIT_OK (0x01) +#define EMBER_AF_CREDIT_STATUS_CREDIT_OK_OFFSET (0) +#define EMBER_AF_CREDIT_STATUS_LOW_CREDIT (0x02) +#define EMBER_AF_CREDIT_STATUS_LOW_CREDIT_OFFSET (1) +#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_ENABLED (0x04) +#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_ENABLED_OFFSET (2) +#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_AVAILABLE (0x08) +#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_AVAILABLE_OFFSET (3) +#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_SELECTED (0x10) +#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_SELECTED_OFFSET (4) +#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_IN_USE (0x20) +#define EMBER_AF_CREDIT_STATUS_EMERGENCY_CREDIT_IN_USE_OFFSET (5) +#define EMBER_AF_CREDIT_STATUS_CREDIT_EXHAUSTED (0x40) +#define EMBER_AF_CREDIT_STATUS_CREDIT_EXHAUSTED_OFFSET (6) +#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CLEAR_BILLING_INFO (0x01) +#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CLEAR_BILLING_INFO_OFFSET (0) +#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CONVERT_BILLING_INFO_USING_NEW_CURRENCY (0x02) +#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CONVERT_BILLING_INFO_USING_NEW_CURRENCY_OFFSET (1) +#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CLEAR_OLD_CONSUMPTION_DATA (0x04) +#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CLEAR_OLD_CONSUMPTION_DATA_OFFSET (2) +#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CONVERT_OLD_CONSUMPTION_DATA_USING_NEW_CURRENCY (0x08) +#define EMBER_AF_CURRENCY_CHANGE_CONTROL_CONVERT_OLD_CONSUMPTION_DATA_USING_NEW_CURRENCY_OFFSET (3) +#define EMBER_AF_CURRENT_EVENT_STATUS_RANDOMIZED_START_TIME (0x01) +#define EMBER_AF_CURRENT_EVENT_STATUS_RANDOMIZED_START_TIME_OFFSET (0) +#define EMBER_AF_CURRENT_EVENT_STATUS_RANDOMIZED_DURATION (0x02) +#define EMBER_AF_CURRENT_EVENT_STATUS_RANDOMIZED_DURATION_OFFSET (1) +#define EMBER_AF_CURRENT_EVENT_STATUS_EXTENDED_BITS_PRESENT (0x04) +#define EMBER_AF_CURRENT_EVENT_STATUS_EXTENDED_BITS_PRESENT_OFFSET (2) +#define EMBER_AF_CURRENT_EVENT_STATUS_EVENT_ACTIVE (0x08) +#define EMBER_AF_CURRENT_EVENT_STATUS_EVENT_ACTIVE_OFFSET (3) +#define EMBER_AF_CURRENT_EVENT_STATUS_DEVICE_PARTICIPATING_IN_EVENT (0x10) +#define EMBER_AF_CURRENT_EVENT_STATUS_DEVICE_PARTICIPATING_IN_EVENT_OFFSET (4) +#define EMBER_AF_CURRENT_EVENT_STATUS_REDUCING_LOAD (0x20) +#define EMBER_AF_CURRENT_EVENT_STATUS_REDUCING_LOAD_OFFSET (5) +#define EMBER_AF_CURRENT_EVENT_STATUS_ON_AT_END_OF_EVENT (0x40) +#define EMBER_AF_CURRENT_EVENT_STATUS_ON_AT_END_OF_EVENT_OFFSET (6) +#define EMBER_AF_DAY_OF_WEEK_SUNDAY (0x01) +#define EMBER_AF_DAY_OF_WEEK_SUNDAY_OFFSET (0) +#define EMBER_AF_DAY_OF_WEEK_MONDAY (0x02) +#define EMBER_AF_DAY_OF_WEEK_MONDAY_OFFSET (1) +#define EMBER_AF_DAY_OF_WEEK_TUESDAY (0x04) +#define EMBER_AF_DAY_OF_WEEK_TUESDAY_OFFSET (2) +#define EMBER_AF_DAY_OF_WEEK_WEDNESDAY (0x08) +#define EMBER_AF_DAY_OF_WEEK_WEDNESDAY_OFFSET (3) +#define EMBER_AF_DAY_OF_WEEK_THURSDAY (0x10) +#define EMBER_AF_DAY_OF_WEEK_THURSDAY_OFFSET (4) +#define EMBER_AF_DAY_OF_WEEK_FRIDAY (0x20) +#define EMBER_AF_DAY_OF_WEEK_FRIDAY_OFFSET (5) +#define EMBER_AF_DAY_OF_WEEK_SATURDAY (0x40) +#define EMBER_AF_DAY_OF_WEEK_SATURDAY_OFFSET (6) +#define EMBER_AF_DAY_OF_WEEK_AWAY_OR_VACATION (0x80) +#define EMBER_AF_DAY_OF_WEEK_AWAY_OR_VACATION_OFFSET (7) +#define EMBER_AF_DEVICE_TEMP_ALARM_MASK_TOO_LOW (0x1) +#define EMBER_AF_DEVICE_TEMP_ALARM_MASK_TOO_LOW_OFFSET (0) +#define EMBER_AF_DEVICE_TEMP_ALARM_MASK_TOO_HIGH (0x2) +#define EMBER_AF_DEVICE_TEMP_ALARM_MASK_TOO_HIGH_OFFSET (1) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_SUNDAY (0x01) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_SUNDAY_OFFSET (0) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_MONDAY (0x02) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_MONDAY_OFFSET (1) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_TUESDAY (0x04) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_TUESDAY_OFFSET (2) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_WEDNESDAY (0x08) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_WEDNESDAY_OFFSET (3) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_THURSDAY (0x10) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_THURSDAY_OFFSET (4) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_FRIDAY (0x20) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_FRIDAY_OFFSET (5) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_SATURDAY (0x40) +#define EMBER_AF_DOOR_LOCK_DAY_OF_WEEK_SATURDAY_OFFSET (6) +#define EMBER_AF_ENERGY_FORMATTING_NUMBER_OF_DIGITS_TO_THE_RIGHT_OF_THE_DECIMAL_POINT (0x07) +#define EMBER_AF_ENERGY_FORMATTING_NUMBER_OF_DIGITS_TO_THE_RIGHT_OF_THE_DECIMAL_POINT_OFFSET (0) +#define EMBER_AF_ENERGY_FORMATTING_NUMBER_OF_DIGITS_TO_THE_LEFT_OF_THE_DECIMAL_POINT (0x78) +#define EMBER_AF_ENERGY_FORMATTING_NUMBER_OF_DIGITS_TO_THE_LEFT_OF_THE_DECIMAL_POINT_OFFSET (3) +#define EMBER_AF_ENERGY_FORMATTING_SUPPRESS_LEADING_ZEROS (0x80) +#define EMBER_AF_ENERGY_FORMATTING_SUPPRESS_LEADING_ZEROS_OFFSET (7) +#define EMBER_AF_EVENT_ACTION_CONTROL_REPORT_EVENT_TO_HAN_DEVICES (0x01) +#define EMBER_AF_EVENT_ACTION_CONTROL_REPORT_EVENT_TO_HAN_DEVICES_OFFSET (0) +#define EMBER_AF_EVENT_ACTION_CONTROL_REPORT_EVENT_TO_WAN (0x02) +#define EMBER_AF_EVENT_ACTION_CONTROL_REPORT_EVENT_TO_WAN_OFFSET (1) +#define EMBER_AF_EVENT_CONFIGURATION_LOG_ACTION (0x07) +#define EMBER_AF_EVENT_CONFIGURATION_LOG_ACTION_OFFSET (0) +#define EMBER_AF_EVENT_CONFIGURATION_PUSH_EVENT_TO_WAN (0x08) +#define EMBER_AF_EVENT_CONFIGURATION_PUSH_EVENT_TO_WAN_OFFSET (3) +#define EMBER_AF_EVENT_CONFIGURATION_PUSH_EVENT_TO_HAN (0x10) +#define EMBER_AF_EVENT_CONFIGURATION_PUSH_EVENT_TO_HAN_OFFSET (4) +#define EMBER_AF_EVENT_CONFIGURATION_RAISE_ALARM_ZIG_BEE (0x20) +#define EMBER_AF_EVENT_CONFIGURATION_RAISE_ALARM_ZIG_BEE_OFFSET (5) +#define EMBER_AF_EVENT_CONFIGURATION_RAISE_ALARM_PHYSICAL (0x40) +#define EMBER_AF_EVENT_CONFIGURATION_RAISE_ALARM_PHYSICAL_OFFSET (6) +#define EMBER_AF_EVENT_CONTROL_LOG_ID_LOG_ID (0x0F) +#define EMBER_AF_EVENT_CONTROL_LOG_ID_LOG_ID_OFFSET (0) +#define EMBER_AF_EVENT_CONTROL_LOG_ID_EVENT_CONTROL (0xF0) +#define EMBER_AF_EVENT_CONTROL_LOG_ID_EVENT_CONTROL_OFFSET (4) +#define EMBER_AF_FRIENDLY_CREDIT_FRIENDLY_CREDIT_ENABLED (0x01) +#define EMBER_AF_FRIENDLY_CREDIT_FRIENDLY_CREDIT_ENABLED_OFFSET (0) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NEW_OTA_FIRMWARE (0x00000001) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NEW_OTA_FIRMWARE_OFFSET (0) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CBKE_UPDATE_REQUEST (0x00000002) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CBKE_UPDATE_REQUEST_OFFSET (1) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_TIME_SYNC (0x00000004) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_TIME_SYNC_OFFSET (2) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_STAY_AWAKE_REQUEST_HAN (0x00000010) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_STAY_AWAKE_REQUEST_HAN_OFFSET (4) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_STAY_AWAKE_REQUEST_WAN (0x00000020) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_STAY_AWAKE_REQUEST_WAN_OFFSET (5) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_HISTORICAL_METERING_DATA_ATTRIBUTE_SET (0x000001C0) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_HISTORICAL_METERING_DATA_ATTRIBUTE_SET_OFFSET (6) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_HISTORICAL_PREPAYMENT_DATA_ATTRIBUTE_SET (0x00000E00) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_HISTORICAL_PREPAYMENT_DATA_ATTRIBUTE_SET_OFFSET (9) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_BASIC_CLUSTER (0x00001000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_BASIC_CLUSTER_OFFSET (12) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_METERING_CLUSTER (0x00002000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_METERING_CLUSTER_OFFSET (13) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_PREPAYMENT_CLUSTER (0x00004000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_PUSH_ALL_STATIC_DATA_PREPAYMENT_CLUSTER_OFFSET (14) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NETWORK_KEY_ACTIVE (0x00008000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NETWORK_KEY_ACTIVE_OFFSET (15) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_DISPLAY_MESSAGE (0x00010000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_DISPLAY_MESSAGE_OFFSET (16) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CANCEL_ALL_MESSAGES (0x00020000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CANCEL_ALL_MESSAGES_OFFSET (17) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CHANGE_SUPPLY (0x00040000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CHANGE_SUPPLY_OFFSET (18) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_LOCAL_CHANGE_SUPPLY (0x00080000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_LOCAL_CHANGE_SUPPLY_OFFSET (19) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_SET_UNCONTROLLED_FLOW_THRESHOLD (0x00100000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_SET_UNCONTROLLED_FLOW_THRESHOLD_OFFSET (20) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_TUNNEL_MESSAGE_PENDING (0x00200000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_TUNNEL_MESSAGE_PENDING_OFFSET (21) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_GET_SNAPSHOT (0x00400000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_GET_SNAPSHOT_OFFSET (22) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_GET_SAMPLED_DATA (0x00800000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_GET_SAMPLED_DATA_OFFSET (23) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NEW_SUB_GHZ_CHANNEL_MASKS_AVAILABLE (0x01000000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_NEW_SUB_GHZ_CHANNEL_MASKS_AVAILABLE_OFFSET (24) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_ENERGY_SCAN_PENDING (0x02000000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_ENERGY_SCAN_PENDING_OFFSET (25) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CHANNEL_CHANGE_PENDING (0x04000000) +#define EMBER_AF_FUNCTIONAL_NOTIFICATION_FLAGS_CHANNEL_CHANGE_PENDING_OFFSET (26) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_ABSOLUTE_ONLY (0x1) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_ABSOLUTE_ONLY_OFFSET (0) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_RECALCULATE (0x2) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_RECALCULATE_OFFSET (1) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_BROADCAST (0x4) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_BROADCAST_OFFSET (2) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_BROADCAST_RESPONSE (0x8) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_BROADCAST_RESPONSE_OFFSET (3) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_COMPACT_RESPONSE (0x10) +#define EMBER_AF_GET_LOCATION_DATA_FLAGS_COMPACT_RESPONSE_OFFSET (4) +#define EMBER_AF_GP_APPLICATION_INFORMATION_MANUFACTURE_ID_PRESENT (0x01) +#define EMBER_AF_GP_APPLICATION_INFORMATION_MANUFACTURE_ID_PRESENT_OFFSET (0) +#define EMBER_AF_GP_APPLICATION_INFORMATION_MODEL_ID_PRESENT (0x02) +#define EMBER_AF_GP_APPLICATION_INFORMATION_MODEL_ID_PRESENT_OFFSET (1) +#define EMBER_AF_GP_APPLICATION_INFORMATION_GPD_COMMANDS_PRESENT (0x04) +#define EMBER_AF_GP_APPLICATION_INFORMATION_GPD_COMMANDS_PRESENT_OFFSET (2) +#define EMBER_AF_GP_APPLICATION_INFORMATION_CLUSTER_LIST_PRESENT (0x08) +#define EMBER_AF_GP_APPLICATION_INFORMATION_CLUSTER_LIST_PRESENT_OFFSET (3) +#define EMBER_AF_GP_APPLICATION_INFORMATION_SWITCH_INFORMATION_PRESENT (0x10) +#define EMBER_AF_GP_APPLICATION_INFORMATION_SWITCH_INFORMATION_PRESENT_OFFSET (4) +#define EMBER_AF_GP_APPLICATION_INFORMATION_APPLICATION_DESCRIPTION_PRESENT (0x20) +#define EMBER_AF_GP_APPLICATION_INFORMATION_APPLICATION_DESCRIPTION_PRESENT_OFFSET (5) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_APPLICATION_ID (0x0007) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_APPLICATION_ID_OFFSET (0) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_RX_AFTER_TX (0x0008) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_RX_AFTER_TX_OFFSET (3) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_LEVEL (0x0030) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_LEVEL_OFFSET (4) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_KEY_TYPE (0x01C0) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_KEY_TYPE_OFFSET (6) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_PROCESSING_FAILED (0x0200) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_PROCESSING_FAILED_OFFSET (9) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_BIDIRECTIONAL_CAPABILITY (0x0400) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_BIDIRECTIONAL_CAPABILITY_OFFSET (10) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_PROXY_INFO_PRESENT (0x0800) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_PROXY_INFO_PRESENT_OFFSET (11) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_RESERVED (0xF000) +#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_RESERVED_OFFSET (12) +#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_MASK (0x1F) +#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_MASK_OFFSET (0) +#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_OPERATIONAL_CHANNEL (0x0F) +#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_OPERATIONAL_CHANNEL_OFFSET (0) +#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_BASIC (0x10) +#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_BASIC_OFFSET (4) +#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_RESERVED (0xE0) +#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_RESERVED_OFFSET (5) +#define EMBER_AF_GP_GPD_CHANNEL_REQUEST_CHANNEL_TOGGLING_BEHAVIOUR_RX_CHANNEL_NEXT_ATTEMPT (0x0F) +#define EMBER_AF_GP_GPD_CHANNEL_REQUEST_CHANNEL_TOGGLING_BEHAVIOUR_RX_CHANNEL_NEXT_ATTEMPT_OFFSET (0) +#define EMBER_AF_GP_GPD_CHANNEL_REQUEST_CHANNEL_TOGGLING_BEHAVIOUR_RX_CHANNEL_SECOND_NEXT_ATTEMPT (0xF0) +#define EMBER_AF_GP_GPD_CHANNEL_REQUEST_CHANNEL_TOGGLING_BEHAVIOUR_RX_CHANNEL_SECOND_NEXT_ATTEMPT_OFFSET (4) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_SECURITY_LEVEL_CAPABILITIES (0x03) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_SECURITY_LEVEL_CAPABILITIES_OFFSET (0) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_KEY_TYPE (0x1C) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_KEY_TYPE_OFFSET (2) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_KEY_PRESENT (0x20) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_KEY_PRESENT_OFFSET (5) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_KEY_ENCRYPTION (0x40) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_KEY_ENCRYPTION_OFFSET (6) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_OUTGOING_COUNTER_PRESENT (0x80) +#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_OUTGOING_COUNTER_PRESENT_OFFSET (7) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_MAC_SEQ_NUM_CAP (0x01) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_MAC_SEQ_NUM_CAP_OFFSET (0) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_RX_ON_CAP (0x02) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_RX_ON_CAP_OFFSET (1) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_APPLICATION_INFORMATION_PRESENT (0x04) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_APPLICATION_INFORMATION_PRESENT_OFFSET (2) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_RESERVED (0x08) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_RESERVED_OFFSET (3) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_PAN_ID_REQUEST (0x10) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_PAN_ID_REQUEST_OFFSET (4) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_GP_SECURITY_KEY_REQUEST (0x20) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_GP_SECURITY_KEY_REQUEST_OFFSET (5) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_FIXED_LOCATION (0x40) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_FIXED_LOCATION_OFFSET (6) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_EXTENDED_OPTIONS_FIELD (0x80) +#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_EXTENDED_OPTIONS_FIELD_OFFSET (7) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_PAN_ID_PRESENT (0x01) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_PAN_ID_PRESENT_OFFSET (0) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_GPD_SECURITY_KEY_PRESENT (0x02) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_GPD_SECURITY_KEY_PRESENT_OFFSET (1) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_GPDKEY_ENCRYPTION (0x04) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_GPDKEY_ENCRYPTION_OFFSET (2) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_SECURITY_LEVEL (0x18) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_SECURITY_LEVEL_OFFSET (3) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_KEY_TYPE (0xE0) +#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_KEY_TYPE_OFFSET (5) #define EMBER_AF_GP_GPS_FUNCTIONALITY_GP_FEATURE (0x000001) +#define EMBER_AF_GP_GPS_FUNCTIONALITY_GP_FEATURE_OFFSET (0) #define EMBER_AF_GP_GPS_FUNCTIONALITY_DIRECT_COMMUNICATION (0x000002) #define EMBER_AF_GP_GPS_FUNCTIONALITY_DIRECT_COMMUNICATION_OFFSET (1) #define EMBER_AF_GP_GPS_FUNCTIONALITY_DERIVED_GROUPCAST_COMMUNICATION (0x000004) @@ -3269,74 +3293,8 @@ typedef enum #define EMBER_AF_GP_GPS_FUNCTIONALITY_COMPACT_ATTRIBUTE_REPORTING_OFFSET (20) #define EMBER_AF_GP_GPS_FUNCTIONALITY_RESERVED (0xE00000) #define EMBER_AF_GP_GPS_FUNCTIONALITY_RESERVED_OFFSET (21) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_APPLICATION_ID (0x00000007) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ENTRY_ACTIVE (0x00000008) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ENTRY_ACTIVE_OFFSET (3) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ENTRY_VALID (0x00000010) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ENTRY_VALID_OFFSET (4) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_SEQUENCE_NUMBER_CAP (0x00000020) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_SEQUENCE_NUMBER_CAP_OFFSET (5) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_LIGHTWEIGHT_UNICAST_GPS (0x00000040) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_LIGHTWEIGHT_UNICAST_GPS_OFFSET (6) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_DERIVED_GROUP_GPS (0x00000080) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_DERIVED_GROUP_GPS_OFFSET (7) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_COMMISIONED_GROUP_GPS (0x00000100) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_COMMISIONED_GROUP_GPS_OFFSET (8) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_FIRST_TO_FORWARD (0x00000200) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_FIRST_TO_FORWARD_OFFSET (9) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_IN_RANGE (0x00000400) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_IN_RANGE_OFFSET (10) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_GPD_FIXED (0x00000800) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_GPD_FIXED_OFFSET (11) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_HAS_ALL_UNICAST_ROUTES (0x00001000) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_HAS_ALL_UNICAST_ROUTES_OFFSET (12) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ASSIGNED_ALIAS (0x00002000) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ASSIGNED_ALIAS_OFFSET (13) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_SECURITY_USE (0x00004000) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_SECURITY_USE_OFFSET (14) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_EXTENSION (0x00008000) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_EXTENSION_OFFSET (15) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_FULL_UNICAST_GPS (0x00010000) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_FULL_UNICAST_GPS_OFFSET (16) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_LEVEL (0x03) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_KEY_TYPE (0x1C) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_KEY_TYPE_OFFSET (2) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_RESERVED (0xE0) -#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_RESERVED_OFFSET (5) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_MAC_SEQ_NUM_CAP (0x01) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_RX_ON_CAP (0x02) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_RX_ON_CAP_OFFSET (1) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_APPLICATION_INFORMATION_PRESENT (0x04) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_APPLICATION_INFORMATION_PRESENT_OFFSET (2) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_RESERVED (0x08) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_RESERVED_OFFSET (3) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_PAN_ID_REQUEST (0x10) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_PAN_ID_REQUEST_OFFSET (4) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_GP_SECURITY_KEY_REQUEST (0x20) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_GP_SECURITY_KEY_REQUEST_OFFSET (5) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_FIXED_LOCATION (0x40) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_FIXED_LOCATION_OFFSET (6) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_EXTENDED_OPTIONS_FIELD (0x80) -#define EMBER_AF_GP_GPD_COMMISSIONING_OPTIONS_EXTENDED_OPTIONS_FIELD_OFFSET (7) -#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_SECURITY_LEVEL_CAPABILITIES (0x03) -#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_KEY_TYPE (0x1C) -#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_KEY_TYPE_OFFSET (2) -#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_KEY_PRESENT (0x20) -#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_KEY_PRESENT_OFFSET (5) -#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_KEY_ENCRYPTION (0x40) -#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_KEY_ENCRYPTION_OFFSET (6) -#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_OUTGOING_COUNTER_PRESENT (0x80) -#define EMBER_AF_GP_GPD_COMMISSIONING_EXTENDED_OPTIONS_GPD_OUTGOING_COUNTER_PRESENT_OFFSET (7) -#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_PAN_ID_PRESENT (0x01) -#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_GPD_SECURITY_KEY_PRESENT (0x02) -#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_GPD_SECURITY_KEY_PRESENT_OFFSET (1) -#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_GPDKEY_ENCRYPTION (0x04) -#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_GPDKEY_ENCRYPTION_OFFSET (2) -#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_SECURITY_LEVEL (0x18) -#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_SECURITY_LEVEL_OFFSET (3) -#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_KEY_TYPE (0xE0) -#define EMBER_AF_GP_GPD_COMMISSIONING_REPLY_OPTIONS_KEY_TYPE_OFFSET (5) #define EMBER_AF_GP_NOTIFICATION_OPTION_APPLICATION_ID (0x0007) +#define EMBER_AF_GP_NOTIFICATION_OPTION_APPLICATION_ID_OFFSET (0) #define EMBER_AF_GP_NOTIFICATION_OPTION_ALSO_UNICAST (0x0008) #define EMBER_AF_GP_NOTIFICATION_OPTION_ALSO_UNICAST_OFFSET (3) #define EMBER_AF_GP_NOTIFICATION_OPTION_ALSO_DERIVED_GROUP (0x0010) @@ -3357,86 +3315,22 @@ typedef enum #define EMBER_AF_GP_NOTIFICATION_OPTION_PROXY_INFO_PRESENT_OFFSET (14) #define EMBER_AF_GP_NOTIFICATION_OPTION_RESERVED (0x8000) #define EMBER_AF_GP_NOTIFICATION_OPTION_RESERVED_OFFSET (15) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_APPLICATION_ID (0x0007) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_UNICAST_SINKS (0x0008) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_UNICAST_SINKS_OFFSET (3) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_DERIVED_GROUPCAST_SINKS (0x0010) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_DERIVED_GROUPCAST_SINKS_OFFSET (4) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_COMMISSIONED_GROUPCAST_SINKS (0x0020) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_COMMISSIONED_GROUPCAST_SINKS_OFFSET (5) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_GPD_SECURITY_FRAME_COUNTER (0x0040) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_GPD_SECURITY_FRAME_COUNTER_OFFSET (6) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_GPD_SECURITY_KEY (0x0080) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_GPD_SECURITY_KEY_OFFSET (7) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_RESERVED (0xFF00) -#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_RESERVED_OFFSET (8) -#define EMBER_AF_GP_TUNNELING_STOP_OPTION_APPLICATION_ID (0x07) -#define EMBER_AF_GP_TUNNELING_STOP_OPTION_ALSO_DERIVED_GROUP (0x08) -#define EMBER_AF_GP_TUNNELING_STOP_OPTION_ALSO_DERIVED_GROUP_OFFSET (3) -#define EMBER_AF_GP_TUNNELING_STOP_OPTION_ALSO_COMMISSIONED_GROUP (0x10) -#define EMBER_AF_GP_TUNNELING_STOP_OPTION_ALSO_COMMISSIONED_GROUP_OFFSET (4) -#define EMBER_AF_GP_TUNNELING_STOP_OPTION_RESERVED (0xE0) -#define EMBER_AF_GP_TUNNELING_STOP_OPTION_RESERVED_OFFSET (5) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_APPLICATION_ID (0x0007) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_RX_AFTER_TX (0x0008) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_RX_AFTER_TX_OFFSET (3) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_LEVEL (0x0030) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_LEVEL_OFFSET (4) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_KEY_TYPE (0x01C0) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_KEY_TYPE_OFFSET (6) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_PROCESSING_FAILED (0x0200) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_SECURITY_PROCESSING_FAILED_OFFSET (9) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_BIDIRECTIONAL_CAPABILITY (0x0400) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_BIDIRECTIONAL_CAPABILITY_OFFSET (10) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_PROXY_INFO_PRESENT (0x0800) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_PROXY_INFO_PRESENT_OFFSET (11) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_RESERVED (0xF000) -#define EMBER_AF_GP_COMMISSIONING_NOTIFICATION_OPTION_RESERVED_OFFSET (12) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_ACTION (0x01) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_GPM_IN_SECURITY (0x02) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_GPM_IN_SECURITY_OFFSET (1) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_GPM_IN_PAIRING (0x04) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_GPM_IN_PAIRING_OFFSET (2) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_PROXIES (0x08) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_PROXIES_OFFSET (3) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_RESERVED (0xF0) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_RESERVED_OFFSET (4) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_COMMISSIONING_WINDOW_EXPIRATION (0x01) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_FIRST_PAIRING_SUCCESS (0x02) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_FIRST_PAIRING_SUCCESS_OFFSET (1) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_GP_PROXY_COMMISSIONING_MODE_EXIT (0x04) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_GP_PROXY_COMMISSIONING_MODE_EXIT_OFFSET (2) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_RESERVED (0xF8) -#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_RESERVED_OFFSET (3) -#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_APPLICATION_ID (0x07) -#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_REQUEST_TYPE (0x18) -#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_REQUEST_TYPE_OFFSET (3) -#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_RESERVED (0xE0) -#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_RESERVED_OFFSET (5) -#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_APPLICATION_ID (0x0007) -#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_ACTION (0x0018) -#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_ACTION_OFFSET (3) -#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_NUMBER_OF_TRANSLATIONS (0x00E0) -#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_NUMBER_OF_TRANSLATIONS_OFFSET (5) -#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_ADDITIONAL_INFORMATION_BLOCK_PRESENT (0x0100) -#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_ADDITIONAL_INFORMATION_BLOCK_PRESENT_OFFSET (8) -#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_RESERVED (0xFE00) -#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_RESERVED_OFFSET (9) -#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_GPD_ID (0x01) -#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_CMD_ID (0x02) -#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_CMD_ID_OFFSET (1) -#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_PAYLOAD (0x04) -#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_PAYLOAD_OFFSET (2) -#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_ZB_ENDPOINT (0x08) -#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_ZB_ENDPOINT_OFFSET (3) -#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_ADDITIONAL_INFO_BLOCK (0x10) -#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_ADDITIONAL_INFO_BLOCK_OFFSET (4) +#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_APPLICATION_ID (0x07) +#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_APPLICATION_ID_OFFSET (0) +#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_FIRST_TO_FORWARD (0x08) +#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_FIRST_TO_FORWARD_OFFSET (3) +#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_NO_PAIRING (0x10) +#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_NO_PAIRING_OFFSET (4) +#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_RESERVED (0xE0) +#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_RESERVED_OFFSET (5) #define EMBER_AF_GP_PAIRING_CONFIGURATION_ACTIONS_ACTION (0x07) +#define EMBER_AF_GP_PAIRING_CONFIGURATION_ACTIONS_ACTION_OFFSET (0) #define EMBER_AF_GP_PAIRING_CONFIGURATION_ACTIONS_SEND_GP_PAIRING (0x08) #define EMBER_AF_GP_PAIRING_CONFIGURATION_ACTIONS_SEND_GP_PAIRING_OFFSET (3) #define EMBER_AF_GP_PAIRING_CONFIGURATION_ACTIONS_RESERVED (0xF0) #define EMBER_AF_GP_PAIRING_CONFIGURATION_ACTIONS_RESERVED_OFFSET (4) #define EMBER_AF_GP_PAIRING_CONFIGURATION_OPTION_APPLICATION_ID (0x0007) +#define EMBER_AF_GP_PAIRING_CONFIGURATION_OPTION_APPLICATION_ID_OFFSET (0) #define EMBER_AF_GP_PAIRING_CONFIGURATION_OPTION_COMMUNICATION_MODE (0x0018) #define EMBER_AF_GP_PAIRING_CONFIGURATION_OPTION_COMMUNICATION_MODE_OFFSET (3) #define EMBER_AF_GP_PAIRING_CONFIGURATION_OPTION_SEQUENCE_NUMBER_CAPABILITIES (0x0020) @@ -3453,25 +3347,8 @@ typedef enum #define EMBER_AF_GP_PAIRING_CONFIGURATION_OPTION_APPLICATION_INFORMATION_PRESENT_OFFSET (10) #define EMBER_AF_GP_PAIRING_CONFIGURATION_OPTION_RESERVED (0xF800) #define EMBER_AF_GP_PAIRING_CONFIGURATION_OPTION_RESERVED_OFFSET (11) -#define EMBER_AF_GP_APPLICATION_INFORMATION_MANUFACTURE_ID_PRESENT (0x01) -#define EMBER_AF_GP_APPLICATION_INFORMATION_MODEL_ID_PRESENT (0x02) -#define EMBER_AF_GP_APPLICATION_INFORMATION_MODEL_ID_PRESENT_OFFSET (1) -#define EMBER_AF_GP_APPLICATION_INFORMATION_GPD_COMMANDS_PRESENT (0x04) -#define EMBER_AF_GP_APPLICATION_INFORMATION_GPD_COMMANDS_PRESENT_OFFSET (2) -#define EMBER_AF_GP_APPLICATION_INFORMATION_CLUSTER_LIST_PRESENT (0x08) -#define EMBER_AF_GP_APPLICATION_INFORMATION_CLUSTER_LIST_PRESENT_OFFSET (3) -#define EMBER_AF_GP_APPLICATION_INFORMATION_SWITCH_INFORMATION_PRESENT (0x10) -#define EMBER_AF_GP_APPLICATION_INFORMATION_SWITCH_INFORMATION_PRESENT_OFFSET (4) -#define EMBER_AF_GP_APPLICATION_INFORMATION_APPLICATION_DESCRIPTION_PRESENT (0x20) -#define EMBER_AF_GP_APPLICATION_INFORMATION_APPLICATION_DESCRIPTION_PRESENT_OFFSET (5) -#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_APPLICATION_ID (0x07) -#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_FIRST_TO_FORWARD (0x08) -#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_FIRST_TO_FORWARD_OFFSET (3) -#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_NO_PAIRING (0x10) -#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_NO_PAIRING_OFFSET (4) -#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_RESERVED (0xE0) -#define EMBER_AF_GP_NOTIFICATION_RESPONSE_OPTION_RESERVED_OFFSET (5) #define EMBER_AF_GP_PAIRING_OPTION_APPLICATION_ID (0x000007) +#define EMBER_AF_GP_PAIRING_OPTION_APPLICATION_ID_OFFSET (0) #define EMBER_AF_GP_PAIRING_OPTION_ADD_SINK (0x000008) #define EMBER_AF_GP_PAIRING_OPTION_ADD_SINK_OFFSET (3) #define EMBER_AF_GP_PAIRING_OPTION_REMOVE_GPD (0x000010) @@ -3496,7 +3373,28 @@ typedef enum #define EMBER_AF_GP_PAIRING_OPTION_GROUPCAST_RADIUS_PRESENT_OFFSET (17) #define EMBER_AF_GP_PAIRING_OPTION_RESERVED (0xFC0000) #define EMBER_AF_GP_PAIRING_OPTION_RESERVED_OFFSET (18) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_APPLICATION_ID (0x0007) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_APPLICATION_ID_OFFSET (0) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_UNICAST_SINKS (0x0008) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_UNICAST_SINKS_OFFSET (3) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_DERIVED_GROUPCAST_SINKS (0x0010) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_DERIVED_GROUPCAST_SINKS_OFFSET (4) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_COMMISSIONED_GROUPCAST_SINKS (0x0020) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_COMMISSIONED_GROUPCAST_SINKS_OFFSET (5) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_GPD_SECURITY_FRAME_COUNTER (0x0040) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_GPD_SECURITY_FRAME_COUNTER_OFFSET (6) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_GPD_SECURITY_KEY (0x0080) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_REQUEST_GPD_SECURITY_KEY_OFFSET (7) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_RESERVED (0xFF00) +#define EMBER_AF_GP_PAIRING_SEARCH_OPTION_RESERVED_OFFSET (8) +#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_COMMISSIONING_WINDOW_EXPIRATION (0x02) +#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_COMMISSIONING_WINDOW_EXPIRATION_OFFSET (1) +#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_FIRST_PAIRING_SUCCESS (0x04) +#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_FIRST_PAIRING_SUCCESS_OFFSET (2) +#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_GP_PROXY_COMMISSIONING_MODE_EXIT (0x08) +#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_GP_PROXY_COMMISSIONING_MODE_EXIT_OFFSET (3) #define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_OPTION_ACTION (0x01) +#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_OPTION_ACTION_OFFSET (0) #define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_OPTION_COMMISSIONING_WINDOW_PRESENT (0x02) #define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_OPTION_COMMISSIONING_WINDOW_PRESENT_OFFSET (1) #define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_OPTION_EXIT_MODE (0x0C) @@ -3507,21 +3405,78 @@ typedef enum #define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_OPTION_UNICAST_COMMUNICATION_OFFSET (5) #define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_OPTION_RESERVED (0xC0) #define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_OPTION_RESERVED_OFFSET (6) -#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_COMMISSIONING_WINDOW_EXPIRATION (0x02) -#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_COMMISSIONING_WINDOW_EXPIRATION_OFFSET (1) -#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_FIRST_PAIRING_SUCCESS (0x04) -#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_FIRST_PAIRING_SUCCESS_OFFSET (2) -#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_GP_PROXY_COMMISSIONING_MODE_EXIT (0x08) -#define EMBER_AF_GP_PROXY_COMMISSIONING_MODE_EXIT_MODE_ON_GP_PROXY_COMMISSIONING_MODE_EXIT_OFFSET (3) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_APPLICATION_ID (0x00000007) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_APPLICATION_ID_OFFSET (0) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ENTRY_ACTIVE (0x00000008) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ENTRY_ACTIVE_OFFSET (3) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ENTRY_VALID (0x00000010) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ENTRY_VALID_OFFSET (4) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_SEQUENCE_NUMBER_CAP (0x00000020) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_SEQUENCE_NUMBER_CAP_OFFSET (5) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_LIGHTWEIGHT_UNICAST_GPS (0x00000040) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_LIGHTWEIGHT_UNICAST_GPS_OFFSET (6) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_DERIVED_GROUP_GPS (0x00000080) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_DERIVED_GROUP_GPS_OFFSET (7) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_COMMISIONED_GROUP_GPS (0x00000100) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_COMMISIONED_GROUP_GPS_OFFSET (8) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_FIRST_TO_FORWARD (0x00000200) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_FIRST_TO_FORWARD_OFFSET (9) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_IN_RANGE (0x00000400) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_IN_RANGE_OFFSET (10) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_GPD_FIXED (0x00000800) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_GPD_FIXED_OFFSET (11) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_HAS_ALL_UNICAST_ROUTES (0x00001000) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_HAS_ALL_UNICAST_ROUTES_OFFSET (12) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ASSIGNED_ALIAS (0x00002000) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_ASSIGNED_ALIAS_OFFSET (13) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_SECURITY_USE (0x00004000) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_SECURITY_USE_OFFSET (14) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_EXTENSION (0x00008000) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_EXTENSION_OFFSET (15) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_FULL_UNICAST_GPS (0x00010000) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_OPTIONS_FULL_UNICAST_GPS_OFFSET (16) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_LEVEL (0x03) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_LEVEL_OFFSET (0) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_KEY_TYPE (0x1C) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_KEY_TYPE_OFFSET (2) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_RESERVED (0xE0) +#define EMBER_AF_GP_PROXY_TABLE_ENTRY_SECURITY_OPTIONS_RESERVED_OFFSET (5) +#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_APPLICATION_ID (0x07) +#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_APPLICATION_ID_OFFSET (0) +#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_REQUEST_TYPE (0x18) +#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_REQUEST_TYPE_OFFSET (3) +#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_RESERVED (0xE0) +#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_RESERVED_OFFSET (5) #define EMBER_AF_GP_RESPONSE_OPTION_APPLICATION_ID (0x07) +#define EMBER_AF_GP_RESPONSE_OPTION_APPLICATION_ID_OFFSET (0) #define EMBER_AF_GP_RESPONSE_OPTION_TRANSMIT_ON_END_POINT_MATCH (0x08) #define EMBER_AF_GP_RESPONSE_OPTION_TRANSMIT_ON_END_POINT_MATCH_OFFSET (3) #define EMBER_AF_GP_RESPONSE_OPTION_RESERVED (0xF0) #define EMBER_AF_GP_RESPONSE_OPTION_RESERVED_OFFSET (4) #define EMBER_AF_GP_RESPONSE_TEMP_MASTER_TX_CHANNEL_TRANSMIT_CHANNEL (0x0F) +#define EMBER_AF_GP_RESPONSE_TEMP_MASTER_TX_CHANNEL_TRANSMIT_CHANNEL_OFFSET (0) #define EMBER_AF_GP_RESPONSE_TEMP_MASTER_TX_CHANNEL_RESERVED (0xF0) #define EMBER_AF_GP_RESPONSE_TEMP_MASTER_TX_CHANNEL_RESERVED_OFFSET (4) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_COMMISSIONING_WINDOW_EXPIRATION (0x01) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_COMMISSIONING_WINDOW_EXPIRATION_OFFSET (0) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_FIRST_PAIRING_SUCCESS (0x02) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_FIRST_PAIRING_SUCCESS_OFFSET (1) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_GP_PROXY_COMMISSIONING_MODE_EXIT (0x04) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_ON_GP_PROXY_COMMISSIONING_MODE_EXIT_OFFSET (2) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_RESERVED (0xF8) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_EXIT_MODE_RESERVED_OFFSET (3) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_ACTION (0x01) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_ACTION_OFFSET (0) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_GPM_IN_SECURITY (0x02) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_GPM_IN_SECURITY_OFFSET (1) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_GPM_IN_PAIRING (0x04) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_GPM_IN_PAIRING_OFFSET (2) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_PROXIES (0x08) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_INVOLVE_PROXIES_OFFSET (3) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_RESERVED (0xF0) +#define EMBER_AF_GP_SINK_COMMISSIONING_MODE_OPTIONS_RESERVED_OFFSET (4) #define EMBER_AF_GP_SINK_TABLE_ENTRY_OPTIONS_APPLICATION_ID (0x0007) +#define EMBER_AF_GP_SINK_TABLE_ENTRY_OPTIONS_APPLICATION_ID_OFFSET (0) #define EMBER_AF_GP_SINK_TABLE_ENTRY_OPTIONS_COMMUNICATION_MODE (0x0018) #define EMBER_AF_GP_SINK_TABLE_ENTRY_OPTIONS_COMMUNICATION_MODE_OFFSET (3) #define EMBER_AF_GP_SINK_TABLE_ENTRY_OPTIONS_SEQUENCE_NUM_CAPABILITIES (0x0020) @@ -3537,34 +3492,564 @@ typedef enum #define EMBER_AF_GP_SINK_TABLE_ENTRY_OPTIONS_RESERVED (0xFC00) #define EMBER_AF_GP_SINK_TABLE_ENTRY_OPTIONS_RESERVED_OFFSET (10) #define EMBER_AF_GP_SINK_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_LEVEL (0x03) +#define EMBER_AF_GP_SINK_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_LEVEL_OFFSET (0) #define EMBER_AF_GP_SINK_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_KEY_TYPE (0x1C) #define EMBER_AF_GP_SINK_TABLE_ENTRY_SECURITY_OPTIONS_SECURITY_KEY_TYPE_OFFSET (2) #define EMBER_AF_GP_SINK_TABLE_ENTRY_SECURITY_OPTIONS_RESERVED (0xE0) #define EMBER_AF_GP_SINK_TABLE_ENTRY_SECURITY_OPTIONS_RESERVED_OFFSET (5) +#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_APPLICATION_ID (0x07) +#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_APPLICATION_ID_OFFSET (0) +#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_REQUEST_TYPE (0x18) +#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_REQUEST_TYPE_OFFSET (3) +#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_RESERVED (0xE0) +#define EMBER_AF_GP_SINK_TABLE_REQUEST_OPTIONS_RESERVED_OFFSET (5) #define EMBER_AF_GP_TRANSLATION_TABLE_RESPONSE_OPTION_APPLICATION_ID (0x07) +#define EMBER_AF_GP_TRANSLATION_TABLE_RESPONSE_OPTION_APPLICATION_ID_OFFSET (0) #define EMBER_AF_GP_TRANSLATION_TABLE_RESPONSE_OPTION_ADDITIONAL_INFORMATION_BLOCK_PRESENT (0x08) #define EMBER_AF_GP_TRANSLATION_TABLE_RESPONSE_OPTION_ADDITIONAL_INFORMATION_BLOCK_PRESENT_OFFSET (3) #define EMBER_AF_GP_TRANSLATION_TABLE_RESPONSE_OPTION_RESERVED (0xF0) #define EMBER_AF_GP_TRANSLATION_TABLE_RESPONSE_OPTION_RESERVED_OFFSET (4) -#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_APPLICATION_ID (0x07) -#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_REQUEST_TYPE (0x18) -#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_REQUEST_TYPE_OFFSET (3) -#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_RESERVED (0xE0) -#define EMBER_AF_GP_PROXY_TABLE_REQUEST_OPTIONS_RESERVED_OFFSET (5) -#define EMBER_AF_GP_GPD_CHANNEL_REQUEST_CHANNEL_TOGGLING_BEHAVIOUR_RX_CHANNEL_NEXT_ATTEMPT (0x0F) -#define EMBER_AF_GP_GPD_CHANNEL_REQUEST_CHANNEL_TOGGLING_BEHAVIOUR_RX_CHANNEL_SECOND_NEXT_ATTEMPT (0xF0) -#define EMBER_AF_GP_GPD_CHANNEL_REQUEST_CHANNEL_TOGGLING_BEHAVIOUR_RX_CHANNEL_SECOND_NEXT_ATTEMPT_OFFSET (4) -#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_MASK (0x1F) -#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_OPERATIONAL_CHANNEL (0x0F) -#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_BASIC (0x10) -#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_BASIC_OFFSET (4) -#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_RESERVED (0xE0) -#define EMBER_AF_GP_GPD_CHANNEL_CONFIGURATION_CHANNEL_RESERVED_OFFSET (5) -#define EMBER_AF_GP_RESPONSE_OPTION_MASK (0x0F) -#define EMBER_AF_GP_RESPONSE_OPTION_TRANSMIT_ON_END_POINT_MATCH (0x08) -#define EMBER_AF_GP_RESPONSE_OPTION_TRANSMIT_ON_END_POINT_MATCH_OFFSET (3) -#define EMBER_AF_GP_RESPONSE_OPTION_RESERVED (0xF0) -#define EMBER_AF_GP_RESPONSE_OPTION_RESERVED_OFFSET (4) -/** @} END Enums */ -/** @} END addtogroup */ -#endif // SILABS_EMBER_AF_ENUMS +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_GPD_ID (0x01) +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_GPD_ID_OFFSET (0) +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_CMD_ID (0x02) +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_CMD_ID_OFFSET (1) +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_PAYLOAD (0x04) +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_PAYLOAD_OFFSET (2) +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_ZB_ENDPOINT (0x08) +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_ZB_ENDPOINT_OFFSET (3) +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_ADDITIONAL_INFO_BLOCK (0x10) +#define EMBER_AF_GP_TRANSLATION_TABLE_SCAN_LEVEL_ADDITIONAL_INFO_BLOCK_OFFSET (4) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_APPLICATION_ID (0x0007) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_APPLICATION_ID_OFFSET (0) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_ACTION (0x0018) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_ACTION_OFFSET (3) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_NUMBER_OF_TRANSLATIONS (0x00E0) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_NUMBER_OF_TRANSLATIONS_OFFSET (5) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_ADDITIONAL_INFORMATION_BLOCK_PRESENT (0x0100) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_ADDITIONAL_INFORMATION_BLOCK_PRESENT_OFFSET (8) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_RESERVED (0xFE00) +#define EMBER_AF_GP_TRANSLATION_TABLE_UPDATE_OPTION_RESERVED_OFFSET (9) +#define EMBER_AF_GP_TUNNELING_STOP_OPTION_APPLICATION_ID (0x07) +#define EMBER_AF_GP_TUNNELING_STOP_OPTION_APPLICATION_ID_OFFSET (0) +#define EMBER_AF_GP_TUNNELING_STOP_OPTION_ALSO_DERIVED_GROUP (0x08) +#define EMBER_AF_GP_TUNNELING_STOP_OPTION_ALSO_DERIVED_GROUP_OFFSET (3) +#define EMBER_AF_GP_TUNNELING_STOP_OPTION_ALSO_COMMISSIONED_GROUP (0x10) +#define EMBER_AF_GP_TUNNELING_STOP_OPTION_ALSO_COMMISSIONED_GROUP_OFFSET (4) +#define EMBER_AF_GP_TUNNELING_STOP_OPTION_RESERVED (0xE0) +#define EMBER_AF_GP_TUNNELING_STOP_OPTION_RESERVED_OFFSET (5) +#define EMBER_AF_IAS_ZONE_STATUS_ALARM1 (0x1) +#define EMBER_AF_IAS_ZONE_STATUS_ALARM1_OFFSET (0) +#define EMBER_AF_IAS_ZONE_STATUS_ALARM2 (0x2) +#define EMBER_AF_IAS_ZONE_STATUS_ALARM2_OFFSET (1) +#define EMBER_AF_IAS_ZONE_STATUS_TAMPER (0x4) +#define EMBER_AF_IAS_ZONE_STATUS_TAMPER_OFFSET (2) +#define EMBER_AF_IAS_ZONE_STATUS_BATTERY (0x8) +#define EMBER_AF_IAS_ZONE_STATUS_BATTERY_OFFSET (3) +#define EMBER_AF_IAS_ZONE_STATUS_SUPERVISION_REPORTS (0x10) +#define EMBER_AF_IAS_ZONE_STATUS_SUPERVISION_REPORTS_OFFSET (4) +#define EMBER_AF_IAS_ZONE_STATUS_RESTORE_REPORTS (0x20) +#define EMBER_AF_IAS_ZONE_STATUS_RESTORE_REPORTS_OFFSET (5) +#define EMBER_AF_IAS_ZONE_STATUS_TROUBLE (0x40) +#define EMBER_AF_IAS_ZONE_STATUS_TROUBLE_OFFSET (6) +#define EMBER_AF_IAS_ZONE_STATUS_AC (0x80) +#define EMBER_AF_IAS_ZONE_STATUS_AC_OFFSET (7) +#define EMBER_AF_IAS_ZONE_STATUS_TEST (0x100) +#define EMBER_AF_IAS_ZONE_STATUS_TEST_OFFSET (8) +#define EMBER_AF_IAS_ZONE_STATUS_BATTERY_DEFECT (0x200) +#define EMBER_AF_IAS_ZONE_STATUS_BATTERY_DEFECT_OFFSET (9) +#define EMBER_AF_KEY_BITMASK_DEVELOPMENT (0x0001) +#define EMBER_AF_KEY_BITMASK_DEVELOPMENT_OFFSET (0) +#define EMBER_AF_KEY_BITMASK_MASTER (0x0010) +#define EMBER_AF_KEY_BITMASK_MASTER_OFFSET (4) +#define EMBER_AF_KEY_BITMASK_CERTIFICATION (0x8000) +#define EMBER_AF_KEY_BITMASK_CERTIFICATION_OFFSET (15) +#define EMBER_AF_LAMP_ALARM_MODE_LAMP_BURN_HOURS (0x1) +#define EMBER_AF_LAMP_ALARM_MODE_LAMP_BURN_HOURS_OFFSET (0) +#define EMBER_AF_LOAD_CONTROL_STATE_RELAY_OPEN_OR_CONSUMPTION_INTERUPTED (0x01) +#define EMBER_AF_LOAD_CONTROL_STATE_RELAY_OPEN_OR_CONSUMPTION_INTERUPTED_OFFSET (0) +#define EMBER_AF_LOAD_CONTROL_STATE_EVENT_IN_PROGRESS (0x02) +#define EMBER_AF_LOAD_CONTROL_STATE_EVENT_IN_PROGRESS_OFFSET (1) +#define EMBER_AF_LOAD_CONTROL_STATE_POWER_STABILIZING (0x04) +#define EMBER_AF_LOAD_CONTROL_STATE_POWER_STABILIZING_OFFSET (2) +#define EMBER_AF_LOAD_CONTROL_STATE_OTHER_LOAD_REDUCTION (0x08) +#define EMBER_AF_LOAD_CONTROL_STATE_OTHER_LOAD_REDUCTION_OFFSET (3) +#define EMBER_AF_LOAD_CONTROL_STATE_CURRENT_FLOW_OR_CONSUMING_COMMODITY (0x10) +#define EMBER_AF_LOAD_CONTROL_STATE_CURRENT_FLOW_OR_CONSUMING_COMMODITY_OFFSET (4) +#define EMBER_AF_LOAD_CONTROL_STATE_LOAD_CALL (0x20) +#define EMBER_AF_LOAD_CONTROL_STATE_LOAD_CALL_OFFSET (5) +#define EMBER_AF_LOCATION_TYPE_ABSOLUTE (0x1) +#define EMBER_AF_LOCATION_TYPE_ABSOLUTE_OFFSET (0) +#define EMBER_AF_LOCATION_TYPE_2_D (0x2) +#define EMBER_AF_LOCATION_TYPE_2_D_OFFSET (1) +#define EMBER_AF_LOCATION_TYPE_COORDINATE_SYSTEM (0xc) +#define EMBER_AF_LOCATION_TYPE_COORDINATE_SYSTEM_OFFSET (2) +#define EMBER_AF_MAINS_ALARM_MASK_VOLTAGE_TOO_LOW (0x1) +#define EMBER_AF_MAINS_ALARM_MASK_VOLTAGE_TOO_LOW_OFFSET (0) +#define EMBER_AF_MAINS_ALARM_MASK_VOLTAGE_TOO_HIGH (0x2) +#define EMBER_AF_MAINS_ALARM_MASK_VOLTAGE_TOO_HIGH_OFFSET (1) +#define EMBER_AF_MAINS_ALARM_MASK_MAINS_POWER_SUPPLY_LOST (0x4) +#define EMBER_AF_MAINS_ALARM_MASK_MAINS_POWER_SUPPLY_LOST_OFFSET (2) +#define EMBER_AF_MESSAGING_CONFIRMATION_CONTROL_NO_RETURNED (0x01) +#define EMBER_AF_MESSAGING_CONFIRMATION_CONTROL_NO_RETURNED_OFFSET (0) +#define EMBER_AF_MESSAGING_CONFIRMATION_CONTROL_YES_RETURNED (0x02) +#define EMBER_AF_MESSAGING_CONFIRMATION_CONTROL_YES_RETURNED_OFFSET (1) +#define EMBER_AF_MESSAGING_CONTROL_MASK_TRANS_MECHANISM (0x03) +#define EMBER_AF_MESSAGING_CONTROL_MASK_TRANS_MECHANISM_OFFSET (0) +#define EMBER_AF_MESSAGING_CONTROL_MASK_MESSAGE_URGENCY (0x0C) +#define EMBER_AF_MESSAGING_CONTROL_MASK_MESSAGE_URGENCY_OFFSET (2) +#define EMBER_AF_MESSAGING_CONTROL_MASK_ENHANCED_CONFIRMATION_REQUEST (0x20) +#define EMBER_AF_MESSAGING_CONTROL_MASK_ENHANCED_CONFIRMATION_REQUEST_OFFSET (5) +#define EMBER_AF_MESSAGING_CONTROL_MASK_MESSAGE_CONFIRMATION (0x80) +#define EMBER_AF_MESSAGING_CONTROL_MASK_MESSAGE_CONFIRMATION_OFFSET (7) +#define EMBER_AF_MESSAGING_EXTENDED_CONTROL_MASK_MESSAGE_CONFIRMATION_STATUS (0x01) +#define EMBER_AF_MESSAGING_EXTENDED_CONTROL_MASK_MESSAGE_CONFIRMATION_STATUS_OFFSET (0) +#define EMBER_AF_METERING_EXTENDED_STATUS_METER_COVER_REMOVED (0x0000000000000001) +#define EMBER_AF_METERING_EXTENDED_STATUS_METER_COVER_REMOVED_OFFSET (0) +#define EMBER_AF_METERING_EXTENDED_STATUS_STRONG_MAGNETIC_FIELD_DETECTED (0x0000000000000002) +#define EMBER_AF_METERING_EXTENDED_STATUS_STRONG_MAGNETIC_FIELD_DETECTED_OFFSET (1) +#define EMBER_AF_METERING_EXTENDED_STATUS_BATTERY_FAILURE (0x0000000000000004) +#define EMBER_AF_METERING_EXTENDED_STATUS_BATTERY_FAILURE_OFFSET (2) +#define EMBER_AF_METERING_EXTENDED_STATUS_PROGRAM_MEMORY_ERROR (0x0000000000000008) +#define EMBER_AF_METERING_EXTENDED_STATUS_PROGRAM_MEMORY_ERROR_OFFSET (3) +#define EMBER_AF_METERING_EXTENDED_STATUS_RAM_ERROR (0x0000000000000010) +#define EMBER_AF_METERING_EXTENDED_STATUS_RAM_ERROR_OFFSET (4) +#define EMBER_AF_METERING_EXTENDED_STATUS_NV_MEMORY_ERROR (0x0000000000000020) +#define EMBER_AF_METERING_EXTENDED_STATUS_NV_MEMORY_ERROR_OFFSET (5) +#define EMBER_AF_METERING_EXTENDED_STATUS_MEASUREMENT_SYSTEM_ERROR (0x0000000000000040) +#define EMBER_AF_METERING_EXTENDED_STATUS_MEASUREMENT_SYSTEM_ERROR_OFFSET (6) +#define EMBER_AF_METERING_EXTENDED_STATUS_WATCHDOG_ERROR (0x0000000000000080) +#define EMBER_AF_METERING_EXTENDED_STATUS_WATCHDOG_ERROR_OFFSET (7) +#define EMBER_AF_METERING_EXTENDED_STATUS_SUPPLY_DISCONNECT_FAILURE (0x0000000000000100) +#define EMBER_AF_METERING_EXTENDED_STATUS_SUPPLY_DISCONNECT_FAILURE_OFFSET (8) +#define EMBER_AF_METERING_EXTENDED_STATUS_SUPPLY_CONNECT_FAILURE (0x0000000000000200) +#define EMBER_AF_METERING_EXTENDED_STATUS_SUPPLY_CONNECT_FAILURE_OFFSET (9) +#define EMBER_AF_METERING_EXTENDED_STATUS_MEASUREMENT_SW_CHANGED_TAMPERED (0x0000000000000400) +#define EMBER_AF_METERING_EXTENDED_STATUS_MEASUREMENT_SW_CHANGED_TAMPERED_OFFSET (10) +#define EMBER_AF_METERING_EXTENDED_STATUS_CLOCK_INVALID (0x0000000000000800) +#define EMBER_AF_METERING_EXTENDED_STATUS_CLOCK_INVALID_OFFSET (11) +#define EMBER_AF_METERING_EXTENDED_STATUS_TEMPERATURE_EXCEEDED (0x0000000000001000) +#define EMBER_AF_METERING_EXTENDED_STATUS_TEMPERATURE_EXCEEDED_OFFSET (12) +#define EMBER_AF_METERING_EXTENDED_STATUS_MOISTURE_DETECTED (0x0000000000002000) +#define EMBER_AF_METERING_EXTENDED_STATUS_MOISTURE_DETECTED_OFFSET (13) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_TERMINAL_COVER_REMOVED (0x0000000001000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_TERMINAL_COVER_REMOVED_OFFSET (24) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_INCORRECT_POLARITY (0x0000000002000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_INCORRECT_POLARITY_OFFSET (25) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_CURRENT_WITH_NO_VOLTAGE (0x0000000004000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_CURRENT_WITH_NO_VOLTAGE_OFFSET (26) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_LIMIT_THRESHOLD_EXCEEDED (0x0000000008000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_LIMIT_THRESHOLD_EXCEEDED_OFFSET (27) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_UNDER_VOLTAGE (0x0000000010000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_UNDER_VOLTAGE_OFFSET (28) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_OVER_VOLTAGE (0x0000000020000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_OVER_VOLTAGE_OFFSET (29) +#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_BATTERY_COVER_REMOVED (0x0000000001000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_BATTERY_COVER_REMOVED_OFFSET (24) +#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_TILT_TAMPER (0x0000000002000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_TILT_TAMPER_OFFSET (25) +#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_EXCESS_FLOW (0x0000000004000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_GAS_METER_EXCESS_FLOW_OFFSET (26) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVER_POWER (0x0000000040000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVER_POWER_OFFSET (30) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVER_VOLTAGE \ + (0x0000000080000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVER_VOLTAGE_OFFSET (31) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_REMOTE_LOAD_CONTROL \ + (0x00000000C0000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_REMOTE_LOAD_CONTROL_OFFSET (30) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_BY_OTHER_REMOTE_COMMAND \ + (0x0000000100000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_BY_OTHER_REMOTE_COMMAND_OFFSET (32) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVERHEATING_SHORT_CIRCUIT \ + (0x0000000140000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVERHEATING_SHORT_CIRCUIT_OFFSET \ + (30) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVERHEATING_OTHER \ + (0x0000000180000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_SERVICE_DISCONNECTION_REASON_OFF_DUE_TO_OVERHEATING_OTHER_OFFSET (31) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_BI_DIRECTIONAL_OPERATION (0x0000000400000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_BI_DIRECTIONAL_OPERATION_OFFSET (34) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_ACTIVE_POWER_RECEIVED (0x0000000800000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_ACTIVE_POWER_RECEIVED_OFFSET (35) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_MODE_OF_OPERATION (0x0000001000000000) +#define EMBER_AF_METERING_EXTENDED_STATUS_ELECTRICITY_METER_MODE_OF_OPERATION_OFFSET (36) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_CHECK_METER (0x01) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_CHECK_METER_OFFSET (0) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_LOW_BATTERY (0x02) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_LOW_BATTERY_OFFSET (1) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_TAMPER_DETECT (0x04) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_TAMPER_DETECT_OFFSET (2) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_POWER_FAILURE (0x08) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_POWER_FAILURE_OFFSET (3) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_POWER_QUALITY (0x10) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_POWER_QUALITY_OFFSET (4) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_LEAK_DETECT (0x20) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_LEAK_DETECT_OFFSET (5) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_SERVICE_DISCONNECT_OPEN (0x40) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_SERVICE_DISCONNECT_OPEN_OFFSET (6) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_RESERVED (0x80) +#define EMBER_AF_METERING_STATUS_ELECTRICITY_RESERVED_OFFSET (7) +#define EMBER_AF_METERING_STATUS_GAS_CHECK_METER (0x01) +#define EMBER_AF_METERING_STATUS_GAS_CHECK_METER_OFFSET (0) +#define EMBER_AF_METERING_STATUS_GAS_LOW_BATTERY (0x02) +#define EMBER_AF_METERING_STATUS_GAS_LOW_BATTERY_OFFSET (1) +#define EMBER_AF_METERING_STATUS_GAS_TAMPER_DETECT (0x04) +#define EMBER_AF_METERING_STATUS_GAS_TAMPER_DETECT_OFFSET (2) +#define EMBER_AF_METERING_STATUS_GAS_NOT_DEFINED (0x08) +#define EMBER_AF_METERING_STATUS_GAS_NOT_DEFINED_OFFSET (3) +#define EMBER_AF_METERING_STATUS_GAS_LOW_PRESSURE (0x10) +#define EMBER_AF_METERING_STATUS_GAS_LOW_PRESSURE_OFFSET (4) +#define EMBER_AF_METERING_STATUS_GAS_LEAK_DETECT (0x20) +#define EMBER_AF_METERING_STATUS_GAS_LEAK_DETECT_OFFSET (5) +#define EMBER_AF_METERING_STATUS_GAS_SERVICE_DISCONNECT (0x40) +#define EMBER_AF_METERING_STATUS_GAS_SERVICE_DISCONNECT_OFFSET (6) +#define EMBER_AF_METERING_STATUS_GAS_REVERSE_FLOW (0x80) +#define EMBER_AF_METERING_STATUS_GAS_REVERSE_FLOW_OFFSET (7) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_CHECK_METER (0x01) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_CHECK_METER_OFFSET (0) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_LOW_BATTERY (0x02) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_LOW_BATTERY_OFFSET (1) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_TAMPER_DETECT (0x04) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_TAMPER_DETECT_OFFSET (2) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_TEMPERATURE_SENSOR (0x08) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_TEMPERATURE_SENSOR_OFFSET (3) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_BURST_DETECT (0x10) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_BURST_DETECT_OFFSET (4) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_LEAK_DETECT (0x20) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_LEAK_DETECT_OFFSET (5) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_SERVICE_DISCONNECT (0x40) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_SERVICE_DISCONNECT_OFFSET (6) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_FLOW_SENSOR (0x80) +#define EMBER_AF_METERING_STATUS_HEAT_AND_COOLING_FLOW_SENSOR_OFFSET (7) +#define EMBER_AF_METERING_STATUS_WATER_CHECK_METER (0x01) +#define EMBER_AF_METERING_STATUS_WATER_CHECK_METER_OFFSET (0) +#define EMBER_AF_METERING_STATUS_WATER_LOW_BATTERY (0x02) +#define EMBER_AF_METERING_STATUS_WATER_LOW_BATTERY_OFFSET (1) +#define EMBER_AF_METERING_STATUS_WATER_TAMPER_DETECT (0x04) +#define EMBER_AF_METERING_STATUS_WATER_TAMPER_DETECT_OFFSET (2) +#define EMBER_AF_METERING_STATUS_WATER_PIPE_EMPTY (0x08) +#define EMBER_AF_METERING_STATUS_WATER_PIPE_EMPTY_OFFSET (3) +#define EMBER_AF_METERING_STATUS_WATER_LOW_PRESSURE (0x10) +#define EMBER_AF_METERING_STATUS_WATER_LOW_PRESSURE_OFFSET (4) +#define EMBER_AF_METERING_STATUS_WATER_LEAK_DETECT (0x20) +#define EMBER_AF_METERING_STATUS_WATER_LEAK_DETECT_OFFSET (5) +#define EMBER_AF_METERING_STATUS_WATER_SERVICE_DISCONNECT (0x40) +#define EMBER_AF_METERING_STATUS_WATER_SERVICE_DISCONNECT_OFFSET (6) +#define EMBER_AF_METERING_STATUS_WATER_REVERSE_FLOW (0x80) +#define EMBER_AF_METERING_STATUS_WATER_REVERSE_FLOW_OFFSET (7) +#define EMBER_AF_MODE_FOR_SEQUENCE_HEAT_SETPOINT_FIELD_PRESENT (0x01) +#define EMBER_AF_MODE_FOR_SEQUENCE_HEAT_SETPOINT_FIELD_PRESENT_OFFSET (0) +#define EMBER_AF_MODE_FOR_SEQUENCE_COOL_SETPOINT_FIELD_PRESENT (0x02) +#define EMBER_AF_MODE_FOR_SEQUENCE_COOL_SETPOINT_FIELD_PRESENT_OFFSET (1) +#define EMBER_AF_NUMBER_OF_EVENTS_LOG_PAYLOAD_CONTROL_LOG_PAYLOAD_CONTROL (0x0F) +#define EMBER_AF_NUMBER_OF_EVENTS_LOG_PAYLOAD_CONTROL_LOG_PAYLOAD_CONTROL_OFFSET (0) +#define EMBER_AF_NUMBER_OF_EVENTS_LOG_PAYLOAD_CONTROL_NUMBER_OF_EVENTS (0xF0) +#define EMBER_AF_NUMBER_OF_EVENTS_LOG_PAYLOAD_CONTROL_NUMBER_OF_EVENTS_OFFSET (4) +#define EMBER_AF_OCCUPANCY_OCCUPIED (0x1) +#define EMBER_AF_OCCUPANCY_OCCUPIED_OFFSET (0) +#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_PIR (0x01) +#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_PIR_OFFSET (0) +#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_ULTRASONIC (0x02) +#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_ULTRASONIC_OFFSET (1) +#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_PHYSICAL_CONTACT (0x04) +#define EMBER_AF_OCCUPANCY_SENSOR_TYPE_BITMAP_PHYSICAL_CONTACT_OFFSET (2) +#define EMBER_AF_ON_OFF_CONTROL_ACCEPT_ONLY_WHEN_ON (0x01) +#define EMBER_AF_ON_OFF_CONTROL_ACCEPT_ONLY_WHEN_ON_OFFSET (0) +#define EMBER_AF_ORIGINATOR_ID_SUPPLY_CONTROL_BITS_ACKNOWLEDGE_REQUIRED (0x01) +#define EMBER_AF_ORIGINATOR_ID_SUPPLY_CONTROL_BITS_ACKNOWLEDGE_REQUIRED_OFFSET (0) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_DISCONNECTION_ENABLED (0x0001) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_DISCONNECTION_ENABLED_OFFSET (0) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_PREPAYMENT_ENABLED (0x0002) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_PREPAYMENT_ENABLED_OFFSET (1) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CREDIT_MANAGEMENT_ENABLED (0x0004) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CREDIT_MANAGEMENT_ENABLED_OFFSET (2) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CREDIT_DISPLAY_ENABLED (0x0010) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CREDIT_DISPLAY_ENABLED_OFFSET (4) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_ACCOUNT_BASE (0x0040) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_ACCOUNT_BASE_OFFSET (6) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CONTACTOR_FITTED (0x0080) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_CONTACTOR_FITTED_OFFSET (7) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_STANDING_CHARGE_CONFIGURATION (0x0100) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_STANDING_CHARGE_CONFIGURATION_OFFSET (8) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_EMERGENCY_STANDING_CHARGE_CONFIGURATION (0x0200) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_EMERGENCY_STANDING_CHARGE_CONFIGURATION_OFFSET (9) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_DEBT_CONFIGURATION (0x0400) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_DEBT_CONFIGURATION_OFFSET (10) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_EMERGENCY_DEBT_CONFIGURATION (0x0800) +#define EMBER_AF_PAYMENT_CONTROL_CONFIGURATION_EMERGENCY_DEBT_CONFIGURATION_OFFSET (11) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_GENERAL (0x00000001) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_GENERAL_OFFSET (0) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_TARIFF_INFORMATION (0x00000008) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_TARIFF_INFORMATION_OFFSET (3) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_PRICE_MATRIX (0x00000010) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_PRICE_MATRIX_OFFSET (4) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_MANUALLY_TRIGGERED_FROM_CLIENT (0x00000400) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_MANUALLY_TRIGGERED_FROM_CLIENT_OFFSET (10) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_TENANCY (0x00001000) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_TENANCY_OFFSET (12) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_SUPPLIER (0x00002000) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_SUPPLIER_OFFSET (13) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_METER_MODE (0x00004000) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_CHANGE_OF_METER_MODE_OFFSET (14) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_TOP_UP_ADDITION (0x00040000) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_TOP_UP_ADDITION_OFFSET (18) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_DEBT_CREDIT_ADDITION (0x00080000) +#define EMBER_AF_PREPAY_SNAPSHOT_PAYLOAD_CAUSE_DEBT_CREDIT_ADDITION_OFFSET (19) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_LOW_CREDIT_WARNING (0x0001) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_LOW_CREDIT_WARNING_OFFSET (0) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_ERROR (0x0002) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_ERROR_OFFSET (1) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_ALREADY_USED (0x0004) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_ALREADY_USED_OFFSET (2) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_INVALID (0x0008) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_TOP_UP_CODE_INVALID_OFFSET (3) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_FRIENDLY_CREDIT_IN_USE (0x0010) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_FRIENDLY_CREDIT_IN_USE_OFFSET (4) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_FRIENDLY_CREDIT_PERIOD_END_WARNING (0x0020) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_FRIENDLY_CREDIT_PERIOD_END_WARNING_OFFSET (5) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_EC_AVAILABLE (0x0040) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_EC_AVAILABLE_OFFSET (6) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_UNAUTHORISED_ENERGY_USE (0x0080) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_UNAUTHORISED_ENERGY_USE_OFFSET (7) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_CREDIT (0x0100) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_CREDIT_OFFSET (8) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_TAMPER (0x0200) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_TAMPER_OFFSET (9) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_HES (0x0400) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_DISCONNECTED_SUPPLY_DUE_TO_HES_OFFSET (10) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_PHYSICAL_ATTACK (0x0800) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_PHYSICAL_ATTACK_OFFSET (11) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_ELECTRONIC_ATTACK (0x1000) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_ELECTRONIC_ATTACK_OFFSET (12) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_MANUFACTURE_ALARM_CODE_A (0x2000) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_MANUFACTURE_ALARM_CODE_A_OFFSET (13) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_MANUFACTURE_ALARM_CODE_B (0x4000) +#define EMBER_AF_PREPAYMENT_ALARM_STATUS_MANUFACTURE_ALARM_CODE_B_OFFSET (14) +#define EMBER_AF_PRICE_CONTROL_MASK_PRICE_ACKNOWLEDGEMENT_REQUIRED (0x01) +#define EMBER_AF_PRICE_CONTROL_MASK_PRICE_ACKNOWLEDGEMENT_REQUIRED_OFFSET (0) +#define EMBER_AF_PRICE_CONTROL_MASK_TOTAL_TIERS_EXCEEDS15 (0x02) +#define EMBER_AF_PRICE_CONTROL_MASK_TOTAL_TIERS_EXCEEDS15_OFFSET (1) +#define EMBER_AF_PRICE_MATRIX_SUB_PAYLOAD_CONTROL_TOU_BASED (0x01) +#define EMBER_AF_PRICE_MATRIX_SUB_PAYLOAD_CONTROL_TOU_BASED_OFFSET (0) +#define EMBER_AF_PRICE_NUMBER_OF_PRICE_TIERS_AND_REGISTER_TIER_REGISTER_TIER (0x0F) +#define EMBER_AF_PRICE_NUMBER_OF_PRICE_TIERS_AND_REGISTER_TIER_REGISTER_TIER_OFFSET (0) +#define EMBER_AF_PRICE_NUMBER_OF_PRICE_TIERS_AND_REGISTER_TIER_NUMBER_OF_PRICE_TIERS (0xF0) +#define EMBER_AF_PRICE_NUMBER_OF_PRICE_TIERS_AND_REGISTER_TIER_NUMBER_OF_PRICE_TIERS_OFFSET (4) +#define EMBER_AF_PRICE_TRAILING_DIGIT_TRAILING_DIGIT (0xF0) +#define EMBER_AF_PRICE_TRAILING_DIGIT_TRAILING_DIGIT_OFFSET (4) +#define EMBER_AF_PRICE_TRAILING_DIGIT_AND_PRICE_TIER_PRICE_TIER (0x0F) +#define EMBER_AF_PRICE_TRAILING_DIGIT_AND_PRICE_TIER_PRICE_TIER_OFFSET (0) +#define EMBER_AF_PRICE_TRAILING_DIGIT_AND_PRICE_TIER_TRAILING_DIGIT (0xF0) +#define EMBER_AF_PRICE_TRAILING_DIGIT_AND_PRICE_TIER_TRAILING_DIGIT_OFFSET (4) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_PRE_SNAPSHOTS (0x00000001) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_PRE_SNAPSHOTS_OFFSET (0) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_POST_SNAPSHOTS (0x00000002) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_POST_SNAPSHOTS_OFFSET (1) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_CREDIT_REGISTER (0x00000004) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_CREDIT_REGISTER_OFFSET (2) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_DEBIT_REGISTER (0x00000008) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_DEBIT_REGISTER_OFFSET (3) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_BILLING_PERIOD (0x00000010) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_RESET_BILLING_PERIOD_OFFSET (4) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_TARIFF_PLAN (0x00000020) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_TARIFF_PLAN_OFFSET (5) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_STANDING_CHARGE (0x00000040) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_STANDING_CHARGE_OFFSET (6) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_BLOCK_HISTORICAL_LOAD_PROFILE_INFORMATION (0x00000080) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_BLOCK_HISTORICAL_LOAD_PROFILE_INFORMATION_OFFSET (7) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_HISTORICAL_LOAD_PROFILE_INFORMATION (0x00000100) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_HISTORICAL_LOAD_PROFILE_INFORMATION_OFFSET (8) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_IHD_DATA_CONSUMER (0x00000200) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_IHD_DATA_CONSUMER_OFFSET (9) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_IHD_DATA_SUPPLIER (0x00000400) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_IHD_DATA_SUPPLIER_OFFSET (10) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_METER_CONNECTOR_STATE_ON_OFF_ARMED (0x00001800) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_METER_CONNECTOR_STATE_ON_OFF_ARMED_OFFSET (11) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_TRANSACTION_LOG (0x00002000) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_TRANSACTION_LOG_OFFSET (13) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_PREPAYMENT_LOG (0x00004000) +#define EMBER_AF_PROPOSED_CHANGE_CONTROL_CLEAR_PREPAYMENT_LOG_OFFSET (14) +#define EMBER_AF_PUMP_ALARM_MASK_SUPPLY_VOLTAGE_TOO_LOW (0x1) +#define EMBER_AF_PUMP_ALARM_MASK_SUPPLY_VOLTAGE_TOO_LOW_OFFSET (0) +#define EMBER_AF_PUMP_ALARM_MASK_SUPPLY_VOLTAGE_TOO_HIGH (0x2) +#define EMBER_AF_PUMP_ALARM_MASK_SUPPLY_VOLTAGE_TOO_HIGH_OFFSET (1) +#define EMBER_AF_PUMP_ALARM_MASK_POWER_MISSING_PHASE (0x4) +#define EMBER_AF_PUMP_ALARM_MASK_POWER_MISSING_PHASE_OFFSET (2) +#define EMBER_AF_PUMP_ALARM_MASK_SYSTEM_PRESSURE_TOO_LOW (0x8) +#define EMBER_AF_PUMP_ALARM_MASK_SYSTEM_PRESSURE_TOO_LOW_OFFSET (3) +#define EMBER_AF_PUMP_ALARM_MASK_SYSTEM_PRESSURE_TOO_HIGH (0x10) +#define EMBER_AF_PUMP_ALARM_MASK_SYSTEM_PRESSURE_TOO_HIGH_OFFSET (4) +#define EMBER_AF_PUMP_ALARM_MASK_DRY_RUNNING (0x20) +#define EMBER_AF_PUMP_ALARM_MASK_DRY_RUNNING_OFFSET (5) +#define EMBER_AF_PUMP_ALARM_MASK_MOTOR_TEMPERATURE_TOO_HIGH (0x40) +#define EMBER_AF_PUMP_ALARM_MASK_MOTOR_TEMPERATURE_TOO_HIGH_OFFSET (6) +#define EMBER_AF_PUMP_ALARM_MASK_PUMP_MOTOR_HAS_FATAL_FAILURE (0x80) +#define EMBER_AF_PUMP_ALARM_MASK_PUMP_MOTOR_HAS_FATAL_FAILURE_OFFSET (7) +#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_TEMPERATURE_TOO_HIGH (0x100) +#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_TEMPERATURE_TOO_HIGH_OFFSET (8) +#define EMBER_AF_PUMP_ALARM_MASK_PUMP_BLOCKED (0x200) +#define EMBER_AF_PUMP_ALARM_MASK_PUMP_BLOCKED_OFFSET (9) +#define EMBER_AF_PUMP_ALARM_MASK_SENSOR_FAILURE (0x400) +#define EMBER_AF_PUMP_ALARM_MASK_SENSOR_FAILURE_OFFSET (10) +#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_NON_FATAL_FAILURE (0x800) +#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_NON_FATAL_FAILURE_OFFSET (11) +#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_FATAL_FAILURE (0x1000) +#define EMBER_AF_PUMP_ALARM_MASK_ELECTRONIC_FATAL_FAILURE_OFFSET (12) +#define EMBER_AF_PUMP_ALARM_MASK_GENERAL_FAULT (0x2000) +#define EMBER_AF_PUMP_ALARM_MASK_GENERAL_FAULT_OFFSET (13) +#define EMBER_AF_PUMP_STATUS_DEVICE_FAULT (0x1) +#define EMBER_AF_PUMP_STATUS_DEVICE_FAULT_OFFSET (0) +#define EMBER_AF_PUMP_STATUS_SUPPLYFAULT (0x2) +#define EMBER_AF_PUMP_STATUS_SUPPLYFAULT_OFFSET (1) +#define EMBER_AF_PUMP_STATUS_SPEED_LOW (0x4) +#define EMBER_AF_PUMP_STATUS_SPEED_LOW_OFFSET (2) +#define EMBER_AF_PUMP_STATUS_SPEED_HIGH (0x8) +#define EMBER_AF_PUMP_STATUS_SPEED_HIGH_OFFSET (3) +#define EMBER_AF_PUMP_STATUS_LOCAL_OVERRIDE (0x10) +#define EMBER_AF_PUMP_STATUS_LOCAL_OVERRIDE_OFFSET (4) +#define EMBER_AF_PUMP_STATUS_RUNNING (0x20) +#define EMBER_AF_PUMP_STATUS_RUNNING_OFFSET (5) +#define EMBER_AF_PUMP_STATUS_REMOTE_PRESSURE (0x40) +#define EMBER_AF_PUMP_STATUS_REMOTE_PRESSURE_OFFSET (6) +#define EMBER_AF_PUMP_STATUS_REMOTE_FLOW (0x80) +#define EMBER_AF_PUMP_STATUS_REMOTE_FLOW_OFFSET (7) +#define EMBER_AF_PUMP_STATUS_REMOTE_TEMPERATURE (0x100) +#define EMBER_AF_PUMP_STATUS_REMOTE_TEMPERATURE_OFFSET (8) +#define EMBER_AF_REMOTE_ENABLE_FLAGS_AND_DEVICE_STATUS2_REMOTE_ENABLE_FLAGS (0x0F) +#define EMBER_AF_REMOTE_ENABLE_FLAGS_AND_DEVICE_STATUS2_REMOTE_ENABLE_FLAGS_OFFSET (0) +#define EMBER_AF_REMOTE_ENABLE_FLAGS_AND_DEVICE_STATUS2_DEVICE_STATUS2_STRUCTURE (0xF0) +#define EMBER_AF_REMOTE_ENABLE_FLAGS_AND_DEVICE_STATUS2_DEVICE_STATUS2_STRUCTURE_OFFSET (4) +#define EMBER_AF_RESET_OPTIONS_RESET_CURRENT (0x1) +#define EMBER_AF_RESET_OPTIONS_RESET_CURRENT_OFFSET (0) +#define EMBER_AF_RESET_OPTIONS_RESET_ALL (0x2) +#define EMBER_AF_RESET_OPTIONS_RESET_ALL_OFFSET (1) +#define EMBER_AF_RESET_OPTIONS_ERASE_INDEX (0x4) +#define EMBER_AF_RESET_OPTIONS_ERASE_INDEX_OFFSET (2) +#define EMBER_AF_RESTART_OPTIONS_START_MODE1 (0x1) +#define EMBER_AF_RESTART_OPTIONS_START_MODE1_OFFSET (0) +#define EMBER_AF_RESTART_OPTIONS_STARTUP_MODE2 (0x2) +#define EMBER_AF_RESTART_OPTIONS_STARTUP_MODE2_OFFSET (1) +#define EMBER_AF_RESTART_OPTIONS_STARTUP_MODE3 (0x4) +#define EMBER_AF_RESTART_OPTIONS_STARTUP_MODE3_OFFSET (2) +#define EMBER_AF_RESTART_OPTIONS_IMMEDIATE (0x8) +#define EMBER_AF_RESTART_OPTIONS_IMMEDIATE_OFFSET (3) +#define EMBER_AF_SCENES_COPY_MODE_COPY_ALL_SCENES (0x01) +#define EMBER_AF_SCENES_COPY_MODE_COPY_ALL_SCENES_OFFSET (0) +#define EMBER_AF_SHADE_CLOSURE_STATUS_OPERATIONAL (0x1) +#define EMBER_AF_SHADE_CLOSURE_STATUS_OPERATIONAL_OFFSET (0) +#define EMBER_AF_SHADE_CLOSURE_STATUS_ADJUSTING (0x2) +#define EMBER_AF_SHADE_CLOSURE_STATUS_ADJUSTING_OFFSET (1) +#define EMBER_AF_SHADE_CLOSURE_STATUS_OPENING (0x4) +#define EMBER_AF_SHADE_CLOSURE_STATUS_OPENING_OFFSET (2) +#define EMBER_AF_SHADE_CLOSURE_STATUS_MOTOR_OPENING (0x8) +#define EMBER_AF_SHADE_CLOSURE_STATUS_MOTOR_OPENING_OFFSET (3) +#define EMBER_AF_SNAPSHOT_CAUSE_GENERAL (0x00000001) +#define EMBER_AF_SNAPSHOT_CAUSE_GENERAL_OFFSET (0) +#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_BILLING_PERIOD (0x00000002) +#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_BILLING_PERIOD_OFFSET (1) +#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_BLOCK_PERIOD (0x00000004) +#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_BLOCK_PERIOD_OFFSET (2) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_TARIFF_INFORMATION (0x00000008) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_TARIFF_INFORMATION_OFFSET (3) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_PRICE_MATRIX (0x00000010) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_PRICE_MATRIX_OFFSET (4) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_BLOCK_THRESHOLDS (0x00000020) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_BLOCK_THRESHOLDS_OFFSET (5) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CV (0x00000040) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CV_OFFSET (6) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CF (0x00000080) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CF_OFFSET (7) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CALENDAR (0x00000100) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_CALENDAR_OFFSET (8) +#define EMBER_AF_SNAPSHOT_CAUSE_CRITICAL_PEAK_PRICING (0x00000200) +#define EMBER_AF_SNAPSHOT_CAUSE_CRITICAL_PEAK_PRICING_OFFSET (9) +#define EMBER_AF_SNAPSHOT_CAUSE_MANUALLY_TRIGGERED_FROM_CLIENT (0x00000400) +#define EMBER_AF_SNAPSHOT_CAUSE_MANUALLY_TRIGGERED_FROM_CLIENT_OFFSET (10) +#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_RESOLVE_PERIOD (0x00000800) +#define EMBER_AF_SNAPSHOT_CAUSE_END_OF_RESOLVE_PERIOD_OFFSET (11) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_TENANCY (0x00001000) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_TENANCY_OFFSET (12) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_SUPPLIER (0x00002000) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_SUPPLIER_OFFSET (13) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_MODE (0x00004000) +#define EMBER_AF_SNAPSHOT_CAUSE_CHANGE_OF_MODE_OFFSET (14) +#define EMBER_AF_SNAPSHOT_CAUSE_DEBT_PAYMENT (0x00008000) +#define EMBER_AF_SNAPSHOT_CAUSE_DEBT_PAYMENT_OFFSET (15) +#define EMBER_AF_SNAPSHOT_CAUSE_SCHEDULED_SNAPSHOT (0x00010000) +#define EMBER_AF_SNAPSHOT_CAUSE_SCHEDULED_SNAPSHOT_OFFSET (16) +#define EMBER_AF_SNAPSHOT_CAUSE_OTA_FIRMWARE_DOWNLOAD (0x00020000) +#define EMBER_AF_SNAPSHOT_CAUSE_OTA_FIRMWARE_DOWNLOAD_OFFSET (17) +#define EMBER_AF_SQUAWK_INFO_MODE (0xf0) +#define EMBER_AF_SQUAWK_INFO_MODE_OFFSET (4) +#define EMBER_AF_SQUAWK_INFO_STROBE (0x08) +#define EMBER_AF_SQUAWK_INFO_STROBE_OFFSET (3) +#define EMBER_AF_SQUAWK_INFO_LEVEL (0x03) +#define EMBER_AF_SQUAWK_INFO_LEVEL_OFFSET (0) +#define EMBER_AF_START_TIME_MINUTES (0x003F) +#define EMBER_AF_START_TIME_MINUTES_OFFSET (0) +#define EMBER_AF_START_TIME_TIME_ENCODING (0x00C0) +#define EMBER_AF_START_TIME_TIME_ENCODING_OFFSET (6) +#define EMBER_AF_START_TIME_HOURS (0xFF00) +#define EMBER_AF_START_TIME_HOURS_OFFSET (8) +#define EMBER_AF_SUPPLY_CONTROL_BITS_ACKNOWLEDGE_REQUIRED (0x01) +#define EMBER_AF_SUPPLY_CONTROL_BITS_ACKNOWLEDGE_REQUIRED_OFFSET (0) +#define EMBER_AF_TARIFF_TYPE_CHARGING_SCHEME_TARIFF_TYPE (0x0F) +#define EMBER_AF_TARIFF_TYPE_CHARGING_SCHEME_TARIFF_TYPE_OFFSET (0) +#define EMBER_AF_TARIFF_TYPE_CHARGING_SCHEME_TARIFF_CHARGING_SCHEME (0xF0) +#define EMBER_AF_TARIFF_TYPE_CHARGING_SCHEME_TARIFF_CHARGING_SCHEME_OFFSET (4) +#define EMBER_AF_THERMOSTAT_ALARM_MASK_INITIALIZATION_FAILURE (0x1) +#define EMBER_AF_THERMOSTAT_ALARM_MASK_INITIALIZATION_FAILURE_OFFSET (0) +#define EMBER_AF_THERMOSTAT_ALARM_MASK_HARDWARE_FAILURE (0x2) +#define EMBER_AF_THERMOSTAT_ALARM_MASK_HARDWARE_FAILURE_OFFSET (1) +#define EMBER_AF_THERMOSTAT_ALARM_MASK_SELFCALIBRATION_FAILURE (0x4) +#define EMBER_AF_THERMOSTAT_ALARM_MASK_SELFCALIBRATION_FAILURE_OFFSET (2) +#define EMBER_AF_THERMOSTAT_OCCUPANCY_OCCUPIED (0x1) +#define EMBER_AF_THERMOSTAT_OCCUPANCY_OCCUPIED_OFFSET (0) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_HEAT_STATE_ON (0x0001) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_HEAT_STATE_ON_OFFSET (0) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_COOL_STATE_ON (0x0002) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_COOL_STATE_ON_OFFSET (1) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_STATE_ON (0x0004) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_STATE_ON_OFFSET (2) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_HEAT_SECOND_STAGE_STATE_ON (0x0008) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_HEAT_SECOND_STAGE_STATE_ON_OFFSET (3) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_COOL_SECOND_STAGE_STATE_ON (0x0010) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_COOL_SECOND_STAGE_STATE_ON_OFFSET (4) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_SECOND_STAGE_STATE_ON (0x0020) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_SECOND_STAGE_STATE_ON_OFFSET (5) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_THIRD_STAGE_STATE_ON (0x0040) +#define EMBER_AF_THERMOSTAT_RUNNING_STATE_FAN_THIRD_STAGE_STATE_ON_OFFSET (6) +#define EMBER_AF_THERMOSTAT_SENSING_LOCAL_TEMP_SENSED_REMOTELY (0x1) +#define EMBER_AF_THERMOSTAT_SENSING_LOCAL_TEMP_SENSED_REMOTELY_OFFSET (0) +#define EMBER_AF_THERMOSTAT_SENSING_OUTDOOR_TEMP_SENSED_REMOTELY (0x2) +#define EMBER_AF_THERMOSTAT_SENSING_OUTDOOR_TEMP_SENSED_REMOTELY_OFFSET (1) +#define EMBER_AF_THERMOSTAT_SENSING_OCCUPANCY_SENSED_REMOTELY (0x4) +#define EMBER_AF_THERMOSTAT_SENSING_OCCUPANCY_SENSED_REMOTELY_OFFSET (2) +#define EMBER_AF_TIME_STATUS_MASK_MASTER_CLOCK (0x1) +#define EMBER_AF_TIME_STATUS_MASK_MASTER_CLOCK_OFFSET (0) +#define EMBER_AF_TIME_STATUS_MASK_SYNCHRONIZED (0x2) +#define EMBER_AF_TIME_STATUS_MASK_SYNCHRONIZED_OFFSET (1) +#define EMBER_AF_TIME_STATUS_MASK_MASTER_ZONE_DST (0x4) +#define EMBER_AF_TIME_STATUS_MASK_MASTER_ZONE_DST_OFFSET (2) +#define EMBER_AF_TIME_STATUS_MASK_SUPERSEDING (0x8) +#define EMBER_AF_TIME_STATUS_MASK_SUPERSEDING_OFFSET (3) +#define EMBER_AF_WARNING_INFO_MODE (0xf0) +#define EMBER_AF_WARNING_INFO_MODE_OFFSET (4) +#define EMBER_AF_WARNING_INFO_STROBE (0x0c) +#define EMBER_AF_WARNING_INFO_STROBE_OFFSET (2) +#define EMBER_AF_WARNING_INFO_SIREN_LEVEL (0x03) +#define EMBER_AF_WARNING_INFO_SIREN_LEVEL_OFFSET (0) +#define EMBER_AF_ZIGBEE_INFORMATION_LOGICAL_TYPE (0x03) +#define EMBER_AF_ZIGBEE_INFORMATION_LOGICAL_TYPE_OFFSET (0) +#define EMBER_AF_ZIGBEE_INFORMATION_RX_ON_WHEN_IDLE (0x04) +#define EMBER_AF_ZIGBEE_INFORMATION_RX_ON_WHEN_IDLE_OFFSET (2) +#define EMBER_AF_ZLL_INFORMATION_FACTORY_NEW (0x01) +#define EMBER_AF_ZLL_INFORMATION_FACTORY_NEW_OFFSET (0) +#define EMBER_AF_ZLL_INFORMATION_ADDRESS_ASSIGNMENT (0x02) +#define EMBER_AF_ZLL_INFORMATION_ADDRESS_ASSIGNMENT_OFFSET (1) +#define EMBER_AF_ZLL_INFORMATION_TOUCH_LINK_INITIATOR (0x10) +#define EMBER_AF_ZLL_INFORMATION_TOUCH_LINK_INITIATOR_OFFSET (4) +#define EMBER_AF_ZLL_INFORMATION_TOUCH_LINK_PRIORITY_REQUEST (0x20) +#define EMBER_AF_ZLL_INFORMATION_TOUCH_LINK_PRIORITY_REQUEST_OFFSET (5) +#define EMBER_AF_ZLL_INFORMATION_PROFILE_INTEROP (0x80) +#define EMBER_AF_ZLL_INFORMATION_PROFILE_INTEROP_OFFSET (7) diff --git a/examples/lighting-app/lighting-common/gen/gen_config.h b/examples/lighting-app/lighting-common/gen/gen_config.h index 1820036777482a..cb2ad59b3767e1 100644 --- a/examples/lighting-app/lighting-common/gen/gen_config.h +++ b/examples/lighting-app/lighting-common/gen/gen_config.h @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,261 +15,41 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// - -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_ZNET_CONFIG -#define SILABS_ZNET_CONFIG - -#include "debug-printing-test.h" - -/**** Included Header Section ****/ - -// Networks -#define EM_AF_GENERATED_NETWORK_TYPES \ - { \ - EM_AF_NETWORK_TYPE_ZIGBEE_PRO, /* Primary */ \ - } -#define EM_AF_GENERATED_ZIGBEE_PRO_NETWORKS \ - { \ - { \ - /* Primary */ \ - ZA_ROUTER, \ - EMBER_AF_SECURITY_PROFILE_Z3, \ - }, \ - } -#define EM_AF_GENERATED_NETWORK_STRINGS "Primary (pro)", /**** ZCL Section ****/ -#define ZA_PROMPT "ZigbeeMinimalSoc" -#define ZCL_USING_ON_OFF_CLUSTER_SERVER -#define ZCL_USING_LEVEL_CONTROL_CLUSTER_SERVER -#define EMBER_AF_MANUFACTURER_CODE 0x1002 -#define EMBER_AF_DEFAULT_RESPONSE_POLICY_ALWAYS - -/**** Cluster endpoint counts ****/ -#define EMBER_AF_ON_OFF_CLUSTER_SERVER_ENDPOINT_COUNT (1) -#define EMBER_AF_LEVEL_CONTROL_CLUSTER_SERVER_ENDPOINT_COUNT (1) - -/**** Cluster Endpoint Summaries ****/ -#define EMBER_AF_MAX_SERVER_CLUSTER_COUNT (2) -#define EMBER_AF_MAX_CLIENT_CLUSTER_COUNT (0) -#define EMBER_AF_MAX_TOTAL_CLUSTER_COUNT (2) - -/**** CLI Section ****/ -#define EMBER_AF_GENERATE_CLI - -/**** Security Section ****/ -#define EMBER_AF_HAS_SECURITY_PROFILE_Z3 - -/**** Network Section ****/ -#define EMBER_SUPPORTED_NETWORKS (1) -#define EMBER_AF_NETWORK_INDEX_PRIMARY (0) -#define EMBER_AF_DEFAULT_NETWORK_INDEX EMBER_AF_NETWORK_INDEX_PRIMARY -#define EMBER_AF_HAS_ROUTER_NETWORK -#define EMBER_AF_HAS_RX_ON_WHEN_IDLE_NETWORK -#define EMBER_AF_TX_POWER_MODE EMBER_TX_POWER_MODE_USE_TOKEN - -/**** Callback Section ****/ -#define EMBER_CALLBACK_STACK_STATUS -#define EMBER_CALLBACK_ON_OFF_CLUSTER_OFF -#define EMBER_CALLBACK_ON_OFF_CLUSTER_ON -#define EMBER_CALLBACK_ON_OFF_CLUSTER_TOGGLE -#define EMBER_CALLBACK_ON_OFF_CLUSTER_ON_OFF_CLUSTER_SERVER_INIT -#define EMBER_CALLBACK_ON_OFF_CLUSTER_ON_OFF_CLUSTER_SET_VALUE -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_LEVEL_CONTROL_CLUSTER_SERVER_INIT -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_LEVEL_CONTROL_CLUSTER_SERVER_TICK -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_MOVE_TO_LEVEL -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_MOVE_TO_LEVEL_WITH_ON_OFF -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_MOVE -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_MOVE_WITH_ON_OFF -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_STEP -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_STEP_WITH_ON_OFF -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_STOP -#define EMBER_CALLBACK_LEVEL_CONTROL_CLUSTER_STOP_WITH_ON_OFF -#define EMBER_CALLBACK_ENERGY_SCAN_RESULT -#define EMBER_CALLBACK_SCAN_COMPLETE -#define EMBER_CALLBACK_NETWORK_FOUND -/**** Debug printing section ****/ - -// Global switch -#define EMBER_AF_PRINT_ENABLE - -#define EMBER_AF_SUPPORT_COMMAND_DISCOVERY - -// Generated plugin macros -// Use this macro to check if Antenna Stub plugin is included -#define EMBER_AF_PLUGIN_ANTENNA_STUB +// Prevent multiple inclusion +#pragma once -// Use this macro to check if Binding Table Library plugin is included -#define EMBER_AF_PLUGIN_BINDING_TABLE_LIBRARY // User options for plugin Binding Table Library #define EMBER_BINDING_TABLE_SIZE 10 -// Use this macro to check if CCM* Encryption plugin is included -#define EMBER_AF_PLUGIN_CCM_ENCRYPTION -// User options for plugin CCM* Encryption -#define EMBER_AF_PLUGIN_CCM_ENCRYPTION_SOFTWARE_CCM -#define USE_SOFTWARE_CCM - -// Use this macro to check if Radio Coexistence Stub plugin is included -#define EMBER_AF_PLUGIN_COEXISTENCE_STUB - -// Use this macro to check if Debug Basic Library plugin is included -#define EMBER_AF_PLUGIN_DEBUG_BASIC_LIBRARY +/**** Network Section ****/ +#define EMBER_SUPPORTED_NETWORKS (1) -// Use this macro to check if Debug JTAG plugin is included -#define EMBER_AF_PLUGIN_DEBUG_JTAG +#define EMBER_APS_UNICAST_MESSAGE_COUNT 10 -// Use this macro to check if Ember Minimal Printf plugin is included -#define EMBER_AF_PLUGIN_EMBER_MINIMAL_PRINTF +/**** Cluster endpoint counts ****/ +#define EMBER_AF_LEVEL_CONTROL_CLUSTER_SERVER_ENDPOINT_COUNT (1) +#define EMBER_AF_ON_OFF_CLUSTER_SERVER_ENDPOINT_COUNT (1) -// Use this macro to check if HAL Library plugin is included -#define EMBER_AF_PLUGIN_HAL_LIBRARY +/**** Cluster Plugins ****/ -// Use this macro to check if Level Control Server Cluster plugin is included +// Use this macro to check if the server side of the Level Control cluster is included +#define ZCL_USING_LEVEL_CONTROL_CLUSTER_SERVER +#define EMBER_AF_PLUGIN_LEVEL_CONTROL_SERVER #define EMBER_AF_PLUGIN_LEVEL_CONTROL -// User options for plugin Level Control Server Cluster +// User options for server plugin Level Control #define EMBER_AF_PLUGIN_LEVEL_CONTROL_MAXIMUM_LEVEL 255 #define EMBER_AF_PLUGIN_LEVEL_CONTROL_MINIMUM_LEVEL 0 #define EMBER_AF_PLUGIN_LEVEL_CONTROL_RATE 0 -// Use this macro to check if mbed TLS plugin is included -#define EMBER_AF_PLUGIN_MBEDTLS -// User options for plugin mbed TLS -#define EMBER_AF_PLUGIN_MBEDTLS_CONF_DEVICE_ACCELERATION -#define EMBER_AF_PLUGIN_MBEDTLS_CONF_DEVICE_ACCELERATION_APP - -// Use this macro to check if Network Steering plugin is included -#define EMBER_AF_PLUGIN_NETWORK_STEERING -// User options for plugin Network Steering -#define EMBER_AF_PLUGIN_NETWORK_STEERING_CHANNEL_MASK 0x0318C800 -#define EMBER_AF_PLUGIN_NETWORK_STEERING_RADIO_TX_POWER 3 -#define EMBER_AF_PLUGIN_NETWORK_STEERING_SCAN_DURATION 4 -#define EMBER_AF_PLUGIN_NETWORK_STEERING_COMMISSIONING_TIME_S 180 -#define EMBER_AF_PLUGIN_NETWORK_STEERING_OPTIMIZE_SCANS - -// Use this macro to check if NVM3 Library plugin is included -#define EMBER_AF_PLUGIN_NVM3 -// User options for plugin NVM3 Library -#define EMBER_AF_PLUGIN_NVM3_FLASH_PAGES 18 -#define EMBER_AF_PLUGIN_NVM3_CACHE_SIZE 200 -#define EMBER_AF_PLUGIN_NVM3_MAX_OBJECT_SIZE 254 -#define EMBER_AF_PLUGIN_NVM3_USER_REPACK_HEADROOM 0 - -// Use this macro to check if Packet Validate Library plugin is included -#define EMBER_AF_PLUGIN_PACKET_VALIDATE_LIBRARY - -// Use this macro to check if RAIL Library plugin is included -#define EMBER_AF_PLUGIN_RAIL_LIBRARY -// User options for plugin RAIL Library -#define EMBER_AF_PLUGIN_RAIL_LIBRARY_RAILPHYDEF 1 - -// Use this macro to check if Scan Dispatch plugin is included -#define EMBER_AF_PLUGIN_SCAN_DISPATCH -// User options for plugin Scan Dispatch -#define EMBER_AF_PLUGIN_SCAN_DISPATCH_SCAN_QUEUE_SIZE 10 - -// Use this macro to check if Serial plugin is included -#define EMBER_AF_PLUGIN_SERIAL - -// Use this macro to check if Simulated EEPROM version 2 to NVM3 Upgrade Stub plugin is included -#define EMBER_AF_PLUGIN_SIM_EEPROM2_TO_NVM3_UPGRADE_STUB - -// Use this macro to check if Simple Main plugin is included -#define EMBER_AF_PLUGIN_SIMPLE_MAIN - -// Use this macro to check if Strong Random plugin is included -#define EMBER_AF_PLUGIN_STRONG_RANDOM -// User options for plugin Strong Random -#define EMBER_AF_PLUGIN_STRONG_RANDOM_RADIO_PRNG -#define USE_RADIO_API_FOR_TRNG - -// Use this macro to check if Update TC Link Key plugin is included -#define EMBER_AF_PLUGIN_UPDATE_TC_LINK_KEY -// User options for plugin Update TC Link Key -#define EMBER_AF_PLUGIN_UPDATE_TC_LINK_KEY_MAX_ATTEMPTS 3 - -// Use this macro to check if ZCL Framework Core plugin is included -#define EMBER_AF_PLUGIN_ZCL_FRAMEWORK_CORE -// User options for plugin ZCL Framework Core -#define EMBER_AF_PLUGIN_ZCL_FRAMEWORK_CORE_CLI_ENABLED -#define ZA_CLI_FULL - -// Use this macro to check if ZigBee PRO Stack Library plugin is included -#define EMBER_AF_PLUGIN_ZIGBEE_PRO_LIBRARY -// User options for plugin ZigBee PRO Stack Library -#define EMBER_MAX_END_DEVICE_CHILDREN 6 -#define EMBER_PACKET_BUFFER_COUNT 75 -#define EMBER_END_DEVICE_KEEP_ALIVE_SUPPORT_MODE EMBER_KEEP_ALIVE_SUPPORT_ALL -#define EMBER_END_DEVICE_POLL_TIMEOUT MINUTES_256 -#define EMBER_END_DEVICE_POLL_TIMEOUT_SHIFT 6 -#define EMBER_LINK_POWER_DELTA_INTERVAL 300 -#define EMBER_APS_UNICAST_MESSAGE_COUNT 10 -#define EMBER_BROADCAST_TABLE_SIZE 15 -#define EMBER_NEIGHBOR_TABLE_SIZE 16 - -// Generated API headers - -// API antenna from Antenna Stub plugin -#define EMBER_AF_API_ANTENNA \ - "../../../../../Applications/Simplicity " \ - "Studio.app/Contents/Eclipse/developer/sdks/gecko_sdk_suite/v3.0/platform/base/hal/plugin/antenna/antenna.h" - -// API coexistence from Radio Coexistence Stub plugin -#define EMBER_AF_API_COEXISTENCE \ - "../../../../../Applications/Simplicity " \ - "Studio.app/Contents/Eclipse/developer/sdks/gecko_sdk_suite/v3.0/platform/radio/rail_lib/plugin/coexistence/protocol/" \ - "ieee802154/coexistence-802154.h" - -// API network-steering from Network Steering plugin -#define EMBER_AF_API_NETWORK_STEERING \ - "../../../../../Applications/Simplicity " \ - "Studio.app/Contents/Eclipse/developer/sdks/gecko_sdk_suite/v3.0/protocol/zigbee/app/framework/plugin/network-steering/" \ - "network-steering.h" - -// API nvm3 from NVM3 Library plugin -#define EMBER_AF_API_NVM3 \ - "../../../../../Applications/Simplicity " \ - "Studio.app/Contents/Eclipse/developer/sdks/gecko_sdk_suite/v3.0/platform/base/hal/plugin/nvm3/nvm3-token.h" - -// API rail-library from RAIL Library plugin -#define EMBER_AF_API_RAIL_LIBRARY \ - "../../../../../Applications/Simplicity " \ - "Studio.app/Contents/Eclipse/developer/sdks/gecko_sdk_suite/v3.0/platform/radio/rail_lib/common/rail.h" - -// API scan-dispatch from Scan Dispatch plugin -#define EMBER_AF_API_SCAN_DISPATCH \ - "../../../../../Applications/Simplicity " \ - "Studio.app/Contents/Eclipse/developer/sdks/gecko_sdk_suite/v3.0/protocol/zigbee/app/framework/plugin/scan-dispatch/" \ - "scan-dispatch.h" - -// API serial from Serial plugin -#define EMBER_AF_API_SERIAL \ - "../../../../../Applications/Simplicity " \ - "Studio.app/Contents/Eclipse/developer/sdks/gecko_sdk_suite/v3.0/platform/base/hal/plugin/serial/serial.h" - -// API update-tc-link-key from Update TC Link Key plugin -#define EMBER_AF_API_UPDATE_TC_LINK_KEY \ - "../../../../../Applications/Simplicity " \ - "Studio.app/Contents/Eclipse/developer/sdks/gecko_sdk_suite/v3.0/protocol/zigbee/app/framework/plugin/update-tc-link-key/" \ - "update-tc-link-key.h" - -// API command-interpreter2 from ZCL Framework Core plugin -#define EMBER_AF_API_COMMAND_INTERPRETER2 \ - "../../../../../Applications/Simplicity " \ - "Studio.app/Contents/Eclipse/developer/sdks/gecko_sdk_suite/v3.0/protocol/zigbee/app/util/serial/command-interpreter2.h" - -// Custom macros -#ifdef TRANSITION_TIME_DS -#undef TRANSITION_TIME_DS -#endif -#define TRANSITION_TIME_DS 20 - -#ifdef FINDING_AND_BINDING_DELAY_MS -#undef FINDING_AND_BINDING_DELAY_MS -#endif -#define FINDING_AND_BINDING_DELAY_MS 3000 - -#endif // SILABS_ZNET_CONFIG +// Use this macro to check if the server side of the On/off cluster is included +#define ZCL_USING_ON_OFF_CLUSTER_SERVER +#define EMBER_AF_PLUGIN_ON_OFF_SERVER +#define EMBER_AF_PLUGIN_ON_OFF + +// TODO Issue #3871 Reporting should only be enabled if there are reportable attributes +// Use this macro to check if Reporting plugin is included +#define EMBER_AF_PLUGIN_REPORTING +// User options for plugin Reporting +#define EMBER_AF_PLUGIN_REPORTING_TABLE_SIZE 5 +#define EMBER_AF_PLUGIN_REPORTING_ENABLE_GROUP_BOUND_REPORTS diff --git a/examples/lighting-app/lighting-common/gen/print-cluster.h b/examples/lighting-app/lighting-common/gen/print-cluster.h index 87d2771f942629..a37d7fb0495995 100644 --- a/examples/lighting-app/lighting-common/gen/print-cluster.h +++ b/examples/lighting-app/lighting-common/gen/print-cluster.h @@ -1,23 +1,7 @@ -/** - * - * Copyright (c) 2020 Project CHIP Authors - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/** +/* * - * Copyright (c) 2020 Silicon Labs + * Copyright (c) 2020 Project CHIP Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -31,748 +15,846 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -// This file is generated by Simplicity Studio. Please do not edit manually. -// -// -// Enclosing macro to prevent multiple inclusion -#ifndef SILABS_PRINT_CLUSTER -#define SILABS_PRINT_CLUSTER +// Prevent multiple inclusion +#pragma once // This is the mapping of IDs to cluster names assuming a format according // to the "EmberAfClusterName" defined in the ZCL header. // The names of clusters that are not present, are removed. #if defined(ZCL_USING_BASIC_CLUSTER_SERVER) || defined(ZCL_USING_BASIC_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_BASIC_CLUSTER { ZCL_BASIC_CLUSTER_ID, 0x0000, "Basic" }, +#define CHIP_PRINTCLUSTER_BASIC_CLUSTER { ZCL_BASIC_CLUSTER_ID, 0, "Basic" }, #else -#define SILABS_PRINTCLUSTER_BASIC_CLUSTER +#define CHIP_PRINTCLUSTER_BASIC_CLUSTER #endif + #if defined(ZCL_USING_POWER_CONFIG_CLUSTER_SERVER) || defined(ZCL_USING_POWER_CONFIG_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_POWER_CONFIG_CLUSTER { ZCL_POWER_CONFIG_CLUSTER_ID, 0x0000, "Power Configuration" }, +#define CHIP_PRINTCLUSTER_POWER_CONFIG_CLUSTER { ZCL_POWER_CONFIG_CLUSTER_ID, 1, "Power Configuration" }, #else -#define SILABS_PRINTCLUSTER_POWER_CONFIG_CLUSTER +#define CHIP_PRINTCLUSTER_POWER_CONFIG_CLUSTER #endif + #if defined(ZCL_USING_DEVICE_TEMP_CLUSTER_SERVER) || defined(ZCL_USING_DEVICE_TEMP_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_DEVICE_TEMP_CLUSTER { ZCL_DEVICE_TEMP_CLUSTER_ID, 0x0000, "Device Temperature Configuration" }, +#define CHIP_PRINTCLUSTER_DEVICE_TEMP_CLUSTER { ZCL_DEVICE_TEMP_CLUSTER_ID, 2, "Device Temperature Configuration" }, #else -#define SILABS_PRINTCLUSTER_DEVICE_TEMP_CLUSTER +#define CHIP_PRINTCLUSTER_DEVICE_TEMP_CLUSTER #endif + #if defined(ZCL_USING_IDENTIFY_CLUSTER_SERVER) || defined(ZCL_USING_IDENTIFY_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_IDENTIFY_CLUSTER { ZCL_IDENTIFY_CLUSTER_ID, 0x0000, "Identify" }, +#define CHIP_PRINTCLUSTER_IDENTIFY_CLUSTER { ZCL_IDENTIFY_CLUSTER_ID, 3, "Identify" }, #else -#define SILABS_PRINTCLUSTER_IDENTIFY_CLUSTER +#define CHIP_PRINTCLUSTER_IDENTIFY_CLUSTER #endif + #if defined(ZCL_USING_GROUPS_CLUSTER_SERVER) || defined(ZCL_USING_GROUPS_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_GROUPS_CLUSTER { ZCL_GROUPS_CLUSTER_ID, 0x0000, "Groups" }, +#define CHIP_PRINTCLUSTER_GROUPS_CLUSTER { ZCL_GROUPS_CLUSTER_ID, 4, "Groups" }, #else -#define SILABS_PRINTCLUSTER_GROUPS_CLUSTER +#define CHIP_PRINTCLUSTER_GROUPS_CLUSTER #endif + #if defined(ZCL_USING_SCENES_CLUSTER_SERVER) || defined(ZCL_USING_SCENES_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_SCENES_CLUSTER { ZCL_SCENES_CLUSTER_ID, 0x0000, "Scenes" }, +#define CHIP_PRINTCLUSTER_SCENES_CLUSTER { ZCL_SCENES_CLUSTER_ID, 5, "Scenes" }, #else -#define SILABS_PRINTCLUSTER_SCENES_CLUSTER +#define CHIP_PRINTCLUSTER_SCENES_CLUSTER #endif + #if defined(ZCL_USING_ON_OFF_CLUSTER_SERVER) || defined(ZCL_USING_ON_OFF_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ON_OFF_CLUSTER { ZCL_ON_OFF_CLUSTER_ID, 0x0000, "On/off" }, +#define CHIP_PRINTCLUSTER_ON_OFF_CLUSTER { ZCL_ON_OFF_CLUSTER_ID, 6, "On/off" }, #else -#define SILABS_PRINTCLUSTER_ON_OFF_CLUSTER +#define CHIP_PRINTCLUSTER_ON_OFF_CLUSTER #endif + #if defined(ZCL_USING_ON_OFF_SWITCH_CONFIG_CLUSTER_SERVER) || defined(ZCL_USING_ON_OFF_SWITCH_CONFIG_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ON_OFF_SWITCH_CONFIG_CLUSTER \ - { ZCL_ON_OFF_SWITCH_CONFIG_CLUSTER_ID, 0x0000, "On/off Switch Configuration" }, +#define CHIP_PRINTCLUSTER_ON_OFF_SWITCH_CONFIG_CLUSTER { ZCL_ON_OFF_SWITCH_CONFIG_CLUSTER_ID, 7, "On/off Switch Configuration" }, #else -#define SILABS_PRINTCLUSTER_ON_OFF_SWITCH_CONFIG_CLUSTER +#define CHIP_PRINTCLUSTER_ON_OFF_SWITCH_CONFIG_CLUSTER #endif + #if defined(ZCL_USING_LEVEL_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_LEVEL_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_LEVEL_CONTROL_CLUSTER { ZCL_LEVEL_CONTROL_CLUSTER_ID, 0x0000, "Level Control" }, +#define CHIP_PRINTCLUSTER_LEVEL_CONTROL_CLUSTER { ZCL_LEVEL_CONTROL_CLUSTER_ID, 8, "Level Control" }, #else -#define SILABS_PRINTCLUSTER_LEVEL_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_LEVEL_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_ALARM_CLUSTER_SERVER) || defined(ZCL_USING_ALARM_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ALARM_CLUSTER { ZCL_ALARM_CLUSTER_ID, 0x0000, "Alarms" }, +#define CHIP_PRINTCLUSTER_ALARM_CLUSTER { ZCL_ALARM_CLUSTER_ID, 9, "Alarms" }, #else -#define SILABS_PRINTCLUSTER_ALARM_CLUSTER +#define CHIP_PRINTCLUSTER_ALARM_CLUSTER #endif + #if defined(ZCL_USING_TIME_CLUSTER_SERVER) || defined(ZCL_USING_TIME_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_TIME_CLUSTER { ZCL_TIME_CLUSTER_ID, 0x0000, "Time" }, +#define CHIP_PRINTCLUSTER_TIME_CLUSTER { ZCL_TIME_CLUSTER_ID, 10, "Time" }, #else -#define SILABS_PRINTCLUSTER_TIME_CLUSTER +#define CHIP_PRINTCLUSTER_TIME_CLUSTER #endif + #if defined(ZCL_USING_RSSI_LOCATION_CLUSTER_SERVER) || defined(ZCL_USING_RSSI_LOCATION_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_RSSI_LOCATION_CLUSTER { ZCL_RSSI_LOCATION_CLUSTER_ID, 0x0000, "RSSI Location" }, +#define CHIP_PRINTCLUSTER_RSSI_LOCATION_CLUSTER { ZCL_RSSI_LOCATION_CLUSTER_ID, 11, "RSSI Location" }, #else -#define SILABS_PRINTCLUSTER_RSSI_LOCATION_CLUSTER +#define CHIP_PRINTCLUSTER_RSSI_LOCATION_CLUSTER #endif + #if defined(ZCL_USING_BINARY_INPUT_BASIC_CLUSTER_SERVER) || defined(ZCL_USING_BINARY_INPUT_BASIC_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_BINARY_INPUT_BASIC_CLUSTER { ZCL_BINARY_INPUT_BASIC_CLUSTER_ID, 0x0000, "Binary Input (Basic)" }, +#define CHIP_PRINTCLUSTER_BINARY_INPUT_BASIC_CLUSTER { ZCL_BINARY_INPUT_BASIC_CLUSTER_ID, 15, "Binary Input (Basic)" }, #else -#define SILABS_PRINTCLUSTER_BINARY_INPUT_BASIC_CLUSTER +#define CHIP_PRINTCLUSTER_BINARY_INPUT_BASIC_CLUSTER #endif + #if defined(ZCL_USING_COMMISSIONING_CLUSTER_SERVER) || defined(ZCL_USING_COMMISSIONING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_COMMISSIONING_CLUSTER { ZCL_COMMISSIONING_CLUSTER_ID, 0x0000, "Commissioning" }, +#define CHIP_PRINTCLUSTER_COMMISSIONING_CLUSTER { ZCL_COMMISSIONING_CLUSTER_ID, 21, "Commissioning" }, #else -#define SILABS_PRINTCLUSTER_COMMISSIONING_CLUSTER +#define CHIP_PRINTCLUSTER_COMMISSIONING_CLUSTER #endif + #if defined(ZCL_USING_PARTITION_CLUSTER_SERVER) || defined(ZCL_USING_PARTITION_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_PARTITION_CLUSTER { ZCL_PARTITION_CLUSTER_ID, 0x0000, "Partition" }, +#define CHIP_PRINTCLUSTER_PARTITION_CLUSTER { ZCL_PARTITION_CLUSTER_ID, 22, "Partition" }, #else -#define SILABS_PRINTCLUSTER_PARTITION_CLUSTER +#define CHIP_PRINTCLUSTER_PARTITION_CLUSTER #endif + #if defined(ZCL_USING_OTA_BOOTLOAD_CLUSTER_SERVER) || defined(ZCL_USING_OTA_BOOTLOAD_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_OTA_BOOTLOAD_CLUSTER { ZCL_OTA_BOOTLOAD_CLUSTER_ID, 0x0000, "Over the Air Bootloading" }, +#define CHIP_PRINTCLUSTER_OTA_BOOTLOAD_CLUSTER { ZCL_OTA_BOOTLOAD_CLUSTER_ID, 25, "Over the Air Bootloading" }, #else -#define SILABS_PRINTCLUSTER_OTA_BOOTLOAD_CLUSTER +#define CHIP_PRINTCLUSTER_OTA_BOOTLOAD_CLUSTER #endif + #if defined(ZCL_USING_POWER_PROFILE_CLUSTER_SERVER) || defined(ZCL_USING_POWER_PROFILE_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_POWER_PROFILE_CLUSTER { ZCL_POWER_PROFILE_CLUSTER_ID, 0x0000, "Power Profile" }, +#define CHIP_PRINTCLUSTER_POWER_PROFILE_CLUSTER { ZCL_POWER_PROFILE_CLUSTER_ID, 26, "Power Profile" }, #else -#define SILABS_PRINTCLUSTER_POWER_PROFILE_CLUSTER +#define CHIP_PRINTCLUSTER_POWER_PROFILE_CLUSTER #endif + #if defined(ZCL_USING_APPLIANCE_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_APPLIANCE_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_APPLIANCE_CONTROL_CLUSTER { ZCL_APPLIANCE_CONTROL_CLUSTER_ID, 0x0000, "Appliance Control" }, +#define CHIP_PRINTCLUSTER_APPLIANCE_CONTROL_CLUSTER { ZCL_APPLIANCE_CONTROL_CLUSTER_ID, 27, "Appliance Control" }, #else -#define SILABS_PRINTCLUSTER_APPLIANCE_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_APPLIANCE_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_POLL_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_POLL_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_POLL_CONTROL_CLUSTER { ZCL_POLL_CONTROL_CLUSTER_ID, 0x0000, "Poll Control" }, +#define CHIP_PRINTCLUSTER_POLL_CONTROL_CLUSTER { ZCL_POLL_CONTROL_CLUSTER_ID, 32, "Poll Control" }, #else -#define SILABS_PRINTCLUSTER_POLL_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_POLL_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_GREEN_POWER_CLUSTER_SERVER) || defined(ZCL_USING_GREEN_POWER_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_GREEN_POWER_CLUSTER { ZCL_GREEN_POWER_CLUSTER_ID, 0x0000, "Green Power" }, +#define CHIP_PRINTCLUSTER_GREEN_POWER_CLUSTER { ZCL_GREEN_POWER_CLUSTER_ID, 33, "Green Power" }, #else -#define SILABS_PRINTCLUSTER_GREEN_POWER_CLUSTER +#define CHIP_PRINTCLUSTER_GREEN_POWER_CLUSTER #endif + #if defined(ZCL_USING_KEEPALIVE_CLUSTER_SERVER) || defined(ZCL_USING_KEEPALIVE_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_KEEPALIVE_CLUSTER { ZCL_KEEPALIVE_CLUSTER_ID, 0x0000, "Keep-Alive" }, +#define CHIP_PRINTCLUSTER_KEEPALIVE_CLUSTER { ZCL_KEEPALIVE_CLUSTER_ID, 37, "Keep-Alive" }, #else -#define SILABS_PRINTCLUSTER_KEEPALIVE_CLUSTER +#define CHIP_PRINTCLUSTER_KEEPALIVE_CLUSTER #endif + #if defined(ZCL_USING_SHADE_CONFIG_CLUSTER_SERVER) || defined(ZCL_USING_SHADE_CONFIG_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_SHADE_CONFIG_CLUSTER { ZCL_SHADE_CONFIG_CLUSTER_ID, 0x0000, "Shade Configuration" }, +#define CHIP_PRINTCLUSTER_SHADE_CONFIG_CLUSTER { ZCL_SHADE_CONFIG_CLUSTER_ID, 256, "Shade Configuration" }, #else -#define SILABS_PRINTCLUSTER_SHADE_CONFIG_CLUSTER +#define CHIP_PRINTCLUSTER_SHADE_CONFIG_CLUSTER #endif + #if defined(ZCL_USING_DOOR_LOCK_CLUSTER_SERVER) || defined(ZCL_USING_DOOR_LOCK_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_DOOR_LOCK_CLUSTER { ZCL_DOOR_LOCK_CLUSTER_ID, 0x0000, "Door Lock" }, +#define CHIP_PRINTCLUSTER_DOOR_LOCK_CLUSTER { ZCL_DOOR_LOCK_CLUSTER_ID, 257, "Door Lock" }, #else -#define SILABS_PRINTCLUSTER_DOOR_LOCK_CLUSTER +#define CHIP_PRINTCLUSTER_DOOR_LOCK_CLUSTER #endif + #if defined(ZCL_USING_WINDOW_COVERING_CLUSTER_SERVER) || defined(ZCL_USING_WINDOW_COVERING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_WINDOW_COVERING_CLUSTER { ZCL_WINDOW_COVERING_CLUSTER_ID, 0x0000, "Window Covering" }, +#define CHIP_PRINTCLUSTER_WINDOW_COVERING_CLUSTER { ZCL_WINDOW_COVERING_CLUSTER_ID, 258, "Window Covering" }, #else -#define SILABS_PRINTCLUSTER_WINDOW_COVERING_CLUSTER +#define CHIP_PRINTCLUSTER_WINDOW_COVERING_CLUSTER #endif + #if defined(ZCL_USING_BARRIER_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_BARRIER_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_BARRIER_CONTROL_CLUSTER { ZCL_BARRIER_CONTROL_CLUSTER_ID, 0x0000, "Barrier Control" }, +#define CHIP_PRINTCLUSTER_BARRIER_CONTROL_CLUSTER { ZCL_BARRIER_CONTROL_CLUSTER_ID, 259, "Barrier Control" }, #else -#define SILABS_PRINTCLUSTER_BARRIER_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_BARRIER_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_PUMP_CONFIG_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_PUMP_CONFIG_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_PUMP_CONFIG_CONTROL_CLUSTER \ - { ZCL_PUMP_CONFIG_CONTROL_CLUSTER_ID, 0x0000, "Pump Configuration and Control" }, +#define CHIP_PRINTCLUSTER_PUMP_CONFIG_CONTROL_CLUSTER { ZCL_PUMP_CONFIG_CONTROL_CLUSTER_ID, 512, "Pump Configuration and Control" }, #else -#define SILABS_PRINTCLUSTER_PUMP_CONFIG_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_PUMP_CONFIG_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_THERMOSTAT_CLUSTER_SERVER) || defined(ZCL_USING_THERMOSTAT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_THERMOSTAT_CLUSTER { ZCL_THERMOSTAT_CLUSTER_ID, 0x0000, "Thermostat" }, +#define CHIP_PRINTCLUSTER_THERMOSTAT_CLUSTER { ZCL_THERMOSTAT_CLUSTER_ID, 513, "Thermostat" }, #else -#define SILABS_PRINTCLUSTER_THERMOSTAT_CLUSTER +#define CHIP_PRINTCLUSTER_THERMOSTAT_CLUSTER #endif + #if defined(ZCL_USING_FAN_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_FAN_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_FAN_CONTROL_CLUSTER { ZCL_FAN_CONTROL_CLUSTER_ID, 0x0000, "Fan Control" }, +#define CHIP_PRINTCLUSTER_FAN_CONTROL_CLUSTER { ZCL_FAN_CONTROL_CLUSTER_ID, 514, "Fan Control" }, #else -#define SILABS_PRINTCLUSTER_FAN_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_FAN_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_DEHUMID_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_DEHUMID_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_DEHUMID_CONTROL_CLUSTER { ZCL_DEHUMID_CONTROL_CLUSTER_ID, 0x0000, "Dehumidification Control" }, +#define CHIP_PRINTCLUSTER_DEHUMID_CONTROL_CLUSTER { ZCL_DEHUMID_CONTROL_CLUSTER_ID, 515, "Dehumidification Control" }, #else -#define SILABS_PRINTCLUSTER_DEHUMID_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_DEHUMID_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_THERMOSTAT_UI_CONFIG_CLUSTER_SERVER) || defined(ZCL_USING_THERMOSTAT_UI_CONFIG_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_THERMOSTAT_UI_CONFIG_CLUSTER \ - { ZCL_THERMOSTAT_UI_CONFIG_CLUSTER_ID, 0x0000, "Thermostat User Interface Configuration" }, +#define CHIP_PRINTCLUSTER_THERMOSTAT_UI_CONFIG_CLUSTER \ + { ZCL_THERMOSTAT_UI_CONFIG_CLUSTER_ID, 516, "Thermostat User Interface Configuration" }, #else -#define SILABS_PRINTCLUSTER_THERMOSTAT_UI_CONFIG_CLUSTER +#define CHIP_PRINTCLUSTER_THERMOSTAT_UI_CONFIG_CLUSTER #endif + #if defined(ZCL_USING_COLOR_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_COLOR_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_COLOR_CONTROL_CLUSTER { ZCL_COLOR_CONTROL_CLUSTER_ID, 0x0000, "Color Control" }, +#define CHIP_PRINTCLUSTER_COLOR_CONTROL_CLUSTER { ZCL_COLOR_CONTROL_CLUSTER_ID, 768, "Color Control" }, #else -#define SILABS_PRINTCLUSTER_COLOR_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_COLOR_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_BALLAST_CONFIGURATION_CLUSTER_SERVER) || defined(ZCL_USING_BALLAST_CONFIGURATION_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_BALLAST_CONFIGURATION_CLUSTER { ZCL_BALLAST_CONFIGURATION_CLUSTER_ID, 0x0000, "Ballast Configuration" }, +#define CHIP_PRINTCLUSTER_BALLAST_CONFIGURATION_CLUSTER { ZCL_BALLAST_CONFIGURATION_CLUSTER_ID, 769, "Ballast Configuration" }, #else -#define SILABS_PRINTCLUSTER_BALLAST_CONFIGURATION_CLUSTER +#define CHIP_PRINTCLUSTER_BALLAST_CONFIGURATION_CLUSTER #endif + #if defined(ZCL_USING_ILLUM_MEASUREMENT_CLUSTER_SERVER) || defined(ZCL_USING_ILLUM_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ILLUM_MEASUREMENT_CLUSTER { ZCL_ILLUM_MEASUREMENT_CLUSTER_ID, 0x0000, "Illuminance Measurement" }, +#define CHIP_PRINTCLUSTER_ILLUM_MEASUREMENT_CLUSTER { ZCL_ILLUM_MEASUREMENT_CLUSTER_ID, 1024, "Illuminance Measurement" }, #else -#define SILABS_PRINTCLUSTER_ILLUM_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_ILLUM_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_ILLUM_LEVEL_SENSING_CLUSTER_SERVER) || defined(ZCL_USING_ILLUM_LEVEL_SENSING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ILLUM_LEVEL_SENSING_CLUSTER { ZCL_ILLUM_LEVEL_SENSING_CLUSTER_ID, 0x0000, "Illuminance Level Sensing" }, +#define CHIP_PRINTCLUSTER_ILLUM_LEVEL_SENSING_CLUSTER { ZCL_ILLUM_LEVEL_SENSING_CLUSTER_ID, 1025, "Illuminance Level Sensing" }, #else -#define SILABS_PRINTCLUSTER_ILLUM_LEVEL_SENSING_CLUSTER +#define CHIP_PRINTCLUSTER_ILLUM_LEVEL_SENSING_CLUSTER #endif + #if defined(ZCL_USING_TEMP_MEASUREMENT_CLUSTER_SERVER) || defined(ZCL_USING_TEMP_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_TEMP_MEASUREMENT_CLUSTER { ZCL_TEMP_MEASUREMENT_CLUSTER_ID, 0x0000, "Temperature Measurement" }, +#define CHIP_PRINTCLUSTER_TEMP_MEASUREMENT_CLUSTER { ZCL_TEMP_MEASUREMENT_CLUSTER_ID, 1026, "Temperature Measurement" }, #else -#define SILABS_PRINTCLUSTER_TEMP_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_TEMP_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_PRESSURE_MEASUREMENT_CLUSTER_SERVER) || defined(ZCL_USING_PRESSURE_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_PRESSURE_MEASUREMENT_CLUSTER { ZCL_PRESSURE_MEASUREMENT_CLUSTER_ID, 0x0000, "Pressure Measurement" }, +#define CHIP_PRINTCLUSTER_PRESSURE_MEASUREMENT_CLUSTER { ZCL_PRESSURE_MEASUREMENT_CLUSTER_ID, 1027, "Pressure Measurement" }, #else -#define SILABS_PRINTCLUSTER_PRESSURE_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_PRESSURE_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_FLOW_MEASUREMENT_CLUSTER_SERVER) || defined(ZCL_USING_FLOW_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_FLOW_MEASUREMENT_CLUSTER { ZCL_FLOW_MEASUREMENT_CLUSTER_ID, 0x0000, "Flow Measurement" }, +#define CHIP_PRINTCLUSTER_FLOW_MEASUREMENT_CLUSTER { ZCL_FLOW_MEASUREMENT_CLUSTER_ID, 1028, "Flow Measurement" }, #else -#define SILABS_PRINTCLUSTER_FLOW_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_FLOW_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER \ - { ZCL_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_ID, 0x0000, "Relative Humidity Measurement" }, +#define CHIP_PRINTCLUSTER_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER \ + { ZCL_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER_ID, 1029, "Relative Humidity Measurement" }, #else -#define SILABS_PRINTCLUSTER_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_OCCUPANCY_SENSING_CLUSTER_SERVER) || defined(ZCL_USING_OCCUPANCY_SENSING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_OCCUPANCY_SENSING_CLUSTER { ZCL_OCCUPANCY_SENSING_CLUSTER_ID, 0x0000, "Occupancy Sensing" }, +#define CHIP_PRINTCLUSTER_OCCUPANCY_SENSING_CLUSTER { ZCL_OCCUPANCY_SENSING_CLUSTER_ID, 1030, "Occupancy Sensing" }, #else -#define SILABS_PRINTCLUSTER_OCCUPANCY_SENSING_CLUSTER +#define CHIP_PRINTCLUSTER_OCCUPANCY_SENSING_CLUSTER #endif + #if defined(ZCL_USING_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Carbon Monoxide Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1036, "Carbon Monoxide Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Carbon Dioxide Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1037, "Carbon Dioxide Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Ethylene Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1038, "Ethylene Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Ethylene Oxide Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1039, "Ethylene Oxide Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Hydrogen Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1040, "Hydrogen Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Hydrogen Sulphide Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1041, "Hydrogen Sulphide Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Nitric Oxide Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1042, "Nitric Oxide Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Nitrogen Dioxide Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1043, "Nitrogen Dioxide Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Oxygen Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1044, "Oxygen Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Ozone Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1045, "Ozone Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Sulfur Dioxide Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1046, "Sulfur Dioxide Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Dissolved Oxygen Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1047, "Dissolved Oxygen Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Bromate Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1048, "Bromate Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Chloramines Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1049, "Chloramines Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Chlorine Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1050, "Chlorine Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, \ +#define CHIP_PRINTCLUSTER_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1051, \ "Fecal coliform and E. Coli Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Fluoride Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1052, "Fluoride Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Haloacetic Acids Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1053, "Haloacetic Acids Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Total Trihalomethanes Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1054, "Total Trihalomethanes Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, \ - "Total Coliform Bacteria Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1055, "Total Coliform Bacteria Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Turbidity Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1056, "Turbidity Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Copper Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1057, "Copper Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Lead Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1058, "Lead Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Manganese Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1059, "Manganese Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Sulfate Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1060, "Sulfate Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Bromodichloromethane Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1061, "Bromodichloromethane Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Bromoform Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1062, "Bromoform Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Chlorodibromomethane Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1063, "Chlorodibromomethane Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Chloroform Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1064, "Chloroform Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_SERVER) || \ defined(ZCL_USING_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER \ - { ZCL_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 0x0000, "Sodium Concentration Measurement" }, +#define CHIP_PRINTCLUSTER_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER \ + { ZCL_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER_ID, 1065, "Sodium Concentration Measurement" }, #else -#define SILABS_PRINTCLUSTER_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_IAS_ZONE_CLUSTER_SERVER) || defined(ZCL_USING_IAS_ZONE_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_IAS_ZONE_CLUSTER { ZCL_IAS_ZONE_CLUSTER_ID, 0x0000, "IAS Zone" }, +#define CHIP_PRINTCLUSTER_IAS_ZONE_CLUSTER { ZCL_IAS_ZONE_CLUSTER_ID, 1280, "IAS Zone" }, #else -#define SILABS_PRINTCLUSTER_IAS_ZONE_CLUSTER +#define CHIP_PRINTCLUSTER_IAS_ZONE_CLUSTER #endif + #if defined(ZCL_USING_IAS_ACE_CLUSTER_SERVER) || defined(ZCL_USING_IAS_ACE_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_IAS_ACE_CLUSTER { ZCL_IAS_ACE_CLUSTER_ID, 0x0000, "IAS ACE" }, +#define CHIP_PRINTCLUSTER_IAS_ACE_CLUSTER { ZCL_IAS_ACE_CLUSTER_ID, 1281, "IAS ACE" }, #else -#define SILABS_PRINTCLUSTER_IAS_ACE_CLUSTER +#define CHIP_PRINTCLUSTER_IAS_ACE_CLUSTER #endif + #if defined(ZCL_USING_IAS_WD_CLUSTER_SERVER) || defined(ZCL_USING_IAS_WD_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_IAS_WD_CLUSTER { ZCL_IAS_WD_CLUSTER_ID, 0x0000, "IAS WD" }, +#define CHIP_PRINTCLUSTER_IAS_WD_CLUSTER { ZCL_IAS_WD_CLUSTER_ID, 1282, "IAS WD" }, #else -#define SILABS_PRINTCLUSTER_IAS_WD_CLUSTER +#define CHIP_PRINTCLUSTER_IAS_WD_CLUSTER #endif + #if defined(ZCL_USING_GENERIC_TUNNEL_CLUSTER_SERVER) || defined(ZCL_USING_GENERIC_TUNNEL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_GENERIC_TUNNEL_CLUSTER { ZCL_GENERIC_TUNNEL_CLUSTER_ID, 0x0000, "Generic Tunnel" }, +#define CHIP_PRINTCLUSTER_GENERIC_TUNNEL_CLUSTER { ZCL_GENERIC_TUNNEL_CLUSTER_ID, 1536, "Generic Tunnel" }, #else -#define SILABS_PRINTCLUSTER_GENERIC_TUNNEL_CLUSTER +#define CHIP_PRINTCLUSTER_GENERIC_TUNNEL_CLUSTER #endif + #if defined(ZCL_USING_BACNET_PROTOCOL_TUNNEL_CLUSTER_SERVER) || defined(ZCL_USING_BACNET_PROTOCOL_TUNNEL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_BACNET_PROTOCOL_TUNNEL_CLUSTER \ - { ZCL_BACNET_PROTOCOL_TUNNEL_CLUSTER_ID, 0x0000, "BACnet Protocol Tunnel" }, +#define CHIP_PRINTCLUSTER_BACNET_PROTOCOL_TUNNEL_CLUSTER { ZCL_BACNET_PROTOCOL_TUNNEL_CLUSTER_ID, 1537, "BACnet Protocol Tunnel" }, #else -#define SILABS_PRINTCLUSTER_BACNET_PROTOCOL_TUNNEL_CLUSTER +#define CHIP_PRINTCLUSTER_BACNET_PROTOCOL_TUNNEL_CLUSTER #endif + #if defined(ZCL_USING_11073_PROTOCOL_TUNNEL_CLUSTER_SERVER) || defined(ZCL_USING_11073_PROTOCOL_TUNNEL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_11073_PROTOCOL_TUNNEL_CLUSTER { ZCL_11073_PROTOCOL_TUNNEL_CLUSTER_ID, 0x0000, "11073 Protocol Tunnel" }, +#define CHIP_PRINTCLUSTER_11073_PROTOCOL_TUNNEL_CLUSTER { ZCL_11073_PROTOCOL_TUNNEL_CLUSTER_ID, 1556, "11073 Protocol Tunnel" }, #else -#define SILABS_PRINTCLUSTER_11073_PROTOCOL_TUNNEL_CLUSTER +#define CHIP_PRINTCLUSTER_11073_PROTOCOL_TUNNEL_CLUSTER #endif + #if defined(ZCL_USING_ISO7816_PROTOCOL_TUNNEL_CLUSTER_SERVER) || defined(ZCL_USING_ISO7816_PROTOCOL_TUNNEL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ISO7816_PROTOCOL_TUNNEL_CLUSTER \ - { ZCL_ISO7816_PROTOCOL_TUNNEL_CLUSTER_ID, 0x0000, "ISO 7816 Protocol Tunnel" }, +#define CHIP_PRINTCLUSTER_ISO7816_PROTOCOL_TUNNEL_CLUSTER \ + { ZCL_ISO7816_PROTOCOL_TUNNEL_CLUSTER_ID, 1557, "ISO 7816 Protocol Tunnel" }, #else -#define SILABS_PRINTCLUSTER_ISO7816_PROTOCOL_TUNNEL_CLUSTER +#define CHIP_PRINTCLUSTER_ISO7816_PROTOCOL_TUNNEL_CLUSTER #endif + #if defined(ZCL_USING_PRICE_CLUSTER_SERVER) || defined(ZCL_USING_PRICE_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_PRICE_CLUSTER { ZCL_PRICE_CLUSTER_ID, 0x0000, "Price" }, +#define CHIP_PRINTCLUSTER_PRICE_CLUSTER { ZCL_PRICE_CLUSTER_ID, 1792, "Price" }, #else -#define SILABS_PRINTCLUSTER_PRICE_CLUSTER +#define CHIP_PRINTCLUSTER_PRICE_CLUSTER #endif + #if defined(ZCL_USING_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER \ - { ZCL_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_ID, 0x0000, "Demand Response and Load Control" }, +#define CHIP_PRINTCLUSTER_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER \ + { ZCL_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER_ID, 1793, "Demand Response and Load Control" }, #else -#define SILABS_PRINTCLUSTER_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_SIMPLE_METERING_CLUSTER_SERVER) || defined(ZCL_USING_SIMPLE_METERING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_SIMPLE_METERING_CLUSTER { ZCL_SIMPLE_METERING_CLUSTER_ID, 0x0000, "Simple Metering" }, +#define CHIP_PRINTCLUSTER_SIMPLE_METERING_CLUSTER { ZCL_SIMPLE_METERING_CLUSTER_ID, 1794, "Simple Metering" }, #else -#define SILABS_PRINTCLUSTER_SIMPLE_METERING_CLUSTER +#define CHIP_PRINTCLUSTER_SIMPLE_METERING_CLUSTER #endif + #if defined(ZCL_USING_MESSAGING_CLUSTER_SERVER) || defined(ZCL_USING_MESSAGING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_MESSAGING_CLUSTER { ZCL_MESSAGING_CLUSTER_ID, 0x0000, "Messaging" }, +#define CHIP_PRINTCLUSTER_MESSAGING_CLUSTER { ZCL_MESSAGING_CLUSTER_ID, 1795, "Messaging" }, #else -#define SILABS_PRINTCLUSTER_MESSAGING_CLUSTER +#define CHIP_PRINTCLUSTER_MESSAGING_CLUSTER #endif + #if defined(ZCL_USING_TUNNELING_CLUSTER_SERVER) || defined(ZCL_USING_TUNNELING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_TUNNELING_CLUSTER { ZCL_TUNNELING_CLUSTER_ID, 0x0000, "Tunneling" }, +#define CHIP_PRINTCLUSTER_TUNNELING_CLUSTER { ZCL_TUNNELING_CLUSTER_ID, 1796, "Tunneling" }, #else -#define SILABS_PRINTCLUSTER_TUNNELING_CLUSTER +#define CHIP_PRINTCLUSTER_TUNNELING_CLUSTER #endif + #if defined(ZCL_USING_PREPAYMENT_CLUSTER_SERVER) || defined(ZCL_USING_PREPAYMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_PREPAYMENT_CLUSTER { ZCL_PREPAYMENT_CLUSTER_ID, 0x0000, "Prepayment" }, +#define CHIP_PRINTCLUSTER_PREPAYMENT_CLUSTER { ZCL_PREPAYMENT_CLUSTER_ID, 1797, "Prepayment" }, #else -#define SILABS_PRINTCLUSTER_PREPAYMENT_CLUSTER +#define CHIP_PRINTCLUSTER_PREPAYMENT_CLUSTER #endif + #if defined(ZCL_USING_ENERGY_MANAGEMENT_CLUSTER_SERVER) || defined(ZCL_USING_ENERGY_MANAGEMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ENERGY_MANAGEMENT_CLUSTER { ZCL_ENERGY_MANAGEMENT_CLUSTER_ID, 0x0000, "Energy Management" }, +#define CHIP_PRINTCLUSTER_ENERGY_MANAGEMENT_CLUSTER { ZCL_ENERGY_MANAGEMENT_CLUSTER_ID, 1798, "Energy Management" }, #else -#define SILABS_PRINTCLUSTER_ENERGY_MANAGEMENT_CLUSTER +#define CHIP_PRINTCLUSTER_ENERGY_MANAGEMENT_CLUSTER #endif + #if defined(ZCL_USING_CALENDAR_CLUSTER_SERVER) || defined(ZCL_USING_CALENDAR_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_CALENDAR_CLUSTER { ZCL_CALENDAR_CLUSTER_ID, 0x0000, "Calendar" }, +#define CHIP_PRINTCLUSTER_CALENDAR_CLUSTER { ZCL_CALENDAR_CLUSTER_ID, 1799, "Calendar" }, #else -#define SILABS_PRINTCLUSTER_CALENDAR_CLUSTER +#define CHIP_PRINTCLUSTER_CALENDAR_CLUSTER #endif + #if defined(ZCL_USING_DEVICE_MANAGEMENT_CLUSTER_SERVER) || defined(ZCL_USING_DEVICE_MANAGEMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_DEVICE_MANAGEMENT_CLUSTER { ZCL_DEVICE_MANAGEMENT_CLUSTER_ID, 0x0000, "Device Management" }, +#define CHIP_PRINTCLUSTER_DEVICE_MANAGEMENT_CLUSTER { ZCL_DEVICE_MANAGEMENT_CLUSTER_ID, 1800, "Device Management" }, #else -#define SILABS_PRINTCLUSTER_DEVICE_MANAGEMENT_CLUSTER +#define CHIP_PRINTCLUSTER_DEVICE_MANAGEMENT_CLUSTER #endif + #if defined(ZCL_USING_EVENTS_CLUSTER_SERVER) || defined(ZCL_USING_EVENTS_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_EVENTS_CLUSTER { ZCL_EVENTS_CLUSTER_ID, 0x0000, "Events" }, +#define CHIP_PRINTCLUSTER_EVENTS_CLUSTER { ZCL_EVENTS_CLUSTER_ID, 1801, "Events" }, #else -#define SILABS_PRINTCLUSTER_EVENTS_CLUSTER +#define CHIP_PRINTCLUSTER_EVENTS_CLUSTER #endif + #if defined(ZCL_USING_MDU_PAIRING_CLUSTER_SERVER) || defined(ZCL_USING_MDU_PAIRING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_MDU_PAIRING_CLUSTER { ZCL_MDU_PAIRING_CLUSTER_ID, 0x0000, "MDU Pairing" }, +#define CHIP_PRINTCLUSTER_MDU_PAIRING_CLUSTER { ZCL_MDU_PAIRING_CLUSTER_ID, 1802, "MDU Pairing" }, #else -#define SILABS_PRINTCLUSTER_MDU_PAIRING_CLUSTER +#define CHIP_PRINTCLUSTER_MDU_PAIRING_CLUSTER #endif + #if defined(ZCL_USING_SUB_GHZ_CLUSTER_SERVER) || defined(ZCL_USING_SUB_GHZ_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_SUB_GHZ_CLUSTER { ZCL_SUB_GHZ_CLUSTER_ID, 0x0000, "Sub-GHz" }, +#define CHIP_PRINTCLUSTER_SUB_GHZ_CLUSTER { ZCL_SUB_GHZ_CLUSTER_ID, 1803, "Sub-GHz" }, #else -#define SILABS_PRINTCLUSTER_SUB_GHZ_CLUSTER +#define CHIP_PRINTCLUSTER_SUB_GHZ_CLUSTER #endif + #if defined(ZCL_USING_KEY_ESTABLISHMENT_CLUSTER_SERVER) || defined(ZCL_USING_KEY_ESTABLISHMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_KEY_ESTABLISHMENT_CLUSTER { ZCL_KEY_ESTABLISHMENT_CLUSTER_ID, 0x0000, "Key Establishment" }, +#define CHIP_PRINTCLUSTER_KEY_ESTABLISHMENT_CLUSTER { ZCL_KEY_ESTABLISHMENT_CLUSTER_ID, 2048, "Key Establishment" }, #else -#define SILABS_PRINTCLUSTER_KEY_ESTABLISHMENT_CLUSTER +#define CHIP_PRINTCLUSTER_KEY_ESTABLISHMENT_CLUSTER #endif + #if defined(ZCL_USING_INFORMATION_CLUSTER_SERVER) || defined(ZCL_USING_INFORMATION_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_INFORMATION_CLUSTER { ZCL_INFORMATION_CLUSTER_ID, 0x0000, "Information" }, +#define CHIP_PRINTCLUSTER_INFORMATION_CLUSTER { ZCL_INFORMATION_CLUSTER_ID, 2304, "Information" }, #else -#define SILABS_PRINTCLUSTER_INFORMATION_CLUSTER +#define CHIP_PRINTCLUSTER_INFORMATION_CLUSTER #endif + #if defined(ZCL_USING_DATA_SHARING_CLUSTER_SERVER) || defined(ZCL_USING_DATA_SHARING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_DATA_SHARING_CLUSTER { ZCL_DATA_SHARING_CLUSTER_ID, 0x0000, "Data Sharing" }, +#define CHIP_PRINTCLUSTER_DATA_SHARING_CLUSTER { ZCL_DATA_SHARING_CLUSTER_ID, 2305, "Data Sharing" }, #else -#define SILABS_PRINTCLUSTER_DATA_SHARING_CLUSTER +#define CHIP_PRINTCLUSTER_DATA_SHARING_CLUSTER #endif + #if defined(ZCL_USING_GAMING_CLUSTER_SERVER) || defined(ZCL_USING_GAMING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_GAMING_CLUSTER { ZCL_GAMING_CLUSTER_ID, 0x0000, "Gaming" }, +#define CHIP_PRINTCLUSTER_GAMING_CLUSTER { ZCL_GAMING_CLUSTER_ID, 2306, "Gaming" }, #else -#define SILABS_PRINTCLUSTER_GAMING_CLUSTER +#define CHIP_PRINTCLUSTER_GAMING_CLUSTER #endif + #if defined(ZCL_USING_DATA_RATE_CONTROL_CLUSTER_SERVER) || defined(ZCL_USING_DATA_RATE_CONTROL_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_DATA_RATE_CONTROL_CLUSTER { ZCL_DATA_RATE_CONTROL_CLUSTER_ID, 0x0000, "Data Rate Control" }, +#define CHIP_PRINTCLUSTER_DATA_RATE_CONTROL_CLUSTER { ZCL_DATA_RATE_CONTROL_CLUSTER_ID, 2307, "Data Rate Control" }, #else -#define SILABS_PRINTCLUSTER_DATA_RATE_CONTROL_CLUSTER +#define CHIP_PRINTCLUSTER_DATA_RATE_CONTROL_CLUSTER #endif + #if defined(ZCL_USING_VOICE_OVER_ZIGBEE_CLUSTER_SERVER) || defined(ZCL_USING_VOICE_OVER_ZIGBEE_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_VOICE_OVER_ZIGBEE_CLUSTER { ZCL_VOICE_OVER_ZIGBEE_CLUSTER_ID, 0x0000, "Voice over ZigBee" }, +#define CHIP_PRINTCLUSTER_VOICE_OVER_ZIGBEE_CLUSTER { ZCL_VOICE_OVER_ZIGBEE_CLUSTER_ID, 2308, "Voice over ZigBee" }, #else -#define SILABS_PRINTCLUSTER_VOICE_OVER_ZIGBEE_CLUSTER +#define CHIP_PRINTCLUSTER_VOICE_OVER_ZIGBEE_CLUSTER #endif + #if defined(ZCL_USING_CHATTING_CLUSTER_SERVER) || defined(ZCL_USING_CHATTING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_CHATTING_CLUSTER { ZCL_CHATTING_CLUSTER_ID, 0x0000, "Chatting" }, +#define CHIP_PRINTCLUSTER_CHATTING_CLUSTER { ZCL_CHATTING_CLUSTER_ID, 2309, "Chatting" }, #else -#define SILABS_PRINTCLUSTER_CHATTING_CLUSTER +#define CHIP_PRINTCLUSTER_CHATTING_CLUSTER #endif + #if defined(ZCL_USING_PAYMENT_CLUSTER_SERVER) || defined(ZCL_USING_PAYMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_PAYMENT_CLUSTER { ZCL_PAYMENT_CLUSTER_ID, 0x0000, "Payment" }, +#define CHIP_PRINTCLUSTER_PAYMENT_CLUSTER { ZCL_PAYMENT_CLUSTER_ID, 2561, "Payment" }, #else -#define SILABS_PRINTCLUSTER_PAYMENT_CLUSTER +#define CHIP_PRINTCLUSTER_PAYMENT_CLUSTER #endif + #if defined(ZCL_USING_BILLING_CLUSTER_SERVER) || defined(ZCL_USING_BILLING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_BILLING_CLUSTER { ZCL_BILLING_CLUSTER_ID, 0x0000, "Billing" }, +#define CHIP_PRINTCLUSTER_BILLING_CLUSTER { ZCL_BILLING_CLUSTER_ID, 2562, "Billing" }, #else -#define SILABS_PRINTCLUSTER_BILLING_CLUSTER +#define CHIP_PRINTCLUSTER_BILLING_CLUSTER #endif + #if defined(ZCL_USING_APPLIANCE_IDENTIFICATION_CLUSTER_SERVER) || defined(ZCL_USING_APPLIANCE_IDENTIFICATION_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_APPLIANCE_IDENTIFICATION_CLUSTER \ - { ZCL_APPLIANCE_IDENTIFICATION_CLUSTER_ID, 0x0000, "Appliance Identification" }, +#define CHIP_PRINTCLUSTER_APPLIANCE_IDENTIFICATION_CLUSTER \ + { ZCL_APPLIANCE_IDENTIFICATION_CLUSTER_ID, 2816, "Appliance Identification" }, #else -#define SILABS_PRINTCLUSTER_APPLIANCE_IDENTIFICATION_CLUSTER +#define CHIP_PRINTCLUSTER_APPLIANCE_IDENTIFICATION_CLUSTER #endif + #if defined(ZCL_USING_METER_IDENTIFICATION_CLUSTER_SERVER) || defined(ZCL_USING_METER_IDENTIFICATION_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_METER_IDENTIFICATION_CLUSTER { ZCL_METER_IDENTIFICATION_CLUSTER_ID, 0x0000, "Meter Identification" }, +#define CHIP_PRINTCLUSTER_METER_IDENTIFICATION_CLUSTER { ZCL_METER_IDENTIFICATION_CLUSTER_ID, 2817, "Meter Identification" }, #else -#define SILABS_PRINTCLUSTER_METER_IDENTIFICATION_CLUSTER +#define CHIP_PRINTCLUSTER_METER_IDENTIFICATION_CLUSTER #endif + #if defined(ZCL_USING_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_SERVER) || defined(ZCL_USING_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_APPLIANCE_EVENTS_AND_ALERT_CLUSTER \ - { ZCL_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_ID, 0x0000, "Appliance Events and Alert" }, +#define CHIP_PRINTCLUSTER_APPLIANCE_EVENTS_AND_ALERT_CLUSTER \ + { ZCL_APPLIANCE_EVENTS_AND_ALERT_CLUSTER_ID, 2818, "Appliance Events and Alert" }, #else -#define SILABS_PRINTCLUSTER_APPLIANCE_EVENTS_AND_ALERT_CLUSTER +#define CHIP_PRINTCLUSTER_APPLIANCE_EVENTS_AND_ALERT_CLUSTER #endif + #if defined(ZCL_USING_APPLIANCE_STATISTICS_CLUSTER_SERVER) || defined(ZCL_USING_APPLIANCE_STATISTICS_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_APPLIANCE_STATISTICS_CLUSTER { ZCL_APPLIANCE_STATISTICS_CLUSTER_ID, 0x0000, "Appliance Statistics" }, +#define CHIP_PRINTCLUSTER_APPLIANCE_STATISTICS_CLUSTER { ZCL_APPLIANCE_STATISTICS_CLUSTER_ID, 2819, "Appliance Statistics" }, #else -#define SILABS_PRINTCLUSTER_APPLIANCE_STATISTICS_CLUSTER +#define CHIP_PRINTCLUSTER_APPLIANCE_STATISTICS_CLUSTER #endif + #if defined(ZCL_USING_ELECTRICAL_MEASUREMENT_CLUSTER_SERVER) || defined(ZCL_USING_ELECTRICAL_MEASUREMENT_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ELECTRICAL_MEASUREMENT_CLUSTER \ - { ZCL_ELECTRICAL_MEASUREMENT_CLUSTER_ID, 0x0000, "Electrical Measurement" }, +#define CHIP_PRINTCLUSTER_ELECTRICAL_MEASUREMENT_CLUSTER { ZCL_ELECTRICAL_MEASUREMENT_CLUSTER_ID, 2820, "Electrical Measurement" }, #else -#define SILABS_PRINTCLUSTER_ELECTRICAL_MEASUREMENT_CLUSTER +#define CHIP_PRINTCLUSTER_ELECTRICAL_MEASUREMENT_CLUSTER #endif + #if defined(ZCL_USING_DIAGNOSTICS_CLUSTER_SERVER) || defined(ZCL_USING_DIAGNOSTICS_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_DIAGNOSTICS_CLUSTER { ZCL_DIAGNOSTICS_CLUSTER_ID, 0x0000, "Diagnostics" }, +#define CHIP_PRINTCLUSTER_DIAGNOSTICS_CLUSTER { ZCL_DIAGNOSTICS_CLUSTER_ID, 2821, "Diagnostics" }, #else -#define SILABS_PRINTCLUSTER_DIAGNOSTICS_CLUSTER +#define CHIP_PRINTCLUSTER_DIAGNOSTICS_CLUSTER #endif + #if defined(ZCL_USING_ZLL_COMMISSIONING_CLUSTER_SERVER) || defined(ZCL_USING_ZLL_COMMISSIONING_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_ZLL_COMMISSIONING_CLUSTER { ZCL_ZLL_COMMISSIONING_CLUSTER_ID, 0x0000, "ZLL Commissioning" }, +#define CHIP_PRINTCLUSTER_ZLL_COMMISSIONING_CLUSTER { ZCL_ZLL_COMMISSIONING_CLUSTER_ID, 4096, "ZLL Commissioning" }, #else -#define SILABS_PRINTCLUSTER_ZLL_COMMISSIONING_CLUSTER +#define CHIP_PRINTCLUSTER_ZLL_COMMISSIONING_CLUSTER #endif + #if defined(ZCL_USING_SAMPLE_MFG_SPECIFIC_CLUSTER_SERVER) || defined(ZCL_USING_SAMPLE_MFG_SPECIFIC_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER \ - { ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_ID, 0x1002, "Sample Mfg Specific Cluster" }, +#define CHIP_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER { ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_ID, 64512, "Sample Mfg Specific Cluster" }, #else -#define SILABS_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER +#define CHIP_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER #endif + #if defined(ZCL_USING_SAMPLE_MFG_SPECIFIC_CLUSTER_2_SERVER) || defined(ZCL_USING_SAMPLE_MFG_SPECIFIC_CLUSTER_2_CLIENT) -#define SILABS_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER_2 \ - { ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_2_ID, 0x1049, "Sample Mfg Specific Cluster 2" }, +#define CHIP_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER_2 \ + { ZCL_SAMPLE_MFG_SPECIFIC_CLUSTER_2_ID, 64512, "Sample Mfg Specific Cluster 2" }, #else -#define SILABS_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER_2 +#define CHIP_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER_2 #endif + #if defined(ZCL_USING_OTA_CONFIGURATION_CLUSTER_SERVER) || defined(ZCL_USING_OTA_CONFIGURATION_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_OTA_CONFIGURATION_CLUSTER { ZCL_OTA_CONFIGURATION_CLUSTER_ID, 0x1002, "Configuration Cluster" }, +#define CHIP_PRINTCLUSTER_OTA_CONFIGURATION_CLUSTER { ZCL_OTA_CONFIGURATION_CLUSTER_ID, 64513, "Configuration Cluster" }, #else -#define SILABS_PRINTCLUSTER_OTA_CONFIGURATION_CLUSTER +#define CHIP_PRINTCLUSTER_OTA_CONFIGURATION_CLUSTER #endif + #if defined(ZCL_USING_MFGLIB_CLUSTER_SERVER) || defined(ZCL_USING_MFGLIB_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_MFGLIB_CLUSTER { ZCL_MFGLIB_CLUSTER_ID, 0x1002, "MFGLIB Cluster" }, +#define CHIP_PRINTCLUSTER_MFGLIB_CLUSTER { ZCL_MFGLIB_CLUSTER_ID, 64514, "MFGLIB Cluster" }, #else -#define SILABS_PRINTCLUSTER_MFGLIB_CLUSTER +#define CHIP_PRINTCLUSTER_MFGLIB_CLUSTER #endif + #if defined(ZCL_USING_SL_WWAH_CLUSTER_SERVER) || defined(ZCL_USING_SL_WWAH_CLUSTER_CLIENT) -#define SILABS_PRINTCLUSTER_SL_WWAH_CLUSTER { ZCL_SL_WWAH_CLUSTER_ID, 0x1217, "SL Works With All Hubs" }, +#define CHIP_PRINTCLUSTER_SL_WWAH_CLUSTER { ZCL_SL_WWAH_CLUSTER_ID, 64599, "SL Works With All Hubs" }, #else -#define SILABS_PRINTCLUSTER_SL_WWAH_CLUSTER +#define CHIP_PRINTCLUSTER_SL_WWAH_CLUSTER #endif + #define CLUSTER_IDS_TO_NAMES \ - SILABS_PRINTCLUSTER_BASIC_CLUSTER \ - SILABS_PRINTCLUSTER_POWER_CONFIG_CLUSTER \ - SILABS_PRINTCLUSTER_DEVICE_TEMP_CLUSTER \ - SILABS_PRINTCLUSTER_IDENTIFY_CLUSTER \ - SILABS_PRINTCLUSTER_GROUPS_CLUSTER \ - SILABS_PRINTCLUSTER_SCENES_CLUSTER \ - SILABS_PRINTCLUSTER_ON_OFF_CLUSTER \ - SILABS_PRINTCLUSTER_ON_OFF_SWITCH_CONFIG_CLUSTER \ - SILABS_PRINTCLUSTER_LEVEL_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_ALARM_CLUSTER \ - SILABS_PRINTCLUSTER_TIME_CLUSTER \ - SILABS_PRINTCLUSTER_RSSI_LOCATION_CLUSTER \ - SILABS_PRINTCLUSTER_BINARY_INPUT_BASIC_CLUSTER \ - SILABS_PRINTCLUSTER_COMMISSIONING_CLUSTER \ - SILABS_PRINTCLUSTER_PARTITION_CLUSTER \ - SILABS_PRINTCLUSTER_OTA_BOOTLOAD_CLUSTER \ - SILABS_PRINTCLUSTER_POWER_PROFILE_CLUSTER \ - SILABS_PRINTCLUSTER_APPLIANCE_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_POLL_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_GREEN_POWER_CLUSTER \ - SILABS_PRINTCLUSTER_KEEPALIVE_CLUSTER \ - SILABS_PRINTCLUSTER_SHADE_CONFIG_CLUSTER \ - SILABS_PRINTCLUSTER_DOOR_LOCK_CLUSTER \ - SILABS_PRINTCLUSTER_WINDOW_COVERING_CLUSTER \ - SILABS_PRINTCLUSTER_BARRIER_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_PUMP_CONFIG_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_THERMOSTAT_CLUSTER \ - SILABS_PRINTCLUSTER_FAN_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_DEHUMID_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_THERMOSTAT_UI_CONFIG_CLUSTER \ - SILABS_PRINTCLUSTER_COLOR_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_BALLAST_CONFIGURATION_CLUSTER \ - SILABS_PRINTCLUSTER_ILLUM_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_ILLUM_LEVEL_SENSING_CLUSTER \ - SILABS_PRINTCLUSTER_TEMP_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_PRESSURE_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_FLOW_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_OCCUPANCY_SENSING_CLUSTER \ - SILABS_PRINTCLUSTER_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_IAS_ZONE_CLUSTER \ - SILABS_PRINTCLUSTER_IAS_ACE_CLUSTER \ - SILABS_PRINTCLUSTER_IAS_WD_CLUSTER \ - SILABS_PRINTCLUSTER_GENERIC_TUNNEL_CLUSTER \ - SILABS_PRINTCLUSTER_BACNET_PROTOCOL_TUNNEL_CLUSTER \ - SILABS_PRINTCLUSTER_11073_PROTOCOL_TUNNEL_CLUSTER \ - SILABS_PRINTCLUSTER_ISO7816_PROTOCOL_TUNNEL_CLUSTER \ - SILABS_PRINTCLUSTER_PRICE_CLUSTER \ - SILABS_PRINTCLUSTER_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_SIMPLE_METERING_CLUSTER \ - SILABS_PRINTCLUSTER_MESSAGING_CLUSTER \ - SILABS_PRINTCLUSTER_TUNNELING_CLUSTER \ - SILABS_PRINTCLUSTER_PREPAYMENT_CLUSTER \ - SILABS_PRINTCLUSTER_ENERGY_MANAGEMENT_CLUSTER \ - SILABS_PRINTCLUSTER_CALENDAR_CLUSTER \ - SILABS_PRINTCLUSTER_DEVICE_MANAGEMENT_CLUSTER \ - SILABS_PRINTCLUSTER_EVENTS_CLUSTER \ - SILABS_PRINTCLUSTER_MDU_PAIRING_CLUSTER \ - SILABS_PRINTCLUSTER_SUB_GHZ_CLUSTER \ - SILABS_PRINTCLUSTER_KEY_ESTABLISHMENT_CLUSTER \ - SILABS_PRINTCLUSTER_INFORMATION_CLUSTER \ - SILABS_PRINTCLUSTER_DATA_SHARING_CLUSTER \ - SILABS_PRINTCLUSTER_GAMING_CLUSTER \ - SILABS_PRINTCLUSTER_DATA_RATE_CONTROL_CLUSTER \ - SILABS_PRINTCLUSTER_VOICE_OVER_ZIGBEE_CLUSTER \ - SILABS_PRINTCLUSTER_CHATTING_CLUSTER \ - SILABS_PRINTCLUSTER_PAYMENT_CLUSTER \ - SILABS_PRINTCLUSTER_BILLING_CLUSTER \ - SILABS_PRINTCLUSTER_APPLIANCE_IDENTIFICATION_CLUSTER \ - SILABS_PRINTCLUSTER_METER_IDENTIFICATION_CLUSTER \ - SILABS_PRINTCLUSTER_APPLIANCE_EVENTS_AND_ALERT_CLUSTER \ - SILABS_PRINTCLUSTER_APPLIANCE_STATISTICS_CLUSTER \ - SILABS_PRINTCLUSTER_ELECTRICAL_MEASUREMENT_CLUSTER \ - SILABS_PRINTCLUSTER_DIAGNOSTICS_CLUSTER \ - SILABS_PRINTCLUSTER_ZLL_COMMISSIONING_CLUSTER \ - SILABS_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER \ - SILABS_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER_2 \ - SILABS_PRINTCLUSTER_OTA_CONFIGURATION_CLUSTER \ - SILABS_PRINTCLUSTER_MFGLIB_CLUSTER \ - SILABS_PRINTCLUSTER_SL_WWAH_CLUSTER + CHIP_PRINTCLUSTER_BASIC_CLUSTER \ + CHIP_PRINTCLUSTER_POWER_CONFIG_CLUSTER \ + CHIP_PRINTCLUSTER_DEVICE_TEMP_CLUSTER \ + CHIP_PRINTCLUSTER_IDENTIFY_CLUSTER \ + CHIP_PRINTCLUSTER_GROUPS_CLUSTER \ + CHIP_PRINTCLUSTER_SCENES_CLUSTER \ + CHIP_PRINTCLUSTER_ON_OFF_CLUSTER \ + CHIP_PRINTCLUSTER_ON_OFF_SWITCH_CONFIG_CLUSTER \ + CHIP_PRINTCLUSTER_LEVEL_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_ALARM_CLUSTER \ + CHIP_PRINTCLUSTER_TIME_CLUSTER \ + CHIP_PRINTCLUSTER_RSSI_LOCATION_CLUSTER \ + CHIP_PRINTCLUSTER_BINARY_INPUT_BASIC_CLUSTER \ + CHIP_PRINTCLUSTER_COMMISSIONING_CLUSTER \ + CHIP_PRINTCLUSTER_PARTITION_CLUSTER \ + CHIP_PRINTCLUSTER_OTA_BOOTLOAD_CLUSTER \ + CHIP_PRINTCLUSTER_POWER_PROFILE_CLUSTER \ + CHIP_PRINTCLUSTER_APPLIANCE_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_POLL_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_GREEN_POWER_CLUSTER \ + CHIP_PRINTCLUSTER_KEEPALIVE_CLUSTER \ + CHIP_PRINTCLUSTER_SHADE_CONFIG_CLUSTER \ + CHIP_PRINTCLUSTER_DOOR_LOCK_CLUSTER \ + CHIP_PRINTCLUSTER_WINDOW_COVERING_CLUSTER \ + CHIP_PRINTCLUSTER_BARRIER_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_PUMP_CONFIG_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_THERMOSTAT_CLUSTER \ + CHIP_PRINTCLUSTER_FAN_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_DEHUMID_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_THERMOSTAT_UI_CONFIG_CLUSTER \ + CHIP_PRINTCLUSTER_COLOR_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_BALLAST_CONFIGURATION_CLUSTER \ + CHIP_PRINTCLUSTER_ILLUM_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_ILLUM_LEVEL_SENSING_CLUSTER \ + CHIP_PRINTCLUSTER_TEMP_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_PRESSURE_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_FLOW_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_RELATIVE_HUMIDITY_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_OCCUPANCY_SENSING_CLUSTER \ + CHIP_PRINTCLUSTER_CARBON_MONOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_CARBON_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_ETHYLENE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_ETHYLENE_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_HYDROGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_HYDROGEN_SULPHIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_NITRIC_OXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_NITROGEN_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_OZONE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_SULFUR_DIOXIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_DISSOLVED_OXYGEN_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_BROMATE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_CHLORAMINES_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_CHLORINE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_FECAL_COLIFORM_AND_E_COLI_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_FLUORIDE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_HALOACETIC_ACIDS_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_TOTAL_TRIHALOMETHANES_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_TOTAL_COLIFORM_BACTERIA_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_TURBIDITY_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_COPPER_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_LEAD_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_MANGANESE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_SULFATE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_BROMODICHLOROMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_BROMOFORM_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_CHLORODIBROMOMETHANE_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_CHLOROFORM_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_SODIUM_CONCENTRATION_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_IAS_ZONE_CLUSTER \ + CHIP_PRINTCLUSTER_IAS_ACE_CLUSTER \ + CHIP_PRINTCLUSTER_IAS_WD_CLUSTER \ + CHIP_PRINTCLUSTER_GENERIC_TUNNEL_CLUSTER \ + CHIP_PRINTCLUSTER_BACNET_PROTOCOL_TUNNEL_CLUSTER \ + CHIP_PRINTCLUSTER_11073_PROTOCOL_TUNNEL_CLUSTER \ + CHIP_PRINTCLUSTER_ISO7816_PROTOCOL_TUNNEL_CLUSTER \ + CHIP_PRINTCLUSTER_PRICE_CLUSTER \ + CHIP_PRINTCLUSTER_DEMAND_RESPONSE_LOAD_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_SIMPLE_METERING_CLUSTER \ + CHIP_PRINTCLUSTER_MESSAGING_CLUSTER \ + CHIP_PRINTCLUSTER_TUNNELING_CLUSTER \ + CHIP_PRINTCLUSTER_PREPAYMENT_CLUSTER \ + CHIP_PRINTCLUSTER_ENERGY_MANAGEMENT_CLUSTER \ + CHIP_PRINTCLUSTER_CALENDAR_CLUSTER \ + CHIP_PRINTCLUSTER_DEVICE_MANAGEMENT_CLUSTER \ + CHIP_PRINTCLUSTER_EVENTS_CLUSTER \ + CHIP_PRINTCLUSTER_MDU_PAIRING_CLUSTER \ + CHIP_PRINTCLUSTER_SUB_GHZ_CLUSTER \ + CHIP_PRINTCLUSTER_KEY_ESTABLISHMENT_CLUSTER \ + CHIP_PRINTCLUSTER_INFORMATION_CLUSTER \ + CHIP_PRINTCLUSTER_DATA_SHARING_CLUSTER \ + CHIP_PRINTCLUSTER_GAMING_CLUSTER \ + CHIP_PRINTCLUSTER_DATA_RATE_CONTROL_CLUSTER \ + CHIP_PRINTCLUSTER_VOICE_OVER_ZIGBEE_CLUSTER \ + CHIP_PRINTCLUSTER_CHATTING_CLUSTER \ + CHIP_PRINTCLUSTER_PAYMENT_CLUSTER \ + CHIP_PRINTCLUSTER_BILLING_CLUSTER \ + CHIP_PRINTCLUSTER_APPLIANCE_IDENTIFICATION_CLUSTER \ + CHIP_PRINTCLUSTER_METER_IDENTIFICATION_CLUSTER \ + CHIP_PRINTCLUSTER_APPLIANCE_EVENTS_AND_ALERT_CLUSTER \ + CHIP_PRINTCLUSTER_APPLIANCE_STATISTICS_CLUSTER \ + CHIP_PRINTCLUSTER_ELECTRICAL_MEASUREMENT_CLUSTER \ + CHIP_PRINTCLUSTER_DIAGNOSTICS_CLUSTER \ + CHIP_PRINTCLUSTER_ZLL_COMMISSIONING_CLUSTER \ + CHIP_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER \ + CHIP_PRINTCLUSTER_SAMPLE_MFG_SPECIFIC_CLUSTER_2 \ + CHIP_PRINTCLUSTER_OTA_CONFIGURATION_CLUSTER \ + CHIP_PRINTCLUSTER_MFGLIB_CLUSTER \ + CHIP_PRINTCLUSTER_SL_WWAH_CLUSTER #define MAX_CLUSTER_NAME_LENGTH 52 -#endif // SILABS_PRINT_CLUSTER diff --git a/examples/lighting-app/linux/main.cpp b/examples/lighting-app/linux/main.cpp index 96e2b55d1308aa..a25e0e07607516 100644 --- a/examples/lighting-app/linux/main.cpp +++ b/examples/lighting-app/linux/main.cpp @@ -71,23 +71,22 @@ void emberAfPostAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId } } -/** @brief Cluster Init +/** @brief OnOff Cluster Init * * This function is called when a specific cluster is initialized. It gives the * application an opportunity to take care of cluster initialization procedures. * It is called exactly once for each endpoint where cluster is present. * * @param endpoint Ver.: always - * @param clusterId Ver.: always * * TODO Issue #3841 - * emberAfClusterInitCallback happens before the stack initialize the cluster + * emberAfOnOffClusterInitCallback happens before the stack initialize the cluster * attributes to the default value. * The logic here expects something similar to the deprecated Plugins callback * emberAfPluginOnOffClusterServerPostInitCallback. * */ -void emberAfClusterInitCallback(EndpointId endpoint, ClusterId clusterId) +void emberAfOnOffClusterInitCallback(EndpointId endpoint) { // TODO: implement any additional Cluster Server init actions } diff --git a/examples/lighting-app/nrfconnect/main/ZclCallbacks.cpp b/examples/lighting-app/nrfconnect/main/ZclCallbacks.cpp index 7e442931832065..cd08fb75e91901 100644 --- a/examples/lighting-app/nrfconnect/main/ZclCallbacks.cpp +++ b/examples/lighting-app/nrfconnect/main/ZclCallbacks.cpp @@ -69,26 +69,22 @@ void emberAfPostAttributeChangeCallback(EndpointId endpoint, ClusterId clusterId } } -/** @brief Cluster Init +/** @brief OnOff Cluster Init * * This function is called when a specific cluster is initialized. It gives the * application an opportunity to take care of cluster initialization procedures. * It is called exactly once for each endpoint where cluster is present. * * @param endpoint Ver.: always - * @param clusterId Ver.: always * * TODO Issue #3841 - * emberAfClusterInitCallback happens before the stack initialize the cluster + * emberAfOnOffClusterInitCallback happens before the stack initialize the cluster * attributes to the default value. * The logic here expects something similar to the deprecated Plugins callback * emberAfPluginOnOffClusterServerPostInitCallback. * */ -void emberAfClusterInitCallback(EndpointId endpoint, ClusterId clusterId) +void emberAfOnOffClusterInitCallback(EndpointId endpoint) { - if (clusterId == ZCL_ON_OFF_CLUSTER_ID) - { - GetAppTask().UpdateClusterState(); - } + GetAppTask().UpdateClusterState(); }