SoundMetrics / aris-integration-sdk

SDK for building custom controllers for the ARIS sonar.
MIT License
5 stars 2 forks source link

ARIS Integration SDK 2.1

This SDK supports connecting to and commanding ARIS Explorer and ARIS Voyager sonars. (Connecting to an ARIS Defender is not supported). For information on ARIS frame formats, see ARIS File SDK.

Prerequisites

The ARIS control and imaging protocols require the use of Google Protocol Buffers, and TCP & UDP communications. While the example code in this repo is largely targeted at Windows clients, one can write client code on any platform that supports the above technologies.

Note: if you are using Protocol Buffers version 3 to control an ARIS, you must use ARIS onboard software version 2.7.x or later. You can update the onboard software from within ARIScope.

Exclusions

This SDK provides capabilities for controlling an ARIS Explorer. ARIS Defender cannot be controlled with this SDK, only the built-in supervisor functionality is available for ARIS Defender.

This SDK, beginning with version 2.0, supersedes a previous ARIS 1.x SDK. The older SDK is not compatible with current ARIS production.

This SDK does not support for the DIDSON sonar. Please contact support@soundmetrics.com for more information on DIDSON protocols.

Release History

The release history of this SDK is tracked here. Releases are available here.

Contents

Documentation

The following documentation is provided:

aris-integration-sdk/documents/ARIS-Integration-SDK.pdf: Describes the mechanisms necessary to build an application to control an ARIS.

aris-integration-sdk/documents/Integration-SDK-suggested-settings.xlsx: An Excel spreadsheet that provides rudimentary support in choosing valid acoustic settings.

aris-integration-sdk/documents/how-to-set-the-ARIS-IP-address.pdf: Describes how to configure an ARIS to use a static IP address. (Not recommended.)

Documentation of file formats and frame headers can be found in our repo aris-file-sdk.

Common Code

aris-integration-sdk/common/code/: These folders contain the following:

aris-integration-sdk/common/protobuf/: Contains Protocol Buffer files describing messages sent to/received from the ARIS.

Sample Code

aris-integration-sdk/sample-code/: These folders contain the following:

ARIS Tools

aris-integration-sdk/tools: contains the following:

External Tools

This repository makes use of vcpkg for building arislog and vc-using-framestream. vcpkg is an external tool that downloads the source code for protobuf and builds it. The version of protobuf downloaded is coded within the vcpkg submodule and, therefore, won't change unless we update that submodule.

To build the arislog and vc-using-framestream samples, first run prepare-vcpkg.cmd in a Visual Studio 2019 command prompt.

Git-specific Issues

This git repository includes the submodule aris-file-sdk. If you intend to clone this repo you'll want to use the --recursive flag.

NOTE: The .zip and .tar.gz bundle files available from GitHub are incomplete--the submodules are not populated. In order to successfully build, please consider cloning directly:

git clone --recursive https://github.com/SoundMetrics/aris-integration-sdk.git

Miscellaneous

Releases

Releases of this SDK are available here.

Reporting Bugs

Whether it's a big or small bug, please read the Contributions Guideline for how to address it to us.

Requesting Features

Please read the Contributions Guideline for help on requesting a feature.

Version Numbers

The stated version number of this SDK does not track with Sound Metrics' other software applications' version numbers.