Digi XBee3 DigiMesh 2.4 User Manual

Digi XBee3 DigiMesh 2.4 User Manual

Rf module
Hide thumbs Also See for XBee3 DigiMesh 2.4:
Table of Contents

Advertisement

Quick Links

Digi XBee3® DigiMesh 2.4
RF Module
User Guide

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the XBee3 DigiMesh 2.4 and is the answer not in the manual?

Questions and answers

Summary of Contents for Digi XBee3 DigiMesh 2.4

  • Page 1 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 2 Information in this document is subject to change without notice and does not represent a commitment on the part of Digi International. Digi provides this document “as is,” without warranty of any kind, expressed or implied, including, but not limited to, the implied warranties of fitness or merchantability for a particular purpose.
  • Page 3 To provide feedback on this document, email your comments to techcomm@digi.com Include the document title and part number (Digi XBee3® DigiMesh 2.4 RF Module User Guide, 90002277 B) in the subject line of your email. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 4: Table Of Contents

    Example: enter MicroPython paste mode Example: using the time module Example: AT commands using MicroPython MicroPython networking and communication examples Exit MicroPython mode Other terminal programs Tera Term for Windows Use picocom in Linux Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 5 Exit Command mode Idle mode Transmit mode Receive mode Serial communication Serial interface Serial receive buffer Serial transmit buffer UART data flow Serial data Flow control Clear-to-send (CTS) flow control RTS flow control Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 6 Digital I/O lines Analog and PWM I/O Lines Networking Network identifiers Operating channels Delivery methods Point-to-multipoint DigiMesh networking Broadcast addressing Unicast addressing Route discovery Routing Routers Repeater/directed broadcast MAC layer Encryption Maximum payload Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 7 Sleep guard times Auto-early wake-up sleep option Select sleep parameters Start a sleeping synchronous network Add a new node to an existing network Change sleep parameters Rejoin nodes that lose sync Diagnostics Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 8 DB (Last Packet RSSI) MAC diagnostics commands EA (MAC ACK Failure Count) EC (CCA Failures) BC (Bytes Transmitted) GD (Good Packets Received) TR (Transmission Failure Count) UA (Unicasts Attempted Count) ED (Energy Detect) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 9 I/O settings commands D0 (DIO0/ADC0/Commissioning Configuration) D1 (DIO1/ADC1/TH_SPI_ATTN Configuration) D2 (DIO2/ADC2/TH_SPI_CLK Configuration) D3 (DIO3/ADC3/TH_SPI_SSEL Configuration) D4 (DIO4/TH_SPI_MOSI Configuration) D5 (DIO5/Associate Configuration) D8 (DIO8/DTR/SLP_Request Configuration) D9 (DIO9/ON_SLEEP Configuration) P0 (DIO10/RSSI/PWM0 Configuration) P1 (DIO11/PWM1 Configuration) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 10 Memory access commands AC (Apply Changes) WR (Write) RE (Restore Defaults) Custom default commands %F (Set Custom Default) !C (Clear Custom Defaults) R1 (Restore Factory Defaults) Operate in API mode API mode overview Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 11 Upgrade End Request error statuses OTA file system upgrades OTA file system update process OTA file system updates using XCTU Generate a public/private key pair Set the public key on the XBee3 device Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 12 Perform the OTA file system update OTA file system updates: OEM Generate a public/private key pair Set the public key on the XBee3 device Create the OTA file system image Perform the OTA file system update Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 13: About The Xbee3 Digimesh Rf Module

    (WPAN) adapter, providing local connectivity to wireless networks. Simply plug the XBee3 DigiMesh RF Module into the USB port of a laptop or PC for instant access to an Digi XBee network and its connected devices. This compact, USB-powered wireless adapter enables local network configuration, diagnostics or device monitoring.
  • Page 14: Applicable Firmware And Hardware

    To change protocols, use the Update firmware feature in XCTU and select the firmware. See the XCTU User Guide. Regulatory information See the Regulatory information section of the XBee3 RF Module Hardware Reference Manual for the XBee3 hardware's regulatory and certification information. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 15 Configure the device using XCTU Configure remote devices Configure the devices for a range test Perform a range test XBIB-C Micro Mount reference XBIB-C SMT reference XBIB-CU TH reference XBIB-C-GPS reference Interface with the XBIB-C-GPS module Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 16: Get Started

    Assemble the hardware This guide walks you through the steps required to assemble and disassemble the hardware components of your kit. Plug in the XBee3 DigiMesh RF Module Unplug an XBee3 DigiMesh RF Module Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 17: Plug In The Xbee3 Digimesh Rf Module

    2. Once the XBee module is plugged into the board (and not before), connect the board to your computer using the micro USB cables provided. 3. Ensure the loopback jumper is in the UART position. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 18: Unplug An Xbee3 Digimesh Rf Module

    These instructions show you how to configure a remote device parameter on a remote device. 1. Add two XBee devices to XCTU. 2. Load XBee3 DigiMesh 2.4 firmware onto each device if it is not already loaded. See How to update the firmware of your modules in the XCTU User Guide for more information.
  • Page 19: Configure The Devices For A Range Test

    AP: API Mode Enabled [1] 4. Click the Write radio settings button. 5. Select the other module and click the Default firmware settings button. 6. Configure the following parameters: ID: 2018 NI: REMOTE_DEVICE Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 20: Perform A Range Test

    Perform a range test 1. Go to the XCTU display for radio 1. 2. Click to discover remote devices within the same network. The Discover remote devices dialog appears. 3. Click Add selected devices. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 21 Range test. The Radio Range Test dialog appears. 5. In the Select the local radio device area, select radio 1. XCTU automatically selects the Discovered device option, and the Start Range Test button is active. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 22: Xbib-C Micro Mount Reference

    XBIB-C Micro Mount reference This picture shows the XBee-C Micro Mount development board and the table that follows explains the callouts in the picture. Note This board is sold separately. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 23 Get started XBIB-C Micro Mount reference Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 24 This part is accessible through I2C. Be sure that the XBee that is inserted into the development board has I2C if access to this sensor is desired. XBee Socket This is the socket for the XBee (Micro form factor). Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 25: Xbib-C Smt Reference

    Get started XBIB-C SMT reference XBIB-C SMT reference This picture shows the XBee-C SMT development board and the table that follows explains the callouts in the picture. Note This board is sold separately. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 26 This part is accessible through I2C. Be sure that the XBee that is inserted into the Dev Board has I2C if access to this sensor is desired. XBee Socket This is the socket for the XBee (SMT form factor) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 27: Xbib-Cu Th Reference

    Get started XBIB-CU TH reference XBIB-CU TH reference This picture shows the XBee-CU TH development board and the table that follows explains the callouts in the picture. Note This board is sold separately. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 28 RESET Button Connects to the RESET pin on the XBee Connector to GND when pressed. Breakout This 40 pin connector can be used to connect to various XBee pins as Connector shown on the silkscreen on the bottom of the board. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 29: Xbib-C-Gps Reference

    Note For a demonstration of how to use MicroPython to parse some of the GPS NMEA sentences from the UART, print them and report them to Digi Remote Manager, see Run the MicroPython GPS demo.
  • Page 30 Get started XBIB-C-GPS reference Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 31: Interface With The Xbib-C-Gps Module

    MicroPython capabilities). There are two ways to interface with the XBIB-C-GPS board: through the host board’s Secondary UART or through the I2C compliant lines. The following picture shows a typical setup: Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 32: I2C Communication

    Class UART. Run the MicroPython GPS demo The Digi MicroPython github repository contains a GPS demo program that parses some of the GPS NMEA sentences from the UART, prints them and also reports them to Digi Remote Manager. Note If you are unfamiliar with MicroPython on XBee you should first run some of the tutorials earlier in this manual to familiarize yourself with the environment.
  • Page 33 2. Copy the renamed file onto your device's root filesystem directory. 3. Copy the following three modules from the locations specified below into your device's /lib directory: From the /lib directory of the Digi xbee-micropython repository: urequest.py and remotemanager.py From the /lib/sensor directory of the Digi xbee-micropython repository: hdc1080.py Note These modules are required to be able to run the gpsdemo1.py.
  • Page 34 MicroPython on the XBee3 DigiMesh RF Module Use XCTU to enter the MicroPython environment Use the MicroPython Terminal in XCTU MicroPython examples Exit MicroPython mode Other terminal programs Use picocom in Linux Micropython help () Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 35: Get Started With Micropython

    3. Click this box to select the device and load its current settings. Note To ensure that MicroPython is responsive to input, Digi recommends setting the XBee UART baud rate to 115200 baud. To set the UART baud rate, select 115200 [7] in the BD field and click the Write button.
  • Page 36: Use The Micropython Terminal In Xctu

    4. The code appears in the terminal occupying one line. Each line starts with its line number and three "=" symbols. For example, line 1 starts with 1===. Other terminal programs if you do not use the MicroPython Terminal in XCTU. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 37: Example: Using The Time Module

    2. An optional second parameter used to set the AT command value. If this parameter is not provided, the AT command is queried instead of being set. This value is an integer, bytes object, or string, depending on the AT command. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 38: Micropython Networking And Communication Examples

    RF communication is possible. To follow the upcoming examples, we need to configure a second XBee3 DigiMesh RF Module to use MicroPython. XCTU only allows a single MicroPython terminal. We will be running example code on both modules, which requires a second terminal window. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 39 Identification). node_type: Value of 0, 1 or 2 for coordinator, router, or end device. device_type: The device's 32-bit DD value, also referred to as Digi Device Type; this is used to identify different types of devices or hardware. rssi: Relative signal strength indicator (in dBm) of the node discovery request packet received by the sending node.
  • Page 40 Identifier>!' to individual nodes in the network. For more information, see Example: network Discovery using MicroPython. import xbee # Perform a network discovery to gather destination address: print("Discovering remote nodes, please wait...") node_list = list(xbee.discover()) if not node_list: Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 41 = 'Broadcast' if p['broadcast'] else 'Unicast' print("%s message from EUI-64 %s (network 0x%04X)" % (type, format_eui64(p['sender_eui64']), p['sender_nwk'])) print(" from EP 0x%02X to EP 0x%02X, Cluster 0x%04X, Profile 0x%04X:" % (p['source_ep'], p['dest_ep'], p['cluster'], p['profile'])) print(p['payload']) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 42 World!' Note Digi recommends calling the receive() function in a loop so no data is lost. On modules where there is a high volume of network traffic, there could be data lost if the messages are not pulled from the queue fast enough.
  • Page 43 = "Hello, " + dest_node_id + "!" print("Sending \"{}\" to {}".format(payload_data, repr(dest_addr))) xbee.transmit(dest_addr, payload_data) # Start the receive loop print("Receiving data...") print("Hit CTRL+C to cancel") while True: p = xbee.receive() if p: format_packet(p) else: time.sleep(0.25) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 44: Exit Micropython Mode

    Exit MicroPython mode To exit MicroPython mode: 1. In the XCTU MicroPython terminal, click the green Close button 2. Click Close at the bottom of the terminal to exit the terminal. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 45: Other Terminal Programs

    6. In the Tera Term: Serial port setup window, set the parameters to the following values: Port: Shows the port that the XBee3 DigiMesh RF Module is connected on. Baud rate: 115200 Data: 8 bit Parity: none Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 46: Use Picocom In Linux

    3. Check the directory again and you should see one additional device, which is the XBee3 DigiMesh RF Module. 4. In this case, replace /dev/ttyUSB0 at the top with /dev/ttyUSB<number>, where <number> is the new number that appeared. It connects and shows "Terminal ready". Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 47: Micropython Help ()

    For a list of available modules, type help('modules') ------------------------------------------------------- ------------------------------------------------------ When you type help('modules') at the prompt, it displays all available Micropython modules. ------------------------------------------------------ >>> help('modules') __main__ time array json ubinascii ustruct binascii machine uerrno utime Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 48 -- ('micropython', (1, 10, 0)) platform -- xbee3-DigiMesh byteorder -- little maxsize -- 2147483647 exit -- <function> stdin -- <io.FileIO 0> stdout -- <io.FileIO 1> stderr -- <io.FileIO 2> modules -- {} print_exception -- <function> ------------------------------------------------------- Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 49: File System

    File system For detailed information about using MicroPython on the XBee3 DigiMesh RF Module refer to the Digi MicroPython Programming Guide. Overview of the file system Directory structure Paths Limitations XCTU interface Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 50: Overview Of The File System

    The file system can only have one file open for writing at a time. The file system cannot create new directories while a file is open for writing. Files cannot be renamed. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 51: Xctu Interface

    See the File System manager tool section of the XCTU User Guide for details of its functionality. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 52 Configure the XBee3 DigiMesh RF Module Software libraries Over-the-air (OTA) firmware update Custom defaults Custom configuration: Create a new factory default XBee bootloader Send a firmware image XBee Network Assistant XBee Multi Programmer Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 53: Configure The Xbee3 Digimesh Rf Module

    Setting a custom default that has already been set or setting a custom default to the factory default value will not reclaim the space used by the previous value. The new value takes effect but the old Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 54: Custom Configuration: Create A New Factory Default

    XBee devices use a modified version of Silicon Labs' Gecko bootloader. This bootloader version supports a custom entry mechanism that uses module pins DIN, DTR/SLEEP_RQ, and RTS. To invoke the bootloader, do the following: Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 55: Send A Firmware Image

    Use automatic application updates to keep you up to date with the latest version of the tool. See the XBee Network Assistant User Guide for more information. To install the XBee Network Assistant: Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 56: Xbee Multi Programmer

    Each XBee Multi Programmer board allows you to program up to six devices simultaneously. Connect more boards to increase the programming concurrency. Different board variants cover all the XBee form factors to program almost any Digi RF device. Download the XBee Multi Programmer application from: digi.com/support/productdetail?pid=5641...
  • Page 57: Modes

    Modes Transparent operating mode API operating mode Command mode Idle mode Transmit mode Receive mode Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 58: Transparent Operating Mode

    UART. If CT time (default is 10 seconds) passes without any user input, the device drops out of Command mode and returns to the previous operating mode. You can force the device to leave Command mode by sending CN (Exit Command mode). Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 59: Troubleshooting

    Response to AT commands When using AT commands to set parameters the XBee3 DigiMesh RF Module responds with OK<cr> if successful and ERROR<cr> if not. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 60: Apply Command Changes

    This is the default mode for the XBee3 DigiMesh RF Module. The device is in Receive mode when it is not transmitting data. If a destination node receives a valid RF packet, the destination node transfers the data to its serial transmit buffer. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 61: Serial Communication

    Serial communication Serial interface Serial receive buffer Serial transmit buffer UART data flow Flow control Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 62: Serial Interface

    Devices that have a UART interface connect directly to the pins of the XBee3 DigiMesh RF Module as shown in the following figure. The figure shows system data flow in a UART-interfaced environment. Low-asserted signals have a horizontal line over the signal name. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 63: Serial Data

    The serial transmit buffer collects the data it receives via the RF link until it transmits that data out the serial port. The following figure shows the process of device buffers collecting received serial data. D6 (DIO6/RTS Configuration) D7 (DIO7/CTS Configuration) to set flow control. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 64: Clear-To-Send (Cts) Flow Control

    2. If the host does not allow the device to transmit data out from the serial transmit buffer due to being held off by hardware flow control. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 65 This section specifies how SPI is implemented on the device, what the SPI signals are, and how full duplex operations work. SPI communications Full duplex operation Low power operation Select the SPI port Force UART operation Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 66: Spi Operation

    The following diagram shows the frame format mode 0 for SPI communications. SPI mode is chip to chip communication. We do not supply a SPI communication interface on the XBee development evaluation boards included in the development kit. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 67: Full Duplex Operation

    By default, Digi configures DIO8 (SLEEP_REQUEST) as a peripheral and during pin sleep it wakes the device and puts it to sleep. This applies to both the UART and SPI serial interfaces.
  • Page 68: Select The Spi Port

    Otherwise, the device formats all output in API mode 1 format, as described in Operate in API mode. The attached host is expected to ignore all data that is not part of a formatted API frame. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 69: Force Uart Operation

    Command mode on the UART port. You can then send the appropriate commands to the device to configure it for UART operation. If you write those parameters, the device comes up with the UART enabled on the next reset. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 70 Example: Remote AT command in API mode Periodic I/O sampling Digital I/O change detection I/O line passing Digital line passing Example: Digital line passing Analog line passing Example: Analog line passing Output sample data Output control I/O behavior during sleep Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 71: Digital I/O Support

    Analog input is available on D0 through D3. Configure these pins to 2 (ADC) to enable analog sampling. PWM output is available on P0 and P1, which can be used for Analog line passing. Use M0 (PWM0 Duty Cycle) and M1 (PWM1 Duty Cycle) to set a fixed PWM level. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 72: Monitor I/O Lines

    (IC (DIO Change Detect)) Samples are generated when the state of specified digital input pin(s) change Sample data is sent to DH+DL destination address Can be used with line passing Requires API mode on receiver Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 73: I/O Sample Data Format

    (1) or low (0). If the digital channel mask is 0x0000, then these two bytes are omitted as no digital I/O lines are enabled. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 74: Api Frame Support

    Digital sample data that corresponds with the digital channel mask 0x0408 = 0000 0100 0000 1000b = DIO3 and DIO10 are high, DIO2 and DIO11 are low 03D0 Analog sample data for AD0 0124 Analog sample data for AD1 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 75: Example: Local At Command In Api Mode

    7E 00 19 97 87 00 13 A2 00 12 34 56 78 00 00 49 53 00 01 0C 0C 03 04 08 03 FF 03 FF 50 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 76: Periodic I/O Sampling

    The DH (Destination Address High) and DL (Destination Address Low) commands determine the destination address of the I/O samples. You must configure at least one pin as a digital I/O input on the sending node to generate sample data. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 77: Destination

    This does not affect the ability of the device to receive I/O line data from other devices—only its ability to update enabled outputs. Set IA to 0xFFFF (broadcast address) to affect the output using input data from any device on the network. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 78: Digital Line Passing

    You can explicitly set a PWM output level using the M0 (PWM0 Duty Cycle) and M1 (PWM1 Duty Cycle) commands, when an I/O sample is received that affects a PWM output pin, it returns to its configured state after the PT timeout period expires. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 79: Example: Analog Line Passing

    You can use IO to trigger a sample on change detect. I/O behavior during sleep When the device sleeps (SM ! = 0) the I/O lines are optimized for a minimal sleep current. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 80: Digital I/O Lines

    PWM output pins set by analog line passing are shutdown during sleep and revert to their preset values (M0 and M1) on wake. This happens regardless of whether the timeout has expired or not. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 81: Networking

    Networking Network identifiers Operating channels Delivery methods DigiMesh networking Repeater/directed broadcast Encryption Maximum payload Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 82: Network Identifiers

    TO command apply. Point-to-multipoint transmissions occur between two adjacent nodes within RF range. No route discovery and no routing occur for these types of transmissions. The networking layer is entirely skipped. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 83: Digimesh Networking

    Note Mesh networks use more bandwidth for routing than point-to-multipoint networks and therefore have less available for payloads. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 84: Broadcast Addressing

    Intermediate nodes may either drop or forward a RREQ, depending on whether the new RREQ has a better route back to the source node. If so, the node saves, updates and broadcasts the RREQ. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 85: Routing

    The BH parameter sets the maximum number of hops that a broadcast is repeated, but there are two special cases. If BH is 0 or if BH is > NH, then NH specifies the maximum hops for broadcasts instead. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 86: Encryption

    Transmit Status frame (0x89) with the Status field set to 74 (Data payload too large). In Transparent mode, the firmware splits the data as necessary to cope with maximum payloads. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 87 Local configuration Remote configuration Build aggregate routes RSSI indicators Associate LED The Commissioning Pushbutton Node discovery Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 88: Network Commissioning And Diagnostics

    The device that sends a remote command does not receive a remote command response frame if: 1. It could not reach the destination device. 2. You set the frame ID to 0 in the remote command request. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 89: Build Aggregate Routes

    1. Send the ATAGFFFE command to the aggregator node. This sends an AG broadcast to all of the nodes in the network. 2. All of the nodes internally update only their routing table information to contain a route to the aggregator node. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 90: Replace Nodes

    5. When device B completes transmitting the test link packets, it sends the following data packet to device A's Test Link Result Cluster (0x0094) on endpoint (0xE6). 6. Device A outputs the following information as an API Explicit RX Indicator (0x91) frame: Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 91 A, device B or device C and in all cases the test is the same: device A sends data to device B and reports the results. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 92: Trace Route Option

    Information Packet frames to fail before arriving at the unicast originator. NACK messages Transmit Request (0x10 and 0x11) frames contain a negative-acknowledge character (NACK) API option (Bit 2 of the Transmit Options field). Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 93: Rssi Indicators

    The XBee3 DigiMesh RF Module supports a set of commissioning and LED functions to help you deploy and commission devices. These functions include the Commissioning Pushbutton definitions and the associated LED functions. The following diagram shows how the hardware can support these features. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 94: Definitions

    (NI command), and other relevant data. All devices in API operating mode that receive the Node Identification Indicator frame send it out their UART as a Node Identification Indicator frame. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 95: Node Discovery

    In Transparent mode, the requesting node outputs an extra carriage return following the response from the designated node and the command terminates; it is then ready to accept a new AT Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 96: Destination Node

    If you sent FN remotely, the target devices respond directly to the device that sent the FN command. The device that sends FN outputs a response packet in the same format as an Command Response frame - 0x88. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 97 Sleep coordinator sleep modes in the network Synchronization messages Become a sleep coordinator Select sleep parameters Start a sleeping synchronous network Add a new node to an existing network Change sleep parameters Rejoin nodes that lose sync Diagnostics Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 98: Sleep Support

    4, the XBee3 DigiMesh RF Module is configured to sleep, then wakes once per cycle to check for data from a coordinator. The Cyclic Sleep Remote sends a poll request to the coordinator at a specific Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 99: Asynchronous Cyclic Sleep With Pin Wake-Up Mode (Sm = 5)

    The network uses the most recently set sleep settings. Synchronous sleep support mode (SM = 7) Note Sleep support nodes should be mains powered because they do not sleep. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 100: Synchronous Cyclic Sleep Mode (Sm = 8)

    WH (Wake Host Delay) Sleep pins The following table describes the three external device pins associated with sleep. See the XBee3 RF Module Hardware Reference Manual for the pinout of your device. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 101: Sleep Conditions

    If the device receives serial or RF data in Asynchronous cyclic sleep mode and Asynchronous cyclic sleep with pin wake up modes (SM = 4 or SM = 5), it starts a sleep timer (time until sleep). Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 102: Sleep Coordinator Sleep Modes In The Network

    The following diagram illustrates the synchronization behavior of sleep compatible devices. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 103 Sleep support Synchronization messages Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 104: Become A Sleep Coordinator

    Pushbutton option. Note that when SP and/or ST is changed, it increments the sequence number such that it sends the newest sync message and it has priority to become the sleep coordinator. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 105: Commissioning Pushbutton Option

    The sleep guard time guarantees that Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 106: Auto-Early Wake-Up Sleep Option

    The wake time must be long enough to transmit the desired data as well as the sync message. The ST parameter automatically adjusts upwards to its minimum value when you change other AT commands that affect it (SP, NN, and NH). Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 107: Start A Sleeping Synchronous Network

    5. Wait a sleep cycle for the new node to sync itself. 6. Verify that the node syncs with the network. The associate LED blinks when the device is awake and synchronized. 7. Continue this process until you deploy all of the nodes. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 108: Add A New Node To An Existing Network

    To minimize the risk of a node losing sync and to facilitate the re-syncing of a node that does lose sync, take the following precautions: Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 109: Rejoin Nodes That Lose Sync

    3. Place the node in range of a sleep support node or wake a sleeping node with the Commissioning Pushbutton. 4. The out of sync node receives a sync from the node that is synchronized to the network. It then syncs to the network sleep settings. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 110: Diagnostics

    When you use the SO command to enable this option, a device that is in API operating mode outputs modem status frames immediately after it wakes up and prior to going to sleep. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 111 MicroPython commands File system commands UART pin configuration commands SPI interface commands I/O settings commands I/O sampling commands I/O line passing commands Diagnostics – Firmware/Hardware Information Memory access commands Custom default commands Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 112: Networking Commands

    (TO (Transmit Options) = 0x40). Indirect Messaging Poller Device will periodically poll a coordinator for messages. Parameter range 0 - 6 Parameter Description Routes packets Standard router Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 113: C8 (Compatibility Options)

    Default NI (Network Identifier) Stores the node identifier string for a device, which is a user-defined name or description of the device. This can be up to 20 ASCII characters. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 114 Parameter range A string of case-sensitive ASCII printable characters from 1 to 20 bytes in length. A carriage return or a comma automatically ends the command. Default 0x20 (an ASCII space character) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 115: Nd (Network Discover)

    PROFILE_ID<CR> (2 bytes) MANUFACTURER_ID<CR> (2 bytes) DIGI DEVICE TYPE<CR> (4 bytes. Optionally included based on NO settings.) RSSI OF LAST HOP<CR> (1 byte. Optionally included based on NO settings.) If you send the FN command in Command mode, after (NT*100) ms + overhead time, the command ends by returning a carriage return, represented by <CR>.
  • Page 116: Fn (Find Neighbors)

    STATUS<CR> (1 Byte: Reserved) PROFILE_ID<CR> (2 Bytes) MANUFACTURER_ID<CR> (2 Bytes) DIGI DEVICE TYPE<CR> (4 Bytes. Optionally included based on NO settings.) RSSI OF LAST HOP<CR> (1 Byte. Optionally included based on NO settings.) <CR> If you send the FN command in Command mode, after (NT*100) ms + overhead time, the command ends by returning a carriage return, represented by <CR>.
  • Page 117: Nt (Network Discovery Back-Off)

    Node Discover includes a response entry for itself. Parameter range 0x0 - 0x7 (bit field) Option Description Append the DD (Digi Device Identifier) value to ND responses or API node identification 0x01 frames. Local device sends ND response frame out the serial interface when ND is issued.
  • Page 118: Digimesh Addressing Commands

    I/O samples in both Transparent and API modes. 0x000000000000FFFF is the broadcast address. It is also used as the polling address when the device functions as end device. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 119: Rr (Unicast Mac Retries)

    Disable Route Discovery on all DigiMesh unicasts NACK Enable a NACK messages on all DigiMesh API packets Trace Route Enable a Trace Route on all DigiMesh API packets Reserved <set this bit to 0> Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 120: Ci (Cluster Id)

    If you set this parameter to 0, it disables network ACKs. Initially, the device can find routes, but a route will never be repaired if it fails. Parameter range 0 - 7 mesh unicast retries Default BH (Broadcast Hops) The maximum transmission hops for broadcast data transmissions. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 121: Nh (Network Hops)

    0: Disable aggregator updates. When set to 1, the device does not issue or respond to AG requests. 1: Disable Trace Route and NACK responses. When set to 1, the device does not generate or respond to Trace Route or NACK requests. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 122: Ag (Aggregator Support)

    The time to send a broadcast between two nodes in the network should not exceed the product of the broadcast one hop time (%8) and the number of hops between those two nodes. Parameter range [read-only] Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 123: N? (Network Discovery Timeout)

    This command is write-only and cannot be read. If you attempt to read KY, the device returns an OK status. Set this command parameter the same on all devices in a network. Parameter range 256-bit value (up to 32 hex bytes/64 ASCII bytes) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 124: Rf Interfacing Commands

    CCA to detect energy on the channel. If the device detects energy above the CCA threshold, it will not transmit the packet. The CA parameter is measured in units of -dBm. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 125: Db (Last Packet Rssi)

    You can reset EC to 0 (or any other value) at any time to make it easier to track errors. This value is volatile (the value does not persist in the device's memory after a power-up sequence). Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 126: Bc (Bytes Transmitted)

    To reset the counter to any 16-bit value, append a hexadecimal parameter to the command. This value is volatile (the value does not persist in the device's memory after a power-up sequence). Parameter range 0 - 0xFFFF Default N/A (0 after reset) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 127: Ua (Unicasts Attempted Count)

    Synchronized Cyclic Sleep nodes keep the same wake and sleep cycles for all nodes in the network. Parameter range 0 - 5 Parameter Description No sleep (always awake) Pin sleep Unused Unused Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 128: Sp (Sleep Time)

    Set or read the number of sleep periods value. This command controls the number of sleep periods that must elapse between assertions of the ON_SLEEP line during the wake time of Asynchronous or Synchronous Cyclic Sleep. This allows external circuitry to sleep longer than the SP time. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 129: Wh (Wake Host Delay)

    Enable node type equality (disables seniority based on device type). Disable coordinator rapid sync deployment mode. For asynchronous sleep devices, the following sleep bit field options are defined: Option Always wake for ST time. Default Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 130: Diagnostic - Sleep Status/Timing Commands

    Reads the current network wake time that a device is synchronized to, in 1 ms units. If the device has not been synchronized, then OW returns the value of ST. If the device synchronizes with a sleeping router network, OW may differ from ST. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 131: Ms (Missed Sync Messages)

    BD register. Read the BD command by sending ATBD without a parameter value, and the device returns the value stored in the BD register. Parameter range Standard baud rates: 0x0 - 0x0A Non-standard baud rates: 0x12C - 0x0EC400 Parameter Description 1200 b/s Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 132: Nb (Parity)

    0x00 - 0x02 Parameter Description 0x00 No parity 0x01 Even parity 0x02 Odd parity Default SB (Stop Bits) Sets or displays the number of stop bits for UART communications. Parameter range 0 - 1 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 133: Ft (Flow Control Threshold)

    Set or read the API mode setting. The device can format the RF packets it receives into API frames and sends them out the serial port. When you enable API, you must format the serial data as API frames because Transparent operating mode is disabled. Parameter range 0 - 2 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 134: Ao (Api Options)

    Use this when debugging OTA firmware updates by enabling client-side messages to be sent out of the serial port. Parameter range 0 - 2 Parameter Description Suppress ZCL output Reserved Output supported ZCL packets Default Command mode options The following commands affect how Command mode operates. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 135: Cc (Command Character)

    Enter Command mode. Parameter range 0x2 - 0x6D3 (x 1 ms) Default 0x3E8 (one second) CN (Exit Command mode) Executable command. CN immediately exits Command mode and applies pending changes. Parameter range Default Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 136: Micropython Commands

    2000-01-01T00:00:00 PYE (Erase Bundled Code) PYE interrupts any running code, erases any bundled code and then does a soft-reboot on the MicroPython subsystem. PYV (Version Report) Report the MicroPython version. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 137: File System Commands

    Entries start with zero or more spaces, followed by file size or the string <DIR> for directories, then a single space character and the name of the entry. Directory names end with a forward slash (/) to differentiate them from files. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 138: Fk (File System Public Key)

    The 65-byte public key is required to verify that the file system that is downloaded over-the-air is a valid XBee3 file system compatible with the DigiMesh firmware. For further information, refer to Set the public key on the XBee3 device. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 139: Uart Pin Configuration Commands

    Digital input Digital output, low Digital output, high Default D7 (DIO7/CTS Configuration) Sets or displays the DIO7/CTS configuration (Micro pin 24/SMT pin 25/TH pin 12). Parameter range 0, 1, 3 - 7 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 140: P3 (Dio13/Uart_Dout)

    Digital input Digital output, low Digital output, high Default P4 (DIO14/UART_DIN Configuration) Sets or displays the DIO14/UART_DIN configuration (Micro pin 4/SMT pin 4/TH pin 3). Parameter range 0, 1, 3 - 5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 141: Spi Interface Commands

    Description Disabled SPI_MISO Digital output, low Digital output, high Default P6 (DIO16/SPI_MOSI Configuration) Sets or displays the DIO16/SPI_MOSI configuration (Micro pin 15/SMT pin 16). This only applies to surface-mount and micro devices. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 142: P7 (Dio17/Spi_Ssel Configuration)

    Digital output, high Default P8 (DIO18/SPI_CLK Configuration) Sets or displays the DIO18/SPI_CLK configuration (Micro pin 13/SMT pin 14). This only applies to surface-mount and micro devices. Parameter range 0, 1, 4, 5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 143: P9 (Dio19/Spi_Attn Configuration)

    The following commands configure the various I/O lines available on the XBee3 DigiMesh RF Module. D0 (DIO0/ADC0/Commissioning Configuration) Sets or displays the DIO0/ADC0/CB configuration (Micro pin 31/SMT pin 33/TH pin 20). Parameter range 0 - 5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 144: D1 (Dio1/Adc1/Th_Spi_Attn Configuration)

    Digital output, low Digital output, high Default D2 (DIO2/ADC2/TH_SPI_CLK Configuration) Sets or displays the DIO2/ADC2/TH_SPI_CLK configuration (Micro pin 29/SMT pin 31/TH pin 18). Parameter range SMT/MMT: 0, 2 - 5 TH: 0 - 5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 145: D3 (Dio3/Adc3/Th_Spi_Ssel Configuration)

    Digital output, high Default D4 (DIO4/TH_SPI_MOSI Configuration) Sets or displays the DIO4/TH_SPI_MOSI configuration (Micro pin 23/SMT pin 24/TH pin 11). Parameter range SMT/MMT: 0, 3 - 5 TH: 0, 1, 3 - 5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 146: D5 (Dio5/Associate Configuration)

    Digital output, low Digital output, high Default D8 (DIO8/DTR/SLP_Request Configuration) Sets or displays the DIO8/DTR/SLP_RQ configuration (Micro pin 9/SMT pin 10/TH pin 9). Parameter range 0, 1, 3 - 5 Parameter Description Disabled Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 147: D9 (Dio9/On_Sleep Configuration)

    When configured as PWM output (2): you can use M0 to explicitly control the PWM0 output. When used with Analog line passing, PWM0 corresponds with ADC0. Parameter range 0 - 5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 148: P1 (Dio11/Pwm1 Configuration)

    P2 (DIO12/TH_SPI_MISO Configuration) Sets or displays the DIO12/TH_SPI_MISO configuration (Micro pin 5/SMT pin 5/TH pin 4). Parameter range SMT/MMT: 0, 3 - 5 TH: 0, 1, 3 - 5 Parameter Description Disabled Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 149: Pr (Pull-Up/Down Resistor Enable)

    The following table defines the bit-field map for PR and PD commands. I/O line Micro pin Surface-mount pin Through-hole pin DIO4 DIO3 DIO2 DIO1 DIO0 DIO6 DIO8 DIO14 DIO5 DIO9 DIO12 DIO10 DIO11 DIO7 DIO13 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 150: Pd (Pull Up/Down Direction)

    P0 (DIO10/RSSI/PWM0 Configuration) is configured as PWM0 output, incoming AD0 samples automatically modify the PWM0 value. See PT (PWM Output Timeout). To configure the duty cycle of PWM0: Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 151: M1 (Pwm1 Duty Cycle)

    Associate LED functionality (DIO5/Associate pin), this value determines the on and off blink times for the LED when the device has joined the network. If LT = 0, the device uses the default blink rate of 250 ms. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 152: Cb (Commissioning Button)

    If sent remotely, the sample data is returned as a Command Response frame - 0x88. If the device receives ERROR as a response to an IS query, there are no valid I/O lines to sample. Parameter range Default Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 153: Ir (Sample Rate)

    DIO0 through DIO14 can be sampled using a Change Detect. Set unused bits to 0. Bit field I/O line Micro pin Surface-mount pin Through-hole pin DIO0 DIO1 DIO2 DIO3 DIO4 DIO5 DIO6 DIO7 DIO8 DIO9 DIO10 DIO11 DIO12 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 154: Av (Analog Voltage Reference)

    The sample rate is measured in milliseconds. For more information, see the following commands: D0 (DIO0/ADC0/Commissioning Configuration) through D9 (DIO9/ON_SLEEP Configuration) P0 (DIO10/RSSI/PWM0 Configuration) through P2 (DIO12/TH_SPI_MISO Configuration) Parameter range 1 - 0xFFFF (x 1 ms) Default Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 155: I/O Line Passing Commands

    0 - 0x1770 (x 100 ms) Default T1 (D1 Output Timeout) Specifies how long pin D1 (DIO1/ADC1/TH_SPI_ATTN Configuration) holds a given value before it reverts to configured value. If set to 0, there is no timeout. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 156: T2 (D2 Output Timeout)

    Specifies how long pin D5 (DIO5/Associate Configuration) holds a given value before it reverts to configured value. If set to 0, there is no timeout. Parameter range 0 - 0x1770 (x 100 ms) Default Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 157: T6 (D6 Output Timeout)

    Q0 (P0 Timeout) Specifies how long pin P0 holds a given value before it reverts to configured value. If set to 0, there is no timeout. Parameter range 0 - 0x1770 (x 100 ms) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 158: Q1 (P1 Timeout)

    The following AT commands provide information about the XBee3 DigiMesh RF Module hardware and firmware. VR (Firmware Version) Reads the firmware version on a device. Parameter range 0x3000 - 0x30FF [read-only] Default Set in the firmware Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 159: Vl (Version Long)

    Parameter range [read-only] Default %V (Supply Voltage) Reads the voltage on the Vcc pin in mV. Parameter range 0 - 0xFFFF (in mV) [read only] Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 160: Tp (Temperature)

    1 °C = 0x0001 and -1°C = 0xFFFF Parameter range 0 - 0xFFFF (Celsius) [read-only] Default DD (Device Type Identifier) Stores the Digi device type identifier value. Use this value to differentiate between multiple types of devices. Parameter range 0 - 0xFFFFFFFF Default...
  • Page 161: Memory Access Commands

    The following commands are used to assign custom defaults to the device. Send RE (Restore Defaults) to restore custom defaults. You must send these commands as local AT commands, they cannot be set using Remote AT Command Request frame - 0x17. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 162: F (Set Custom Default)

    RE (Restore Defaults) restores settings to the factory values. Parameter range Default R1 (Restore Factory Defaults) Restores factory defaults, ignoring any custom defaults set using %F (Set Custom Default). Parameter range Default Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 163: Operate In Api Mode

    Operate in API mode API mode overview Use the AP command to set the operation mode API frame format Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 164: Api Mode Overview

    Frame fields Byte Description Start delimiter 0x7E Length 2 - 3 Most Significant Byte, Least Significant Byte Frame data 4 - number (n) API-specific structure Checksum n + 1 1 byte Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 165: Api Operation With Escaped Characters (Ap Parameter = 2)

    2. Append it with the byte you want to escape, XORed with 0x20. In API mode with escaped characters, the length field does not include any escape characters in the frame and the firmware calculates the checksum with non-escaped data. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 166 1. Add all bytes of the packet, except the start delimiter 0x7E and the length (the second and third bytes). 2. Keep only the lowest 8 bits from the result. 3. Subtract this quantity from 0xFF. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 167 FF. 01 + 01 + 50 + 01 + 00 + 48 + 65 + 6C + 6C + 6F + B8 = 2FF Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 168 Aggregate Addressing Update frame - 0x8E Receive Packet frame - 0x90 Explicit Rx Indicator frame - 0x91 I/O Data Sample Rx Indicator frame - 0x92 Node Identification Indicator frame - 0x95 Remote Command Response frame - 0x97 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 169: At Command Frame - 0X08

    The following example illustrates an AT Command frame when you modify the device's NH parameter value. Frame data fields Offset Example Start delimiter 0x7E Length MSB 1 0x00 LSB 2 0x04 Frame type 0x08 Frame ID 0x52 AT command 0x4E (N) 0x48 (H) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 170 Frame descriptions AT Command Frame - 0x08 Frame data fields Offset Example Parameter value (NH2 = two network hops) 0x02 Checksum 0x0D Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 171: At Command - Queue Parameter Value Frame - 0X09

    In this example, you could send the parameter as a zero-padded 2-byte or 4-byte value. Frame data fields Offset Example Start delimiter 0x7E Length MSB 1 0x00 LSB 2 0x05 Frame type 0x09 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 172 AT Command - Queue Parameter Value frame - 0x09 Frame data fields Offset Example Frame ID 0x01 AT command 0x42 (B) 0x44 (D) Parameter value (BD7 = 115200 baud) 0x07 Checksum 0x68 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 173: Transmit Request Frame - 0X10

    See the Transmit Options table below. Set all other bits to 0. options RF data Up to NP bytes per packet. Sent to the destination device. 17-n Transmit Options bit field Bit field Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 174 0x10 Frame ID 0x01 64-bit destination MSB 5 0x00 address 0x13 0xA2 0x00 0x40 0x0A 0x01 LSB 12 0x27 16-bit destination 0xFF MSB 13 network address 0xFE LSB 14 Broadcast radius 0x00 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 175 0x00 0x54 0x78 0x44 0x61 0x74 0x61 0x30 0x41 0x7D 0x33 The device calculates the checksum (on all non-escaped bytes) as [0xFF - (sum of all bytes from API frame type through data payload)]. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 176: Explicit Addressing Command Frame - 0X11

    Destination Endpoint for the transmission. Endpoint Cluster ID 17-18 The Cluster ID that the host uses in the transmission. Profile ID 19-20 The Profile ID that the host uses in the transmission. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 177 Destination endpoint: 0xE8 Cluster ID: 0x11 Profile ID: 0xC105 Payload: TxData Frame data fields Offset Example Start delimiter 0x7E Length MSB 1 0x00 LSB 2 0x1A Frame type 0x11 Frame ID 0x01 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 178 0xFF 0xFE Source endpoint 0xE8 Destination endpoint 0xE8 Cluster ID 0x00 0x11 Profile ID 0xC1 0x05 Broadcast radius 0x00 Transmit options 0x00 Data payload 0x54 0x78 0x44 0x61 0x74 0x61 Checksum 0xA6 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 179: Remote At Command Request Frame - 0X17

    Change the broadcast hops register on a remote device to 1 (broadcasts go to 1-hop neighbors only). Apply changes so the new configuration value takes effect immediately. In this example, the 64-bit address of the remote device is 0x0013A200 40401122. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 180 MSB 5 0x00 0x13 0xA2 0x00 0x40 0x40 0x11 LSB 12 0x22 Reserved 0xFF 0xFE Remote command options 0x02 (apply changes) AT command 0x42 (B) 0x48 (H) Command parameter 0x01 Checksum 0xF5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 181: At Command Response Frame - 0X88

    If you change the BD parameter on a local device with a frame ID of 0x01, and the parameter is valid, the user receives the following response. Frame data fields Offset Example Start delimiter 0x7E Length MSB 1 0x00 LSB 2 0x05 Frame type 0x88 Frame ID 0x01 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 182 AT Command Response frame - 0x88 Frame data fields Offset Example AT command 0x42 (B) 0x44 (D) Command status 0x00 Command data (No command data implies the parameter was set rather than queried) Checksum 0xF0 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 183: Modem Status Frame - 0X8A

    When a device powers up, it returns the following API frame. Frame data fields Offset Example Start delimiter 0x7E Length MSB 1 0x00 LSB 2 LSB 2 0x02 Frame type 0x8A Status 0x00 Checksum 0x75 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 184: Transmit Status Frame - 0X8B

    In the following example, the destination device reports a successful unicast data transmission successful and a route discovery occurred. The outgoing Transmit Request that this response frame came from uses Frame ID of 0x47. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 185 Example Start delimiter 0x7E Length MSB 1 0x00 LSB 2 0x07 Frame type 0x8B Frame ID 0x47 Reserved 0xFF 0xFE Transmit retry count 0x00 Delivery status 0x00 Discovery status 0x02 Checksum 0x2E Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 186: Route Information Packet Frame - 0X8D

    The following example represents a possible Route Information Packet. A device receives the packet when it performs a trace route on a transmission from one device (serial number 0x0013A200 4052AAAA) to another (serial number 0x0013A200 4052DDDD). Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 187 MSB 6 0x9C 0x93 0x81 LSB 9 0x7F ACK timeout count 0x00 TX blocked count 0x00 Reserved 0x00 Destination address MSB 13 0x00 0x13 0xA2 0x00 0x40 0x52 0xAA LSB 20 0xAA Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 188 LSB 28 0xDD Responder address MSB 29 0x00 0x13 0xA2 0x00 0x40 0x52 0xBB LSB 36 0xBB Successor address MSB 37 0x00 0x13 0xA2 0x00 0x40 0x52 0xCC LSB 44 0xCC Checksum 0xD2 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 189: Aggregate Addressing Update Frame - 0X8E

    In the following example, a device with destination address (DH/DL) of 0x0013A200 4052AAAA updates its destination address to 0x0013A200 4052BBBB. Frame data fields Offset Example Start delimiter 0x7E Length MSB 1 0x00 LSB 2 0x12 Frame type 0x8E Format ID 0x00 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 190 Aggregate Addressing Update frame - 0x8E Frame data fields Offset Example New address MSB 5 0x00 0x13 0xA2 0x00 0x40 0x52 0xBB LSB 12 0xBB Old address 0x00 0x13 0xA2 0x00 0x40 0x52 0xAA 0xAA Checksum 0x19 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 191: Receive Packet Frame - 0X90

    RxData. If AO = 0 on the receiving device, it sends the following frame out its serial interface. Frame data fields Offset Example Start delimiter 0x7E Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 192 Frame type MSB 4 0x00 64-bit source address 0x13 0xA2 0x00 0x40 0x52 0x2B LSB 11 0xAA Reserved 0xFF 0xFE Receive options 0x01 Received data 0x52 0x78 0x44 0x61 0x74 0x61 Checksum 0x11 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 193: Explicit Rx Indicator Frame - 0X91

    Example In the following example, a device with a 64-bit address of 0x0013A200 40522BAA sends a broadcast data transmission to a remote device with payload RxData. If a device sends the transmission: Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 194 MSB 4 0x00 0x13 0xA2 0x00 0x40 0x52 0x2B LSB 11 0xAA Reserved 0xFF 0xFE Source endpoint 0xE0 Destination endpoint 0xE0 Cluster ID 0x22 0x11 Profile ID 0xC1 0x05 Receive options 0x02 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 195 Frame descriptions Explicit Rx Indicator frame - 0x91 Frame data fields Offset Example Received data 0x52 0x78 0x44 0x61 0x74 0x61 Checksum 0x68 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 196: I/O Data Sample Rx Indicator Frame - 0X92

    AD1. It reads the digital lines to be 0x0014 and the analog sample value is 0x0225. The complete example frame is: 7E00 1492 0013 A200 4052 2BAA FFFE 0101 001C 0200 1402 25F9 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 197 0xFF LSB 13 0xFE Receive options 0x01 Number of samples 0x01 Digital channel mask 0x00 0x1C Analog channel mask 0x02 Digital samples (if included) 0x00 0x14 Analog sample 0x02 0x25 Checksum 0xF5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 198: Node Identification Indicator Frame - 0X95

    01 Point-to-multipoint b 10 Repeater mode b 11 DigiMesh Reserved Reserved 15-16 64-bit remote 17-24 Indicates the 64-bit address of the remote device that transmitted the address Node Identification Indicator frame. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 199 0x0013A200407402AC and a default NI string sends a Node Identification, all devices on the network receive the following node identification indicator: Frame data fields Offset Example Start delimiter 0x7E MSB 1 0x00 Length LSB 2 0x25 Frame type 0x95 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 200 64-bit remote address MSB 17 0x00 0x13 0xA2 0x00 0x40 0x74 0x02 0xAC LSB 24 NI string 0x20 0x00 Reserved 0xFF 0xFE Device type 0x01 Source event 0x01 Digi Profile ID 0xC1 0x05 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 201 Frame descriptions Node Identification Indicator frame - 0x95 Frame data fields Offset Example Digi Manufacturer ID 0x10 0x1E Digi DD value 0x00 (optional) 0x0C 0x00 0x00 RSSI (optional) 0x2E Checksum 0x33 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 202: Remote Command Response Frame - 0X97

    SL command, and if the frame ID = 0x55, the response would look like the following example. Frame data fields Offset Example Start delimiter 0x7E Length MSB 1 0x00 LSB 2 0x13 Frame type 0x97 Frame ID 0x55 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 203 MSB 5 0x00 0x13 0xA2 0x00 0x40 0x52 0x2B LSB 12 0xAA Reserved 0xFF 0xFE AT commands 0x53 (S) 0x4C (L) Command status 0x00 Command data 0x40 0x52 0x2B 0xAA Checksum 0xF4 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 204 ZCL message output Image Notify Create the Image Notify request Query Next Image request Query Next Image response Image Block request Image Block response Upgrade End request Upgrade End response OTA error handling Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 205: Over-The-Air Firmware/File System Upgrade Process For Digimesh 2.4

    Stack Version This is set to 2 by default. OTA Header An ascii string that can contain a human-readable description of the file. String Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 206: Hardware/Software Compatibility

    'upgrade image' (this is the case for both firmware upgrades and file system updates). Sub- The length of the sub-element data (n) in little-endian format. element length Sub- The data to be transferred. element data Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 207: Parse The Image Blocks

    If the new image is deemed invalid, the running DigiMesh firmware rejects the image and continues operating with the current, valid application. ZCL OTA messaging The following figure provides the messaging sequence between the Server (updater node) and the Client (target node). Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 208: Zcl Message Output

    The server sends the Image Notify message to the client informing the device of the presence of an update image. The Image Notify message is sent when the upgrade process is initiated from the server. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 209: Create The Image Notify Request

    0x13 0xA2 0xFE 0x00 0x00 0x00 0x03 16-bit destination address 0x28 0x2F Source Endpoint 0xE8 Destination Endpoint 0xE8 Cluster ID 0x00 0x19 Profile ID 0xC1 0x05 Broadcast radius 0x00 Transmit options 0x00 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 210 0x0100 - OTA file system image 0x00 Firmware 0x01 Firmware version of the update file. This version should be the version parsed out of the OTA header, in little-endian format. 0x10 0x00 0x00 Checksum 0xE5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 211: Query Next Image Request

    MSB 4 0x00 0x13 0xA2 0xFE 0x00 0x00 0x00 LSB  0x03 16-bit source address 0x28 LSB  0x2F Source Endpoint 0xE8 Destination Endpoint 0xE8 Cluster ID 0x00 0x19 Profile ID 0xC1 0x05 Receive options 0x01 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 212 Transaction sequence 0x00 number ZCL payload Command ID 0x01 Query Next Image request Field control 0x00 Manufacturer ID 0x1E 0x10 Image type 0x00 0x00 Firmware version 0x00 0x10 0x00 0x00 Checksum 0x71 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 213: Query Next Image Response

    Frame ID 0x01 64-bit destination address MSB 5 0x00 0x13 0xA2 0xFE 0x00 0x00 0x00 LSB  0x03 16-bit destination address 0x28 LSB  0x2F Source Endpoint 0xE8 Destination Endpoint 0xE8 Cluster ID 0x00 0x19 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 214 0x10 0x00 0x00 Image Size 0x2E This is the total number of bytes that will be transferred - it is usually the size of the image. 0xF3 0x02 0x00 Checksum 0xE5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 215: Image Block Request

    Frame Type 0x91 64-bit source address MSB 4 0x00 0x13 0xA2 0xFE 0x00 0x00 0x00 LSB  0x03 16-bit source address 0x28 LSB  0x2F Source Endpoint 0xE8 Destination Endpoint 0xE8 Cluster ID 0x00 0x19 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 216 Offset by multiples of Image Block size. For example, 0x00000000 for the first request, 0x00 0x00000040, 0x00000080 and so on. 0x00 0x00 Image Block 0x40 0x30 for encrypted networks 0x38 for unencrypted networks Size Checksum 0x2D Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 217: Image Block Response

    Frame ID 0x01 64-bit destination address MSB 5 0x00 0x13 0xA2 0xFE 0x00 0x00 0x00 LSB  0x03 16-bit destination address 0x28 LSB  0x2F Source Endpoint 0xE8 Destination Endpoint 0xE8 Cluster ID 0x00 0x19 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 218 Image type 0x00 0x0100 - OTA file system image payload payload Data 0x00 payload payload 0x01 Data Firmware version payload payload 0x10 Data payload payload 0x00 Data payload payload 0x00 Data payload payload Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 219 48 byte blocks for encrypted payload payload networks 56 byte blocks for unencrypted networks 0xEB- Data Image Block Data An image block of the size 0x00 payload payload mentioned in Image Block Size 0x4E Checksum Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 220: Upgrade End Request

    64-bit source address MSB 4 0x00 0x13 0xA2 0xFE 0x00 0x00 0x00 LSB  0x03 16-bit source address 0x28 LSB  0x2F Source Endpoint 0xE8 Destination Endpoint 0xE8 Cluster ID 0x00 0x19 Profile ID 0xC1 0x05 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 221 Abort = 0x95 Require More Image = 0x99 Manufacturer ID 0x1E 0x10 Image type 0x00 0x0000 - OTA/OTB file 0x0100 - OTA file system image 0x00 Firmware version 0x01 0x10 0x00 0x00 Checksum 0x3B Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 222: Upgrade End Response

    MSB 5 0x00 0x13 0xA2 0xFE 0x00 0x00 0x00 LSB  0x03 16-bit destination address 0x28 LSB  0x2F Source Endpoint 0xE8 Destination Endpoint 0xE8 Cluster ID 0x00 0x19 Profile ID 0xC1 0x05 Broadcast radius 0x00 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 223 (currently unused) 0x1A 0x53 0x21 Upgrade Time LSB38 0x00 This field is not currently supported—it will be ignored by the device and the device will 0x1B upgrade immediately. 0x53 0x21 Checksum 0xE5 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 224: Ota Error Handling

    Start Delimiter Length 00 17 Frame Type Source Address FF FF FF FF FF FF FF FF Source Address FF FF Source Endpoint Destination Endpoint Cluster ID 00 19 Profile ID C1 05 Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 225: Upgrade End Request Error Statuses

    The status field in the Upgrade End request informs the server of any errors during the download or verification of the OTA firmware update image on the client. The error codes that could be reported Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 226 ZCL OTA Command Status Error Message 0x06 0x94 Client Timed Out Upgrade End Request 0x96 Invalid OTA Image 0x95 Client Aborted Upgrade 0x05 Storage Erase Failed 0x87 Contact Tech Support (Highly unlikely to occur) Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 227: Ota File System Upgrades

    This section contains information on how to update the file system of remote devices over the air. OTA file system update process OTA file system updates using XCTU OTA file system updates: OEM Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 228: Ota File System Update Process

    XCTU provides an ECDSA key pair generator that you can use to store a public/private key pair in .pem files. To access the Generate file system key pair dialog: 1. Open the File System Manager dialog box. 2. Click Keys as shown below. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 229: Set The Public Key On The Xbee3 Device

    Set the public key on the XBee3 device 1. Open the configuration view of the target device in XCTU and go to the File System category. 2. In the File System Public Key row, click Configure. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 230: Create The Ota File System Image

    5. Once the path shows up on the Private Key file field, click Save to assign the .fs.ota an appropriate file name and location. 6. Save the file. You will be prompted with a File system image successfully saved dialog box if the file was successfully generated. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 231: Perform The Ota File System Update

    3. Click the down arrow next to the Update button and choose Update File System. 4. Choose the OTA file system image (.fs.ota) that the target node needs to be updated to. 5. Click Open. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 232: Ota File System Updates: Oem

    OTA file system updates: OEM Use the following steps to perform a file system update OTA using OEM tools: Generate a public/private key pair Set the public key on the XBee3 device Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 233: Generate A Public/Private Key Pair

    Create a staged file system In order to create a usable file system image, first create a 'staged' copy of the file system you want to send on a local device. Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 234: Perform The Ota File System Update

    Perform the OTA file system update The process for performing an OTA file system update is the same as the process for performing an OTA firmware upgrade, as described in Over-the-air firmware/file system upgrade process for Digi XBee3® DigiMesh 2.4 RF Module User Guide...
  • Page 235 OTA file system updates: OEM DigiMesh 2.4. Note that the data that goes in the image blocks starts at the beginning of the image data, after the OTA header and sub-element tag. Digi XBee3® DigiMesh 2.4 RF Module User Guide...

Table of Contents