(0x04) ZDO Message Frames
This section describes the two ways, unicast and broadcast, for the Host to send a ZDO command. It also describes the commands sent by the Module to communicate ZDO-level information to the Host.
( PH:0x04, SH:0x01 ) - Send ZDO Unicast Command
Overview
The Send ZDO Unicast command is sent by the Host to the Module in order to prompt the Module to send a ZDO message to a single destination node. The command configures the following options:
- custom sequence numbers
- reception of APS ACK
- reception of ZDO Response Received
Payload
Byte Index | Field Name | Notes |
|---|---|---|
0,1 | Destination Node ID | |
2,3 | ZDO Command ID | |
4 | Response Options | 8-bit Bitmap: Bit 0: Custom Sequence Number |
5 | Transaction Sequence Number | Only used if bit 0 in the Response Options field is set. The Host must apply a number in the range of 0-127. |
6 | Payload Length | |
7..n | Payload |
Effect on Receipt
The Module will attempt to issue the ZDO message over the network. The status of the transmission and its assigned sequence number will be relayed to the Host via a ZDO Send Status command.
To know whether the destination node has successfully received a message, the Host should enable reception of APS ACK status messages via the Response Options field. On reception the Module relays these messages to the Host as ZDO APS Ack commands.
If the given message is a request (e.g., ZDO Bind Request or ZDO Simple Descriptor Request) and the Host expects a response, it should enable the option to receive a ZDO Response Received, via the Response Options field. On reception of a message with a matching sequence number, the Module will relay the response to the Host via the ZDO Response Received command. If no response is received within a given interval, the Module will instead issue a ZDO Response Timeout command to the Host.
Allowed Context
Network Up.
Sent By Host/Module
Host.
( PH:0x04, SH:0x02 ) - Send ZDO Broadcast Command
Overview
The Send ZDO Broadcast command is sent by the Host to the Module to prompt the Module to broadcast a ZDO Message across the network.
Payload
Byte Index | Field Name | Notes |
|---|---|---|
0 | Broadcast Address | 0xFF = All Devices Any other address entered will default to 0xFD |
1 | Enable reception of APS ACK status messages (not used) | |
2 | Radius | Number of network hops this message may travel 0 = Maximum |
3,4 | Command ID | |
5 | Response Options | 8-bit Bitmap: Bit 0: Custom Sequence Number |
6 | Transaction Sequence Number | Only used if bit 0 in the Response Options field is set. The Host must apply a number in the range of 0-127. The range 128-255 is reserved for commands generated by the Module. |
7 | Payload Length | |
8..n | Payload |
Effect on Receipt
The Module will try to broadcast the message over the network. The status of the transmission and its assigned sequence number will be relayed to the Host via a ZDO Send Status command.
Allowed Context
Network Up.
Sent By Host/Module
Host.
( PH:0x04, SH:0x03 ) - ZDO Send Status Command
Overview
The ZDO Send Status message is sent by the Module to the Host after the transmission of a Send ZDO Unicast or Send ZDO Broadcast. The message conveys the success or failure of the transmission. If the Status indicates Success, the message will also convey a value for the Transaction Sequence Number assigned to it.
Payload
Byte Index | Field Name | Notes |
|---|---|---|
0 | Status | 0x00 = Success, the message was successfully transmitted |
1 | Transaction Sequence Number | The ZDO Transaction Sequence Number assigned to this message, with a valid value in place only if the Status indicates Success. |
Effect on Receipt
No action is expected from the Host as the command is for notification purposes only. The Host may choose to display the Status in some manner, or it may also choose to re-send the message if the Status indicates an error occurred.
The Host also retains the option to store the Transaction Sequence Number associated with any outgoing message, such that it may match received ZDO Send Status messages to the requests that triggered them.
Allowed Context
All Contexts.
Sent By Host/Module
Module.