
RFD900x Asynchronous firmware
User Manual
Configuration and usage guide
Flash Programmer User Manual

RFDesign Pty Ltd
7/1 Stockwell Place
Archerfield, QLD 4108
rfdesign.com.au
Table of contents
1 Introduction .................................................................................................................................... 3
2 Software/GCS Support .................................................................................................................... 4
3 AT commands .................................................................................................................................. 5
3.1 Setting up data encryption ...................................................................................................... 8
3.2 Setting the air data rate .......................................................................................................... 8
4 Asynchronous Network ................................................................................................................. 10
4.1 Forwarding ............................................................................................................................ 11
5 FAQ ................................................................................................................................................ 13
5.1 How many antennas do I need to use? ................................................................................. 13
5.2 How do I connect the FTDI cable to the modem? ................................................................ 13
5.3 What do I need to upload the firmware or to change the modem configuration? .............. 13
6 Useful links .................................................................................................................................... 14
7 Document revision history ............................................................................................................ 15

1 Introduction
The RFD900x radio modem can be loaded with three official firmware releases to achieve different
communication architectures and node topologies. So far, the available firmware versions are:
• Peer-to-peer (P2P)
• Asynchronous mesh
• Multipoint network
This document describes the configuration of the asynchronous, single hop (or fixed forwarding), mesh
network release. This firmware version is not loaded in the RFD900x radio modem by default. This
means, you must download the firmware from the RF Design support website and flash it to the radio.
Use the latest version of the RF Design modem tools (see Useful Links) to update the firmware.
Figure 1-1 depicts an asynchronous non-forwarding mesh network diagram. In this configuration, all
nodes have an equal role. The nodes don’t require synchronisation and communicate with other nodes
within RF range.
Note: Due to the limited number of channels available on the 868 MHz band this firmware may not
operate as intended and is not recommended for 868X modems or reduced band settings less than
915-928MHz on 900X modems
Note: It is not recommended to use the PPM feature with asynchronous firmware. Latency and
reliability will vary with number of nodes and data traffic.
Figure 1-1: Asynchronous non-hopping mesh topology

2 Software/GCS Support
The asynchronous software solution (see “Useful Links”) is multi-node meshing solution for RF Design
X series modems.
The modems feature a boot loader to facilitate field upgrade of the modem firmware via the serial
port. This is most easily performed by using the latest version RFD Modem tools (see “Useful links”)
Parameters such as power levels, air data rates and serial speeds etc can all be custom set by the user
using the AT Command set, the RFD Modem Tools V2.6 or later and APM Planner. (Note some
parameters are only settable using the AT commands and that RT commands for changing remote
settings is not supported)
The default serial settings for the asynchronous firmware is:
• 115200 baud rate
• No parity
• 8 data bits
• 1 stop bit

3 AT commands
The RFD900x modem can supports an AT modem command set for configuration. The AT command
mode can be entered by using the ‘+++’ sequence in a serial terminal connected to the radio. You
should allow at least one second after the sending of data before entering the sequence to ensure that
the modem will correctly enter command mode.
If successful, an ‘OK’ prompt will be displayed on the screen and the RFD900x modem will stop
displaying incoming data from the remote modem. In command mode, you can use the AT commands
to control the local RFD900x modem.
Note: RT commands are not currently supported in the asynchronous firmware.
To set certain registers to a value, follow these steps:
1. Use the command ATSn=X where n is the register number and X is the value to assign.
2. Use the command AT&W to save the new values to the RFD900x modem.
3. Use the command ATZ to reboot the RFD900x modem for changes to take effect.
Table 3-1 shows a gives a list of AT commands and their description.
Shows all user settable EEPROM parameters and their values
Shows all user settable EEPROM parameters and their possible range
Displays TDM timing report
Displays RSSI signal report
Display Device 64-bit unique ID
Display node ID [multipoint only]
Displays radio 'S' parameter number ‘n’
Sets radio 'S' parameter number ‘n’ to ‘X’
Displays radio 'R' parameter number ‘n’
Sets radio 'R' parameter number ‘n’ to ‘X’
Resets all parameters to factory defaults
Writes current parameters to EEPROM
Reset and enter boot mode
Change TDM phase (debug only)

Record default PPM stream for PPM output (vehicle side) (Not recommended.
Latency will vary with number of nodes and data traffic)
Disables debugging report
Enables RSSI debugging report
Enables TDM debugging report
Set new encryption key (128-bit AES in 16 hex bytes e.g. 5A02D5BB...)
Shows current encryption key
Shows GPIO configuration and state
Sets input GPIO pin to mirror on remote radio (local GPIO must be set to input
and remote GPIO pin must be set to output)
Sets output GPIO X to state S
Show the forwarding table and forwarding buffer size, set MAX_DATA lower to get more
forwarding buffer
Show element x of forwarding table
Set element x to forward from address Src to Address Dst
Table 3-1: AT Commands and their description
Table 3-2 shows more details about the parameters that can be set in the RFD900x modem.
Must be the same
at both ends of
the link?
FORMAT
This is for EEPROM version, it should not
be changed. It is set by the firmware
SERIAL_SPEED
Serial speed in ‘one-byte form’. Accepted
values are 1, 2, 4, 9, 19, 38, 57, 115, 230,
460, 571 corresponding to 1200bps,
2400bps, 4800bps, 9600bps, 19200bps,
38400bps, 57600bps, 115200bps,
230400bps, 460800bps, 571428bps and
1000000 bps respectively.
AIR_SPEED
Air data rate in ‘one-byte form’. Accepted
values are 64,125,250,500,830
corresponding to 64000bps, 125000bps,
25000bps, 500000bps and 830000bps
respectively.
MAX_DATA
Maximum size of packet data section
MAX_RETRIES
Maximum number of retries

GLOBAL_RETRIES
Maximum number of retries for broadcast
messages
SER_BREAK_DETECT_MS
Time in ms units for break detection. Set
to 0 to turn this feature off
TXENCAP
Transmitted data encapsulation format. 0=
none, 1=MAV, 2=SAS
RXENCAP
Received data encapsulation format. 0=
none, 1=MAV, 2=SAS
NETID
Network ID. It should be the same on both
modems
NODEID
ID used to identify the local node.
DESTID
ID used to identify the remote node. Set
the value to 65535 (32768 from V2.45F)*
to broadcast to all nodes. Cannot be the
same as NODEID.
TXPOWER
Transmit power in dBm. Maximum is
30dBm
MAVLINK1
Enables or disables the MAVLink framing
and reporting
MIN_FREQ
Min frequency in KHz
MAX_FREQ
Max frequency in KHz
NUM_CHANNELS
Number of frequency hopping channels
LBT_RSSI
Listen before talk threshold
(This parameter shouldn’t be changed)
RTSCTS
Enable or disable Ready-to-send and
Clear-to-send flow control.
Encryption Level
Encryption level 0=off, 1=128bit AES
R/C input GPIO1.1
Set GPIO 1 (Pin 15) as R/C(PPM) input
(Not recommended. Latency will vary with
number of nodes and data traffic)
R/C output GPIO1.1
Set GPIO 1 (Pin 15) as R/C(PPM) output
(Not recommended. Latency will vary with
number of nodes and data traffic)

ANTMODE
0= Antenna 1 1= Antenna 1 TX and
antenna 2 RX 2= Diversity
Table 3-3: RFD900x parameters
Notes:
1
Injects RSSI packet when MAVLink protocol used and heartbeat packet detected.
3.1 Setting up data encryption
The 128-bit AES data encryption may be set, enabled and disabled using the AT commands (see Table
3.1). The encryption key can be any 32-character hexadecimal string.
To encrypt a device, the encryption mode must first be enabled by typing ‘ATS15=1’ in the command
terminal. Once the encryption mode is active, an encryption key may be set after typing ‘AT&E’ into
the command terminal. The encryption key may be of any 32-character hexadecimal string of the users
choosing. Any devices with different encryption settings will not communicate.
After entering command mode, send the following commands to set encryption on using an arbitrary
32 hexadecimal character key. For example:
ATS15=1
AT&E=5AEEF103125C0AA233678909160111CA
AT&E=1234567890ABCDEF1234567890ABCDEF
AT&W
ATZ
3.2 Setting the air data rate
An air speed of 64kps will give a maximum range of about 40km in open space depending on antenna
configurations, terrain and weather. Reducing the air speed can help to increase the range and link
quality limits the data throughput.
Considerations for the air speed setting:
• The desired range
• The amount of data across the link
• Whether you send data in one direction or both
• Whether you have enabled ECC or not
• Whether you have adaptive flow control

It is important to note that when using asynchronous firmware, the air rate should be set to a lower
value then the baud rate.
An example of setting the air data rate:
ATS2=250
AT&W
ATZ

4 Asynchronous Network
The asynchronous mesh firmware offers a straight forward communication option that allows the user
to quickly transmit and receive data between two or more all nodes. Figure 4-2 depicts this
communication topology. If all the nodes are within range and have compatible parameters,
communication between them will succeed.
Figure 4-2: Asynchronous non-hopping mesh topology
Each node can only communicate to other nodes within its RF range. Also, it is mandatory to assign a
different node id to each node for the network to work properly. An example of setting the NODEID of
the modem:
ATS10=5
AT&W
ATZ
It is possible to address data to a remote node. To do so, set the DESTID parameter to be the same as
the node id of the target. For example:
ATS11=6
AT&W
ATZ

The modem can also be set to send message to the entire network:
ATS11=65535 (32768 after V2.45F)
AT&W
ATZ
As messages are transmitted asynchronously, whenever a package collision happens, the radio will
automatically resend it without user intervention. This behaviour can be disabled by changing the S4
parameter to 1 as follows:
ATS4=1
AT&W
ATZ
4.1 Forwarding
A fixed forwarding node can be added to relay data from known nodes to known destination nodes.
This can be used to communicate without direct link between modems by passing data through an
intermediate node.
i.e. 3 nodes located in a straight line all spaced at the maximum transmission range from the next
(1,2,3). Data flow is node 1 to node 3 and vice versa using node 2 as a relay node.
Node 1: ATS10 = 1, ATS11 =3 // set node 1, destination 3
Node 3: ATS10 = 3, ATS11 =1 // set node 3, destination 1
Node 2: ATS10 = 2, ATS11 =don't care, AT+F0=1,3, AT+F1=3,1 // forward 1->3, and 3->1
(Node 1)
ATS11=3 // sets node 1, destination 3
AT&W
ATZ
(Node 2)
AT+F0=1,3 // sets forwarding table element 0 to forward from node1
to node3
AT+F1=3,1 // sets forwarding table element 0 to forward from node1
to node3
AT&W
ATZ

(Node 3) // sets node 3, destination 1
ATS11=1
AT&W
ATZ
You can add up to ten forwarding paths to the array. This would allow up to five nodes to pass data in
both directions.

5 FAQ
5.1 How many antennas do I need to use?
One is the minimum. Two is recommended best configured at right angles to each other.
5.2 How do I connect the FTDI cable to the modem?
The black cable of the FTDI (pin 1) should connect to pin 1 on the modem as shown in Figure 6-2.
Figure 6-2: An FTDI cable connected to the RFD900x modem
5.3 What do I need to upload the firmware or to change the modem
configuration?
Download the latest firmware (see “Useful Links”). Download the RF Design Modem Tools (see “Useful
Links”). Connect the FTDI cable to the modem and to a computer. Use the Modem Tools to upload the
latest firmware or to change the modem configuration (see “RF Design Modem Tools User Manual”).

6 Useful links
RFD900x Firmware
http://rfdesign.com.au/firmware/
RFD SiK (aka peer to peer) firmware is the standard firmware loaded on the modem based on the open
source SiK development
RFD Asynchronous the firmware as outlined in this datasheet
RF Design Modem Tools
http://files.rfdesign.com.au/tools/
FTDI Cable documentation
http://www.ftdichip.com/Support/Documents/DataSheets/Cables/DS_TTL-232R_CABLES.pdf

7 Document revision history
Updated settings, values and information for current firmware versions
and added new forwarding commands and description