XBee®/XBee‐PRO® ZB SMT RF Modules
If a non-parent device does not know the destination is an end device, it will use the standard unicast timeout for
the transmission. However, provisions exist in the Ember ZigBee stack for the parent to inform the message sender
that the destination is an end device. Once the sender discovers the destination device is an end device, future
transmissions will use the extended timeout. See the XBee Router / Coordinator Configuration section in this chapter
for details.
XBee End Device Configuration
XBee end devices support three different sleep modes:
• Pin Sleep
• Cyclic Sleep
• Cyclic Sleep with pin wake-up
Pin sleep allows an external microcontroller to determine when the XBee should sleep and when it should wake by
controlling the Sleep_RQ pin. In contrast, cyclic sleep allows the sleep period and wake times to be configured
through the use of AT commands. Cyclic sleep with pin wake-up is the same as cyclic sleep except that the module
can be awakened before the sleep period expires by lowering the Sleep_Rq line. The sleep mode is configurable with
the SM command.
In both pin and cyclic sleep modes, XBee end devices poll their parent every 100ms while they are awake to retrieve
buffered data. When a poll request has been sent, the end device enables the receiver until an acknowledgment is
received from the parent. (It generally takes less than 10ms from the time the poll request is sent until the
acknowledgment is received.) The acknowledgment indicates if the parent has buffered data for the end device child
or not. If the acknowledgment indicates the parent has pending data, the end device will leave the receiver on to
receive the data. Otherwise, the end device will turn off the receiver and enter idle mode (until the next poll request
is sent) to reduce current consumption (and improve battery life).
Once the module enters sleep mode, the On/Sleep pin (pin 26) is de-asserted (low) to indicate the module is
entering sleep mode. If CTS hardware flow control is enabled (D7 command), the CTS pin (pin 12) is de-asserted
(high) when entering sleep to indicate that serial data should not be sent to the module. If the Associate LED pin is
configured (D5 command), the associate pin will be driven low to avoid using power to light the LED. Finally, the
Sleep_Rq pin will be configured as a pulled-down input so that an external device must drive it high to wake the
module. All other pins will be left unmodified during sleep so that they can operate as previously configured by the
user. The module will not respond to serial or RF data when it is sleeping. Applications that must communicate
serially to sleeping end devices are encouraged to observe CTS flow control.
When the XBee wakes from sleep, the On/Sleep pin is asserted (high), and if flow control is enabled, the CTS pin is
also asserted (low). The associate LED and all other pins resume their former configured operation. If the module
has not joined a network, it will scan all SC channels after waking to try and find a valid network to join.
Pin Sleep
Pin sleep allows the module to sleep and wake according to the state of the Sleep_RQ pin (pin 9). Pin sleep
mode is enabled by setting the SM command to 1.
When Sleep_RQ is asserted (high), the module will finish any transmit or receive operations and enter a low
power state. For example, if the module has not joined a network and Sleep_RQ is asserted (high), the module
will sleep once the current join attempt completes (i.e. when scanning for a valid network completes). The
module will wake from pin sleep when the Sleep_RQ pin is de-asserted (low).
© 2010 Digi International, Inc.
81