Servers by jDrones

Stretching Comm Links: From Indoors to the Globe

telemetry
(Pavel Bobov) #1

Direct radio telemetry comm links can be used only within visual line of sight. If your UV needs to go beyond that and stay connected, it will need to use some sort of re-transmitter like a cell tower or a communication satellite. Unless you can afford a dedicated channel, cellular or satellite communication services involve dealing with a public computer network known as the Internet.

Connecting unmanned vehicles to the Internet or private computer networks could be useful even indoors or within visual line of sight.

SPL is a global satellite telemetry system for autonomous vehicles controlled by ArduPilot autopilot. With SPL you can track, command, and control your solar powered boats, planes, blimps, and other autonomous vehicle from the other side of the Earth using Mission Planner or QGroundControl GCS. SPL supports TCP/IP Internet connections and Iridium short burst data (ISBD) satellite communication technology provided by Rock Seven Mobile.

The main software components of SPL are UV Radio Room and UV Hub. UV Radio Room is an embedded app that runs on a companion computer connected to the autopilot. UV Hub is a broker app that runs on a server computer.

This post explains how to get started with SPL with just a few $. It assumes you already have a UV with ArduPilot autopilot and a computer with Mission Planner or QGroundControl GCS.

Local Wi-Fi (Cost: $30+, Range: Indoors)

This is the bare bone configuration of SPL.

You will need:

  • Raspberry Pi companion computer connected to the autopilot, and
  • Computer with x86_64 CPU architecture, at least 2GB of RAM, and with Docker installed.

Both computers must be connected to the same network.

Docker provides the ability to package and run an application in a loosely isolated environment called a container. Docker can be installed on Windows, Linux, or Mac computers. If you have not tried Docker, you should try it (you will regret that you did not do it earlier).

Follow these instructions to run UV Hub in Docker. Connect Raspberry Pi to the local network using Wi-Fi and follow these instructions to install UV Radio Room on the Raspberry PI. Enable only TCP channel in radioroom.conf.

Once everything is installed, connect GCS to UV Hub server on TCP port 5760 and try to control the vehicle.

Cellular (Cost: $100+, Range: Cellular Coverage Area)

This configuration of SPL adds a cellular modem and runs the server software in Amazon Web Services public cloud.

You will need:

  • Raspberry Pi companion computer connected to the autopilot,
  • Cellular modem connected to the Raspberry Pi and a data plan for it,
  • Amazon Web Services account.

Because cellular data services work with the Internet, UV Hub must run on a computer accessible from the internet. These days the easiest way to get such a computer is to rent it from a public cloud provider such as Amazon AWS, Microsoft Azure, or Google Cloud Platform. For Amazon AWS cloud SPL provides tools to completely automated the deployment from A to Z. .

Follow these instructions to deploy UV Hub to Amazon AWS. Follow these instructions to install UV Radio Room on the Raspberry PI. Enable only TCP channel in /etc/radioroom.conf.

The AWS deployment uses t3a.small EC2 instance that costs about $0.0188 per hour.

If you don’t have a preference for cellular modem and data plan, check out Hologram’s Nova modem and Global IoT SIM Card.

Cellular + Satellite (Cost: $400+, Range: Global)

This configuration adds a RockBLOCK satellite transceiver to the mix.

You will need:

  • Raspberry Pi companion computer connected to the autopilot
  • Cellular modem and data plan
  • Amazon Web Services account
  • Activated RockBLOCK Mk2 or RockBLOCK 9603 Iridium satellite communication module connected to the Raspberry Pi with FTDI USB to UART cable.

Follow these instructions to deploy UV Hub to Amazon Web Services. Follow these instructions to install UV Radio Room on the Raspberry PI. Enable both TCP and ISBD channels in /etc/radioroom.conf.

When both channels are enabled, the channel with the smallest report period is called primary and the other channel is called secondary. UV Radio Room tries to send mobile-originated messages using the primary channel first. The secondary channel is used when the message cannot be sent over the primary channel during the reporting period of the secondary channel.

Please share your experience with SPL. Post your questions and suggestions to discussion forum on the support page.

6 Likes
FYI for Arduboat enthusiasts
(rmackay9) #2

Thanks for the post, looking good. I think we should actually add a link to our wiki about this so I’ve created an issue here.

3 Likes
(Kevin Klemens) #3

Looks like a new Iridium modem is on the horizon: http://investor.iridium.com/2019-08-21-New-Iridium-Certus-TM-Transceiver-for-Faster-Satellite-IoT-Data-and-High-Quality-Voice-Applications-Now-in-Live-Testing#assets_all

(Pavel Bobov) #4

Unlike RockBLOCKs (Iridium 9602/9603) which uses Iridium SBD protocol, Iridium Certus 9770 uses IP network protocol. SPL will work with it just like it works with cellular IP modems.

Currently SPL supports one TCP/IP channel and one ISBD channel, so satellite and cellular IP channels cannot be used together. I’ll think about adding support for more than one TCP/IP channel…

(Kevin Klemens) #5

If the Iridium Certus 9770 will be IP based, then maybe we can have it just switch to that when it looses the cell network so you don’t have to put in more than one TCP/IP channel?

(Pavel Bobov) #6

You are right! For IP based channels the switch from cellular to satellite connection will be handled on OS networking lavel, just like a cell phone switches from Wi-Fi to cell data. There is no need to make any changes in SPL to support it.