Dear my friend,
Recently,i found some interesting things.
In my project,if i set 33772 go to sleep before turning off the power MCU,then the next power on time will shorter than idle mode to normal mode.
The route 1 time is shorter than route 2.And i want to know when i need to Assign CID for 33772.,every time when i power on the MCU?
Yes, because on power up (POR) or RESET (pin) or SYS_CFG1[SOFT_RST], the 33772 device only responds to the cluster ID of 0000. So, user must change the cluster ID of the device by writing a new cluster ID into register INIT[CID].
The cluster initialization is required in TPL and also in SPI modes. Subsequent read/write command must use the new cluster ID to communicate to the device.
Cluster ID of 0000 only writes to register INIT. First message from MCU controller writing to cluster ID 0000 and with an address other than INIT generates no response.
After initialization, each time the device receives a frame having the master/slave bit equal to logic 1, this frame is not recognized, even though the address contained in the CID field is equal to the programmed one. In this condition, the device neither acts upon nor answers the command. This is a wanted behavior, whose purpose is to avoid the device acting upon or responding to a frame generated by another slave device of the network.
To initialize the device, a write command has to be sent with the value of 0000 in the device address field of the frame, bit 15 to bit 12, while the new cluster ID, the new address to be assigned to the node, must be written to the CID field of the INIT register. Only a device with current cluster ID of 0000 may be programmed to a new address. By programming the device with a new CID the device is considered initialized. After a device has been initialized, it only acts on subsequent global write (transformer mode) or acts on and responds to subsequent local write or read commands matching the device cluster ID.