Logo
DSR GreenBOSS  1.1.0
Macros
Zigbee Cluster Common Definitions

Macros

#define ZB_ZCL_PACKET_PUT_DATA8(ptr, val)
 Puts 8-bit value to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA16(ptr, val)
 Puts 16-bit value to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA32_VAL(ptr, val)
 Puts 32-bit value to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA32(ptr, val)
 Puts 32-bit value to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA48_VAL(ptr, val)
 Puts 48-bit value to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA48(ptr, val)
 Puts 48-bit value to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA24_VAL(ptr, val)
 Puts 24-bit value to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA24(ptr, val)
 Puts 24-bit value to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA64(ptr, val)
 Puts 64-bit value to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA_N(ptr, val, n)   (ZB_MEMCPY(ptr, val, n), (ptr) += (n))
 Puts N byte data to the packet. More...
 
#define ZB_ZCL_PACKET_PUT_DATA_N(ptr, val, n)   (ZB_MEMCPY(ptr, val, n), (ptr) += (n))
 Puts N byte data to the packet. More...
 
#define ZB_ZCL_PACKET_GET_DATA8(dst_ptr, src_ptr)
 Get 8-bit value from packet. More...
 
#define ZB_ZCL_PACKET_GET_DATA16(dst_ptr, src_ptr)
 Get 16-bit value from packet. More...
 
#define ZB_ZCL_PACKET_GET_DATA24(dst_ptr, src_ptr)
 Get 24-bit value from packet. More...
 
#define ZB_ZCL_PACKET_GET_DATA48(dst_ptr, src_ptr)
 Get 48-bit value from packet. More...
 
#define ZB_ZCL_PACKET_GET_DATA32(dst_ptr, src_ptr)
 Get 32-bit value from packet. More...
 
#define ZB_ZCL_PACKET_GET_DATA64(dst_ptr, src_ptr)
 Get 64-bit value from packet. More...
 
#define ZB_ZCL_PACKET_GET_DATA_N(dst_ptr, src_ptr, n)
 Get N-byte value from packet. More...
 
#define ZB_ZCL_CLUSTER_REVISION_DEFAULT   1
 ZCL 6.0: Default value for cluster revision global attribute, see zcl_attr_global. More...
 

ZCL cluster identifiers

See also
ZCL spec, subclause 2.2.2
#define ZB_ZCL_CLUSTER_ID_BASIC   0x0000U
 
#define ZB_ZCL_CLUSTER_ID_POWER_CONFIG   0x0001U
 
#define ZB_ZCL_CLUSTER_ID_DEVICE_TEMP_CONFIG   0x0002U
 
#define ZB_ZCL_CLUSTER_ID_IDENTIFY   0x0003U
 
#define ZB_ZCL_CLUSTER_ID_GROUPS   0x0004U
 
#define ZB_ZCL_CLUSTER_ID_SCENES   0x0005U
 
#define ZB_ZCL_CLUSTER_ID_ON_OFF   0x0006U
 
#define ZB_ZCL_CLUSTER_ID_ON_OFF_SWITCH_CONFIG   0x0007U
 
#define ZB_ZCL_CLUSTER_ID_LEVEL_CONTROL   0x0008U
 
#define ZB_ZCL_CLUSTER_ID_ALARMS   0x0009U
 
#define ZB_ZCL_CLUSTER_ID_TIME   0x000aU
 
#define ZB_ZCL_CLUSTER_ID_RSSI_LOCATION   0x000bU
 
#define ZB_ZCL_CLUSTER_ID_ANALOG_INPUT   0x000cU
 
#define ZB_ZCL_CLUSTER_ID_ANALOG_OUTPUT   0x000dU
 
#define ZB_ZCL_CLUSTER_ID_ANALOG_VALUE   0x000eU
 
#define ZB_ZCL_CLUSTER_ID_BINARY_INPUT   0x000fU
 
#define ZB_ZCL_CLUSTER_ID_BINARY_OUTPUT   0x0010U
 
#define ZB_ZCL_CLUSTER_ID_BINARY_VALUE   0x0011U
 
#define ZB_ZCL_CLUSTER_ID_MULTI_INPUT   0x0012U
 
#define ZB_ZCL_CLUSTER_ID_MULTI_OUTPUT   0x0013U
 
#define ZB_ZCL_CLUSTER_ID_MULTI_VALUE   0x0014U
 
#define ZB_ZCL_CLUSTER_ID_COMMISSIONING   0x0015U
 
#define ZB_ZCL_CLUSTER_ID_OTA_UPGRADE   0x0019U
 
#define ZB_ZCL_CLUSTER_ID_POLL_CONTROL   0x0020U
 
#define ZB_ZCL_CLUSTER_ID_GREEN_POWER   0x0021U
 
#define ZB_ZCL_CLUSTER_ID_KEEP_ALIVE   0x0025U
 
#define ZB_ZCL_CLUSTER_ID_SHADE_CONFIG   0x0100U
 
#define ZB_ZCL_CLUSTER_ID_DOOR_LOCK   0x0101U
 
#define ZB_ZCL_CLUSTER_ID_WINDOW_COVERING   0x0102U
 
#define ZB_ZCL_CLUSTER_ID_PUMP_CONFIG_CONTROL   0x200U
 
#define ZB_ZCL_CLUSTER_ID_THERMOSTAT   0x201U
 
#define ZB_ZCL_CLUSTER_ID_FAN_CONTROL   0x202U
 
#define ZB_ZCL_CLUSTER_ID_DEHUMID_CONTROL   0x203U
 
#define ZB_ZCL_CLUSTER_ID_THERMOSTAT_UI_CONFIG   0x204U
 
#define ZB_ZCL_CLUSTER_ID_COLOR_CONTROL   0x0300U
 
#define ZB_ZCL_CLUSTER_ID_BALLAST_CONFIG   0x0301U
 
#define ZB_ZCL_CLUSTER_ID_ILLUMINANCE_MEASUREMENT   0x0400U
 
#define ZB_ZCL_CLUSTER_ID_TEMP_MEASUREMENT   0x0402U
 
#define ZB_ZCL_CLUSTER_ID_PRESSURE_MEASUREMENT   0x0403U
 
#define ZB_ZCL_CLUSTER_ID_REL_HUMIDITY_MEASUREMENT   0x0405U
 
#define ZB_ZCL_CLUSTER_ID_OCCUPANCY_SENSING   0x0406U
 
#define ZB_ZCL_CLUSTER_ID_CARBON_DIOXIDE_MEASUREMENT   0x040DU
 
#define ZB_ZCL_CLUSTER_ID_PM2_5_MEASUREMENT   0x042AU
 
#define ZB_ZCL_CLUSTER_ID_IAS_ZONE   0x0500U
 
#define ZB_ZCL_CLUSTER_ID_IAS_ACE   0x0501U
 
#define ZB_ZCL_CLUSTER_ID_IAS_WD   0x0502U
 
#define ZB_ZCL_CLUSTER_ID_PRICE   0x0700U
 
#define ZB_ZCL_CLUSTER_ID_DRLC   0x0701U
 
#define ZB_ZCL_CLUSTER_ID_METERING   0x0702U
 
#define ZB_ZCL_CLUSTER_ID_MESSAGING   0x0703U
 
#define ZB_ZCL_CLUSTER_ID_TUNNELING   0x0704U
 
#define ZB_ZCL_CLUSTER_ID_PREPAYMENT   0x0705U
 
#define ZB_ZCL_CLUSTER_ID_ENERGY_MANAGEMENT   0x0706U
 
#define ZB_ZCL_CLUSTER_ID_CALENDAR   0x0707U
 
#define ZB_ZCL_CLUSTER_ID_DEVICE_MANAGEMENT   0x0708U
 
#define ZB_ZCL_CLUSTER_ID_EVENTS   0x0709U
 
#define ZB_ZCL_CLUSTER_ID_MDU_PAIRING   0x070AU
 
#define ZB_ZCL_CLUSTER_ID_SUB_GHZ   0x070BU
 
#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE   0x070DU
 
#define ZB_ZCL_CLUSTER_ID_KEY_ESTABLISHMENT   0x0800U
 
#define ZB_ZCL_CLUSTER_ID_APPLIANCE_EVENTS_AND_ALERTS   0x0b02U
 
#define ZB_ZCL_CLUSTER_ID_ELECTRICAL_MEASUREMENT   0x0b04U
 
#define ZB_ZCL_CLUSTER_ID_DIAGNOSTICS   0x0b05U
 
#define ZB_ZCL_CLUSTER_ID_WWAH   0xFC57U
 
#define ZB_ZCL_CLUSTER_ID_TUNNEL   0xfc00U
 
#define ZB_ZCL_CLUSTER_ID_IR_BLASTER   0xfc01U
 
#define ZB_ZCL_CLUSTER_ID_CUSTOM_ATTR   0xffeeU
 
#define ZB_ZCL_CLUSTER_ID_METER_IDENTIFICATION   0x0B01U
 

ZCL attribute data type values

Note
The enumeration is not full, and does not contain ZCL types not used in HA profile.
See also
ZCL spec., subclause 2.5.2, Table 2-10. Data Types
#define ZB_ZCL_ATTR_TYPE_NULL   0x00U
 
#define ZB_ZCL_ATTR_TYPE_8BIT   0x08U
 
#define ZB_ZCL_ATTR_TYPE_16BIT   0x09U
 
#define ZB_ZCL_ATTR_TYPE_24BIT   0x0aU
 
#define ZB_ZCL_ATTR_TYPE_32BIT   0x0bU
 
#define ZB_ZCL_ATTR_TYPE_40BIT   0x0cU
 
#define ZB_ZCL_ATTR_TYPE_48BIT   0x0dU
 
#define ZB_ZCL_ATTR_TYPE_56BIT   0x0eU
 
#define ZB_ZCL_ATTR_TYPE_64BIT   0x0fU
 
#define ZB_ZCL_ATTR_TYPE_BOOL   0x10U
 
#define ZB_ZCL_ATTR_TYPE_8BITMAP   0x18U
 
#define ZB_ZCL_ATTR_TYPE_16BITMAP   0x19U
 
#define ZB_ZCL_ATTR_TYPE_24BITMAP   0x1aU
 
#define ZB_ZCL_ATTR_TYPE_32BITMAP   0x1bU
 
#define ZB_ZCL_ATTR_TYPE_40BITMAP   0x1cU
 
#define ZB_ZCL_ATTR_TYPE_48BITMAP   0x1dU
 
#define ZB_ZCL_ATTR_TYPE_56BITMAP   0x1eU
 
#define ZB_ZCL_ATTR_TYPE_64BITMAP   0x1fU
 
#define ZB_ZCL_ATTR_TYPE_U8   0x20U
 
#define ZB_ZCL_ATTR_TYPE_U16   0x21U
 
#define ZB_ZCL_ATTR_TYPE_U24   0x22U
 
#define ZB_ZCL_ATTR_TYPE_U32   0x23U
 
#define ZB_ZCL_ATTR_TYPE_U40   0x24U
 
#define ZB_ZCL_ATTR_TYPE_U48   0x25U
 
#define ZB_ZCL_ATTR_TYPE_U56   0x26U
 
#define ZB_ZCL_ATTR_TYPE_U64   0x27U
 
#define ZB_ZCL_ATTR_TYPE_S8   0x28U
 
#define ZB_ZCL_ATTR_TYPE_S16   0x29U
 
#define ZB_ZCL_ATTR_TYPE_S24   0x2aU
 
#define ZB_ZCL_ATTR_TYPE_S32   0x2bU
 
#define ZB_ZCL_ATTR_TYPE_S40   0x2cU
 
#define ZB_ZCL_ATTR_TYPE_S48   0x2dU
 
#define ZB_ZCL_ATTR_TYPE_S56   0x2eU
 
#define ZB_ZCL_ATTR_TYPE_S64   0x2fU
 
#define ZB_ZCL_ATTR_TYPE_8BIT_ENUM   0x30U
 
#define ZB_ZCL_ATTR_TYPE_16BIT_ENUM   0x31U
 
#define ZB_ZCL_ATTR_TYPE_SEMI   0x38U
 
#define ZB_ZCL_ATTR_TYPE_SINGLE   0x39U
 
#define ZB_ZCL_ATTR_TYPE_DOUBLE   0x3aU
 
#define ZB_ZCL_ATTR_TYPE_OCTET_STRING   0x41U
 
#define ZB_ZCL_ATTR_TYPE_CHAR_STRING   0x42U
 
#define ZB_ZCL_ATTR_TYPE_LONG_OCTET_STRING   0x43U
 
#define ZB_ZCL_ATTR_TYPE_LONG_CHAR_STRING   0x44U
 
#define ZB_ZCL_ATTR_TYPE_ARRAY   0x48U
 
#define ZB_ZCL_ATTR_TYPE_STRUCTURE   0x4cU
 
#define ZB_ZCL_ATTR_TYPE_SET   0x50U
 
#define ZB_ZCL_ATTR_TYPE_BAG   0x51U
 
#define ZB_ZCL_ATTR_TYPE_TIME_OF_DAY   0xe0U
 
#define ZB_ZCL_ATTR_TYPE_DATE   0xe1U
 
#define ZB_ZCL_ATTR_TYPE_UTC_TIME   0xe2U
 
#define ZB_ZCL_ATTR_TYPE_CLUSTER_ID   0xe8U
 
#define ZB_ZCL_ATTR_TYPE_ATTRIBUTE_ID   0xe9U
 
#define ZB_ZCL_ATTR_TYPE_BACNET_OID   0xeaU
 
#define ZB_ZCL_ATTR_TYPE_IEEE_ADDR   0xf0U
 
#define ZB_ZCL_ATTR_TYPE_128_BIT_KEY   0xf1U
 
#define ZB_ZCL_ATTR_TYPE_CUSTOM_32ARRAY   0x4aU
 Custom array of 32 elements data type (now is equal to ZB_ZCL_ATTR_TYPE_ARRAY). More...
 
#define ZB_ZCL_ATTR_TYPE_INVALID   0xffU
 

Global attributes that are included to each cluster

See also
ZCL spec - 6.0
#define ZB_ZCL_ATTR_GLOBAL_CLUSTER_REVISION_ID   0xfffdU
 
#define ZB_ZCL_ATTR_GLOBAL_ATTRIBUTE_REPORTING_STATUS_ID   0xfffeU
 

ZCL attribute access values

#define ZB_ZCL_ATTR_ACCESS_READ_ONLY   0x01U
 
#define ZB_ZCL_ATTR_ACCESS_WRITE_ONLY   0x02U
 
#define ZB_ZCL_ATTR_ACCESS_READ_WRITE   (ZB_ZCL_ATTR_ACCESS_READ_ONLY | ZB_ZCL_ATTR_ACCESS_WRITE_ONLY)
 Attribute is read/write. More...
 
#define ZB_ZCL_ATTR_ACCESS_REPORTING   0x04U
 
#define ZB_ZCL_ATTR_ACCESS_SINGLETON   0x08U
 
#define ZB_ZCL_ATTR_ACCESS_SCENE   0x10U
 
#define ZB_ZCL_ATTR_MANUF_SPEC   0x20U
 
#define ZB_ZCL_ATTR_ACCESS_INTERNAL   0x40U
 

Detailed Description

Macro Definition Documentation

§ ZB_ZCL_CLUSTER_ID_BASIC

#define ZB_ZCL_CLUSTER_ID_BASIC   0x0000U

Basic cluster identifier.

§ ZB_ZCL_CLUSTER_ID_POWER_CONFIG

#define ZB_ZCL_CLUSTER_ID_POWER_CONFIG   0x0001U

Power configuration cluster identifier.

§ ZB_ZCL_CLUSTER_ID_DEVICE_TEMP_CONFIG

#define ZB_ZCL_CLUSTER_ID_DEVICE_TEMP_CONFIG   0x0002U

Device temperature configuration cluster identifier.

§ ZB_ZCL_CLUSTER_ID_IDENTIFY

#define ZB_ZCL_CLUSTER_ID_IDENTIFY   0x0003U

Identify cluster identifier.

§ ZB_ZCL_CLUSTER_ID_GROUPS

#define ZB_ZCL_CLUSTER_ID_GROUPS   0x0004U

Groups cluster identifier.

§ ZB_ZCL_CLUSTER_ID_SCENES

#define ZB_ZCL_CLUSTER_ID_SCENES   0x0005U

Scenes cluster identifier.

§ ZB_ZCL_CLUSTER_ID_ON_OFF

#define ZB_ZCL_CLUSTER_ID_ON_OFF   0x0006U

On/Off cluster identifier.

§ ZB_ZCL_CLUSTER_ID_ON_OFF_SWITCH_CONFIG

#define ZB_ZCL_CLUSTER_ID_ON_OFF_SWITCH_CONFIG   0x0007U

On/Off switch configuration cluster identifier.

§ ZB_ZCL_CLUSTER_ID_LEVEL_CONTROL

#define ZB_ZCL_CLUSTER_ID_LEVEL_CONTROL   0x0008U

Level control cluster identifier.

§ ZB_ZCL_CLUSTER_ID_ALARMS

#define ZB_ZCL_CLUSTER_ID_ALARMS   0x0009U

Alarms cluster identifier.

§ ZB_ZCL_CLUSTER_ID_TIME

#define ZB_ZCL_CLUSTER_ID_TIME   0x000aU

Time cluster identifier.

§ ZB_ZCL_CLUSTER_ID_RSSI_LOCATION

#define ZB_ZCL_CLUSTER_ID_RSSI_LOCATION   0x000bU

RSSI location cluster identifier.

§ ZB_ZCL_CLUSTER_ID_ANALOG_INPUT

#define ZB_ZCL_CLUSTER_ID_ANALOG_INPUT   0x000cU

Analog input (basic) cluster identifier.

§ ZB_ZCL_CLUSTER_ID_ANALOG_OUTPUT

#define ZB_ZCL_CLUSTER_ID_ANALOG_OUTPUT   0x000dU

Analog output (basic) cluster identifier.

§ ZB_ZCL_CLUSTER_ID_ANALOG_VALUE

#define ZB_ZCL_CLUSTER_ID_ANALOG_VALUE   0x000eU

Analog value (basic) cluster identifier.

§ ZB_ZCL_CLUSTER_ID_BINARY_INPUT

#define ZB_ZCL_CLUSTER_ID_BINARY_INPUT   0x000fU

Binary input (basic) cluster identifier.

§ ZB_ZCL_CLUSTER_ID_BINARY_OUTPUT

#define ZB_ZCL_CLUSTER_ID_BINARY_OUTPUT   0x0010U

Binary output (basic) cluster identifier.

§ ZB_ZCL_CLUSTER_ID_BINARY_VALUE

#define ZB_ZCL_CLUSTER_ID_BINARY_VALUE   0x0011U

Binary value (basic) cluster identifier.

§ ZB_ZCL_CLUSTER_ID_MULTI_INPUT

#define ZB_ZCL_CLUSTER_ID_MULTI_INPUT   0x0012U

Multistate input (basic) cluster identifier.

§ ZB_ZCL_CLUSTER_ID_MULTI_OUTPUT

#define ZB_ZCL_CLUSTER_ID_MULTI_OUTPUT   0x0013U

Multistate output (basic) cluster identifier.

§ ZB_ZCL_CLUSTER_ID_MULTI_VALUE

#define ZB_ZCL_CLUSTER_ID_MULTI_VALUE   0x0014U

Multistate value (basic) cluster identifier.

§ ZB_ZCL_CLUSTER_ID_COMMISSIONING

#define ZB_ZCL_CLUSTER_ID_COMMISSIONING   0x0015U

Commissioning cluster identifier.

§ ZB_ZCL_CLUSTER_ID_OTA_UPGRADE

#define ZB_ZCL_CLUSTER_ID_OTA_UPGRADE   0x0019U

Over The Air cluster identifier.

§ ZB_ZCL_CLUSTER_ID_POLL_CONTROL

#define ZB_ZCL_CLUSTER_ID_POLL_CONTROL   0x0020U

Poll control cluster identifier.

§ ZB_ZCL_CLUSTER_ID_GREEN_POWER

#define ZB_ZCL_CLUSTER_ID_GREEN_POWER   0x0021U

Green Power cluster identifier.

§ ZB_ZCL_CLUSTER_ID_KEEP_ALIVE

#define ZB_ZCL_CLUSTER_ID_KEEP_ALIVE   0x0025U

Keep Alive cluster identifier.

§ ZB_ZCL_CLUSTER_ID_SHADE_CONFIG

#define ZB_ZCL_CLUSTER_ID_SHADE_CONFIG   0x0100U

Shade configuration cluster identifier.

§ ZB_ZCL_CLUSTER_ID_DOOR_LOCK

#define ZB_ZCL_CLUSTER_ID_DOOR_LOCK   0x0101U

Door lock cluster identifier.

§ ZB_ZCL_CLUSTER_ID_WINDOW_COVERING

#define ZB_ZCL_CLUSTER_ID_WINDOW_COVERING   0x0102U

Window covering cluster identifier.

§ ZB_ZCL_CLUSTER_ID_PUMP_CONFIG_CONTROL

#define ZB_ZCL_CLUSTER_ID_PUMP_CONFIG_CONTROL   0x200U

Pump configuration and control cluster identifier.

§ ZB_ZCL_CLUSTER_ID_THERMOSTAT

#define ZB_ZCL_CLUSTER_ID_THERMOSTAT   0x201U

Thermostat cluster identifier.

§ ZB_ZCL_CLUSTER_ID_FAN_CONTROL

#define ZB_ZCL_CLUSTER_ID_FAN_CONTROL   0x202U

Fan control cluster identifier.

§ ZB_ZCL_CLUSTER_ID_DEHUMID_CONTROL

#define ZB_ZCL_CLUSTER_ID_DEHUMID_CONTROL   0x203U

Dehumidification control cluster identifier.

§ ZB_ZCL_CLUSTER_ID_THERMOSTAT_UI_CONFIG

#define ZB_ZCL_CLUSTER_ID_THERMOSTAT_UI_CONFIG   0x204U

Thermostat user interface configuration cluster identifier.

§ ZB_ZCL_CLUSTER_ID_COLOR_CONTROL

#define ZB_ZCL_CLUSTER_ID_COLOR_CONTROL   0x0300U

Color control cluster identifier.

§ ZB_ZCL_CLUSTER_ID_BALLAST_CONFIG

#define ZB_ZCL_CLUSTER_ID_BALLAST_CONFIG   0x0301U

Ballast configuration cluster identifier.

§ ZB_ZCL_CLUSTER_ID_ILLUMINANCE_MEASUREMENT

#define ZB_ZCL_CLUSTER_ID_ILLUMINANCE_MEASUREMENT   0x0400U

Illuminance measurement.

§ ZB_ZCL_CLUSTER_ID_TEMP_MEASUREMENT

#define ZB_ZCL_CLUSTER_ID_TEMP_MEASUREMENT   0x0402U

Temperature measurement.

§ ZB_ZCL_CLUSTER_ID_PRESSURE_MEASUREMENT

#define ZB_ZCL_CLUSTER_ID_PRESSURE_MEASUREMENT   0x0403U

Pressure measurement.

§ ZB_ZCL_CLUSTER_ID_REL_HUMIDITY_MEASUREMENT

#define ZB_ZCL_CLUSTER_ID_REL_HUMIDITY_MEASUREMENT   0x0405U

Relative humidity measurement.

§ ZB_ZCL_CLUSTER_ID_OCCUPANCY_SENSING

#define ZB_ZCL_CLUSTER_ID_OCCUPANCY_SENSING   0x0406U

Occupancy sensing.

§ ZB_ZCL_CLUSTER_ID_CARBON_DIOXIDE_MEASUREMENT

#define ZB_ZCL_CLUSTER_ID_CARBON_DIOXIDE_MEASUREMENT   0x040DU

Carbon Dioxide (CO2) measurement.

§ ZB_ZCL_CLUSTER_ID_PM2_5_MEASUREMENT

#define ZB_ZCL_CLUSTER_ID_PM2_5_MEASUREMENT   0x042AU

PM2.5 measurement.

§ ZB_ZCL_CLUSTER_ID_IAS_ZONE

#define ZB_ZCL_CLUSTER_ID_IAS_ZONE   0x0500U

IAS Zone cluster identifier.

§ ZB_ZCL_CLUSTER_ID_IAS_ACE

#define ZB_ZCL_CLUSTER_ID_IAS_ACE   0x0501U

IAS ACE cluster identifier.

§ ZB_ZCL_CLUSTER_ID_IAS_WD

#define ZB_ZCL_CLUSTER_ID_IAS_WD   0x0502U

IAS WD cluster identifier.

§ ZB_ZCL_CLUSTER_ID_PRICE

#define ZB_ZCL_CLUSTER_ID_PRICE   0x0700U

Price cluster identifier.

§ ZB_ZCL_CLUSTER_ID_DRLC

#define ZB_ZCL_CLUSTER_ID_DRLC   0x0701U

Demand-Response cluster identifier.

§ ZB_ZCL_CLUSTER_ID_METERING

#define ZB_ZCL_CLUSTER_ID_METERING   0x0702U

Metering cluster identifier.

§ ZB_ZCL_CLUSTER_ID_MESSAGING

#define ZB_ZCL_CLUSTER_ID_MESSAGING   0x0703U

Messaging cluster identifier.

§ ZB_ZCL_CLUSTER_ID_TUNNELING

#define ZB_ZCL_CLUSTER_ID_TUNNELING   0x0704U

Tunneling cluster identifier.

§ ZB_ZCL_CLUSTER_ID_PREPAYMENT

#define ZB_ZCL_CLUSTER_ID_PREPAYMENT   0x0705U

Prepayment cluster identifier.

§ ZB_ZCL_CLUSTER_ID_ENERGY_MANAGEMENT

#define ZB_ZCL_CLUSTER_ID_ENERGY_MANAGEMENT   0x0706U

Energy Management cluster identifier.

§ ZB_ZCL_CLUSTER_ID_CALENDAR

#define ZB_ZCL_CLUSTER_ID_CALENDAR   0x0707U

Calendar cluster identifier.

§ ZB_ZCL_CLUSTER_ID_DEVICE_MANAGEMENT

#define ZB_ZCL_CLUSTER_ID_DEVICE_MANAGEMENT   0x0708U

Device Management cluster identifier.

§ ZB_ZCL_CLUSTER_ID_EVENTS

#define ZB_ZCL_CLUSTER_ID_EVENTS   0x0709U

Events cluster identifier.

§ ZB_ZCL_CLUSTER_ID_MDU_PAIRING

#define ZB_ZCL_CLUSTER_ID_MDU_PAIRING   0x070AU

MDU Pairing cluster identifier.

§ ZB_ZCL_CLUSTER_ID_SUB_GHZ

#define ZB_ZCL_CLUSTER_ID_SUB_GHZ   0x070BU

Sub-GHz cluster identifier.

§ ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE

#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE   0x070DU

Daily Schedule cluster identifier.

§ ZB_ZCL_CLUSTER_ID_KEY_ESTABLISHMENT

#define ZB_ZCL_CLUSTER_ID_KEY_ESTABLISHMENT   0x0800U

Key Establishment cluster identifier.

§ ZB_ZCL_CLUSTER_ID_APPLIANCE_EVENTS_AND_ALERTS

#define ZB_ZCL_CLUSTER_ID_APPLIANCE_EVENTS_AND_ALERTS   0x0b02U

Appliance events and alerts cluster identifier.

§ ZB_ZCL_CLUSTER_ID_ELECTRICAL_MEASUREMENT

#define ZB_ZCL_CLUSTER_ID_ELECTRICAL_MEASUREMENT   0x0b04U

Electrical Measurement cluster identifier.

§ ZB_ZCL_CLUSTER_ID_DIAGNOSTICS

#define ZB_ZCL_CLUSTER_ID_DIAGNOSTICS   0x0b05U

Home Automation Diagnostics.

§ ZB_ZCL_CLUSTER_ID_WWAH

#define ZB_ZCL_CLUSTER_ID_WWAH   0xFC57U

Works with All Hubs cluster identifier.

§ ZB_ZCL_CLUSTER_ID_TUNNEL

#define ZB_ZCL_CLUSTER_ID_TUNNEL   0xfc00U

Manufacturer specific Tunnel cluster.

§ ZB_ZCL_CLUSTER_ID_IR_BLASTER

#define ZB_ZCL_CLUSTER_ID_IR_BLASTER   0xfc01U

Manufacturer specific IR Blaster cluster.

§ ZB_ZCL_CLUSTER_ID_CUSTOM_ATTR

#define ZB_ZCL_CLUSTER_ID_CUSTOM_ATTR   0xffeeU

Custom Attributes.

§ ZB_ZCL_CLUSTER_ID_METER_IDENTIFICATION

#define ZB_ZCL_CLUSTER_ID_METER_IDENTIFICATION   0x0B01U

Meter Identification cluster identifier.

§ ZB_ZCL_ATTR_TYPE_NULL

#define ZB_ZCL_ATTR_TYPE_NULL   0x00U

Null data type.

§ ZB_ZCL_ATTR_TYPE_8BIT

#define ZB_ZCL_ATTR_TYPE_8BIT   0x08U

8-bit value data type.

§ ZB_ZCL_ATTR_TYPE_16BIT

#define ZB_ZCL_ATTR_TYPE_16BIT   0x09U

16-bit value data type.

§ ZB_ZCL_ATTR_TYPE_24BIT

#define ZB_ZCL_ATTR_TYPE_24BIT   0x0aU

24-bit value data type.

§ ZB_ZCL_ATTR_TYPE_32BIT

#define ZB_ZCL_ATTR_TYPE_32BIT   0x0bU

32-bit value data type.

§ ZB_ZCL_ATTR_TYPE_40BIT

#define ZB_ZCL_ATTR_TYPE_40BIT   0x0cU

40-bit value data type.

§ ZB_ZCL_ATTR_TYPE_48BIT

#define ZB_ZCL_ATTR_TYPE_48BIT   0x0dU

48-bit value data type.

§ ZB_ZCL_ATTR_TYPE_56BIT

#define ZB_ZCL_ATTR_TYPE_56BIT   0x0eU

56-bit value data type.

§ ZB_ZCL_ATTR_TYPE_64BIT

#define ZB_ZCL_ATTR_TYPE_64BIT   0x0fU

64-bit value data type.

§ ZB_ZCL_ATTR_TYPE_BOOL

#define ZB_ZCL_ATTR_TYPE_BOOL   0x10U

Boolean data type.

§ ZB_ZCL_ATTR_TYPE_8BITMAP

#define ZB_ZCL_ATTR_TYPE_8BITMAP   0x18U

8-bit bitmap data type.

§ ZB_ZCL_ATTR_TYPE_16BITMAP

#define ZB_ZCL_ATTR_TYPE_16BITMAP   0x19U

16-bit bitmap data type.

§ ZB_ZCL_ATTR_TYPE_24BITMAP

#define ZB_ZCL_ATTR_TYPE_24BITMAP   0x1aU

24-bit bitmap data type.

§ ZB_ZCL_ATTR_TYPE_32BITMAP

#define ZB_ZCL_ATTR_TYPE_32BITMAP   0x1bU

32-bit bitmap data type.

§ ZB_ZCL_ATTR_TYPE_40BITMAP

#define ZB_ZCL_ATTR_TYPE_40BITMAP   0x1cU

40-bit bitmap data type.

§ ZB_ZCL_ATTR_TYPE_48BITMAP

#define ZB_ZCL_ATTR_TYPE_48BITMAP   0x1dU

48-bit bitmap data type.

§ ZB_ZCL_ATTR_TYPE_56BITMAP

#define ZB_ZCL_ATTR_TYPE_56BITMAP   0x1eU

56-bit bitmap data type.

§ ZB_ZCL_ATTR_TYPE_64BITMAP

#define ZB_ZCL_ATTR_TYPE_64BITMAP   0x1fU

64-bit bitmap data type.

§ ZB_ZCL_ATTR_TYPE_U8

#define ZB_ZCL_ATTR_TYPE_U8   0x20U

Unsigned 8-bit value data type.

§ ZB_ZCL_ATTR_TYPE_U16

#define ZB_ZCL_ATTR_TYPE_U16   0x21U

Unsigned 16-bit value data type.

§ ZB_ZCL_ATTR_TYPE_U24

#define ZB_ZCL_ATTR_TYPE_U24   0x22U

Unsigned 24-bit value data type.

§ ZB_ZCL_ATTR_TYPE_U32

#define ZB_ZCL_ATTR_TYPE_U32   0x23U

Unsigned 32-bit value data type.

§ ZB_ZCL_ATTR_TYPE_U40

#define ZB_ZCL_ATTR_TYPE_U40   0x24U

Unsigned 40-bit value data type.

§ ZB_ZCL_ATTR_TYPE_U48

#define ZB_ZCL_ATTR_TYPE_U48   0x25U

Unsigned 48-bit value data type.

§ ZB_ZCL_ATTR_TYPE_U56

#define ZB_ZCL_ATTR_TYPE_U56   0x26U

Unsigned 56-bit value data type.

§ ZB_ZCL_ATTR_TYPE_U64

#define ZB_ZCL_ATTR_TYPE_U64   0x27U

Unsigned 64-bit value data type.

§ ZB_ZCL_ATTR_TYPE_S8

#define ZB_ZCL_ATTR_TYPE_S8   0x28U

Signed 8-bit value data type.

§ ZB_ZCL_ATTR_TYPE_S16

#define ZB_ZCL_ATTR_TYPE_S16   0x29U

Signed 16-bit value data type.

§ ZB_ZCL_ATTR_TYPE_S24

#define ZB_ZCL_ATTR_TYPE_S24   0x2aU

Signed 24-bit value data type.

§ ZB_ZCL_ATTR_TYPE_S32

#define ZB_ZCL_ATTR_TYPE_S32   0x2bU

Signed 32-bit value data type.

§ ZB_ZCL_ATTR_TYPE_S40

#define ZB_ZCL_ATTR_TYPE_S40   0x2cU

Signed 40-bit value data type.

§ ZB_ZCL_ATTR_TYPE_S48

#define ZB_ZCL_ATTR_TYPE_S48   0x2dU

Signed 48-bit value data type.

§ ZB_ZCL_ATTR_TYPE_S56

#define ZB_ZCL_ATTR_TYPE_S56   0x2eU

Signed 56-bit value data type.

§ ZB_ZCL_ATTR_TYPE_S64

#define ZB_ZCL_ATTR_TYPE_S64   0x2fU

Signed 64-bit value data type.

§ ZB_ZCL_ATTR_TYPE_8BIT_ENUM

#define ZB_ZCL_ATTR_TYPE_8BIT_ENUM   0x30U

8-bit enumeration (U8 discrete) data type.

§ ZB_ZCL_ATTR_TYPE_16BIT_ENUM

#define ZB_ZCL_ATTR_TYPE_16BIT_ENUM   0x31U

16-bit enumeration (U16 discrete) data type.

§ ZB_ZCL_ATTR_TYPE_SEMI

#define ZB_ZCL_ATTR_TYPE_SEMI   0x38U

2 byte floating point.

§ ZB_ZCL_ATTR_TYPE_SINGLE

#define ZB_ZCL_ATTR_TYPE_SINGLE   0x39U

4 byte floating point.

§ ZB_ZCL_ATTR_TYPE_DOUBLE

#define ZB_ZCL_ATTR_TYPE_DOUBLE   0x3aU

8 byte floating point.

§ ZB_ZCL_ATTR_TYPE_OCTET_STRING

#define ZB_ZCL_ATTR_TYPE_OCTET_STRING   0x41U

Octet string data type.

§ ZB_ZCL_ATTR_TYPE_CHAR_STRING

#define ZB_ZCL_ATTR_TYPE_CHAR_STRING   0x42U

Character string (array) data type.

§ ZB_ZCL_ATTR_TYPE_LONG_OCTET_STRING

#define ZB_ZCL_ATTR_TYPE_LONG_OCTET_STRING   0x43U

Long octet string.

§ ZB_ZCL_ATTR_TYPE_LONG_CHAR_STRING

#define ZB_ZCL_ATTR_TYPE_LONG_CHAR_STRING   0x44U

Long character string.

§ ZB_ZCL_ATTR_TYPE_ARRAY

#define ZB_ZCL_ATTR_TYPE_ARRAY   0x48U

Array data type 2 + sum of content length.

§ ZB_ZCL_ATTR_TYPE_STRUCTURE

#define ZB_ZCL_ATTR_TYPE_STRUCTURE   0x4cU

Structure data type 2 + sum of content length.

§ ZB_ZCL_ATTR_TYPE_SET

#define ZB_ZCL_ATTR_TYPE_SET   0x50U

Collection:set, size = sum of length of content.

§ ZB_ZCL_ATTR_TYPE_BAG

#define ZB_ZCL_ATTR_TYPE_BAG   0x51U

Collection:bag, size = sum of length of content.

§ ZB_ZCL_ATTR_TYPE_TIME_OF_DAY

#define ZB_ZCL_ATTR_TYPE_TIME_OF_DAY   0xe0U

Time of day, 4 bytes.

§ ZB_ZCL_ATTR_TYPE_DATE

#define ZB_ZCL_ATTR_TYPE_DATE   0xe1U

Date, 4 bytes.

§ ZB_ZCL_ATTR_TYPE_UTC_TIME

#define ZB_ZCL_ATTR_TYPE_UTC_TIME   0xe2U

UTC Time, 4 bytes.

§ ZB_ZCL_ATTR_TYPE_CLUSTER_ID

#define ZB_ZCL_ATTR_TYPE_CLUSTER_ID   0xe8U

Cluster ID, 2 bytes.

§ ZB_ZCL_ATTR_TYPE_ATTRIBUTE_ID

#define ZB_ZCL_ATTR_TYPE_ATTRIBUTE_ID   0xe9U

Attribute ID, 2 bytes.

§ ZB_ZCL_ATTR_TYPE_BACNET_OID

#define ZB_ZCL_ATTR_TYPE_BACNET_OID   0xeaU

BACnet OID, 4 bytes.

§ ZB_ZCL_ATTR_TYPE_IEEE_ADDR

#define ZB_ZCL_ATTR_TYPE_IEEE_ADDR   0xf0U

IEEE address (U64) type.

§ ZB_ZCL_ATTR_TYPE_128_BIT_KEY

#define ZB_ZCL_ATTR_TYPE_128_BIT_KEY   0xf1U

128-bit security key.

§ ZB_ZCL_ATTR_TYPE_CUSTOM_32ARRAY

#define ZB_ZCL_ATTR_TYPE_CUSTOM_32ARRAY   0x4aU

Custom array of 32 elements data type (now is equal to ZB_ZCL_ATTR_TYPE_ARRAY).

§ ZB_ZCL_ATTR_TYPE_INVALID

#define ZB_ZCL_ATTR_TYPE_INVALID   0xffU

Invalid data type.

§ ZB_ZCL_PACKET_PUT_DATA8

#define ZB_ZCL_PACKET_PUT_DATA8 (   ptr,
  val 
)

Puts 8-bit value to the packet.

§ ZB_ZCL_PACKET_PUT_DATA16

#define ZB_ZCL_PACKET_PUT_DATA16 (   ptr,
  val 
)

Puts 16-bit value to the packet.

Parameters
ptrPointer to the place to put value to
valPointer to the value to put into the packet

§ ZB_ZCL_PACKET_PUT_DATA32_VAL

#define ZB_ZCL_PACKET_PUT_DATA32_VAL (   ptr,
  val 
)

Puts 32-bit value to the packet.

Parameters
ptrPointer to the place to put value to
valPointer to the value to put into the packet

§ ZB_ZCL_PACKET_PUT_DATA32

#define ZB_ZCL_PACKET_PUT_DATA32 (   ptr,
  val 
)

Puts 32-bit value to the packet.

Parameters
ptrPointer to the place to put value to
valPointer to the value to put into the packet

§ ZB_ZCL_PACKET_PUT_DATA48_VAL

#define ZB_ZCL_PACKET_PUT_DATA48_VAL (   ptr,
  val 
)

Puts 48-bit value to the packet.

Parameters
ptrPointer to the place to put value to
valValue to put into the packet

§ ZB_ZCL_PACKET_PUT_DATA48

#define ZB_ZCL_PACKET_PUT_DATA48 (   ptr,
  val 
)

Puts 48-bit value to the packet.

Parameters
ptrPointer to the place to put value to
valPointer to the value to put into the packet

§ ZB_ZCL_PACKET_PUT_DATA24_VAL

#define ZB_ZCL_PACKET_PUT_DATA24_VAL (   ptr,
  val 
)

Puts 24-bit value to the packet.

Parameters
ptrPointer to the place to put value to
valValue to put into the packet

§ ZB_ZCL_PACKET_PUT_DATA24

#define ZB_ZCL_PACKET_PUT_DATA24 (   ptr,
  val 
)

Puts 24-bit value to the packet.

Parameters
ptrPointer to the place to put value to
valPointer to the value to put into the packet

§ ZB_ZCL_PACKET_PUT_DATA64

#define ZB_ZCL_PACKET_PUT_DATA64 (   ptr,
  val 
)

Puts 64-bit value to the packet.

Parameters
ptrPointer to the place to put value to
valPointer to the value to put into the packet

§ ZB_ZCL_PACKET_PUT_DATA_N [1/2]

#define ZB_ZCL_PACKET_PUT_DATA_N (   ptr,
  val,
 
)    (ZB_MEMCPY(ptr, val, n), (ptr) += (n))

Puts N byte data to the packet.

Put N byte data to packet.

Parameters
ptrPointer to the place to put value to
valPointer to the value to put into the packet
nNumber of bytes to be copied
ptr- pointer to the place to put value to.
val- pointer to the value to put into packet.
n- number of bytes to be copied.

§ ZB_ZCL_PACKET_PUT_DATA_N [2/2]

#define ZB_ZCL_PACKET_PUT_DATA_N (   ptr,
  val,
 
)    (ZB_MEMCPY(ptr, val, n), (ptr) += (n))

Puts N byte data to the packet.

Put N byte data to packet.

Parameters
ptrPointer to the place to put value to
valPointer to the value to put into the packet
nNumber of bytes to be copied
ptr- pointer to the place to put value to.
val- pointer to the value to put into packet.
n- number of bytes to be copied.

§ ZB_ZCL_PACKET_GET_DATA8

#define ZB_ZCL_PACKET_GET_DATA8 (   dst_ptr,
  src_ptr 
)

Get 8-bit value from packet.

Parameters
dst_ptr- pointer to the memory to store value (pointer value preserved).
src_ptr- pointer to the memory to get value from (will be incremented).

§ ZB_ZCL_PACKET_GET_DATA16

#define ZB_ZCL_PACKET_GET_DATA16 (   dst_ptr,
  src_ptr 
)

Get 16-bit value from packet.

Parameters
dst_ptr- pointer to the memory to store value (pointer value preserved).
src_ptr- pointer to the memory to get value from (will be incremented by value size).

§ ZB_ZCL_PACKET_GET_DATA24

#define ZB_ZCL_PACKET_GET_DATA24 (   dst_ptr,
  src_ptr 
)

Get 24-bit value from packet.

Parameters
dst_ptr- pointer to the memory to store value (pointer value preserved).
src_ptr- pointer to the memory to get value from (will be incremented by value size).

§ ZB_ZCL_PACKET_GET_DATA48

#define ZB_ZCL_PACKET_GET_DATA48 (   dst_ptr,
  src_ptr 
)

Get 48-bit value from packet.

Parameters
dst_ptr- pointer to the memory to store value (pointer value preserved).
src_ptr- pointer to the memory to get value from (will be incremented by value size).

§ ZB_ZCL_PACKET_GET_DATA32

#define ZB_ZCL_PACKET_GET_DATA32 (   dst_ptr,
  src_ptr 
)

Get 32-bit value from packet.

Parameters
dst_ptr- pointer to the memory to store value (pointer value preserved).
src_ptr- pointer to the memory to get value from (will be incremented by value size).

§ ZB_ZCL_PACKET_GET_DATA64

#define ZB_ZCL_PACKET_GET_DATA64 (   dst_ptr,
  src_ptr 
)

Get 64-bit value from packet.

Parameters
dst_ptr- pointer to the memory to store value (pointer value preserved).
src_ptr- pointer to the memory to get value from (will be incremented by value size).

§ ZB_ZCL_PACKET_GET_DATA_N

#define ZB_ZCL_PACKET_GET_DATA_N (   dst_ptr,
  src_ptr,
 
)

Get N-byte value from packet.

Parameters
dst_ptr- pointer to the memory to store value (will be incremented by value size).
src_ptr- pointer to the memory to get value from (pointer value preserved).
n- data length.

§ ZB_ZCL_ATTR_GLOBAL_CLUSTER_REVISION_ID

#define ZB_ZCL_ATTR_GLOBAL_CLUSTER_REVISION_ID   0xfffdU

Cluster revision.

§ ZB_ZCL_ATTR_GLOBAL_ATTRIBUTE_REPORTING_STATUS_ID

#define ZB_ZCL_ATTR_GLOBAL_ATTRIBUTE_REPORTING_STATUS_ID   0xfffeU

Attribute reporting status.

§ ZB_ZCL_ATTR_ACCESS_READ_ONLY

#define ZB_ZCL_ATTR_ACCESS_READ_ONLY   0x01U

Attribute is read only.

§ ZB_ZCL_ATTR_ACCESS_WRITE_ONLY

#define ZB_ZCL_ATTR_ACCESS_WRITE_ONLY   0x02U

Attribute is write only.

§ ZB_ZCL_ATTR_ACCESS_READ_WRITE

#define ZB_ZCL_ATTR_ACCESS_READ_WRITE   (ZB_ZCL_ATTR_ACCESS_READ_ONLY | ZB_ZCL_ATTR_ACCESS_WRITE_ONLY)

Attribute is read/write.

§ ZB_ZCL_ATTR_ACCESS_REPORTING

#define ZB_ZCL_ATTR_ACCESS_REPORTING   0x04U

Attribute is allowed for reporting.

§ ZB_ZCL_ATTR_ACCESS_SINGLETON

#define ZB_ZCL_ATTR_ACCESS_SINGLETON   0x08U

Attribute is singleton.

§ ZB_ZCL_ATTR_ACCESS_SCENE

#define ZB_ZCL_ATTR_ACCESS_SCENE   0x10U

Attribute is accessed through scene.

§ ZB_ZCL_ATTR_MANUF_SPEC

#define ZB_ZCL_ATTR_MANUF_SPEC   0x20U

Attribute is manufacturer specific.

§ ZB_ZCL_ATTR_ACCESS_INTERNAL

#define ZB_ZCL_ATTR_ACCESS_INTERNAL   0x40U

ZBOSS Internal access only Attribute.

§ ZB_ZCL_CLUSTER_REVISION_DEFAULT

#define ZB_ZCL_CLUSTER_REVISION_DEFAULT   1

ZCL 6.0: Default value for cluster revision global attribute, see zcl_attr_global.