IP services
XBee Application Service
XBee Wi-Fi RF Module User Guide
62
Update the firmware
To perform firmware updates from the local host, send ZigBee explicit API frames (type 0x11) to the
IP address of the desired node with cluster ID 0x23. For details about the sequence of operations to
follow for firmware updates, see
Update the firmware over-the-air
ZigBee Explicit Transmit Packet - 0x11
has this name because it has fields that are uniquely ZigBee,
such as endpoint and cluster ID. To perform firmware updates the same on all XBee devices, we chose
this frame type, even though all XBee devices (including the XBee Wi-Fi RF Module) do not support the
ZigBee standard.
The XBee Wi-Fi RF Module also supports other ZigBee frame types. These are frame types 0x10, 0x17,
0x8B, 0x90, 0x91, and 0x97. These frame types do not allow XBee Wi-Fi RF Modules to execute the
ZigBee protocol and they do not allow OTA compatibility between the two protocols. If you want to
implement these API frame types on your host program, you can continue to use them, even with the
XBee Wi-Fi RF Module. If you are developing a new host program for the XBee Wi-Fi RF Module, you
should not use these frame types because the WiFi frame types (0x20, and 0xB0) make more sense
and have less API overhead.
Frame 0x11 is required across all protocols for firmware updates.
Network client access
To access this port, send a packet from the client using the UDP protocol on port 0xBEE. Data sent to
this port must have an additional header preceding the data. See the following table for the header's
description.
Field name
Offset
Field
length
Description
Number1
0
2
Can be any random number
Number2
2
2
Number1 ^ 0x4242 (Exclusive OR of Number1 and constant
0x4242)
PacketID
4
1
Reserved for later use (0 for now)
EncPad
5
1
Reserved for later use (0 for now)
Command ID
6
1
0x00 = Data
0x02 = Remote Command
0x03 = General Purpose Memory Command
0x04 = I/O Sample
0x80 = Data Acknowledgment
0x82 = Response to remote command
0x83 = Response to General Purpose Memory Command
Command
options
7
1
bit 0 – encrypted if set (Reserved for later use)
bit 1 – set to request an ACK
bits 2:7 - unused (Set to 0 for forward compatibility.)
All of the commands and command responses that follow are preceded with this application header.