Transmit Request - 0x10
Response frame: Extended Transmit Status - 0x8B
Description
This frame type is used to send payload data as an RF packet to a specific destination. This frame type is typically used for transmitting serial data to one or more remote devices.
The endpoints used for these data transmissions are defined by the SE and EP commands and the cluster ID defined by the CI command—excluding 802.15.4. To define the application-layer addressing fields on a per-packet basis, use the Explicit Addressing Command Request - 0x11 instead.
Query the NP command to read the maximum number of payload bytes that can be sent.
64-bit addressing
- For broadcast transmissions, set the 64-bit destination address to 0x000000000000FFFF
- For unicast transmissions, set the 64-bit address field to the address of the desired destination node
- If transmitting to a 64-bit destination, set the 16-bit address field to 0xFFFE
16-bit addressing
- DigiMesh does not support 16-bit addressing. The 16-bit address field is considered reserved and should be set to 0xFFFE
- For unicast transmissions, set the 16-bit address field to the address of the desired destination node
- To use 16-bit addressing, set the 64-bit address field to0xFFFFFFFFFFFFFFFF
Zigbee-specific addressing information
- A Zigbee coordinator can be addressed in one of two ways:
- Set the 64-bit address to all 0x00s and the 16-bit address to0xFFFE
- Set the 64-bit address to the coordinator's 64-bit address and the 16-bit address to0x0000
- When using 64-bit addressing, populating the correct 16-bit address of the destination helps improve performance when transmitting to multiple devices. If you do not know a 16-bit address, set this field to0xFFFE(unknown). If the transmission is successful, the Extended Transmit Status - 0x8B indicates the discovered 16-bit address.
- When using 16-bit addressing, the following addresses are reserved:
- 0xFFFC = Broadcast to all routers
- 0xFFFD = Broadcast to all non-sleepy devices
- 0xFFFF = Broadcast to all devices, including sleepy end devices
Format
The following table provides the contents of the frame. For details on the frame structure, see API frame format.
Offset | Size | Frame Field | Description |
---|---|---|---|
0 | 8-bit | Start Delimiter | Indicates the start of an API frame. |
1 | 16-bit | Length | Number of bytes between the length and checksum. |
3 | 8-bit | Frame type |
Transmit Request - 0x10 |
4 | 8-bit | Frame ID |
Identifies the data frame for the host to correlate with a subsequent response frame. |
5 | 64-bit | 64-bit destination address |
Set to the 64-bit IEEE address of the destination device. Broadcast address is 0x000000000000FFFF. Zigbee coordinator address is 0x0000000000000000. When using 16-bit addressing, set this field to 0xFFFFFFFFFFFFFFFF. |
13 | 16-bit | 16-bit destination address |
Set to the 16-bit network address of the destination device, if known. If transmitting to a 64-bit address, sending a broadcast, or the 16-bit address is unknown, set this field to 0xFFFE. |
15 | 8-bit | Broadcast radius |
Sets the maximum number of hops a broadcast transmission can traverse. This parameter is only used for broadcast transmissions. If set to0—recommended—the value of NHspecifies the broadcast radius. |
16 | 8-bit | Transmit options |
See the Transmit options bit field table below for available options. If set to 0, the value of TO specifies the transmit options. |
17-n | variable | Payload data |
Data to be sent to the destination device. Up to NP bytes per packet. |
EOF | 8-bit | Checksum | 0xFF minus the 8-bit sum of bytes from offset 3 to this byte (between length and checksum). |
Transmit options bit field
The available transmit options vary depending on the protocol being used. Bitfield options can be combined. Set all unused bits to 0.
Zigbee
Bit |
Meaning |
Description |
0 |
Disable ACK [0x01] |
Disable retries and route repair |
1 |
Reserved | <set this bit to 0> |
2 |
Indirect Transmission [0x04] |
Used for Binding transmissions. |
3 |
Multicast [0x08] |
See Multicast transmissions for more information. |
4 |
Secure Session Encryption [0x10] |
Encrypt payload for transmission across a Secure Session Reduces maximum payload size by 4 bytes. |
5 |
Enable APS encryption [0x20] |
APS encrypt the payload using the link key set by KY Reduces maximum payload size by 4 bytes. |
6 |
Use extended timeout [0x40] |
See Extended timeout for more information. |
Examples
Each example is written without escapes (AP=1) and all bytes are represented in hex format. For brevity, the start delimiter, length, and checksum fields have been excluded.
64-bit unicast
Sending a unicast transmission to a device with the 64-bit address of 0013A20012345678 with the serial data "TxData". Transmit options are set to 0, which means the transmission will send using the options set by the TO command.
The corresponding Transmit Status - 0x89 response with a matching Frame ID will indicate whether the transmission succeeded.
7E 00 14 10 52 00 13 A2 00 12 34 56 78 FF FE 00 00 54 78 44 61 74 61 91
Frame type | Frame ID | 64-bit dest | 16-bit dest |
Bcast radius |
Options | RF data |
---|---|---|---|---|---|---|
0x10 | 0x52 | 0x0013A200 12345678 |
0xFFFE | 0x00 | 0x00 | 0x547844617461 |
Request | Matches response | Destination | Unknown | N/A | Will use TO | "TxData" |
64-bit broadcast
Sending a broadcast transmission of the serial data "Broadcast" to neighboring devices and suppressing the corresponding response by setting Frame ID to 0.
7E 00 17 10 00 00 00 00 00 00 00 FF FF FF FE 01 00 42 72 6F 61 64 63 61 73 74 60
Frame type | Frame ID | 64-bit dest | 16-bit dest |
Bcast radius |
Tx Options | RF data |
---|---|---|---|---|---|---|
0x10 | 0x00 |
0x00000000 |
0xFFFE | 0x01 | 0x00 | 0x42726F616463617374 |
Request | Suppress response | Broadcast address | Reserved | Single hop broadcast | Will use TO | "Broadcast" |
16-bit unicast
Sending a unicast transmission to a device with the 16-bit address of 1234 with the serial data "TxData". Disable retries and acknowledgments to prioritize performance over reliability. The corresponding Transmit Status - 0x89 response with a matching Frame ID can be used to verify that the transmission was sent.
7E 00 14 10 8D FF FF FF FF FF FF FF FF 12 34 00 01 54 78 44 61 74 61 DD
Frame type | Frame ID | 64-bit dest | 16-bit dest |
Bcast radius |
Tx Options | RF data |
---|---|---|---|---|---|---|
0x10 | 0x8D | 0xFFFFFFFF FFFFFFFF |
0x1234 | 0x00 | 0x01 | 0x547844617461 |
Request | Matches response | Use 16-bit addressing | Destination | N/A | Disable retries | "TxData" |