TCP Aircraft Server

From PaparazziUAV
Jump to navigation Jump to search

The tcp aircraft server (in sw/tools/tcp_aircraft_server/) is an agent that re-broadcasts the ivy telemetry stream from a specified vehicle over tcp to a specified remote ip which hosts its own local ground segment ivy network. This allows the broadcast of a vehicle telemetry stream over the internet to a remote party without the need for VPNs.

Usage

Broadcast Ground Station

If you have not done so already, set your Paparazzi src and home directories:

export PAPARAZZI_SRC=~/path/to/paparazzi
export PAPARAZZI_HOME=~/path/to/paparazzi

Then, from your Paparazzi directory, run:

./sw/ground_segment/tmtc/ivy_tcp_aircraft -id <ac_id_number> -h <remote IP>

Recipient Computer, option #1

Run:

./sw/tools/tcp_aircraft_server/tcp_aircraft_server.py

Then open Paparazzi Center using the -n option for the Server unless you wish to log messages locally, and use the tools within Paparazzi Center as you would do normally.

The recipient side of the setup broadcasts locally over the default Paparazzi ivy bus 127.255.255.255:2010

Recipient Computer, option #2

This allows for a multiple tier control architecture.

Designate one computer as the server and run these 2 programs. First one communicates with remote controllers and second one with ground stations.

./sw/ground_segment/tmtc/broadcaster -f TM -t DL -p 4243
./sw/ground_segment/tmtc/broadcaster

Designate the same or another or several other computers as remote controller and run:

./sw/ground_segment/tmtc/ivy_tcp_controller -h <ip address of server computer>

On the controller open Paparazzi Center using the -n option for the Server unless you wish to log messages locally, and use the tools within Paparazzi Center as you would do normally.


You can connect multiple ground stations to the same server.

All of these programs accept a --help argument and will show more options.


NOTE: For this to work it is necessary to synchronize the compiled code in the aircraft, the controller and the ground station.