
Transmission, addressing, and routing
Binding transmissions
XBee/XBee-PRO® S2C ZigBee® RF Module
79
If an application supports an address table, the size should be larger than the maximum number of
destination addresses the device communicates with. Each entry in the address table should contain a
64-bit destination address and its last known 16-bit address.
When sending a transmission to a destination 64-bit address, the application searches the address
table for a matching 64-bit address. If it finds a match, the application populates the 16-bit address
into the 16-bit address field of the API frame. If it does not find a match, set the 16-bit address to
0xFFFE (unknown) in the API transmit frame. The API provides indication of a remote device's 16-bit
address in the following frames:
n
All receive data frames
n
Rx Data (0x90)
n
Rx Explicit Data (0x91)
n
I/O Sample Data (0x92)
n
Node Identification Indicator (0x95)
n
Route Record Indicator (0xA1) and so forth
n
Transmit status frame (0x8B)
Group table
Each router and the coordinator maintain a persistent group table. Each entry contains the following:
n
Endpoint value
n
Two byte group ID
n
Optional name string of zero to 16 ASCII characters
n
Index into the binding table
More than one endpoint may be associated with a group ID, and more than one group ID may be
associated with a given endpoint. The capacity of the group table is 16 entries.
The application always updates the 16-bit address in the address table when it receives one of the
frames to ensure the table has the most recently known 16-bit address. If a transmission failure
occurs, the application sets the 16-bit address in the table to 0xFFFE (unknown).
Binding transmissions
Binding transmissions use indirect addressing to send one or more messages to other destination
devices. The XBee module handles an Explicit Addressing ZigBee Command Frame (0x11) using the
Indirect Tx Option (0x04) as a binding transmission request.
Address resolution
The XBee/XBee-PRO ZigBee RF Module use the source endpoint and cluster ID values of a binding
transmission as keys to lookup matching binding table entries. For each matching binding table entry,
the type field of the entry indicates whether to send a unicast or a multicast message. In the case of a
unicast entry, the transmission request is updated with the Destination Endpoint and MAC Address,
and unicast to its destination. In the case of a multicast entry, the device updates the message using
the two least significant bytes of the Destination MAC Address as the groupID, and multicast to its
destinations.