Trident IoT Zigbee SDK
Loading...
Searching...
No Matches
tr_zcl_endpoint_config.h
Go to the documentation of this file.
1
11#ifndef TR_ZCL_ENDPOINT_CONFIG_H
12#define TR_ZCL_ENDPOINT_CONFIG_H
13
14#include "zb_zcl_common.h"
15#include "zboss_api_internal.h"
16#include "tr_zcl_id.h"
17#include "tr_zcl_type.h"
18#include "tr_zcl_cmd_structs.h"
20
21#define TR_DEVICE_MANUFACTURER_ID 0x1570U
22#define TR_GLOBAL_RESPONSE_POLICY ZB_ZCL_DISABLE_DEFAULT_RESPONSE
23
24#define TR_ZCL_NULL_EP_ID 0xFFU
25#define TR_ZCL_NULL_ID 0xFFFFU
26#define TR_ZCL_NON_MANUFACTURER_SPECIFIC 0xFFFFU
27
28#define TR_DEVICE_EP_COUNT (1)
29
30/***************************************/
31/* Endpoint 1 */
32#define TR_DEVICE_EP1 1
33
34// Generated number of input and output clusters
35#define TR_DEVICE_NUM_IN_CLUSTERS_EP1 (0+1+1+1+1+1+1+1)
36#define TR_DEVICE_NUM_OUT_CLUSTERS_EP1 (0+1+1+1)
37
38// check max number of clusters
39#if (TR_DEVICE_NUM_IN_CLUSTERS_EP1 + TR_DEVICE_NUM_OUT_CLUSTERS_EP1) > ZB_ZCL_CLUSTER_HANDLERS_TABLE_SIZE
40#error "Maximum number of clusters exceeded on endpoint 1! Must be less than ZB_ZCL_CLUSTER_HANDLERS_TABLE_SIZE"
41#endif
42
43#if defined ZB_APS_ENCRYPTION_PER_CLUSTER
44
45typedef ZB_PACKED_PRE struct tr_af_simple_desc_ep1_s
46{
47 zb_uint8_t endpoint; /* Endpoint */
48 zb_uint16_t app_profile_id; /* Application profile identifier */
49 zb_uint16_t app_device_id; /* Application device identifier */
50 zb_uint16_t app_device_version:4; /* Application device version */
51 zb_uint16_t reserved:4; /* Reserved */
52 zb_uint8_t app_input_cluster_count; /* Application input cluster count */
53 zb_uint8_t app_output_cluster_count; /* Application output cluster count */
54 /* Application input and output cluster list */
56 zb_uint8_t cluster_encryption[((TR_DEVICE_NUM_IN_CLUSTERS_EP1) + (TR_DEVICE_NUM_OUT_CLUSTERS_EP1) + 7) / 8];
57} ZB_PACKED_STRUCT tr_af_simple_desc_ep1_t;
58
59#else /* ZB_APS_ENCRYPTION_PER_CLUSTER */
60
61typedef ZB_PACKED_PRE struct tr_af_simple_desc_ep1_s
62{
63 zb_uint8_t endpoint; /* Endpoint */
64 zb_uint16_t app_profile_id; /* Application profile identifier */
65 zb_uint16_t app_device_id; /* Application device identifier */
66 zb_uint16_t app_device_version:4; /* Application device version */
67 zb_uint16_t reserved:4; /* Reserved */
68 zb_uint8_t app_input_cluster_count; /* Application input cluster count */
69 zb_uint8_t app_output_cluster_count; /* Application output cluster count */
70 /* Application input and output cluster list */
72} ZB_PACKED_STRUCT tr_af_simple_desc_ep1_t;
73
74#endif /* ZB_APS_ENCRYPTION_PER_CLUSTER */
75
76/********************************/
77/* Endpoint 1 Attribute Storage */
78// Generated cluster structs
79typedef struct
80{
81 zb_uint8_t version;
82 zb_uint8_t hw_version;
83 zb_uint8_t manufacturer_name[33];
84 zb_uint8_t model_identifier[33];
85 zb_uint8_t power_source;
86 zb_uint8_t product_code[17];
87 zb_uint16_t cluster_revision_server;
89
90typedef struct
91{
92 zb_uint16_t cluster_revision_client;
94
95typedef struct
96{
97 zb_uint16_t identify_time;
98 zb_uint16_t cluster_revision_server;
100
101typedef struct
102{
103 zb_uint8_t group_name_support;
104 zb_uint16_t cluster_revision_server;
106
107typedef struct
108{
109 zb_uint8_t scene_count;
110 zb_uint8_t current_scene;
111 zb_uint16_t current_group;
112 zb_uint8_t scene_valid;
113 zb_uint8_t scene_name_support;
114 zb_uint16_t cluster_revision_server;
116
117typedef struct
118{
119 zb_uint8_t on_off;
120 zb_uint8_t global_scene_control;
121 zb_uint16_t on_time;
122 zb_uint16_t off_wait_time;
123 zb_uint8_t start_up_on_off;
124 zb_uint16_t cluster_revision_server;
126
127typedef struct
128{
129 zb_ieee_addr_t upgrade_server_id;
130 zb_uint32_t file_offset;
131 zb_uint32_t current_file_version;
132 zb_uint8_t image_upgrade_status;
133 zb_uint16_t manufacturer_id;
134 zb_uint16_t image_type_id;
135 zb_uint16_t minimum_block_request_period;
136 zb_uint16_t cluster_revision_client;
138
139typedef struct
140{
141 zb_uint16_t cluster_revision_server;
143
144typedef struct
145{
148
149typedef struct
150{
151 zb_uint8_t cli_status;
152 zb_uint16_t cluster_revision_server;
154
155typedef struct
156{
157 basic_server_attr_ep1_t basic_server;
158 identify_client_attr_ep1_t identify_client;
159 identify_server_attr_ep1_t identify_server;
160 groups_server_attr_ep1_t groups_server;
161 scenes_server_attr_ep1_t scenes_server;
162 on_off_server_attr_ep1_t on_off_server;
163 over_the_air_bootloading_client_attr_ep1_t over_the_air_bootloading_client;
164 diagnostics_server_attr_ep1_t diagnostics_server;
168
169/***************************************/
170/* Endpoint 1 Default Attribute Values */
171// Generated default attribute values for basic server cluster
172#define BASIC_SERVER_VERSION_DEFAULT_EP1 8
173#define BASIC_SERVER_HW_VERSION_DEFAULT_EP1 1
174#define BASIC_SERVER_MANUFACTURER_NAME_DEFAULT_EP1 "Trident IoT"
175#define BASIC_SERVER_MODEL_IDENTIFIER_DEFAULT_EP1 "Bulb"
176#define BASIC_SERVER_POWER_SOURCE_DEFAULT_EP1 4
177#define BASIC_SERVER_PRODUCT_CODE_DEFAULT_EP1 (uint8_t[17]){ 0x0C, 0x50, 0x52, 0x4f, 0x44, 0x55, 0x43, 0x54, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0, 0, 0, 0, }
178#define BASIC_SERVER_CLUSTER_REVISION_SERVER_DEFAULT_EP1 3
179
180// Generated default attribute values for identify client cluster
181#define IDENTIFY_CLIENT_CLUSTER_REVISION_CLIENT_DEFAULT_EP1 2
182
183// Generated default attribute values for identify server cluster
184#define IDENTIFY_SERVER_IDENTIFY_TIME_DEFAULT_EP1 0
185#define IDENTIFY_SERVER_CLUSTER_REVISION_SERVER_DEFAULT_EP1 2
186
187// Generated default attribute values for groups server cluster
188#define GROUPS_SERVER_GROUP_NAME_SUPPORT_DEFAULT_EP1 0
189#define GROUPS_SERVER_CLUSTER_REVISION_SERVER_DEFAULT_EP1 3
190
191// Generated default attribute values for scenes server cluster
192#define SCENES_SERVER_SCENE_COUNT_DEFAULT_EP1 0
193#define SCENES_SERVER_CURRENT_SCENE_DEFAULT_EP1 0
194#define SCENES_SERVER_CURRENT_GROUP_DEFAULT_EP1 0
195#define SCENES_SERVER_SCENE_VALID_DEFAULT_EP1 0
196#define SCENES_SERVER_SCENE_NAME_SUPPORT_DEFAULT_EP1 0
197#define SCENES_SERVER_CLUSTER_REVISION_SERVER_DEFAULT_EP1 3
198
199// Generated default attribute values for on/off server cluster
200#define ON_OFF_SERVER_ON_OFF_DEFAULT_EP1 0
201#define ON_OFF_SERVER_GLOBAL_SCENE_CONTROL_DEFAULT_EP1 0x01
202#define ON_OFF_SERVER_ON_TIME_DEFAULT_EP1 0x0000
203#define ON_OFF_SERVER_OFF_WAIT_TIME_DEFAULT_EP1 0x0000
204#define ON_OFF_SERVER_START_UP_ON_OFF_DEFAULT_EP1 0
205#define ON_OFF_SERVER_CLUSTER_REVISION_SERVER_DEFAULT_EP1 2
206
207// Generated default attribute values for over the air bootloading client cluster
208#define OVER_THE_AIR_BOOTLOADING_CLIENT_UPGRADE_SERVER_ID_DEFAULT_EP1 (zb_ieee_addr_t){ 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF }
209#define OVER_THE_AIR_BOOTLOADING_CLIENT_FILE_OFFSET_DEFAULT_EP1 0xffffffff
210#define OVER_THE_AIR_BOOTLOADING_CLIENT_CURRENT_FILE_VERSION_DEFAULT_EP1 0x01020304
211#define OVER_THE_AIR_BOOTLOADING_CLIENT_IMAGE_UPGRADE_STATUS_DEFAULT_EP1 0x00
212#define OVER_THE_AIR_BOOTLOADING_CLIENT_MANUFACTURER_ID_DEFAULT_EP1 0x1570
213#define OVER_THE_AIR_BOOTLOADING_CLIENT_IMAGE_TYPE_ID_DEFAULT_EP1 0x0001
214#define OVER_THE_AIR_BOOTLOADING_CLIENT_MINIMUM_BLOCK_REQUEST_PERIOD_DEFAULT_EP1 1
215#define OVER_THE_AIR_BOOTLOADING_CLIENT_CLUSTER_REVISION_CLIENT_DEFAULT_EP1 4
216
217// Generated default attribute values for diagnostics server cluster
218#define DIAGNOSTICS_SERVER_NUMBER_OF_RESETS_DEFAULT_EP1 0x0000
219#define DIAGNOSTICS_SERVER_MAC_RX_BCAST_DEFAULT_EP1 0x0000
220#define DIAGNOSTICS_SERVER_MAC_TX_BCAST_DEFAULT_EP1 0x0000
221#define DIAGNOSTICS_SERVER_MAC_RX_UCAST_DEFAULT_EP1 0x0000
222#define DIAGNOSTICS_SERVER_MAC_TX_UCAST_DEFAULT_EP1 0x0000
223#define DIAGNOSTICS_SERVER_MAC_TX_UCAST_RETRY_DEFAULT_EP1 0x0000
224#define DIAGNOSTICS_SERVER_MAC_TX_UCAST_FAIL_DEFAULT_EP1 0x0000
225#define DIAGNOSTICS_SERVER_APS_RX_BCAST_DEFAULT_EP1 0x0000
226#define DIAGNOSTICS_SERVER_APS_TX_BCAST_DEFAULT_EP1 0x0000
227#define DIAGNOSTICS_SERVER_APS_UCAST_SUCCESS_DEFAULT_EP1 0x0000
228#define DIAGNOSTICS_SERVER_APS_TX_UCAST_RETRY_DEFAULT_EP1 0x0000
229#define DIAGNOSTICS_SERVER_APS_TX_UCAST_FAIL_DEFAULT_EP1 0x0000
230#define DIAGNOSTICS_SERVER_ROUTE_DISC_INITIATED_DEFAULT_EP1 0x0000
231#define DIAGNOSTICS_SERVER_NEIGHBOR_ADDED_DEFAULT_EP1 0x0000
232#define DIAGNOSTICS_SERVER_NEIGHBOR_REMOVED_DEFAULT_EP1 0x0000
233#define DIAGNOSTICS_SERVER_NEIGHBOR_STALE_DEFAULT_EP1 0x0000
234#define DIAGNOSTICS_SERVER_JOIN_INDICATION_DEFAULT_EP1 0x0000
235#define DIAGNOSTICS_SERVER_CHILD_MOVED_DEFAULT_EP1 0x0000
236#define DIAGNOSTICS_SERVER_NWK_FC_FAILURE_DEFAULT_EP1 0x0000
237#define DIAGNOSTICS_SERVER_APS_FC_FAILURE_DEFAULT_EP1 0x0000
238#define DIAGNOSTICS_SERVER_APS_UNAUTHORIZED_KEY_DEFAULT_EP1 0x0000
239#define DIAGNOSTICS_SERVER_NWK_DECRYPT_FAILURE_DEFAULT_EP1 0x0000
240#define DIAGNOSTICS_SERVER_APS_DECRYPT_FAILURE_DEFAULT_EP1 0x0000
241#define DIAGNOSTICS_SERVER_PACKET_BUFFER_ALLOC_FAILURES_DEFAULT_EP1 0x0000
242#define DIAGNOSTICS_SERVER_PHY_TO_MAC_QUEUE_LIMIT_REACHED_DEFAULT_EP1 0x0000
243#define DIAGNOSTICS_SERVER_PACKET_VALIDATE_DROP_COUNT_DEFAULT_EP1 0x0000
244#define DIAGNOSTICS_SERVER_AVERAGE_MAC_RETRY_PER_APS_MSG_SENT_DEFAULT_EP1 0x0000
245#define DIAGNOSTICS_SERVER_LAST_MESSAGE_LQI_DEFAULT_EP1 0x0000
246#define DIAGNOSTICS_SERVER_LAST_MESSAGE_RSSI_DEFAULT_EP1 0x0000
247#define DIAGNOSTICS_SERVER_CLUSTER_REVISION_SERVER_DEFAULT_EP1 3
248
249// Generated default attribute values for remote cli client cluster
250#define REMOTE_CLI_CLIENT_CLUSTER_REVISION_CLIENT_DEFAULT_EP1 0x0001
251
252// Generated default attribute values for remote cli server cluster
253#define REMOTE_CLI_SERVER_CLI_STATUS_DEFAULT_EP1 0x0000
254#define REMOTE_CLI_SERVER_CLUSTER_REVISION_SERVER_DEFAULT_EP1 0x0001
255
256/**************************************/
257/* All Endpoint(s) Supported Clusters */
258// Generated endpoint count for each cluster
259#define TR_ZCL_CLUSTER_BASIC_SERVER_EP_COUNT (0+1)
260#define TR_ZCL_CLUSTER_IDENTIFY_CLIENT_EP_COUNT (0+1)
261#define TR_ZCL_CLUSTER_IDENTIFY_SERVER_EP_COUNT (0+1)
262#define TR_ZCL_CLUSTER_GROUPS_SERVER_EP_COUNT (0+1)
263#define TR_ZCL_CLUSTER_SCENES_SERVER_EP_COUNT (0+1)
264#define TR_ZCL_CLUSTER_ON_OFF_SERVER_EP_COUNT (0+1)
265#define TR_ZCL_CLUSTER_OVER_THE_AIR_BOOTLOADING_CLIENT_EP_COUNT (0+1)
266#define TR_ZCL_CLUSTER_DIAGNOSTICS_SERVER_EP_COUNT (0+1)
267#define TR_ZCL_CLUSTER_REMOTE_CLI_CLIENT_EP_COUNT (0+1)
268#define TR_ZCL_CLUSTER_REMOTE_CLI_SERVER_EP_COUNT (0+1)
269
270/****************************************/
271/* All Endpoint(s) Supported Attributes */
272// Generated list of all attributes defined for this device
273#define TR_ZCL_ATTR_BASIC_VERSION_SUPPORTED
274#define TR_ZCL_ATTR_BASIC_HW_VERSION_SUPPORTED
275#define TR_ZCL_ATTR_BASIC_MANUFACTURER_NAME_SUPPORTED
276#define TR_ZCL_ATTR_BASIC_MODEL_IDENTIFIER_SUPPORTED
277#define TR_ZCL_ATTR_BASIC_POWER_SOURCE_SUPPORTED
278#define TR_ZCL_ATTR_BASIC_PRODUCT_CODE_SUPPORTED
279#define TR_ZCL_ATTR_BASIC_CLUSTER_REVISION_SERVER_SUPPORTED
280#define TR_ZCL_ATTR_IDENTIFY_CLUSTER_REVISION_CLIENT_SUPPORTED
281#define TR_ZCL_ATTR_IDENTIFY_IDENTIFY_TIME_SUPPORTED
282#define TR_ZCL_ATTR_IDENTIFY_CLUSTER_REVISION_SERVER_SUPPORTED
283#define TR_ZCL_ATTR_GROUPS_GROUP_NAME_SUPPORT_SUPPORTED
284#define TR_ZCL_ATTR_GROUPS_CLUSTER_REVISION_SERVER_SUPPORTED
285#define TR_ZCL_ATTR_SCENES_SCENE_COUNT_SUPPORTED
286#define TR_ZCL_ATTR_SCENES_CURRENT_SCENE_SUPPORTED
287#define TR_ZCL_ATTR_SCENES_CURRENT_GROUP_SUPPORTED
288#define TR_ZCL_ATTR_SCENES_SCENE_VALID_SUPPORTED
289#define TR_ZCL_ATTR_SCENES_SCENE_NAME_SUPPORT_SUPPORTED
290#define TR_ZCL_ATTR_SCENES_CLUSTER_REVISION_SERVER_SUPPORTED
291#define TR_ZCL_ATTR_ON_OFF_ON_OFF_SUPPORTED
292#define TR_ZCL_ATTR_ON_OFF_GLOBAL_SCENE_CONTROL_SUPPORTED
293#define TR_ZCL_ATTR_ON_OFF_ON_TIME_SUPPORTED
294#define TR_ZCL_ATTR_ON_OFF_OFF_WAIT_TIME_SUPPORTED
295#define TR_ZCL_ATTR_ON_OFF_START_UP_ON_OFF_SUPPORTED
296#define TR_ZCL_ATTR_ON_OFF_CLUSTER_REVISION_SERVER_SUPPORTED
297#define TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_UPGRADE_SERVER_ID_SUPPORTED
298#define TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_FILE_OFFSET_SUPPORTED
299#define TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_CURRENT_FILE_VERSION_SUPPORTED
300#define TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_IMAGE_UPGRADE_STATUS_SUPPORTED
301#define TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_MANUFACTURER_ID_SUPPORTED
302#define TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_IMAGE_TYPE_ID_SUPPORTED
303#define TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_MINIMUM_BLOCK_REQUEST_PERIOD_SUPPORTED
304#define TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_CLUSTER_REVISION_CLIENT_SUPPORTED
305#define TR_ZCL_ATTR_DIAGNOSTICS_NUMBER_OF_RESETS_SUPPORTED
306#define TR_ZCL_ATTR_DIAGNOSTICS_MAC_RX_BCAST_SUPPORTED
307#define TR_ZCL_ATTR_DIAGNOSTICS_MAC_TX_BCAST_SUPPORTED
308#define TR_ZCL_ATTR_DIAGNOSTICS_MAC_RX_UCAST_SUPPORTED
309#define TR_ZCL_ATTR_DIAGNOSTICS_MAC_TX_UCAST_SUPPORTED
310#define TR_ZCL_ATTR_DIAGNOSTICS_MAC_TX_UCAST_RETRY_SUPPORTED
311#define TR_ZCL_ATTR_DIAGNOSTICS_MAC_TX_UCAST_FAIL_SUPPORTED
312#define TR_ZCL_ATTR_DIAGNOSTICS_APS_RX_BCAST_SUPPORTED
313#define TR_ZCL_ATTR_DIAGNOSTICS_APS_TX_BCAST_SUPPORTED
314#define TR_ZCL_ATTR_DIAGNOSTICS_APS_UCAST_SUCCESS_SUPPORTED
315#define TR_ZCL_ATTR_DIAGNOSTICS_APS_TX_UCAST_RETRY_SUPPORTED
316#define TR_ZCL_ATTR_DIAGNOSTICS_APS_TX_UCAST_FAIL_SUPPORTED
317#define TR_ZCL_ATTR_DIAGNOSTICS_ROUTE_DISC_INITIATED_SUPPORTED
318#define TR_ZCL_ATTR_DIAGNOSTICS_NEIGHBOR_ADDED_SUPPORTED
319#define TR_ZCL_ATTR_DIAGNOSTICS_NEIGHBOR_REMOVED_SUPPORTED
320#define TR_ZCL_ATTR_DIAGNOSTICS_NEIGHBOR_STALE_SUPPORTED
321#define TR_ZCL_ATTR_DIAGNOSTICS_JOIN_INDICATION_SUPPORTED
322#define TR_ZCL_ATTR_DIAGNOSTICS_CHILD_MOVED_SUPPORTED
323#define TR_ZCL_ATTR_DIAGNOSTICS_NWK_FC_FAILURE_SUPPORTED
324#define TR_ZCL_ATTR_DIAGNOSTICS_APS_FC_FAILURE_SUPPORTED
325#define TR_ZCL_ATTR_DIAGNOSTICS_APS_UNAUTHORIZED_KEY_SUPPORTED
326#define TR_ZCL_ATTR_DIAGNOSTICS_NWK_DECRYPT_FAILURE_SUPPORTED
327#define TR_ZCL_ATTR_DIAGNOSTICS_APS_DECRYPT_FAILURE_SUPPORTED
328#define TR_ZCL_ATTR_DIAGNOSTICS_PACKET_BUFFER_ALLOC_FAILURES_SUPPORTED
329#define TR_ZCL_ATTR_DIAGNOSTICS_PHY_TO_MAC_QUEUE_LIMIT_REACHED_SUPPORTED
330#define TR_ZCL_ATTR_DIAGNOSTICS_PACKET_VALIDATE_DROP_COUNT_SUPPORTED
331#define TR_ZCL_ATTR_DIAGNOSTICS_AVERAGE_MAC_RETRY_PER_APS_MSG_SENT_SUPPORTED
332#define TR_ZCL_ATTR_DIAGNOSTICS_LAST_MESSAGE_LQI_SUPPORTED
333#define TR_ZCL_ATTR_DIAGNOSTICS_LAST_MESSAGE_RSSI_SUPPORTED
334#define TR_ZCL_ATTR_DIAGNOSTICS_CLUSTER_REVISION_SERVER_SUPPORTED
335#define TR_ZCL_ATTR_REMOTE_CLI_CLUSTER_REVISION_CLIENT_SUPPORTED
336#define TR_ZCL_ATTR_REMOTE_CLI_CLI_STATUS_SUPPORTED
337#define TR_ZCL_ATTR_REMOTE_CLI_CLUSTER_REVISION_SERVER_SUPPORTED
338
339/**************************************/
340/* All Endpoint(s) Supported Commands */
341// Generated supported command(s) for basic server cluster
342#define BASIC_SERVER_SUPPORTED_COMMANDS_RECEIVE \
343 TR_ZCL_CMD_RESET_TO_FACTORY_DEFAULTS_ID
344
345// Generated supported command(s) for groups server cluster
346#define GROUPS_SERVER_SUPPORTED_COMMANDS_RECEIVE \
347 TR_ZCL_CMD_ADD_GROUP_ID, \
348 TR_ZCL_CMD_VIEW_GROUP_ID, \
349 TR_ZCL_CMD_GET_GROUP_MEMBERSHIP_ID, \
350 TR_ZCL_CMD_REMOVE_GROUP_ID, \
351 TR_ZCL_CMD_REMOVE_ALL_GROUPS_ID, \
352 TR_ZCL_CMD_ADD_GROUP_IF_IDENTIFYING_ID
353
354// Generated supported command(s) for identify client cluster
355#define IDENTIFY_CLIENT_SUPPORTED_COMMANDS_RECEIVE \
356 TR_ZCL_CMD_IDENTIFY_QUERY_RESPONSE_ID
357
358// Generated supported command(s) for identify server cluster
359#define IDENTIFY_SERVER_SUPPORTED_COMMANDS_RECEIVE \
360 TR_ZCL_CMD_IDENTIFY_ID, \
361 TR_ZCL_CMD_IDENTIFY_QUERY_ID, \
362 TR_ZCL_CMD_TRIGGER_EFFECT_ID
363
364// Generated supported command(s) for on/off server cluster
365#define ON_OFF_SERVER_SUPPORTED_COMMANDS_RECEIVE \
366 TR_ZCL_CMD_OFF_ID, \
367 TR_ZCL_CMD_ON_ID, \
368 TR_ZCL_CMD_TOGGLE_ID, \
369 TR_ZCL_CMD_OFF_WITH_EFFECT_ID, \
370 TR_ZCL_CMD_ON_WITH_RECALL_GLOBAL_SCENE_ID, \
371 TR_ZCL_CMD_ON_WITH_TIMED_OFF_ID
372
373// Generated supported command(s) for over the air bootloading client cluster
374#define OVER_THE_AIR_BOOTLOADING_CLIENT_SUPPORTED_COMMANDS_RECEIVE \
375 TR_ZCL_CMD_IMAGE_NOTIFY_ID, \
376 TR_ZCL_CMD_QUERY_NEXT_IMAGE_RESPONSE_ID, \
377 TR_ZCL_CMD_IMAGE_BLOCK_RESPONSE_ID, \
378 TR_ZCL_CMD_UPGRADE_END_RESPONSE_ID
379
380// Generated supported command(s) for remote cli client cluster
381#define REMOTE_CLI_CLIENT_SUPPORTED_COMMANDS_RECEIVE \
382 TR_ZCL_CMD_CLI_COMMAND_RESPONSE_ID
383
384// Generated supported command(s) for remote cli server cluster
385#define REMOTE_CLI_SERVER_SUPPORTED_COMMANDS_RECEIVE \
386 TR_ZCL_CMD_CLI_COMMAND_ID, \
387 TR_ZCL_CMD_ENABLE_REMOTE_CLI_ID
388
389// Generated supported command(s) for scenes server cluster
390#define SCENES_SERVER_SUPPORTED_COMMANDS_RECEIVE \
391 TR_ZCL_CMD_ADD_SCENE_ID, \
392 TR_ZCL_CMD_VIEW_SCENE_ID, \
393 TR_ZCL_CMD_REMOVE_SCENE_ID, \
394 TR_ZCL_CMD_REMOVE_ALL_SCENES_ID, \
395 TR_ZCL_CMD_STORE_SCENE_ID, \
396 TR_ZCL_CMD_RECALL_SCENE_ID, \
397 TR_ZCL_CMD_GET_SCENE_MEMBERSHIP_ID
398
399// Generated supported command(s) for groups server cluster
400#define GROUPS_SERVER_SUPPORTED_COMMANDS_SEND \
401 TR_ZCL_CMD_ADD_GROUP_RESPONSE_ID, \
402 TR_ZCL_CMD_VIEW_GROUP_RESPONSE_ID, \
403 TR_ZCL_CMD_GET_GROUP_MEMBERSHIP_RESPONSE_ID, \
404 TR_ZCL_CMD_REMOVE_GROUP_RESPONSE_ID
405
406// Generated supported command(s) for identify client cluster
407#define IDENTIFY_CLIENT_SUPPORTED_COMMANDS_SEND \
408 TR_ZCL_CMD_IDENTIFY_ID, \
409 TR_ZCL_CMD_IDENTIFY_QUERY_ID, \
410 TR_ZCL_CMD_TRIGGER_EFFECT_ID
411
412// Generated supported command(s) for identify server cluster
413#define IDENTIFY_SERVER_SUPPORTED_COMMANDS_SEND \
414 TR_ZCL_CMD_IDENTIFY_QUERY_RESPONSE_ID
415
416// Generated supported command(s) for over the air bootloading client cluster
417#define OVER_THE_AIR_BOOTLOADING_CLIENT_SUPPORTED_COMMANDS_SEND \
418 TR_ZCL_CMD_QUERY_NEXT_IMAGE_REQUEST_ID, \
419 TR_ZCL_CMD_IMAGE_BLOCK_REQUEST_ID, \
420 TR_ZCL_CMD_UPGRADE_END_REQUEST_ID
421
422// Generated supported command(s) for remote cli client cluster
423#define REMOTE_CLI_CLIENT_SUPPORTED_COMMANDS_SEND \
424 TR_ZCL_CMD_CLI_COMMAND_ID, \
425 TR_ZCL_CMD_ENABLE_REMOTE_CLI_ID
426
427// Generated supported command(s) for remote cli server cluster
428#define REMOTE_CLI_SERVER_SUPPORTED_COMMANDS_SEND \
429 TR_ZCL_CMD_CLI_COMMAND_RESPONSE_ID
430
431// Generated supported command(s) for scenes server cluster
432#define SCENES_SERVER_SUPPORTED_COMMANDS_SEND \
433 TR_ZCL_CMD_ADD_SCENE_RESPONSE_ID, \
434 TR_ZCL_CMD_VIEW_SCENE_RESPONSE_ID, \
435 TR_ZCL_CMD_REMOVE_SCENE_RESPONSE_ID, \
436 TR_ZCL_CMD_REMOVE_ALL_SCENES_RESPONSE_ID, \
437 TR_ZCL_CMD_STORE_SCENE_RESPONSE_ID, \
438 TR_ZCL_CMD_GET_SCENE_MEMBERSHIP_RESPONSE_ID
439
440/*******************************************/
441/* All Endpoint(s) nvram attribute storage */
442// Generated number of attributes stored in nvram
443#define TR_NUM_NVRAM_ATTR (0+1+1+1+1)
444
445#define TR_NVRAM_ATTR_STORAGE_CONFIG \
446 { \
447 { TR_DEVICE_EP1,TR_ZCL_CLUSTER_ON_OFF_ID,TR_ZCL_ATTR_ON_OFF_ON_OFF_ID, \
448 TR_ZCL_CLUSTER_SERVER_ROLE,TR_ZCL_NON_MANUFACTURER_SPECIFIC,TR_ZCL_BOOLEAN_ATTR_TYPE }, \
449 { TR_DEVICE_EP1,TR_ZCL_CLUSTER_ON_OFF_ID,TR_ZCL_ATTR_ON_OFF_START_UP_ON_OFF_ID, \
450 TR_ZCL_CLUSTER_SERVER_ROLE,TR_ZCL_NON_MANUFACTURER_SPECIFIC,TR_ZCL_ENUM8_ATTR_TYPE }, \
451 { TR_DEVICE_EP1,TR_ZCL_CLUSTER_OVER_THE_AIR_BOOTLOADING_ID,TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_FILE_OFFSET_ID, \
452 TR_ZCL_CLUSTER_CLIENT_ROLE,TR_ZCL_NON_MANUFACTURER_SPECIFIC,TR_ZCL_INT32U_ATTR_TYPE }, \
453 { TR_DEVICE_EP1,TR_ZCL_CLUSTER_OVER_THE_AIR_BOOTLOADING_ID,TR_ZCL_ATTR_OVER_THE_AIR_BOOTLOADING_IMAGE_UPGRADE_STATUS_ID, \
454 TR_ZCL_CLUSTER_CLIENT_ROLE,TR_ZCL_NON_MANUFACTURER_SPECIFIC,TR_ZCL_ENUM8_ATTR_TYPE }, \
455 }
456
457/****************************************/
458/* All Endpoint(s) Default Reporting Configs */
459typedef struct
460{
461 zb_uint8_t direction;
462 zb_uint8_t endpoint;
463 zb_uint16_t cluster_id;
464 zb_uint8_t cluster_role;
465 zb_uint16_t attr_id;
466 zb_uint16_t profile_id;
467 zb_uint16_t manuf_code;
468 zb_uint16_t min_interval;
469 zb_uint16_t max_interval;
470 zb_uint8_t data_type;
471 zb_uint32_t reportable_change;
473
474#ifdef TR_PLUGIN_ATTR_REPORT_TABLE_SIZE
475#define TR_ATTR_REPORT_TABLE_SIZE TR_PLUGIN_ATTR_REPORT_TABLE_SIZE
476#else
477#define TR_ATTR_REPORT_TABLE_SIZE 16
478#endif
479
480#define TR_DEVICE_NUM_DEFAULT_REPORTABLE_ATTRS 1
481
482/* {direction, endpoint, cluster_id, role, attribute_id, profile_id, manuf_code, min_interval, max_interval, data_type, reportable_change} */
483#define TR_DEVICE_REPORTING_CONFIG_DEFAULTS \
484 { \
485 { ZB_ZCL_CONFIGURE_REPORTING_SEND_REPORT,0x01,0x0006,TR_ZCL_CLUSTER_SERVER_ROLE,0x0000, \
486 0x0104,TR_ZCL_NON_MANUFACTURER_SPECIFIC,1,65534,TR_ZCL_BOOLEAN_ATTR_TYPE,0 }, \
487 }
488
489#define TR_TOTAL_ATTR_REPORT_TABLE_SIZE (TR_ATTR_REPORT_TABLE_SIZE + TR_DEVICE_NUM_DEFAULT_REPORTABLE_ATTRS)
490
491// Structure for cluster id/names
492typedef struct
493{
494 zb_uint16_t cluster_id;
495 zb_char_t *cluster_name;
497
499extern zb_af_endpoint_desc_t tr_endpoint_desc_ep1;
500extern zb_af_device_ctx_t tr_device_ctx;
501extern zb_zcl_reporting_info_t tr_device_reporting_info[TR_TOTAL_ATTR_REPORT_TABLE_SIZE];
502
503extern zb_zcl_diagnostics_ctx_t diagnostics_ctx_zcl;
504
508
509#endif /* TR_ZCL_ENDPOINT_CONFIG_H */
zb_uint16_t off_wait_time
Definition tr_zcl_cmd_structs.h:278
zb_uint16_t profile_id
Definition tr_zcl_cmd_structs.h:3928
zb_uint32_t file_offset
Definition tr_zcl_cmd_structs.h:612
zb_uint32_t current_file_version
Definition tr_zcl_cmd_structs.h:601
zb_uint16_t on_time
Definition tr_zcl_cmd_structs.h:277
zb_uint16_t manufacturer_id
Definition tr_zcl_cmd_structs.h:599
zb_uint16_t identify_time
Definition tr_zcl_cmd_structs.h:17
zb_uint8_t direction
Definition tr_zcl_cmd_structs.h:1564
zb_uint8_t version
Definition tr_zcl_cmd_structs.h:3930
#define TR_TOTAL_ATTR_REPORT_TABLE_SIZE
Definition tr_zcl_endpoint_config.h:587
zb_af_device_ctx_t tr_device_ctx
tr_cluster_names_t tr_cluster_names[]
#define TR_DEVICE_NUM_IN_CLUSTERS_EP1
Definition tr_zcl_endpoint_config.h:35
zb_af_endpoint_desc_t tr_endpoint_desc_ep1
ZB_PACKED_PRE struct tr_af_simple_desc_ep1_s tr_af_simple_desc_ep1_t
void tr_zcl_endpoint_config_reporting_init(void)
#define TR_DEVICE_NUM_OUT_CLUSTERS_EP1
Definition tr_zcl_endpoint_config.h:36
zb_zcl_diagnostics_ctx_t diagnostics_ctx_zcl
void tr_zcl_endpoint_config_attr_init(uint8_t endpoint)
void tr_zcl_endpoint_config_init(void)
zb_zcl_reporting_info_t tr_device_reporting_info[TR_TOTAL_ATTR_REPORT_TABLE_SIZE]
ZCL command structure definitions.
ZCL ID definitions.
includes Trident ZCL plugin header files or creates stubs that can be consumed by the end user.
ZCL definitions for types, enums, and data structures.
#define TR_DEVICE_NUM_IN_CLUSTERS_EP1
Definition tr_zcl_endpoint_config.h:35
#define TR_DEVICE_NUM_OUT_CLUSTERS_EP1
Definition tr_zcl_endpoint_config.h:36
Definition tr_zcl_endpoint_config.h:80
zb_uint8_t product_code[17]
Definition tr_zcl_endpoint_config.h:86
zb_uint16_t cluster_revision_server
Definition tr_zcl_endpoint_config.h:90
Definition tr_zcl_endpoint_config.h:194
remote_cli_client_attr_ep1_t remote_cli_client
Definition tr_zcl_endpoint_config.h:165
remote_cli_server_attr_ep1_t remote_cli_server
Definition tr_zcl_endpoint_config.h:224
Definition tr_zcl_endpoint_config.h:199
Definition tr_zcl_endpoint_config.h:100
Definition tr_zcl_endpoint_config.h:105
Definition tr_zcl_endpoint_config.h:94
Definition tr_zcl_endpoint_config.h:116
zb_uint16_t cluster_revision_server
Definition tr_zcl_endpoint_config.h:121
zb_uint8_t start_up_on_off
Definition tr_zcl_endpoint_config.h:123
Definition tr_zcl_endpoint_config.h:132
Definition tr_zcl_endpoint_config.h:145
zb_uint16_t cluster_revision_client
Definition tr_zcl_endpoint_config.h:146
Definition tr_zcl_endpoint_config.h:204
Definition tr_zcl_endpoint_config.h:106
Definition tr_zcl_endpoint_config.h:62
zb_uint16_t app_profile_id
Definition tr_zcl_endpoint_config.h:64
zb_uint8_t app_output_cluster_count
Definition tr_zcl_endpoint_config.h:69
zb_uint16_t app_cluster_list[(TR_DEVICE_NUM_IN_CLUSTERS_EP1)+(TR_DEVICE_NUM_OUT_CLUSTERS_EP1)]
Definition tr_zcl_endpoint_config.h:71
zb_uint8_t app_input_cluster_count
Definition tr_zcl_endpoint_config.h:68
zb_uint16_t reserved
Definition tr_zcl_endpoint_config.h:67
zb_uint8_t endpoint
Definition tr_zcl_endpoint_config.h:63
zb_uint16_t app_device_version
Definition tr_zcl_endpoint_config.h:66
zb_uint16_t app_device_id
Definition tr_zcl_endpoint_config.h:65
Definition tr_zcl_endpoint_config.h:560
Definition tr_zcl_endpoint_config.h:591
zb_uint8_t endpoint
Definition tr_nvram_attr.h:176
zb_uint16_t cluster_id
Definition tr_nvram_attr.h:177
zb_uint8_t cluster_role
Definition tr_nvram_attr.h:179
zb_uint16_t manuf_code
Definition tr_nvram_attr.h:180
zb_uint16_t attr_id
Definition tr_nvram_attr.h:178
zb_uint8_t data_type
Definition tr_nvram_attr.h:181
zb_uint8_t scene_count
Definition tr_scenes_common.h:85