Position Reporting – Acquiring and Sharing Data

There are many position reporting options available via SailMail. One that we particularly like is SailBlogs, for more info click here.  The purpose of this page is to how to get position and sailing data into Airmail, and optionally make it available to other applications.

Data can be acquired in a number of ways: Directly from a GPS, or combined with sailing data (wind speed, etc) via an integrated instrument system, or combined with AIS data, or sent from a communications device (e.g. the Iridium GO!). Data can be sent via serial connections to COM ports, or via wired or wireless network connections either via TCP or UDP. Many choices, and much confusion which will be addressed below.

Types of data: The most important data for position reporting is the lat-lon position from a GPS, along with course and speed over ground (COG/SOG). Weather data is often useful to include, for example wind speed and direction from an instrument system. AIS data is not useful for position-reporting but may be combined with GPS data.

Sources of data: For boats equipped with an integrated instrument system, a single connection can provide all of the data needed. Often, however, multiple connections are needed with one connection for GPS data, a second to make wind data available for position reporting, another for AIS data for a charting program. Most software applications (including Airmail) can accept multiple inputs, but multiplexers often make sense to combine multiple data sources into a single stream for distribution to multiple applications.

Data formats: NMEA-0183 has been the standard for decades for position and sailing data, and is still supported by virtually all equipment and applications. NMEA-2000 is also available from most newer equipment, in addition to NMEA-0183. Multiplexers are available which can provide format conversion.

Connection types: The oldest standard is NMEA-0183. This is a wired connection using a shielded twisted-pair serial cable with a 4800 baud RS-422 balanced connection. This is a combination that provides reliable communications and minimal RF interference (but don’t forget the shield).

Each output (“talker” in NMEA-0183 parlance) can be connected to a number of inputs (“listeners”), for example, a GPS output can be connected to a computer for chart display, an instrument system, a VHF or HF/SSB radio for DSC and distress calls, radar for waypoint display, etc.  However, each of these inputs can only “listen” to a single “talker” for each input port or connection. For example, a charting program accepting input from a GPS cannot also connect to an AIS unit on the same port, because those are both NMEA “talkers”. Adding a second port (e.g. USB/serial “dongle”) would allow input from a second NMEA device.

A NMEA-0183 connection can generally be cross-connected to a RS-232 computer connection. Many manufacturers recommend against this, but in practice it works fine in most cases. And for AIS data, a 38400 baud NMEA connection is used to accommodate the higher data rate.

An alternative to serial connections is a wired or wireless network connection. Network communications can either be TCP, where two devices connect to each other with a “handshake” protocol and can exchange data both ways, or UDP where one device sends data to another device (one or many) without any handshake or acknowledgment. UDP most closely duplicates a traditional wired NMEA-0183 connection but can run into problems particularly over WiFi networks. A more robust alternative is a TCP connection, which is basically a one-to-one connection but many applications (including Airmail) can operate as a TCP server and can handle multiple connections.

Some examples: As we said, lots of options so let’s explore some specific situations. The ultimate goal here is to get data into Airmail for position reporting, but you will almost certainly want the same data available to a charting program. A GPS and/or instrument system will have a NMEA-0183 output acting as a “talker”, but remember that each “listener” (including computer serial ports) can only connect to one “talker”. Additionally, computer COM ports cannot be shared between different applications.

The simplest setup would be a 4800-baud connection from the GPS (or instrument system) NMEA-0183 output to an available COM-port on the computer– either a physical 9-pin serial port or a USB/serial adapter. To feed GPS data to both Airmail and a charting program, the GPS output could be connected to two different COM ports, one for each application. However Airmail can share data, as can many charting programs.

For a charting program that can share data (including Expedition, Coastal Explorer, OpenCPN, and others), it makes the most sense to connect the data sources– GPS, instruments, and AIS– to the charting program and then configure the chart program to share the data via TCP or UDP. Using TCP is recommended if available, as it is a direct connection between devices.

Alternately, a GPS output can be connected to the “GPS” input of a newer-model SCS Pactor modem, using the small green GPS terminal-block on the back of the modem. The modem must be powered on of course. To enable this input, check the box for “PTC-IIusb data input” (or whichever modem type is selected).

If Airmail has the direct data connection then this can be shared via the “broadcast” settings on the Data-Input window. Output can be via COM-port, via UDP (broadcast or to a specific device), or via TCP with Airmail acting as a TCP server, any combination.