Digi International Inc XBEEPRO2 User Manual
XBee®/XBee‐PRO® ZB RF Modules
© 2011 Digi International, Inc.
85
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.
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 two different sleep modes:
•Pin Sleep
•Cyclic Sleep.
•Cyclic Sleep.
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. The sleep mode is configurable with the SM command.
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. 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).
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 13) 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. 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.
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. 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). 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.
also asserted (low). 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.
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).
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).