Using Repeaters in a Wireless Network Contents Technical Support Live Chat: www.maxstream.net E-mail: firstname.lastname@example.org Phone: (801) 765-9885 XST- AN022a - July 2006 Abstract 2 Repeater Examples 2 Repeater Network Configurations 3 Parameter Configuration 6 Avoiding Data Collisions 6 Repeater Exercise 7 Constraints 7 Abstract Repeaters can be used in a wireless network using the XStream or XTend Radio Modems to extend range and reliability. Two repeater network configurations are available: Basic Broadcast and Basic Addressed Repeater modes. Parameter configurations can be used to configure the radios to operate in a repeater network. The following scenarios will be discussed: • Repeater Examples • Repeater Network Configurations • Parameter Configuration • Avoiding Data collisions • Repeater Exercise • Constraints Repeater Examples If an RF link is weak, a radio is out-of-range or a difficult RF environment is present; repeaters can be used to extend the effective range and reliability of the RF network. Simple examples will be used in this application note to explicate repeater operations. Radio modems will be referenced as Repeater Nodes and End Nodes. Both Repeater Nodes and End Nodes can source data, allowing connection to host devices. Repeater Nodes however, are able to repeat information in a simple store and forward fashion. As an example, one End Node (can be a base or remote) must send a message to another End Node [Figure 1]. Because the End Node is out of range of the base radio, a repeater is used to forward information from the Base to the End Node. Figure 1: Simple Repeater Network Repeaters can be used in a variety of configurations. Below, Figure 2 describes a few of these possible configurations. It is possible to use the radios in a combination of any of the below configurations. Figure2: Simple Repeater Networks (R = Repeater, EN = End Node) MaxStream uses a sophisticated algorithm to propagate each RF packet through the entire repeater network. Within a repeater network, only Repeater Nodes and repeater End Nodes are defined. Repeater Nodes will forward messages on to other radios within range; End Nodes will not. The algorithm maintains a list of messages previously received in a buffer. Messages already found in the buffer will be discarded. This will eliminate End Nodes receiving multiple copies of a packet from more than one source, and also eliminate multiple repeaters within range of each other from continually passing messages in an infinite loop. All radios in a particular network, where one or more repeaters may be used, must operate using firmware with repeater functionality to ensure the propagation algorithm operates properly. Repeater Network Configurations Two repeater network configurations available are Basic Broadcast and Basic Addressed Repeater modes. When in Repeater Mode, the network will repeat each message among all available modems exactly one time. This mechanism eliminates the need for configuring specific routes as with a typical mesh, eliminating routing tables, simply flooding the entire network with the necessary information so as to reach all points in the network. The differences between the Broadcast and Addressed repeaters are as follows: Broadcast Repeater: A transmission from one radio will be propagated through the network to be received by all radios in the system. With the transmitting radio’s destination address set to the broadcast address (DT=FFFF), each Repeater Node will pass the packet out its serial port and forward it on to any other radio within range, regardless of the receiver’s address. This can be to another repeater or a repeater End Node. End Nodes will accept the packet, pass it out the serial port, but not forward the message on to other radios in the system. Example: Figure 3: Example Broadcast Repeater Configuration Let’s say we wish to send a message from one source (End Node 1 in this instance) to all of the nodes in the system. This is similar to the way a Modbus protocol would operate. Each node, including the Repeater Node will be issued its own unique MY (source address). Since the DT (destination address) is set for FFFF each packet will be broadcast to each radio in the system. Each radio will then send the message out their serial ports. Addressed Repeater (Transmission intended for a specific radio): The transmitting radio’s DT (Destination Address) is set to match an intended receiver’s MY (Source Address), even if it is a few repeater “hops” away. Each radio in the network will receive the packet. A Packet ID (PID) will be compared against the MY of the receiving radio. If the parameters match, and the radio is a Repeater Node, the packet is sent out the serial port of the receiver and not repeated on. If the parameters do not match, indicating the radio is not the intended recipient the packet will be repeated and not sent out the radio’s serial port. If the radio is a repeater End Node and the parameters match, the packet will be sent out the serial port. If the parameters do not match, the message is discarded. Example: Figure 4: Example Addressed Repeater Configuration To communicate within an addressed repeater network, each radio in the network needs a unique MY (source address). The MY parameter of the base node will be set to “0” and will accept messages from any source. Each other node in the network will be assigned unique MY addresses. The base will simply change its DT address to match the MY parameter of the node with which it wishes to communicate. The Repeater Node will repeat the message on unless the message is addressed for the Repeater Node itself. * Note: The RN parameter is necessary in two situations: in networks where two-way communication takes place, namely a request is sent and a transmission is expected back; or in a large network consisting of multiple Repeater Nodes. In the algorithm that defines the RN parameter, the delay RN will provide will get very large very quickly. Typically, RN is kept as small as possible. Set RN = 0 (no delays) for small networks with few repeaters, repeaters that are not within range of each other, or in situations where communication is only necessary in one direction. Set RN = 1 for systems with 2 to 5 repeaters that may be within range of each other. Please reference the product manual and the ‘Avoiding Data Collisions’ section of this document for further information on the RN algorithm. Parameter Configuration Take the following steps when implementing a repeater configuration: 1. If using an XTend interface board (XTIB-R), set DIP Switches 1, 5 and 6 to their ON (up) positions (User-defined mode). DIP switches 5 and 6 mostly pre-configure the radio’s addressing parameters. In user-defined mode, these parameters will not be set. 2. Assign each radio a unique MY (Source Address) value. (The AM (Auto-set MY) command, set with AT commands through a terminal, will configure a unique source address based on the radio’s serial number.) This is essential because a unique packet ID on each RF packet is based on the originator’s MY value. 3. Set RR (Retries) parameters to “0”. The default on the XTend is ‘0x0A’, representing ten retries in hex. The XStream defaults at no retries. 4. Configure one or more radios as Repeater Nodes in the system (MD = 5 for the XTend, MD = 3 for the XStream). 5. Configure remote nodes that are not intended be repeaters as repeater End Nodes (MD = 6 for the XTend, MD = 4 for the XStream). MD = 0 (default) is an invalid setting when using Repeater Mode. 6. Enable Basic Broadcast Communications (DT = 0xFFFF) OR Addressed Broadcast Communications (DT specifies a specific destination). It is allowable to use a combination of the two within a single network. If it is known which radios will need to be repeaters and which radios will not, it is recommended to keep the number of repeating radios to a minimum. This will prevent the radios from unnecessarily retransmitting packets, limiting RF traffic. Avoiding Data Collisions A transmitted packet may be received by more that one repeater at the same time. In order to reduce the probability that the Repeater Nodes will transmit at the same instant, resulting in a collision and possible data loss; an algorithm has been developed that will allow a variable back-off prior to retransmission of the packet. The algorithm allows radios that receive the packet with a stronger RF signal (RSSI) to have the first opportunity to retransmit the packet. The RN (Delay Slots) parameter is used to configure this delay. As a packet propagates through the repeater network, if any node receives the data and generates a quick response, the response needs to be delayed so as not to collide with subsequent retransmissions of the original packet. To reduce collisions, both Repeater and End Node radios in a repeater network will delay transmission of data shifted in the serial port to allow any repeaters within range to complete their retransmissions. Repeater Exercise This repeater exercise will use a three-radio configuration as illustrated in Figure 1. We will send a message from one End Node to another by means of a Repeater Node. This exercise will require three XStream or three XTend radios with the same version of repeater firmware. If you do not know if the firmware version you currently have loaded on your radios has repeater capability, please consult the firmware history for XStream, or firmware history for XTend listed on MaxStream’s website. Configure your radios’ parameters as indicated in the Parameter Configuration section of this Application Note. As one way to verify repeater operation, connect the End Nodes to COM ports on your computer. Unscrew the antennas and place the radios far enough away from each other so the End Nodes are effectively out of range of one another. You can verify this by bringing up two X-CTU terminal screens, with each radio connected to a different COM port. What is typed on one terminal will not appear on the other, but if the End Nodes were brought closer together, typing on one terminal could then be seen using the other terminal. Placing the two End Nodes apart from each other, again disabling communication, power up the Repeater Node with its antenna connected. With the antenna on the radio, the Repeater will now be “in range” of both End Nodes. Characters typed on one End Node will be sent through the Repeater Node to the other End Node. Turning the power on and off the Repeater Node will verify that the packets are being sent through the repeater. Constraints The values added by repeaters are not without network constraints. The following are some of the limitations when using repeater networks. Because each radio needs to maintain a log of received packets, it is required that each radio in the repeater network be loaded with a firmware version which supports this functionality. Repeaters cannot transmit Long Headers (LH parameter) needed to wake sleeping remotes. As a consequence, cyclic sleep cannot be used on End Nodes, and Repeater Nodes cannot be put to sleep. When a message travels through one or more repeaters on the way to its destination, the packet must be processed and possibly retransmitted. This retransmission process will affect the overall system throughput. The throughput will decrease by a factor of 1/(R+1) where R is the number of Repeater “hops” required to arrive at the destination.