Fig. 1 Default Network Configuration
Smart Radio Interfaces:
Smart Radios are available in five different variants: Embedded, External, Wearable, OEM, and Helix. As each form factor is designed to cater to a particular use case, there are differences in the hardware interfaces between these designs. Table 1 shows the available interfaces for the different variants. ETH1 is configured by default as a configuration interface which is not remotely accessible, but it can be re-configured if necessary. Please note that the -H variant of the Embedded Smart Radio is a legacy model. We recommend new designs to use the -J models. For the -H it comes with either a UART or a USB Host port.
Table 1: Available Interfaces for Smart Radios
Interface |
Embedded |
External |
Wearable/OEM |
Helix |
Mesh Rider Radio |
Yes |
Yes |
Yes |
Yes |
Ethernet (ETH0) |
Yes |
Yes |
No |
No |
Ethernet (ETH1) |
Yes |
Yes |
Yes |
Yes |
USB Device Port |
No |
No |
Yes |
Yes |
USB Host Port |
Yes |
Yes |
Yes |
Yes |
WiFi Radio |
No |
No |
Yes |
No |
UART |
Yes |
Yes |
Yes |
Yes |
The Mesh Rider interface is the main wireless interface and is available on all Smart Radio products. Because it uses a proprietary wireless protocol, it is only accessible from other Mesh Rider devices.
ETH0 and ETH1 are standard Ethernet interfacse and are bridged to the Mesh Rider Interface.
The USB Device port is a Ethernet over USB interface and can be connected to USB host ports like those found on PCs, or USB OTG ports like those on Smart Devices. It is bridged to the Mesh Rider interface.
The USB Host port is setup as an Ethernet over USB interface and can be connected to USB device ports or USB OTG ports like those found on Smart Devices. It is bridged to the Mesh Rider interface. It’s functionality can be extended by installing addition USB drivers on the Smart Radio, like USB HID drivers.
The WiFi radio is bridged to the Mesh Rider
Interface and provides standard WiFi connectivity to devices such as PCs and
Smart Devices. The default SSID is DoodleLabsWiFi and the password is
DoodleSmartRadio.
The Smart Radio can be managed by following protocols.
1. Web GUI
2. SSH
3. JSON-RPC API
4. SNMP
In this guide, we will use the SSH protocol which uses network port 22, and the web GUI which uses network port 443. The web GUI is accessible from standard browsers like Mozilla Firefox. An SSH client is built into most desktop Linux distributions, as well as Windows 10. You can use SSH for terminal access to the Smart Radio with the command,
Or you can remotely execute a command in the Smart Radio with
You may need to update you PC’s list of known hosts with
The next section describes the IP configuration.
There are three IP addresses defined by
default.
1. A static IP address in the 10.223.0.0/16 subnet. This IP address differs from device to device and can be used for remote configuration or sending data to or from the Smart Radio. The IP address can be calculated from the MAC address. If the IP address is 10.223.x.y and the MAC address is 00:30:1A:4E:A4:3E, the x is equal to the decimal value of 0xA4, or 164, and y is equal to the decimal value of 0x3E, or 62. The full IP address is therefore 10.223.164.62/16. On newer devices, this IP address is printed on the label.
2. A DHCP client. This is a dynamic IP address which is automatically assigned when there is a DHCP server on the network.
3. A static IP address at 192.168.153.1/24. This is a fixed IP address which is the same for all radios. This IP address is designed to be used during initial configuration only and should never be used when more than one radio is on the network.
If you are unsure of the IP address on the
10.223.0.0/16 subnet, then the best option is:
1. First change the IP address of your host system to 192.168.153.10/24 (any valid IP address in the 192.168.153.0/24 subnet not equal to 192.168.153.1 will work). The method to do so varies depending on the OS and whether you are using the WiFi interface, or the USB device interface. If you are connecting over WiFi for example, then you probably need to have your devices associated with SmartRadioWiFi before changing the IP address.
2. Next run a command on the Smart Radio over SSH to print out the IP address on the 10.223.0.0/16 subnet.
user@host-pc:~$ ssh -q -o stricthostkeychecking=no root@192.168.153.1 ‘ip addr | grep 10.223’
inet 10.223.170.187/16 brd 10.223.255.255 scope global br-wan
Once you have the 10.223.0.0/16 IP address, you can change your host system’s network configuration to use a static IP address on this subnet.
The radio runs an IP advertiser daemon which listens for UDP broadcast packets on port 11111 with the message “Hello” and replies with a list of the IP addresses on br-wan as well as the interface on which the message was received. This can be used to quickly identify all nodes on the network, as well as which one is local. To test it, run the following command on a Linux system with socat installed
The response is shown above.
There are two gateway modes defined in the simpleconfig menu, WDS AP with gateway, and Mesh with gateway. In these modes, a DHCP server runs on the Mesh Rider interface at 10.222.1.1/16, and the 192.168.153.1/24 fallback IP address is disabled.
The radio’s Mesh Rider wireless settings can be found by navigating to network → wireless in the GUI. This is where you can configure the Mesh Rider wireless interface. The Wearable (and OEM) variants have an additional WiFi radio which is also configured here, and the Helix variant’s band switching is also configured here. These are discussed in the next section.
To modify the wireless settings of the Mesh
Rider radio, click Edit next to the relevant radio interface. You should see a page similar
to the one below. We recommend the following updates.
· For point-to-point networks such as a Control Station controlling a single UAV, or Robot, Enable Dynamically Adjust txpower based on neighbor sounding (Transmit Power Control).
· At power up, the Smart Radio will scan the environment and choose the best channel for the environment. A different channel can be chosen manually.
· For 2.4-GHz ISM-band radios, use a channel bandwidth of 15-MHz to avoid normal WiFi interference. This is especially important in urban areas.
· Change the Mesh ID and under Wireless Security, change the password.
· Do NOT change the Mode of operation. This should be pre-selected in the Simple Configuration menu.
Network interface settings can be modified
in the Network → Interfaces tab. Below are some common changes you may want to make.
· Enable a DHCP server on one of the radios.
o ,Click Edit next to the WAN interface. You should see a page similar to the picture below. Change the Protocol from DHCP to Static Address. Add an IPv4 address and netmask of your choosing, then scroll to the bottom of the page, and un-check Disable DHCP for this Interface. Click Save & Apply.
· You may also wish to enable a DHCP server on the LAN interface (ETH1). The steps are similar to those above.
· Change the default static IP address of ETH0. To do this, edit the WAN2 interface, and change the static IP address to your liking.
Fig. 3 Network Interface Settings
The default radio network configuration is
a mesh, and the configuration settings can be accessed at Network → Mesh Configuration. However, this menu is only accessible in the Advanced Settings
which is opened by clocking the Advanced
Settings button in the bottom of the left hand
side menu bar. Fig. 4 shows the Mesh Configuration Page. In general, you should
not need to change most of the settings except for:
· OGM Broadcasting Interval – This number affects the responsiveness of the mesh to routing changes. A smaller number is faster, but results in more network overhead. For large meshes, it is recommended to increase this.
· Bridge Loop Avoidance – This is only necessary if there are potential network loops created in the Ethernet backbone. For example, if two of the wireless mesh nodes are also connected over the wired backbone, a loop is formed, and Bridge Loop Avoidance should be enabled.
· Group-Aware Multicast to Unicast Conversion – This option is necessary if your application uses the IGMP/MLD protocol for multicasting. It eliminates redundant data distribution and converts the multicast transmission to unicast.
· Fast re-routing – This experimental feature makes the mesh algorithm more responsive to changes in the optimal packet routing. This feature should not be used if long range broadcasting is required. i.e. using the broadcast IP address (e.g. 10.223.255.255) for long-range.
Different types of traffic can be prioritized in the Traffic Prioritization menu. This is useful when operating in a crowded wireless medium. There are four different queues – Voice, Video, Best Effort, and Background. The Voice queue optimizes latency and may also be used for command and control, the Video queue optimizes throughput, the Best Effort Queue is essentially unoptimized, and the Background queue is for low-priority data.
In order to use these QoS features, open up the web GUI and navigate to network → differentiated services. The Smart Radio includes software to map different network protocols or ports to the various QoS queues. To do so, click Enable Differentiated Services, and add a classification rule to suit the application’s needs. For example, you can send all UDP traffic to the Video queue which is beneficial for video transmission.
The Smart Radio includes protocol optimizations for URLLC applications as well as video optimizations. URLLC applications typically include command and control (C&C) data, but can be extended to any application requiring a reliable low latency. Assuming that we have a C&C application which uses network port 7000 over UDP. In the screenshot below, first click Optimize Command & Control for URLLC. Next click Add, and then change the new classification rule to use Port 7000, and set the DSCP value to CS6. The comment section can be filled if desired. Finally click Save & Apply and wait for the page to refresh.
Fig. 5 Traffic Prioritization Settings
If Optimize Video Streaming is enabled, the radio will
1. Apply radio PHY settings which are optimized for video transmission
2. If the RSSI to a particular station is below the Video bad link threshold, then the radio will drop Video bad link (percentage) packets. This is an optional feature, and you should adjust the RSSI to a reasonable value for your application.
The RSSI bad-link threshold is an additional protection against network overload when the link quality is bad, but even without setting the RSSI bad-link threshold, the C&C queue is prioritized over the VI queue.
The Diversity Rates Only checkbox forces the radio to send the same data over both antennas redundantly. This can lead to smoother performance in highly dynamically changing conditions.
The Firewall configuration is located under Network → Firewall and can be modified over the GUI and CLI at /etc/config/firewall.
We shall use the iperf3 application as an
example to demonstrate setting a firewall rule to allow access to port 5201 of
the router. Navigate to the Firewall page, and click the Traffic Rules tab. In
the “Open ports on router” section, enter the name, protocol, and port number
as “Allow iperf”, “TCP”, and “5201” respectively so that clients is able to
connect to port 5201.
Fig.
6 Firewall Settings
Before port 5201 is opened, run iperf in server mode inside the Smart Radio.
If you try and connect to the iperf server from your local machine, you will get an error, connect failed: Connection refused. After opening the firewall at port 5201, you should be able to connect to the iperf3 server.
Extensive information regarding Firewall configuration is available at the openwrt.org website.
By default, the web GUI only presents a small subset of all of the possible configuration options of the Smart Radio. For advanced users, you may wish to reveal all configuration menus by
clicking the Advanced Settings button at the bottom left hand corner of the page.