There are many ways to put your device to sleep. If you don't have access to X-CTU you can give the END-DEVICE antenna (it has to be an end device cause for obvious reasons routers and coordinators can't stop responding) a remote AT command through another antenna (usually the coordinator with the help of any microcontroller)
There are 4 types of sleep you can configure (SM) depending on the value you assign
- 0 - NO SLEEP
- 1 - PIN HIBERNATE //I believe this one will wake the device only
when Sleep_Rq, module pin 9, transitions from a high to a low
state.There is not much documentation on this mode
- 4 - Cyclic SLEEP //This mode depends on the SP and SN parameters.
SP (20 to AF0) is the period of sleep in milliseconds and SN (0000
to FFFF) is the number of periods to sleep before waking
- 5 - Cyclic SLEEP with pin
wake //same as before but you can wake the device also when Sleep_Rq,
module pin 9, transitions from a high to a low state.
This is a typical api message that configures your end device for sleep mode 4
7E //start delimiter
00 0F //length
17 //frame type identifier (remote AT message)
01 //frame ID
00 7D 33 A2 00 40 5C 42 //64bit END-DEVICE address
0C FF //16bit destination network address
02 //command options
83 77 //command name ( SM in ASCII )
04 //command data
** //checksum
In general X.CTU saves you a lot of time, if for some reason you can't use it check out this valid alternative Zigbee Operator