Specifications

XBee®/XBeePRO®SERFModules
©2009DigiInternational,Inc. 58
The ZigBee stack includes some provisions for a device to detect if the destination is an end device
or not. The ZigBee stack uses the unicast timeout unless it knows the destination is an end device.
The XBee API includes a transmit options bit that can be set to specify if the extended timeout
should be used for a given transmission. If this bit is set, the extended timeout will be used when
sending RF data to the specified destination. To improve routing reliability, applications should set
the extended timeout bit when sending data to end devices if:
• The application sends data to 10 or more remote devices, some of which are end devices,
AND
• The end devices may sleep longer than the unicast timeout
Equations for these timeouts are computed in the following sections.
Note: The timeouts in this section are worst-case timeouts and should be padded by a few
hundred milliseconds. These worst-case timeouts apply when an existing route breaks down (e.g.
intermediate hop or destination device moved).
Unicast Timeout
The unicast timeout is settable with the NH command. The actual unicast timeout is computed as
((50 * NH) + 100). The default NH value is 30 which equates to a 1.6 second timeout.
The unicast timeout includes 3 transmission attempts (1 attempt and 2 retries). The maximum
total timeout is about:
3 * ((50 * NH) + 100).
For example, if NH=30 (0x1E), the unicast timeout is about
3 * ((50 * 30) + 100), or
3 * (1500 + 100), or
3 * (1600), or
4800 ms, or
4.8 seconds.
Extended Timeout
The worst-case transmission timeout when sending data to an end device is somewhat larger than
when transmitting to a router or coordinator. As described later in chapter 6, RF data packets are
actually sent to the parent of the end device, who buffers the packet until the end device wakes to
receive it. The parent will buffer an RF data packet for up to (1.2 * SP) time.
To ensure the end device has adequate time to wake and receive the data, the extended
transmission timeout to an end device is:
(50 * NH) + (1.2 * SP)
This timeout includes the packet buffering timeout (1.2 * SP) and time to account for routing
through the mesh network (50 * NH).
If an acknowledgment is not received within this time, the sender will resend the transmission up
to two more times. With retries included, the longest transmission timeout when sending data to
an end device is:
3 * ((50 * NH) + (1.2 * SP))
The SP value in both equations must be entered in millisecond units. (The SP command setting
uses 10ms units and must be converted to milliseconds to be used in this equation.)
For example, suppose a router is configured with NH=30 (0x1E) and SP=0x3E8 (10,000 ms), and
that it is either trying to send data to one of its end device children, or to a remote end device. The
total extended timeout to the end device is about:
3 * ((50 * NH) + (1.2 * SP)), or
3 * (1500 + 12000), or
3 * (13500), or
40500 ms, or