Managing End Devices XBee End Device configuration
XBee/XBee-PRO ZigBee RF Modules User Guide 97
Receiving RF data
After waking from sleep, an end device sends a poll request to its parent to determine if the parent has any
buffered data for it. In pin sleep mode, the end device polls every 100 ms while the Sleep_RQ pin is de-asserted
(low). In cyclic sleep mode, the end device will only poll once before returning to sleep unless the sleep timer (ST)
is started (serial or RF data is received). If the sleep timer is started, the end device will continue to poll every 100
ms until the sleep timer expires.
The XBee ZB 2x6x firmware includes an adaptive polling enhancement where, if an end device receives RF data
from its parent, it sends another poll after a very short delay to check for more data. The end device continues to
poll at a faster rate as long as it receives data from its parent. This feature greatly improves data throughput to
end devices. When the end device no longer receives data from its parent, it resumes polling every 100 ms.
IO sampling
End devices can be configured to send one or more IO samples when they wake from sleep. To enable IO
sampling on an end device, the IR command must be set to a non-zero value, and at least one analog or digital IO
pin must be enabled for sampling (D0 - D9, P0-P2 commands). If IO sampling is enabled, an end device sends an
IO sample when it wakes and starts the ST timer. It will continue sampling at the IR rate until the sleep timer (ST)
has expired. See Analog and digital IO lines on page 102 for details.
Waking End Devices with the Commissioning Pushbutton
If the Commissioning Pushbutton functionality is enabled (D0 command), a high-to-low transition on the AD0/
DIO0 pin (pin 20) will cause an end device to wake for 30 seconds. See Commissioning pushbutton and associate
LED on page 85 for details.
Parent verification
Since an end device relies on its parent to maintain connectivity with other devices in the network, XBee end
devices include provisions to verify its connection with its parent. End devices monitor their link with their parent
when sending poll messages and after a power cycle or reset event as described below.
When an end device wakes from sleep, it sends a poll request to its parent. In cyclic sleep, if RF or serial data is not
received and the sleep timer is not started, the end device polls one time and returns to sleep for another sleep
period. Otherwise, the end device continues polling every 100ms. If the parent does not send an
acknowledgment response to three consecutive poll request transmissions, the end device assumes the parent is
out of range, and attempts to find a new parent.
After a power-up or reset event, the end device does an orphan scan to locate its parent. If the parent does not
send a response to the orphan scan, the end device attempts to find a new parent.
Rejoining
Once all devices have joined a ZigBee network, the permit-joining attribute should be disabled such that new
devices are no longer allowed to join the network. Permit-joining can be enabled later as needed for short times.
This provides some protection in preventing other devices from joining a live network.
If an end device cannot communicate with its parent, the end device must be able to join a new parent to
maintain network connectivity. However, if permit-joining is disabled in the network, the end device will not find
a device that is allowing new joins.
To overcome this problem, ZigBee supports rejoining, where an end device can obtain a new parent in the same
network even if joining is not enabled. When an end device joins using rejoining, it performs a PAN ID scan to
discover nearby networks. If a network is discovered that has the same 64-bit PAN ID as the end device, it will join
the network by sending a rejoin request to one of the discovered devices. The device that receives the rejoin