AnsweredAssumed Answered

JN5179 ZigBee 3.0 Time Cluster

Question asked by Jurij Huebner on Mar 23, 2017
Latest reply on May 29, 2017 by Mario Ignacio Castaneda Lopez



I want to use the time cluster as client for a zigbee enddevice with HA Profile (0x0104). Therefore I configured the zcl_options.h as follwed:

#define CLD_TIME



I configure the time master on a coordiantor with a real time clock. 

At the next step I start my application as an enddevice with JN5179 on a different device. 

I join the network, bind the enddevice time cluster. 

After the enddevice was binding I send a eZCL_SendReadAttributesRequest to coordiantor and receive the correct utc.

After sending message I get   E_ZCL_SUCCESS == eStatus. So everthing have to be alright, otherwise I wouldn't receive the utc.

But if I read u32ZCL_GetUTCTime(), it is still different!

Is it not possible to run the received utc in the backround?





ZigBee Cluster Library 3.0 ( part of documentation page 395)

The application can remotely read the Time cluster attributes from the time-master by calling the function
eZCL_SendReadAttributesRequest(), which will result in a ‘read attributes’
response containing the Time cluster data. On receiving this response, a ‘data
indication’ stack event is generated on the local device, which causes a ZCL user task
to be activated. The event is initially handled by this task as described in Section 3.2,
resulting in an E_ZCL_ZIGBEE_EVENT event being passed to the ZCL via the
function vZCL_EventHandler(). Provided that the event contains a message
incorporating a ‘read attributes’ response, the ZCL:
1. automatically sets the utctTime field of the tsCLD_Time structure to the
value of the same attribute in the ‘read attributes’ response (and also sets
other Time cluster attributes, if requested)