User Manual
Table Of Contents
- 1. Overview
- 2. RF Module Operation
- 3. XBee ZigBee Networks
- Introduction to ZigBee
- ZigBee Stack Layers
- Networking Concepts
- ZigBee Application Layers: In Depth
- Coordinator Operation
- Router Operation
- End Device Operation
- Channel Scanning
- 4. Transmission, Addressing, and Routing
- 5. Security
- 6. Network Commissioning and Diagnostics
- 7. Managing End Devices
- 8. XBee Analog and Digital IO Lines
- 9. API Operation
- API Frame Specifications
- API UART Exchanges
- Supporting the API
- API Frames
- AT Command
- AT Command - Queue Parameter Value
- ZigBee Transmit Request
- Explicit Addressing ZigBee Command Frame
- Remote AT Command Request
- Create Source Route
- AT Command Response
- Modem Status
- ZigBee Transmit Status
- ZigBee Receive Packet
- ZigBee Explicit Rx Indicator
- ZigBee IO Data Sample Rx Indicator
- XBee Sensor Read Indicator
- Node Identification Indicator
- Remote Command Response
- Over-the-Air Firmware Update Status
- Route Record Indicator
- Many-to-One Route Request Indicator
- Sending ZigBee Device Objects (ZDO) Commands with the API
- Sending ZigBee Cluster Library (ZCL) Commands with the API
- Sending Public Profile Commands with the API
- 10. XBee Command Reference Tables
- 11. Module Support
- Appendix A: Definitions
- Appendix B: Agency Certifications
- Appendix C: Migrating from ZNet 2.5 to XBee ZB
- Appendix D: Additional Information
XBee®/XBee‐PRO®ZBRFModules
©2011DigiInternational,Inc. 121
Sending ZigBee Device Objects (ZDO) Commands with the API
ZigBee Device Objects (ZDOs) are defined in the ZigBee Specification as part of the ZigBee Device Profile. These
objects provide functionality to manage and map out the ZigBee network and to discover services on ZigBee
devices. ZDOs are typically required when developing a ZigBee product that will interoperate in a public profile such
as home automation or smart energy, or when communicating with ZigBee devices from other vendors. The ZDO
can also be used to perform several management functions such as frequency agility (energy detect and channel
changes - Mgmt Network Update Request), discovering routes (Mgmt Routing Request) and neighbors (Mgmt LQI
Request), and managing device connectivity (Mgmt Leave and Permit Join Request).
The following table shows some of the more prominent ZDOs with their respective cluster identifier. Each ZDO
command has a defined payload. See the "ZigBee Device Profile" section of the ZigBee Specification for details.
The Explicit Transmit API frame (0x11) is used to send ZigBee Device Objects commands to devices in the network.
Sending ZDO commands with the Explicit Transmit API frame requires some formatting of the data payload field.
When sending a ZDO command with the API, all multiple byte values in the ZDO command (API payload) (e.g. u16,
u32, 64-bit addresses) must be sent in little endian byte order for the command to be executed correctly on a
remote device.
For an API XBee to receive ZDO responses, the AO command must be set to 1 to enable the explicit receive API
frame.
The following table shows how the Explicit API frame can be used to send an "Active Endpoints" request to discover
the active endpoints on a device with a 16-bit address of 0x1234.
ZDO Command Cluster ID
Network Address Request 0x0000
IEEE Address Request 0x0001
Node Descriptor Request 0x0002
Simple Descriptor Request 0x0004
Active Endpoints Request 0x0005
Match Descriptor Request 0x0006
Mgmt LQI Request 0x0031
Mgmt Routing Request 0x0032
Mgmt Leave Request 0x0034
Mgmt Permit Joining Request 0x0036
Mgmt Network Update Request 0x0038










