IM-8084 A1 Lodestar Integration Guide
IM-8084 A1 Lodestar Integration Guide
Issue A Rev 1
ii
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
Email and telephone support is available during normal UK office hours (08:00 to 17:00).
iii
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
Contents
Contacting the Sonardyne Support Team .................................................................................. iii
Amendment History .................................................................................................................... xii
Section 1 – Introduction ............................................................................................................... 1
1.1 Scope of this Manual ............................................................................................................. 1
1.1 Purpose of this Manual .......................................................................................................... 1
1.2 Related Publications .............................................................................................................. 1
1.3 Conventions........................................................................................................................... 1
1.3.1 Formatting Conventions ........................................................................................... 1
1.3.2 General Conventions ............................................................................................... 2
Section 2 – Safety ......................................................................................................................... 3
2.1 Introduction ............................................................................................................................ 3
2.2 Safety Procedures ................................................................................................................. 3
2.2.1 Warnings.................................................................................................................. 3
2.2.2 Cautions................................................................................................................... 4
Section 3 – Hardware Overview ................................................................................................... 5
3.1 Hardware Overview ............................................................................................................... 5
3.2 Power .................................................................................................................................... 5
3.2.1 Inrush Current .......................................................................................................... 5
3.2.2 Power Pass Through................................................................................................ 5
3.3 Serial Communications .......................................................................................................... 6
3.4 Triggers ................................................................................................................................. 7
3.5 Ethernet ................................................................................................................................. 7
3.6 Common Hardware Versions ................................................................................................. 7
3.6.1 Lodestar 200 4K....................................................................................................... 7
3.6.2 Lodestar 300, 500 & 700 4K..................................................................................... 9
3.6.3 Detailed Pin Outs ................................................................................................... 10
3.6.4 SPRINT 300, 500 & 700 4K ................................................................................... 11
3.6.5 SPRINT 300, 500 & 700 6K ................................................................................... 12
3.6.6 Lodestar/SPRINT 300, 500 & 700 OEM ................................................................. 13
3.6.7 Detailed Pinouts ..................................................................................................... 14
3.6.8 SPRINT-Nav 300, 500 & 700 4K ............................................................................ 16
3.6.9 SPRINT-Nav 300, 500, & 700 6K ........................................................................... 19
3.6.10 Detailed Pin Outs ................................................................................................... 21
Section 4 – Lodestar/SPRINT Concepts and Definitions ......................................................... 23
4.1 Time .................................................................................................................................... 23
4.1.1 Instrument Time (System Time) ............................................................................. 23
4.1.2 Common Time (UTC) ............................................................................................. 23
4.2 Frames ................................................................................................................................ 23
4.2.1 IMU Body Frame .................................................................................................... 23
4.2.2 Vehicle ................................................................................................................... 23
4.2.3 Navigation (NED) ................................................................................................... 23
iv
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
v
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
vi
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
vii
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
Figures
Figure 3-1 Lodestar/SPRINT Current Profile .................................................................................. 5
Figure 3-2 Lodestar 200 4K Outline Drawing ................................................................................. 7
Figure 3-3 Lodestar 300/500/700 4K Outline Drawing.................................................................... 9
Figure 3-4 SPRINT 300/500/700 4K Outline Drawing .................................................................. 11
Figure 3-5 SPRINT 300/500/700 6K Outline Drawing .................................................................. 12
Figure 3-6 Lodestar 300/500/700 OEM Outline Drawing .............................................................. 13
Figure 3-7 SPRINT-Nav 300/500/700 4K Outline Drawing ........................................................... 16
Figure 3-8 SPRINT-Nav 300/500/700 6K Outline Drawing ........................................................... 19
Figure 4-1 Lodestar/SPRINT Coordinate Frame ........................................................................... 25
Figure 7-1 SUSBL Time of Validity Source Selection ................................................................... 73
Figure 7-2 Output Trigger Configuration Parameters ................................................................... 86
Figure 7-3 Steps for Establishing a Connection ........................................................................... 99
Figure 7-4 DVL Calibration Report ............................................................................................. 104
viii
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
Tables
Table 1-1 Related Publications ...................................................................................................... 1
Table 1-2 Conventions used in this Manual ................................................................................... 1
Table 3-1 Typical Serial Port Number to Connector Name ............................................................. 6
Table 3-2 Typical Trigger Number to Port Name ............................................................................ 7
Table 3-3 SPRINT-Nav 300, 500 & 700 4K Connector Functions ................................................ 18
Table 3-4 SPRINT CP/E1 Port (16-Pin Seacon) Pinout ............................................................... 21
Table 3-5 SPRINT C1 Port (7-Pin Seacon) Pinout ....................................................................... 22
Table 3-6 SPRINT Transceiver (T1/T2) Port (7-Pin Seacon) Pinout............................................. 22
Table 3-7 Syrinx DVL Port (16-Pin Seacon) Pinout ...................................................................... 22
Table 4-1 INS Aiding Sources ...................................................................................................... 27
Table 5-1 Packet Start and End Characters ................................................................................. 29
Table 5-2 Multiplex Packet Format............................................................................................... 29
Table 5-3 Multiplex ID Field Format ............................................................................................. 30
Table 5-4 LOG message ASCII wrapper format ........................................................................... 33
Table 6-1 Message Macros.......................................................................................................... 37
Table 7-1 SON2 Multiplex Decode ............................................................................................... 42
Table 7-2 ZDA Multiplex Encoding ............................................................................................... 47
Table 7-3 PSIMSSB Multiplex Encoding ...................................................................................... 49
Table 7-4 SUSBL GGA Multiplex Encoding ................................................................................. 51
Table 7-5 GPS GGA Multiplex Encoding...................................................................................... 53
Table 7-6 VTG Multiplex Encoding............................................................................................... 55
Table 7-7 XPOS Multiplex Encoding ............................................................................................ 57
Table 7-8 PSONLOBS Multiplex Encoding .................................................................................. 59
Table 7-9 PSONLBLBCN Multiplex Encoding .............................................................................. 59
Table 7-10 Supported PRESS sensor types ................................................................................ 60
Table 7-11 XDEPTH Multiplex Encoding...................................................................................... 62
Table 7-12 Supported DVL Messages ......................................................................................... 63
Table 7-13 PSONSS Multiplex Encoding ..................................................................................... 67
Table 7-14 Mounting Angle Input Limits ....................................................................................... 69
Table 7-15 Multiplexed OBSTDVL Message ................................................................................ 83
Table 7-16 OBSTDVL Message Field Decode ............................................................................. 84
Table 7-17 OBSTDVL Rejection Bit Field Decode ....................................................................... 84
Table 7-18 Multiplexed "GC SETTLE" Command ........................................................................ 88
Table 7-19 Multiplexed Response to "GC SETTLE" Command.................................................... 88
Table 7-20 Multiplexed INS LNAV message ................................................................................ 90
Table 7-21 INS LNAV Message Decode ...................................................................................... 90
Table 7-22 INS LNAV Message Status Decode ........................................................................... 91
Table 7-23 Multiplexed PSONNAV Message (based on Remote Point) ....................................... 92
Table 7-24 Multiplexed BIST Message......................................................................................... 93
Table 7-25 BIST Field Decode ..................................................................................................... 94
Table 7-26 Active Bits in Comms Field......................................................................................... 94
Table 7-27 Multiplexed Setting Message Fragment (First) ........................................................... 95
ix
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
x
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
xi
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
Amendment History
The amendment history records all amendments and additions made to this manual.
Issue Revision Date Comments Section Page
A 0 22/06/2017 Draft All All
A 1 28/06/2018 First Issue All All
xii
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
Section 1 – Introduction
1.1 Scope of this Manual
This manual provides the information required by an integrator to integrate a Lodestar based
product onto their vehicle/platform.
Lodestar and SPRINT can be used for a variety of applications. For the majority of these
applications Sonardyne’s Lodestar PC Application and/or SPRINT PC Application can be used to
configure the instrument and set up any outputs. This manual covers applications that either have
more complex input/output requirements in conjunction with the PC Application(s) or where the PC
Application(s) are being wholly replaced by an end user’s system, for example ROV control or AUV
system integration.
Note
“Lodestar Based Products”. Lodestar is Sonardyne’s Gyrocompass and Motion sensor product.
The same hardware and majority of firmware are also used in SPRINT based products. Data formats
and configuration formats are shared between the two product lines. Features that are only available
on SPRINT products will be acknowledged in the manual.
Publication Title
Sonardyne Safety Manual Operational and Safety Precautions
Kongsberg APOS Release 4.2.2 Manual (29.April. 2005)
1.3 Conventions
1.3.1 Formatting Conventions
Table 1-2 Conventions used in this Manual
Format Convention
Italic Type References to Figures, Tables, Sections and internal/external source
Section 1 – Introduction 1
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
Section 1 – Introduction 2
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
Section 2 – Safety
2.1 Introduction
Before any activity is carried out on the equipment, it is recommended that the included Sonardyne
Safety Manual and all warnings and cautions in this manual are fully read and understood.
It is recommended that the operator complies with the Health and Safety Regulations applicable to
the vessel and the region before operating this equipment.
Operators and service personnel must be familiar with the normal operating and safety procedures
for subsea equipment.
Personal protection. Appropriate protective equipment such as protective footwear, hard hat and
gloves must be worn when handling or carrying out any procedures involving Sonardyne and other
equipment
Heavy equipment. Many Sonardyne products and equipment types, such as SPRINT Unit,
transponders, transceivers, cable drums etc. require Manual Handling Equipment (MHE) for lifting due
to their heavy weight. If MHE is not available, it is the responsibility of the operator to perform a
manual handling risk assessment prior to carrying out manual lifting/handling. Refer to the individual
equipment documentation for weight specifications.
Dismanting. This instrument must only be accessed internally and dismantled by qualified
Sonardyne personnel.
Lithium-ion Battery Pack. This instrument contains a backup lithium-ion battery pack. Refer to
the Sonardyne Safety Manual for saftey information for lithium-ion batteries.
Risk of toxic gases and Corrosive Liquids. Do not stand in direct line with the end of the unit
when operating the Pressure Relief Vent Valve. Sudden release of high pressure gases could cause
injury to personnel. Wear Personal Protective Equipment such as goggles when operating the
Pressure Relief Vent Valve.
Section 2 – Safety 3
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
2.2.2 Cautions
Incorrect Power Supply. Make sure the Lodestar/SPRINT is supplied with a suitable DC Voltage
(see specification of unit for suitable voltage range). Do not use an AC power supply.
Damage to connectors. Connector caps should be fitted whenever cables are not plugged in. The
connectors are dry-mate and the connector faces/pins must not get wet at any time.
Section 2 – Safety 4
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
3.2 Power
A generic Lodestar/SPRINT will work with an input DC power supply between 20–50 V. However
some instruments in the range, e.g. SPRINT-Nav have requirements that stipulate a 24 V supply.
By design the power pass through on all ports is off by default and will return to this state after the
instrument is reset. Enabling of power pass through is via command.
Notes
No voltage level translation takes place, therefore the system integrator/user must ensure that
anything powered using the power pass through is capable of being powered by the main
Lodestar/SPRINT power supply.
Very little conditioning takes place on the pass through supply output, therefore any noise or
brown-out will also likely be passed through to the connected instruments.
If external power is lost and a battery is fitted to the Lodestar/SPRINT, it will only be used to
power the Lodestar/SPRINT; it will not supply power for power pass through. In a Lodestar-
Nav/SPRINT-Nav the internal pressure transducer will continue to be powered as this is run by the
Lodestar/SPRINT internal power rail. The Syrinx DVL will not be powered.
The power pass through ports have short circuit and over-current protection. An output will trip if
the current on that port exceeds 3 A. The port must be turned off and back on via command to reset
the trip. Lodestar functionality including other power pass through ports is not affected if one port
trips.
Note
Port C2 is designed for internal use only and is not isolated. As such it is not usually exposed as
an external connector in Sonardyne’s product range.
3.4 Triggers
The generic Lodestar/SPRINT supports two output and two input triggers. Similar to the UARTs,
these are numbered 1–4, but will usually be identified by the connector identification of the housing.
A typical mapping of trigger numbers to connector identifications is shown in Table 3-2.
3.5 Ethernet
Lodestar/SPRINT provides one Ethernet port with a recommended connection speed of 100 Mbits.
Note
By default, the IP address of a Lodestar/SPRINT is 192.168.179.50. This can be changed via
command and control. There is no DHCP client support.
3.6.1.2 Power
Input: 20–50 V dc, 15W nominal, 35 W max
3.6.1.4 Weight
In Air: 18.5 Kg
In Water: 11.5Kg
3.6.2.2 Power
Input: 20–50 V dc, 15 W nominal, 35 W max
3.6.2.4 Weight
In Air: 18.5 Kg
In Water: 11.5 Kg
3.6.4.2 Power
The power requirements are the same for the Lodestar/SPRINT 300, 500 & 700 4K and 6K; see
Section 3.6.2.2.
3.6.4.4 Weight
In Air: 18.5 Kg
In Water: 11.5 Kg
3.6.5.2 Power
The power requirements are the same for the Lodestar/SPRINT 300, 500 & 700 4K and 6K; see
Section 3.6.2.2.
3.6.5.4 Weight
In Air: 22.0 Kg
In Water: 14.0 Kg
3.6.6.2 Power
Input: 24/48 V dc, 15 W nominal, (35 W max with optional external battery).
3.6.6.4 Weight
In Air: 7.8 kg (Estimated)
Port Connectors
Type Internal Detailed Function
Sensor Pinout
(Section)
CP/E1 Seacon SPRINT INS Section RS232 and RS485 Full Duplex Communications
MINL-16FCR/L 3.6.10.1 and Input Power
Ethernet (100 Mbit/s) Communications and Input
Trigger
C1 Seacon SPRINT INS Section RS232 Communications, Input Trigger and
MING-7-FCR 3.6.10.2 Power Pass Through
Note
The DVL connection will not normally be required for operation as DVL communications and
power will be routed internally via the SPRINT. It allows an independent connection and power to the
DVL if required. If the DVL is to be powered via the DVL connector the user should ensure that the
power routed via the SPRINT is not enabled/connected.
3.6.8.2 Power
Input: 24 V dc, 27 W nominal, 63 W max (excluding external sensors).
3.6.8.4 Weight
In Air: 23.9 kg
In Water: 13.1 kg
3.6.9.2 Power
The power requirements are identical to the SPRINT-Nav 300, 500 & 700 4K; see Section 3.6.8.2.
3.6.9.4 Weight
In Air: 28.1 kg
In Water: 17.2 kg
4.2 Frames
All reference frames are right hand and orthogonal. See Section 4.3.2 for details as to the
calculation required to move from one frame to another.
4.2.2 Vehicle
X = Forward
Y = Starboard (Right)
Z = Down
lever arm and misalignment to the vehicle frame. Standard practice is to set them as zero to use the
Lodestar/SPRINT as the reference point of the vehicle. The lever arms are distances from the CRP
in the forward, starboard and down directions of the vehicle or vessel and are measured in metres.
Note
When modifying Lever Arms for an instrument or sensor, one or more algorithms may require a
reset. Where this is required it is noted in the section documenting the configuration of the instrument
or sensor.
When modifying Mounting Angles for an instrument or sensor, one or more algorithms may
require a reset. Where this is required it is noted in the section documenting the configuration of the
instrument or sensor.
Similarly, the rotation sequence from a reference frame (Vehicle) to a sensor frame (IMU, USBL,
DVL) is:
1. Rotation by the gamma angle about Zref.
2. Rotation by the beta angle about the resulting Y axis.
3. Rotation by the alpha angle about the resulting X axis.
The AHRS is almost entirely self-contained and robustly computes attitude, heading and heave. The
INS supports optimal integration of measurements from a wide range of external aiding sensors to
output highly accurate vehicle position, orientation, velocity, angular rate and linear acceleration.
AHRS orientation is nominally correct from about 5 minutes after power up and remains available
throughout operation. Orientation from the AHRS is used to seed the INS thereby bypassing what in
other systems may be referred to as the “INS coarse alignment” phase. Since the AHRS is always
available, INS heading alignment is practically instantaneous should there ever be a need to reset
the INS. Furthermore, there are no restrictions on dynamics during initialisation of either the AHRS
or the INS.
4.6.4 LBL
In Sparse LBL operations, two or more (instead of four or five) beacons are deployed on the seabed
and their positions derived using ‘box-in’ or other top-down calibration techniques. With a known
beacon position, the INS can navigate in Sparse LBL mode using the ranges from one or more
seabed deployed beacon to acoustically aid the INS and constrain error growth in the absolute
position output.
Here the DLE/ETX pair does NOT indicate the end of a packet but rather the (original) byte
sequence:
0x65, 0x10, 0x03
The following sections provide details of the different fields of the packet format shown in Table 5-2.
5.1.2.2 ID
The following table indicates the sub-fields within the 2 byte ID field.
ID
TS RES SID [0-15] MID [0-1023]
1 bit 1 bit 4 bits 10 bits (LSB)
2 Bytes
• TS – If set (‘1’) indicates that the Timestamp field is present and prepended to the
payload.
• RES – Reserved, any value to be expected
• SID – Depending on message type this is “SenderID”, “SourceID” or “SystemID” (see
Section 5.1.2.3).
• MID – Message IDentifier, number that indicates which type of message is contained
within the payload
5.1.2.3 SID
The SID field depends on the message type and direction (from or to the Lodestar/SPRINT
instrument) of the multiplex packet.
• Port Snoop data – the SID will represent the port (0–4 for UART, 15 for Ethernet) that the
data has been snooped from.
• Port Pass data – the SID will represent the port (0–4 for UART, 15 for Ethernet) that the
data is being received on: see Section 7.11.5.2 for an example
• Output Message – the SID will represent the Remote Point configured for the output; see
Section 7.8.2 for an example.
• Input & Log Message – the SID is generally 0 but where necessary it is used by splitting
the field in two, with the two MSBs of the SID representing the source sensor type (for
example GPS GGA or SUSBL GGA; see Sections 7.5.2.1 & 7.5.2.2) and the two LSBs
representing sensor number (usually 0, but for LSZDA output would be set to 1; see
Section 7.11.6).
5.1.2.5 Timestamp
Packet timestamp using the Instrument Time with the least significant bit equalling 1 µS. Actual
definition is message dependent and cannot be assumed to be time of validity of the message
payload. Only for output/logging and should not be present on input messages.
5.1.2.6 Payload
Message data.
5.1.2.7 Checksum
This is the byte-wise exclusive-OR of the pre-byte stuffed fields: ID, Port pass/snoop info,
Timestamp and Payload.
switch (Databyte){
case 0x10: //DLE
if (DLEReceived == false){
//first DLE wait for the next DLE
DLEReceived = true;
}else{
//DLE DLE found copy one DLE to message buffer
DLEReceived = false;
message[datalength++] = Databyte;
}
break;
DLE_STX_Found = true;
}else{
// Databyte is data
message[datalength++] = Databyte;
}
break;
}else{
//Databyte is data
message[datalength++] = Databyte;
}
break;
default: //Data
if (DLEReceived == true){
DLEReceived = false;
}
message[datalength++] = Databyte;
break;
}
//get Sensor Id
sensorId = (message[0] & 0x3C) >> 2;
//get Message ID
mid = ((message[0] & 0x03) << 8) | (message[1]));
//get chksum
Chksum = message[datalength 1];
}
Field Description
: Start Character
hhhhhhhhhhhh 6 byte timestamp, in hex-ASCII representation
,{ Delimiter and start of payload
xxxxxx Message data
} End of payload
*hh Terminator and checksum
<cr><lf> Carriage Return and Line Feed
Notes
Depending on the message type the timestamp is the time of arrival of the logged message or the
time of validity if the message contents are not related to an input message.
Terminating <cr><lf> characters in the message data will not be replicated in the payload section
(if the message data is ASCII).
Not all messages will have the wrapper applied for example a $ZDA telegram produced from the
Lodestar/SPRINT will not have the wrapper applied. The message definitions should be consulted for
messages that will not use the ASCII Log wrapper.
The checksum is an exclusive-OR of the payload including the start and end brace (‘{‘ & ‘}’)
characters
6.2 Non-Multiplex
On a non-multiplex port command mode can be entered (started) by entering the following string:
<Ctrl-o>SON
(hold down the ‘Ctrl’ key and press ‘o’, then release the keys and type SON)
To exit, the ’escape’ key should be pressed:
<ESC>
When in command mode, if an output message is configured on that port it will be suspended until
command mode is exited, however if a Log message is configured it will continue to be output on
the port.
Some commands require command mode to be exited before their corresponding action is
performed, for example, changing the baud rate on a port that is currently being used to enter
commands.
6.3 Multiplex
On a multiplex port there is no need to “enter” or “exit” command mode. Commands can be sent as
a multiplex packet with MID 0 to indicate that the payload contains a command; see Section 7.7 for
examples).
not ok
In either case the response to a command may contain multiple other lines of text that precede one
of the command terminators above.
Section 9 – Command and Control gives an overview of the different commands that are available
and their syntax, but in general the following syntax holds true (delimitation between fields is by
whitespace this is indicated by <SPACE>):
<CommandGroup><SPACE><Command><SPACE><Param1>…<ParamX><cr><lf>
Where <CommandGroup> could be one of the algorithms (“INS” or “AHRS”), aiding sources
(“PRESS”, “SUBSL”, “GPS”, etc.) or the hardware platform (“SYS”, “LOG”, “OP”, etc.). Following
this is the <Command> which is the name of the command and following are the parameter values
that are required by the command (if any are required).
Note
Commands that affect the internal file system used to store log files will not be available until
after such time that the file system initialises. This takes a short amount of time (approx. 30 s) after
the firmware starts running.
6.4.3 Macros
It should be noted that if a macro name and an individual name are specified for logging on a port
then two log messages are created, one for the macro and one for the message name, for example
the following would produce two log ZDA messages per ZDA input message:
The Bootloader should then start as normal and the normal boot sequence will be followed.
Note
An alternative to power cycling the Lodestar/SPRINT in starting the Bootloader is to send the
following characters at 9600 Baud on either CP or C1 ports:
UNLK
This causes the Lodestar/SPRINT to reset.
Section 7.11.1 provides detailed guidance detailing how to initally connect to a Lodestar/SPRINT
where the configuration doesn’t match the Factory configuration as it does at this point in the
example integration.
The AHRS performance is dependent on having a correct Latitude provided, but even with an
incorrect latitude, will still produce an output suitable for developing and testing a third party
implementation of a Multiplex Protocol parser.
The following commands will configure the CP port to use the multiplex protocol and also set up a
simple ASCII message sourcing data from the AHRS algorithm to be output at 1 Hz:
OP 0 MULTIPLEX 1
OP 0 BAUD 115200
OP 0 MSG SON2 1 SRC 0
LOG 0 MSG 0
To see example messages on the debug port similar to that being provided on the CP port, enter
the following command:
OP 1 MSG SON2 1 SRC 0
On leaving command mode the SON2 message should appear at 1 Hz on the debug port, similar to
the following:
:112143419 000133-000144 008272 040U
:112144418 000133-000144 008273 040U
:112145416 000134-000143 008274 040U
:112146414 000133-000144 008275 040U
The multiplex message that is being sent on CP is at least 51 bytes in length (assumes there has
been no need to byte stuff the payload). The following table gives an indication as to how one
multiplex message should be decoded.
Note
The example shown in Table 11 is the first message found in the file on the Integration CD at the
following location:
..\Output_From_SPRINT\SON2_output.bin
The integration should now implement code that will correctly parse the multiplex data stream from
the CP port. This can be verified by checking that the SON2 message that is decoded has similar
data values to the messages that are being seen on the C1 debug port. It should be noted that as
the SON2 message is ASCII the payload will not contain a DLE character, but other parts of the
message (for example timestamp) might contain a DLE character that will be byte stuffed (see
Section 5.1) so the parser should implement that logic.
7.4 Monitoring
This section introduces a number of methods of monitoring the status of a Lodestar/SPRINT
instrument. This section is placed ahead of the remaining sections such that integrators are made
aware of the features that are available to allow them to monitor for the correct effect of any
changes that are being made.
7.4.1 BIST
The Built-In Self-Test (BIST) “Log” message is published at regular intervals of 2s. Other than the
timestamp the rest of the message is a set of bit-fields with each bit representing whether a
particular scenario/condition is present/active.
To assist with further integration the integrator should be able to decode the BIST message, indeed
it should also be considered for use with any system that is utilising data from Lodestar/SPRINT as
a health check of the instrument.
To configure the BIST message to be sent on the CP port, enter the following command:
LOG 0 MSG BIST
As the BIST is a binary message logging this message to the C1 debug port will not give a human
readable output for comparison, however the following command can be entered that will print out
the BIST to the terminal:
SYS BIST
It should be noted that the response to the command gives the current status of the BIST, whilst the
bits in the message version are generally latched during the BIST update period.
To test that the BIST is being correctly decoded from the multiplex stream a number of the bits can
be made to change state. If the integrator is following this guide as it is written the Lodestar/SPRINT
is only running the AHRS, sending the following command will cause a reset to the AHRS algorithm:
GC RST
This should cause AHRS section bit 1 (“GCNotSettled”) to be set (to ‘1’) – see message
specification for further details (Section 8.3.6). After a period of time the AHRS should settle and the
same bit should be unset (‘0’) to indicate that the AHRS has settled. The number of seconds the
AHRS will take to settle can found by interrogating the following configuration parameter:
GC SETTLE
TRG CMD DVL LBL GPS PSONLBLBCN SVS PSONSS ALARM DBG TXT CPU UART SETTINGS
BIST SUSBL XPOS OBSTZMD OBSTGPSPOS OBSTSUSBL OBSTXPOS OBSTPDEPTH OBSTSVS
OBSTDVL OBSTLBL OBSTZUPT PWRSTAT
For an integrator to create similar log files the Lodestar/SPRINT should be configured for those
“Outputs” and “Logs” above to be output on a port that is connected to the computer that is going to
collate the data and create the log files. In this example this would be the vehicle control computer
which would lead to the following configuration (in addition to any other “Outputs” or “Logs” that are
required).
OP 0 MSG SON2 5.000
OP 0 MSG + NAV 1.000 SRC 1
OP 0 MSG + TEMP 0.500
LOG 0 MSG CIMU NAVCAL NAVQUAL PMAT DXMAT TMS PRDSONDEPM PRDDPT PRDDIGIQM
PRDDIGIQPSI PRDDIGIQKPA PRDDIGIQO WINSON PRDSVX2DBAR PRDXDEPTH PRDKELLBIN
TRG CMD DVL LBL GPS PSONLBLBCN SVS PSONSS ALARM DBG TXT CPU UART SETTINGS
BIST SUSBL XPOS OBSTZMD OBSTGPSPOS OBSTSUSBL OBSTXPOS OBSTPDEPTH OBSTSVS
OBSTDVL OBSTLBL OBSTZUPT PWRSTAT
Note
The port used should have a baudrate of at least 115200 to handle all of the outputs/logs listed
above. Alternatively an Ethernet connection would provide ample bandwidth.
Whilst completing the rest of the steps in this guide it may not be worthwhile configuring all the
messages above at this time; it is worth considering implementing all or a subset of the above
towards the end of the integration effort.
7.5.1 Time
The Lodestar/SPRINT can be time synchronised to UTC (or any time reference). This can be
achieved by providing a 1PPS signal and ZDA NMEA-0183 message from a GPS receiver or similar
clock source. If the serial communication link has known, stable latency then it is possible to use
ZDA only, but 1PPS is recommended where possible. If external time synchronisation is lost the
INS can continue to maintain an estimate of UTC time using its internal clock (~5ppm drift).
The ZDA message should conform to the NMEA 0183 standard. The message can be received on
any channel or over Ethernet. The 1PPS signal should be a 5 V pulse with >1 µs duration. The
signal can be fed to SPRINT via the CP+E1 or C1 port (trigger channels 1 or 2).
Note
*The Lodestar/SPRINT will accept a 3.3 V pulse but 5 V is recommended for signal integrity.
Time synchronisation is not technically required for operation. However, it is still recommended to
time synchronise the Lodestar/SPRINT when possible.
Time synchronisation with and without 1PPS is described below; if 1PPS is available it is suggested
that time sync without 1PPS is completed first before integrating the 1PPS functionality.
Ensure that the vehicle computer is using the correct baud rate (115200 if using this manual) and
is applying the multiplex protocol to the ZDA message.
IN 0 MSG + ZDA
TSYS SOURCE ZDA
TSYS ZDA 0
TSYS ZDALATENCY 0
The ZDA message should then be sent to the Lodestar/SPRINT wrapped in the multiplex protocol.
To check that the ZDA message is being correctly received the following command can be entered:
LOG 1 MSG ZDA
The above command will result in ZDA messages being relayed on to the debug C1 port (together
with the Log Wrapper; see Section 5.2.3) if the message format has been deemed correct. For the
message to be deemed correct the multiplex wrapper is checked and decoded and then the format
and contents of the ZDA message are checked. If the ZDA message is not being seen on the debug
C1 port then one or more of the checks on the message are failing.
Further reading of this section is only required if it appears that the ZDA message is not being
accepted – when any issues are resolved it is important to ensure that the configuration parameters
are returned to the settings shown above.
If the ZDA messages are being rejected the message formation should be checked against the
NMEA 0183 standard. To check that the ZDA message is correct without the multiplex format the
following should be configured:
IN 0 MSG - ZDA
IN 1 MSG + ZDA
TSYS ZDA 1
Enter one or more ZDA messages on the debug C1 port (via the terminal), if a message is logged
back then the ZDA format is correct, conversely if there is no logged message the format is incorrect
and should be connected.
If the ZDA was accepted on the debug C1 port then the problem lies with the multiplex wrapper
being used to send the ZDA to the Lodestar/SPRINT on the CP port. Revert the configuration
parameters by using the following commands and ensure that the ZDA wrapped in the multiplex
protocol is still being sent to the CP port:
IN 0 MSG - ZDA
IN 1 MSG + ZDA
TSYS ZDA 0
OP 1 MSG 0
LOG 1 MSG 0
PORT PASS 0 1
The last command routes all input bytes received on port “0” (CP) to the debug C1 port. The
terminal will try and display the bytes in ASCII, but to investigate the multiplex header and footer the
raw bytes being sent to the terminal should be logged to a binary file.
Note
In the steps above the PORT PASS functionality is used to route the raw communication being
received to a terminal. The same result could be achieved with a serial splitter.
The contents of this file should be inspected alongside the example below to check that the
multiplex wrapper is correct.
Note
The example shown in Table 7-2 is the first message found in the file on the Integration CD at the
following location:
..\Input_to_SPRINT\ZDA.bin
If there are other triggers in the system that are active they will also be producing TRG messages
at the same time.
In Section 7.4.3 the TMS message was introduced and this should be used to determine whether
the ZDA and 1PPS are being accepted by the Lodestar/SPRINT. Typically after 5 seconds with ZDA
and 1PPS time sync the standard deviation of the UTC field should be less than 2x10-5 seconds.
Also the Source field should indicate a ZDA and 1PPS update. Over time the other quality indicators
(e.g. ZDA rejection count, PPS rejection count, etc.) can be checked to ensure the time sync is
running well.
7.5.2 Position/Depth/Velocity
For a particular integration only a subset of the following subsections will be required to be
implemented. Each section is independent so there is no need to read the subsections that are
detailing aiding that will not be a part of the integration.
7.5.2.1 (S)USBL
There are two message types that are acceptable for (Subsea) USBL aiding, the first being a
PSIMSSB message and the second being a modified GGA message.
PSIMSSB
To configure for an input of a PSIMSSB message the following command is required:
IN 0 MSG + PSIMSSB
To check the message and the multiplex wrapper are being accepted by the Lodestar/SPRINT the
following command can be used to route a Log message to the debug C1 port.
LOG 1 MSG PSIMSSB
If all messages that are being sent to the Lodestar/SPRINT are being echoed on the debug C1 port
then both the multiplex wrapper and the format of the message are correct.
Further reading of this section is only required if it appears that the PSIMSSB message is not being
accepted – when any issues are resolved it is important to ensure that the configuration parameters
are returned to the settings shown above.
To check that the PSIMSSB message is correct without the multiplex format the following should be
configured:
IN 0 MSG - PSIMSSB
IN 1 MSG + PSIMSSB
Enter one or more PSIMSSB messages on the debug C1 port (via the terminal), if a message is
logged back then the PSIMSSB format is correct, conversely if there is no logged message the
format is incorrect and should be investigated against the message specification.
If the PSIMSSB was accepted on the debug C1 port then the problem lies with the multiplex
wrapper being used to send the PSIMSSB to the Lodestar/SPRINT on the CP port. Revert the
configuration parameters by using the following commands and ensure that the PSIMSSB wrapped
in the multiplex protocol is still being sent to the CP port:
IN 0 MSG + PSIMSSB
IN 1 MSG - PSIMSSB
OP 1 MSG 0
LOG 1 MSG 0
PORT PASS 0 1
The last command routes all input bytes received on port “0” (CP) to the debug C1 port. The
terminal will try and display the bytes in ASCII, but to investigate the multiplex header and footer the
raw bytes being sent to the terminal should be logged to a binary file.
Note
In the steps above the PORT PASS functionality is used to route the raw communication being
received to a terminal. The same result could be achieved with a serial splitter.
The contents of this file should be inspected alongside the example below to check that the
multiplex wrapper is correct.
Note
The example shown in Table 7-3 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Input_to_SPRINT\PSIMSSB.bin
GGA
To configure for an input of a SUSBL GGA message the following command is required:
IN 0 MSG + SUSBL
When providing a SUSBL GGA message it is important that the SID is correctly set (as the MID is
the same as GPS GGA) to identify this as a message for SUSBL aiding. To check that the
multiplexed wrapped SUSBL GGA message is being correctly sent the following command will log
correctly formatted messages to the debug C1 port:
LOG 1 MSG SUSBL
If all messages that are being sent to the Lodestar/SPRINT are being echoed on the debug C1 port
then both the multiplex wrapper and the format of the message are correct.
Further reading of this section is only required if it appears that the SUSBL GGA message is not
being accepted – when any issues are resolved it is important to ensure that the configuration
parameters are returned to the settings shown above.
To check that the SUSBL GGA message is correct without the multiplex format the following should
be configured
IN 0 MSG - SUSBL
IN 1 MSG + SUSBL
Enter one or more SUSBL GGA messages on the debug C1 port without the multiplex wrapper (via
the terminal), if a message is logged back then the SUSBL GGA format is correct, conversely if
there is no logged message the format is incorrect and should be investigated against the message
specification.
If the SUSBL GGA was accepted on the debug C1 port then the problem lies with the multiplex
wrapper being used to send the SUSBL GGA to the Lodestar/SPRINT on the CP port. Revert the
configuration parameters by using the following commands and ensure that the SUSBL GGA
wrapped in the multiplex protocol is still being sent to the CP port:
IN 0 MSG + SUSBL
IN 1 MSG - SUSBL
OP 1 MSG 0
LOG 1 MSG 0
PORT PASS 0 1
The last command routes all input bytes received on port “0” (CP) to the debug C1 port. The
terminal will try and display the bytes in ASCII, but to investigate the multiplex header and footer the
raw bytes being sent to the terminal should be logged to a binary file.
Note
In the steps above the PORT PASS functionality is used to route the raw communication being
received to a terminal. The same result could be achieved with a serial splitter.
The contents of this file should be inspected alongside the example below to check that the
multiplex wrapper is correct.
Note
The example shown in Table 7-4 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Input_to_SPRINT\SUSBL_GGA.bin
7.5.2.2 GPS
Table 6-1 shows a number of NMEA messages are accepted by Lodestar/SPRINT. One of the
messages listed under the GPS macro is the ZDA message and this has already been discussed in
Section 7.5.1. In this section the GGA and VTG messages will be covered. The integration of any of
the remaining messages shown in Table 6-1 should be completed in consultation with Sonardyne. A
GPS GGA message will be used to provide position information to the INS algorithm; in addition it
will also be a source of input for the AHRS latitude compensation. The VTG message is only used
by the AHRS algorithm as a source of velocity compensation. As the VTG is not used in INS
processing there are no observation status messages produced for this aiding message. Velocity
compensation of the AHRS is important for high speed vehicles or when operating at high latitude,
but is not required if only INS outputs are used.
GGA
To configure for an input of a GPS GGA message the following command is required:
IN 0 MSG + GGA
When providing a GPS GGA message it is important that the SID is correctly set (as the MID is the
same as SUSBL GGA) to identify this as a message for GPS aiding. To check that the multiplexed
wrapped GPS GGA message is being correctly sent the following command will log correctly
formatted messages to the debug C1 port:
LOG 1 MSG GGA
If all messages that are being sent to the Lodestar/SPRINT are being echoed on the debug C1 port
then both the multiplex wrapper and the format of the message are correct.
Note
Where GGA is used in the above command the macro name GPS could have been used, however
by using the explicit message name the integrator will avoid confusion with any other messages that
also fall under the macro.
Further reading of this section is only required if it appears that the GPS GGA message is not being
accepted – when any issues are resolved it is important to ensure that the configuration parameters
are returned to the settings shown above.
To check that the GPS GGA message is correct without the multiplex format the following should be
configured:
IN 0 MSG - GGA
IN 1 MSG + GGA
Enter one or more GPS GGA messages on the debug C1 port without the multiplex wrapper (via the
terminal), if a message is logged back then the GPS GGA format is correct, conversely if there is no
logged message the format is incorrect and should be investigated against the message
specification.
If the GPS GGA was accepted on the debug C1 port then the problem lies with the multiplex
wrapper being used to send the GPS GGA to the Lodestar/SPRINT on the CP port. Revert the
configuration parameters by using the following commands and ensure that the GPS GGA wrapped
in the multiplex protocol is still being sent to the CP port:
IN 0 MSG + GGA
IN 1 MSG - GGA
OP 1 MSG 0
LOG 1 MSG 0
PORT PASS 0 1
The last command routes all input bytes received on port “0” (CP) to the debug C1 port. The
terminal will try and display the bytes in ASCII, but to investigate the multiplex header and footer the
raw bytes being sent to the terminal should be logged to a binary file.
Note
In the steps above the PORT PASS functionality is used to route the raw communication being
received to a terminal. The same result could be achieved with a serial splitter.
The contents of this file should be inspected alongside the example below to check that the
multiplex wrapper is correct.
Note
The example shown in Table 7-5 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Input_to_SPRINT\GPS_GGA.bin
VTG
To configure for an input of a VTG message the following command is required:
IN 0 MSG + VTG
To check that the multiplexed wrapped VTG message is being correctly sent the following command
will log correctly formatted messages to the debug C1 port:
LOG 1 MSG VTG
If all messages that are being sent to the Lodestar/SPRINT are being echoed on the debug C1 port
then both the multiplex wrapper and the format of the message are correct.
Note
Where VTG is used in the above command the macro name GPS could have been used, by using
the explicit message name the integrator will avoid confusion with any other messages that also fall
under the macro
Further reading of this section is only required if it appears that the VTG message is not being
accepted – when any issues are resolved it is important to ensure that the configuration parameters
are returned to the settings shown above.
To check that the VTG message is correct without the multiplex format the following should be
configured:
IN 0 MSG - VTG
IN 1 MSG + VTG
Enter one or more VTG messages on the debug C1 port without the multiplex wrapper (via the
terminal), if a message is logged back then the VTG format is correct, conversely if there is no
logged message the format is incorrect and should be investigated against the message
specification.
If the VTG was accepted on the debug C1 port then the problem lies with the multiplex wrapper
being used to send the VTG to the Lodestar/SPRINT on the CP port. Revert the configuration
parameters by using the following commands and ensure that the VTG wrapped in the multiplex
protocol is still being sent to the CP port:
IN 0 MSG + VTG
IN 1 MSG - VTG
OP 1 MSG 0
LOG 1 MSG 0
PORT PASS 0 1
The last command routes all input bytes received on port “0” (CP) to the debug C1 port. The
terminal will try and display the bytes in ASCII, but to investigate the multiplex header and footer the
raw bytes being sent to the terminal should be logged to a binary file.
Note
In the steps above the PORT PASS functionality is used to route the raw communication being
received to a terminal. The same result could be achieved with a serial splitter.
The contents of this file should be inspected alongside the example below to check that the
multiplex wrapper is correct.
Note
The example shown in Table 7-6 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Input_to_SPRINT\VTG.bin
Note
In the steps above the PORT PASS functionality is used to route the raw communication being
received to a terminal. The same result could be achieved with a serial splitter.
The contents of this file should be inspected alongside the example below to check that the
multiplex wrapper is correct.
Note
The example shown in Table 7-7 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Input_to_SPRINT\XPOS.bin
7.5.2.4 LBL
For LBL aiding there are two message types that the SPRINT unit requires, these are PSONLOBS
and PSONBCN (known as PSONLBLBCN for LBL). How these are generated from “raw” LBL
communications is beyond the scope of this document.
LBL observations are recorded in a PSONLOBS message, however for that to be used a
corresponding PSONBCN must have been recently received; this message contains details
regarding the beacon. It is recommended that the two messages are sent as a pair, although it is
possible to have the PSONBCN message being sent at a lower rate (compared to the PSONLOBS)
and LBL aiding to still be possible.
Both messages are controlled with a message macro; therefore the following configuration should
be applied to enable the input of LBL data:
IN 0 MSG + PSONLBLBCN
To check that both messages are being correctly sent the following command will log correctly
formatted messages to the debug C1 port:
LOG 1 MSG PSONLBLBCN
If all messages that are being sent to the Lodestar/SPRINT are being echoed on the debug C1 port
then both the multiplex wrapper and the format of the message are correct.
Further reading of this section is only required if it appears that either the PSONLOBS or
PSONLBLBCN messages are not being accepted – when any issues are resolved it is important to
ensure that the configuration parameters are returned to the settings shown above.
To check that the messages are correct without the multiplex format the following should be
configured
IN 0 MSG - PSONLBLBCN
IN 1 MSG + PSONLBLBCN
Enter one or more of each of the message types on the debug C1 port without the multiplex wrapper
(via the terminal), if a message is logged back then the message formats are correct, conversely if
there is no logged message the format is incorrect and should be investigated against the message
specification.
If the messages were accepted on the debug C1 port then the problem lies with the multiplex
wrapper being used to send the LBL messages to the Lodestar/SPRINT on the CP port. Revert the
configuration parameters by using the following commands and ensure that the LBL messages are
wrapped in the multiplex protocol is still being sent to the CP port:
IN 1 MSG - PSONLBLBCN
IN 0 MSG + PSONLBLBCN
OP 1 MSG 0
LOG 1 MSG 0
PORT PASS 0 1
The last command routes all input bytes received on port “0” (CP) to the debug C1 port. The
terminal will try and display the bytes in ASCII, but to investigate the multiplex header and footer the
raw bytes being sent to the terminal should be logged to a binary file.
Note
In the steps above the PORT PASS functionality is used to route the raw communication being
received to a terminal. The same result could be achieved with a serial splitter.
The contents of this file should be inspected alongside the examples below to check that the
multiplex wrapper is correct.
PSONLOBS
PSONLBLBCN
Note
The examples shown in Table 7-8 and Table 7-9 are the first messages found in the file on the
Integration CD at the following location:
..\Example_Communication_Files\Input_to_SPRINT\LBL.bin
Note
The PRDKELLBAR support is currently specific to the integrated pressure sensor fitted to some
Lodestar/SPRINT variants. An external Keller sensor could be used but would have to be configured
to use the same device address and communications protocol as that used internally. Contact
Sonardyne for details.
The following will detail two possible depth sensor inputs. The first will be PRDDIGIQPSI which will
be configured such that it is connected directly to a Lodestar/SPRINT port, the second configuration
will show how a PRDXDEPTH can be supplied via the vehicle control computer. These two
variations should provide examples that can be applied to the other sensor types specified in Table
7-10.
Note
As most depth message formats are not timestamped, it is important to minimise the latency and
jitter of the data. If the vehicle computer is likely to add significant latency or jitter it is recommended
to connect the depth sensor directly to one of the Lodestar/SPRINT unit ports.
PRDDIGIQPSI
For the purposes of describing the configuration required for a direct connection to a pressure
sensor it will be assumed that the pressure sensor is interfaced to the T1 port. The following will
configure the T1 port to interface to a DigiQuartz pressure sensor, where the data is in PSI.
IN 3 MSG PRDDIGIQSPI
OP 3 BAUD 9600
OP 3 MULTIPLEX 0
OP 3 PROT 232
If the sensor is being independently powered then data should be provided to the Lodestar/SPRINT.
If however the power pass through functionality of the Lodestar/SPRINT is being used the following
command will turn the power on to the port (for more information on power pass through see
Sections 3.2.2 and 7.11.4).
PORT 3 PWRPASS 1
To check that messages are being correctly sent, the following command will log correctly formatted
messages to the debug C1 port:
LOG 1 MSG PRDDIGIQSPI
If all messages that are being sent to the Lodestar/SPRINT are being echoed on the debug C1 port
then both the configuration of the T1 port and the format of the message are correct. If this is not the
case then the baud rate and other serial port configurations should be checked and the sensor itself
can be checked by plugging the sensor directly into a PC serial port.
PRDXDEPTH
There are two possible means of entering a XDEPTH position, one via a message but it is also
possible to enter a depth update via a command. The generic multiplex command logic is covered in
Section 7.7 and should be read if the XDEPTH updates are going to be completed by command. It
is recommended that the command method of XDEPTH update is only used for sporadic updates, if
the updates will be regular in nature then it is recommended to use the XDEPTH message.
To configure for an input of a XDEPTH message the following command is required:
IN 0 MSG + PRDXDEPTH
To check that the multiplexed wrapped XDEPTH message is being correctly sent the following
command will log correctly formatted messages to the debug C1 port:
LOG 1 MSG PRDXDEPTH
If all messages that are being sent to the Lodestar/SPRINT are being echoed on the debug C1 port
then both the multiplex wrapper and the format of the message are correct.
Further reading of this section is only required if it appears that the XDEPTH message is not being
accepted – when any issues are resolved it is important to ensure that the configuration parameters
are returned to the settings shown above.
To check that the XDEPTH message is correct without the multiplex format the following should be
configured:
IN 0 MSG - PRDXDEPTH
IN 1 MSG + PRDXDEPTH
Enter one or more XDEPTH messages on the debug C1 port without the multiplex wrapper (via the
terminal), if a message is logged back then the XDEPTH format is correct, conversely if there is no
logged message the format is incorrect and should be investigated against the message
specification.
If the XDEPTH was accepted on the debug C1 port then the problem lies with the multiplex wrapper
being used to send the XDEPTH to the Lodestar/SPRINT on the CP port. Revert the configuration
parameters by using the following commands and ensure that the XDEPTH wrapped in the
multiplex protocol is still being sent to the CP port:
IN 1 MSG - PRDXDEPTH
IN 0 MSG + PRDXDEPTH
OP 1 MSG 0
LOG 1 MSG 0
PORT PASS 0 1
The last command routes all input bytes received on port “0” (CP) to the debug C1 port. The
terminal will try and display the bytes in ASCII, but to investigate the multiplex header and footer the
raw bytes being sent to the terminal should be logged to a binary file.
Note
In the steps above the PORT PASS functionality is used to route the raw communication being
received to a terminal the same could be achieved with a serial splitter, which should achieve the
same result (assuming there is no failure with the cable).
The contents of this file should be inspected alongside the example below to check that the
multiplex wrapper is correct.
Note
The example shown in Table 7-7 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Input_to_SPRINT\XDEPTH.bin
7.5.2.6 DVL
Consistent latency and low jitter are critical for good DVL INS performance so DVL instruments are
generally connected directly to the Lodestar/SPRINT and the scenario put forward in Section 7.1
has the DVL connected to port T2.
Note
If the DVL is not connected directly to the Lodestar/SPRINT Sonardyne should be consulted for
advice as to how to best integrate a DVL where DVL messages are routed via a vehicle control
computer.
Lodestar/SPRINT support a number of different DVL message types as shown in Table 7-12.
Note
It is recommended that wherever possible Binary DVL messages are used with Lodestar/SPRINT.
The use of binary messages over ASCII reduces the required bandwidth on the communications
channels that are moving DVL data (the port used as an input as well as any that are logging the data).
When interfacing a DVL with Lodestar/SPRINT a decision needs to be made as to whether the DVL
will be triggered by the Lodestar/SPRINT. The chosen configuration needs to be applied to both
devices – if the Lodestar/SPRINT is configured for free-running (no trigger) but the DVL is setup for
triggered operation the DVL will not produce any messages for the Lodestar/SPRINT. Conversely if
the DVL is configured in a free running mode but the Lodestar/SPRINT is configured for triggered
operation the integration could cause reduced performance as the Lodestar/SPRINT will be
receiving DVL messages and it will not be able to corroborate those against the outgoing triggers.
The following configuration is assuming that the DVL being interfaced is a Sonardyne Syrinx
instrument; advice can be sought from Sonardyne as to how this part of the configuration may
change if another type of DVL is used. It is also assumed that the DVL is configured to expect a
trigger. If the integration doesn’t use a trigger or doesn’t have the Lodestar/SPRINT trigger, the DVL
trigger setup below can be skipped.
The following will configure the T2 port to expect Binary DVL messages:
IN 4 MSG DVL
DVL OPFORMAT BINARY
OP 4 MSG 0
OP 4 MULTIPLEX 0
OP 4 BAUD 115200
LOG 4 MSG 0
The following will configure the Trigger on the T2 port to trigger the DVL
DVL TRIG 4
TRIG 4 NRZ 0
TRIG 4 GO 1
If the sensor is being independently powered then data should be provided to the Lodestar/SPRINT.
If however the power pass through functionality of the Lodestar/SPRINT is being used the following
command will turn the power on to the port (for more information on power pass through; see
Sections 3.2.2 and 7.11.4).
PORT 4 PWRPASS 1
To check that messages are being correctly sent the following command will log correctly formatted
messages to the debug C1 port:
LOG 1 MSG DVL
If all messages that are being sent to the Lodestar/SPRINT are being echoed on the debug C1 port
then both the configuration of the T2 port and the format of the message are correct. If this is not the
case then the baud rate and other serial port configurations should be checked. For the Sonardyne
Syrinx this can be achieved via the web configuration (please refer to the Syrinx documentation for
more details).
To check that the trigger is working correctly the following commands should be sent:
LOG 1 MSG + TRG
Assuming that there is only one message type defined for output on the DVL the output should
alternate between logged DVL messages (which are usually binary) and a PSONTRG message.
Note
The assumption regarding one message type being sent by the DVL should be checked. Syrinx
can be configured to output multiple types. As the Logging is specifying the macro name “DVL” all
recognised messages will be logged which might make checking that the triggering is working
correctly difficult. Where this is the case instead of using the message macro specific message name
can be given, for example if it is known the DVL is producing PD4 messages the configuration should
be changed to:
LOG 1 MSG TRG DVLPD4PD5
SVS PORT 0
To check that the multiplexed wrapped PSONSS message is being correctly sent the following
command will log correctly formatted messages to the debug C1 port:
LOG 1 MSG SVS
If all messages that are being sent to the Lodestar/SPRINT are being echoed on the debug C1 port
then both the multiplex wrapper and the format of the message are correct.
Further reading of this section is only required if it appears that the PSONSS message is not being
accepted – when any issues are resolved it is important to ensure that the configuration parameters
are returned to the settings shown above.
To check that the PSONSS message is correct without the multiplex format the following should be
configured:
IN 0 MSG - SVS
IN 1 MSG + SVS
SVS PORT 1
Enter one or more PSONSS messages on the debug C1 port without the multiplex wrapper (via the
terminal), if a message is logged back then the PSONSS format is correct, conversely if there is no
logged message the format is incorrect and should be investigated against the message
specification.
If the PSONSS was accepted on the debug C1 port then the problem lies with the multiplex wrapper
being used to send the PSONSS to the Lodestar/SPRINT on the CP port. Revert the configuration
parameters by using the following commands and ensure that the PSONSS wrapped in the
multiplex protocol is still being sent to the CP port:
IN 0 MSG + SVS
IN 1 MSG – SVS
SVS PORT 0
OP 1 MSG 0
LOG 1 MSG 0
PORT PASS 0 1
The last command routes all input bytes received on port “0” (CP) to the debug C1 port. The
terminal will try and display the bytes in ASCII, but to investigate the multiplex header and footer the
raw bytes being sent to the terminal should be logged to a binary file.
Note
In the steps above the PORT PASS functionality is used to route the raw communication being
received to a terminal the same could be achieved with a serial splitter – which should achieve the
same result (assuming there is no failure with the cable).
The contents of this file should be inspected alongside the example below to check that the
multiplex wrapper is correct.
Note
Table 7-13 is the first message found in the file on the Integration CD at the following location:
..Input_to_SPRINT\PSONSS.bin
It is common to assume that the Lodestar/SPRINT measurement point is also the vehicle CRP – if
this is the case no Lever Arms are require and can be left at zero, e.g.
IMU LA 0.0 0.0 0.0
In addition to the Lever Arms the other parameters that require configuration based on the mounting
of the Lodestar/SPRINT on a vehicle are the mounting angles. Section 4.3.2 details how the
mounting angles should be calculated, this should give the following:
• Heading (Rotation by the gamma angle about Z axis)
• Resulting Pitch (Rotation by the beta angle about the resulting Y axis)
• Resulting Roll (Rotation by the alpha angle about the resulting x axis)
With the measurements and calculations completed the mounting angles can be entered using the
following command:
IMU MA R.R P.P H.H
e.g.
IMU MA 0.0 0.0 90.0
The example above indicates that the Lodestar/SPRINT has been rotated by 90° around the Z axis,
this type of mounting may be to allow easier cable routing. Table 7-14 indicates the range of the
angles that will be accepted for the command above (and all other commands that modify mounting
angle parameters).
Note
After modifying IMU Lever Arms or Mounting Angles, both the AHRS and INS algorithms should
be reset.
After modifying GPS Lever Arms, the INS algorithm should be reset.
GPS QUALITY 4 4
This has the effect of only accepting GGA messages with the quality “4”.
Note
The GPS QUALITY is only used for GGA rejection in the INS, for AHRS a GGA message will
always be accepted for latitude aiding if quality field is be between 1 and 5 (inclusive), regardless of
the setting above.
There are further more advanced configuration parameters for tuning GGA aiding of the INS,
where the default values are set such that in most cases modifications of the parameters will not be
required. If problems are experience with GGA aiding or with modifying the above parameters please
consult Sonardyne for further advice.
After modifying XPOS Lever Arms, the INS algorithm should be reset.
to use ZDA and 1PPS time sync the time system standard deviation must be lower than 0.01 s for
the XPOS message to be accepted. When configured to just use ZDA as the time sync the standard
deviation must be less than 0.6 s.
XPOS can also be entered via a command. In this instance if a UTC time is provided the same
check on the time system is made as above.
Other than checking of UTC time there are no other configurable parameters for pre-filtering XPOS
observations.
There are further more advanced configuration parameters for tuning XPOS aiding of the INS,
where the default values are set such that in most cases modifications of the parameters will not be
required. If problems are experienced with XPOS aiding please consult Sonardyne for further advice.
After modifying SUSBL Lever Arms, the INS algorithm should be reset.
There are further more advanced configuration parameters for tuning SUSBL aiding of the INS,
where the default values are set such that in most cases modifications of the parameters will not be
required. If problems are experienced with SUSBL aiding please consult Sonardyne for further advice.
After modifying LBL Lever Arms, the INS algorithm should be reset.
There are more advanced configuration parameters for tuning LBL aiding of the INS, where the
default values are set such that in most cases modifications of the parameters will not be required. If
problems are experienced with LBL aiding please consult Sonardyne for further advice
After modifying PRESS Lever Arms, the INS algorithm should be reset.
The example above would result in 1 m being subtracted from the measured pressure.
The final parameter that can be configured is specific to when a Keller pressure sensor is being
utilised. The parameter sets the measurement rate to be set and is controlled using the following
command:
PRESS KELLRATE <d.d>
e.g.
PRESS KELLRATE 4.0
The example above would configure the Keller sensor to be interrogated for a measurement at a
rate of 4 Hz.
There are more advanced configuration parameters for tuning PRESS aiding of the INS, where the
default values are set such that in most cases modifications of the parameters will not be required. If
problems are experienced with PRESS aiding please consult Sonardyne for further advice
The example above indicates that the DVL forward mark has been rotated by 180 in heading when
compared to vehicle forward.
Notes
DVL Mounting Angles are one of the parameters that are calculated as part of the DVL calibration.
Where a DVL calibration has taken place the values from that calibration should be used (see Section
7.11.8). If a DVL calibration hasn’t been carried out the mounting angles entered here only need to be
coarse estimates before completing a DVL calibration.
After modifying DVL Lever Arms or Mounting Angles, the INS algorithm should be reset.
If a Syrinx unit is interfaced to the Lodestar/SPRINT and Beam mode of operation is required,
Sonardyne should be consulted on the setting of configuration parameters.
Two further parameters that are calculated by a DVL calibration (as well as the DVL mounting
angles) they are the DVL scale factor error and DVL latency. The scale factor parameter can be
configured using the following command:
DVL SFERROR <d.d>
e.g.
DVL SFERROR 0.01
The example above would configure a scale factor error of 0.01 (1%) which will be used to scale the
DVL data.
The DVL latency parameter can be configured using the following command:
DVL LATENCY <d.d>
e.g.
DVL LATENCY 0.1
The example above sets a latency of 0.1s to be applied when calculating the Time of Validity (TOV)
for each DVL observation.
The Lodestar/SPRINT is able to receive either ASCII or binary versions of some DVL messages;
see Table 7-12. The expected format of the incoming messages is controlled by the following
command:
DVL OPFORMAT <ASCII | BINARY>
e.g.
DVL OPFORMAT BINARY
The example above would configure the Lodestar/SPRINT to expected only binary DVL messages.
Note
Lodestar/SPRINT do not support a mixture of Binary and ASCII DVL messages being sent on the
same port.
For best performance it is recommended that the Lodestar/SPRINT is configured to trigger the DVL.
This means that the DVL will acquire an observation whenever it receives a trigger from
Lodestar/SPRINT. The time of validity of the observation will be accurately known by the
Lodestar/SPRINT based on the trigger time. The following command enables/disables the trigger
and configures which port to use:
DVL TRIG <T# | NONE>
e.g.
DVL TRIG NONE
The example above configures the Lodestar/SPRINT to not trigger the DVL and to use the Time of
Arrival of messages as the basis for calculating the Time of Validity (TOV):
DVL TRIG 4
The example above configures the Lodestar/SPRINT to trigger a DVL on Trigger Port 4 (usually
exposed on the T2 Connector). The trigger parameters can be further customised using the trigger
commands documented in Section 7.6.12.
The following four configuration parameters control the pre-filtering of DVL observations:
DVL PREPMAXLAST <d.d>
This controls the allowable time period between the current and last DVL observations. If the time is
greater than that configured, the current observation will not be used by the INS algorithm
e.g.
DVL PREPMAX LAST 1.2
The example above will reject the current DVL observation if the previous DVL observation is more
than 1.2s older.
DVL PREPMAXACC <d.d>
This controls the allowable maximum change in velocity (acceleration) allowed as calculated
between the current and previous DVL observations. If the velocity change is greater than that
configured the current observation will not be used by the INS algorithm.
e.g.
DVL PREPMAXACC 0.25
The example above will reject the current DVL observation if the change in velocity exceeds 0.25
m/s2.
DVL MINBEAMS <d> [<d.d>]
This controls the minimum number of DVL beams that must be valid in the message for the velocity
to be used.
Note
The optional second value provided in the DVL MINBEAMS command is a “boost” factor which
boosts the uncertainty of the observation before it is processed within the INS; this should be left at
the default value unless otherwise advised by Sonardyne.
e.g.
DVL MINBEAMS 3
The example above would result in three beam solutions being used if four beam solutions are not
available.
DVL KFEVEL <d.d>
This sets the maximum acceptable error velocity reported in the DVL observation. If the error
velocity exceeds this value the observation will be rejected.
e.g.
DVL KFEVEL 0.01
The example above would result in a four beam solution being rejected if the error velocity is greater
than 0.01 m/s.
Note
An error velocity will only be valid if the there are four valid beams, so the error velocity check
will not be applied if there are only three, or fewer valid beams.
There are further more advanced configuration parameters for tuning DVL aiding of the INS,
where the default values are set such that in most cases modifications of the parameters will not be
required. If problems are experience with DVL aiding please consult Sonardyne for further advice.
The above command will return the latest value of sound speed available to the system, therefore
if a value is not provided in the command it will return the current value being used by the
Lodestar/SPRINT as has been previously entered (via Command or Message) or calculated in AUTO
mode.
The following command sets the salinity of the sea water, as measured in parts per thousand and
the value will be only be used (therefore required) if the SVS type is set to “AUTO”.
INS XSAL 32
If aiding is believed to be being accepted by the SPRINT but the INS is not initialising the sections
on INS Configuration (7.6.11.2) and Verifying Aiding Use (7.6.11.4) should be consulted.
INS RST
This will cause the INS algorithm to restart and will therefore require the prerequisites set out in
Section 7.6.11.1 to be available for the INS algorithm to initialise again.
Should the Lever Arm or Mounting Angle configurations parameters be modified both an INS reset
and AHRS reset should be undertaken by entering the following commands:
GC RST
INS RST
The INS is also reinitialised automatically if the INS predicted error grows above the value of the
parameter that is configured via the following command:
INS KFHPOSRST
This is usually as the result of significant period of running on “free inertial”. This is where no aiding
is provided/accepted for use by the INS algorithm and therefore the INS is running purely off the
inertial sensors contained within the Lodestar/SPRINT. The default is set to 1km, but the time it will
take for the error prediction to grow to that limit is difficult to predict as there are many factors that
would influence the performance of the Lodestar/SPRINT during a period of free inertial. If the auto
reset functionality is not required the following command will turn it off:
INS KFHPOSRST 0
data in the message output. Also two of the three sensor letters have changed from lowercase to
upper case this indicates that some of the sensor data has been used by the INS in the previous
INS cycle (‘D’ = depth, ‘S’ = SUSBL). However the DVL is still shown in lowercase (‘v’) – this could
be because of two reasons:
1. The INS USE isn’t specifying the DVL for use, e.g.
INS USE SUSBL PRESS
2. The DVL is configured for use but is being rejected for use by the INS (either by the pre-filter
or sigma rejection in the INS algorithm)
INS USE SUSBL PRESS DVL
Assuming that scenario 2 above is the configuration, the only way to determine why the DVL is not
being used is to decode its corresponding Observation Status message (OBSTDVL). The tables
below show how an OBSTDVL message should be decoded.
Note
Different DVL observations may be rejected for different reasons. Each OBSTDVL message only
applies to one DVL observation.
Note
The example shown in Table 7-15 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Output_from_SPRINT\OBSTDVL.bin
Based on the message specification of the OBSTDVL message, Table 7-16 decodes the message
(after removing any byte stuffing) into its corresponding fields so that the reason for rejection can be
found.
Table 7-17 provides a decoding of the “reject” field of the OBSTDVL message. This shows that
there are three reasons this DVL observation has been rejected for use.
The actual hardware of a Lodestar/SPRINT may only support either input or output functionality.
When configured as an input trigger the following command configures whether the active edge is
the falling or rising edge.
TRIG X ACTIVE <1 | 0>
e.g.
TRIG 2 ACTIVE 1
The example above would configure trigger 2 as being rising edge triggered. To enable or disable
an input trigger the following command should be used:
TRIG X GO <1 | 0>
e.g.
TRIG 2 GO 1
The example above would enable trigger 2.
Note
Whenever a trigger configuration parameter is modified the trigger will require re-enabling using
the ‘GO’ command.
When configured as an output trigger there are more extensive configuration options. The two
configuration parameters that are described above for an input trigger are also valid for an output
trigger. It should be noted that whenever a trigger configuration parameter is modified the trigger will
require re-enabling (using the “GO” command). Figure 7-2 provides the definition of the three
additional configurable parameters available for an output trigger. The command syntax for the
three commands is shown below:
TRIG X PERIOD <d.d>
TRIG X START <d.d>
TRIG X WIDTH <d.d>
START
WIDTH
PERIOD
TRIG 3 ACTIVE 1
TRIG 3 START 50
TRIG 3 PERIOD 1000
TRIG 3 WIDTH 25
TRIG 3 GO 1
The above set of commands configures trigger 3 to have a period of 1000 ms where the width of the
pulse to be 25 ms. The first rising edge is configured to be 50 ms after the trigger is enabled.
Note
The commands will ensure that erroneous configurations are not accepted, e.g. have a WIDTH
that is larger than the configured PERIOD.
The above describes the most common configuration parameters; if more complex triggering
architecture is required to be supported Sonardyne should be contacted for further support.
The following commands allow the Real Time Calendar (RTC) to be updated (or read). The RTC is
used as a source of UTC when other time synchronisation is not available.
TSYS DATETIME <dd/mm/yyyy> <hh:mm:ss>
TSYS DATE <dd/mm/yyyy>
TSYS TIME <hh:mm:ss>
The above are three commands that allow the data and/or time to be updated on the RTC. The
following command controls how often the RTC is updated if the Lodestar/SPRINT is being time
synchronised by an external source (ZDA or ZDA and 1PPS):
TSYS UPDATE <d>
e.g.
TSYS UPDATE 150
The example above would result in the RTC being updated every 150 s with a UTC time based on
the external time aiding being provided (assuming it has passed all the checks and is therefore
classed as valid).
The other commands that are included in the files provide further examples of commands and their
respective responses. The next command modifies a configuration parameter successfully, this is
followed by a command where its response is split over multiple lines, the final example shows an
incorrect command where the response is only one multiplex packet indicating the command was
“not ok”.
Note
The example shown in Table 7-20 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Output_from_SPRINT\LNAV_INS.bin
The following table takes the byte stuffed payload from Table 7-20 and removes the byte stuffing
before indicating how the data should be decoded against the LNAV message specification.
Note
The altitude is provided by the DVL and is provided even if the DVL observations are rejected for
use by the INS algorithm, hence in the example above it is stated that the Altitude data is “new” but no
DVL data has been used by the INS.
Note
The example shown in Table 7-23 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Output_from_SPRINT\PSONNAV_RP3.bin
7.8.3 BIST
The BIST message is a series of bit fields which provide a general overview of the health and status
of the Lodestar/SPRINT.
The table below shows how this message is wrapped in the multiplex format. The payload is then
used to demonstrate how individual bits of interest can be decoded.
Note
The example shown in Table 7-24 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Output_from_SPRINT\BIST.bin
The tables below give an indication how the BIST message should be decoded; first in to its
composite fields and then down to bit level.
Only when a bit field is equal to ‘1’ is the reason for the fields “active”. The table below decodes the
“Comms” field in Table 7-25 and presents the fields that are “active”.
7.8.4 Settings
The Settings message is slightly different from the other messages already described in this section
as, due to its size, it is transmitted over a number of multiplex messages. Where a message
requires this behaviour it is stipulated in the message definition.
The Settings message is similar to the response to the SYS LIST command, it is output at a rate
such that there is always one settings message logged in each SD card log file (the frequency of
which is determined by the parameter controlled by the command LOG ROTATE). The first two bytes
of the payload indicate how many multiplex packets containing fragments of the Settings message
are required for a complete Settings message and an ID number to indicate which fragment of data
is contained within the rest of the payload.
Note
The example shown in Table 7-27 is the first message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Output_from_SPRINT\Settings.bin
Note
The example shown in Table 7-28 is the last message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Output_from_SPRINT\Settings.bin
To recreate a completed Settings message all fragments are required with the payloads (minus the
fragment count information) to be concatenated together.
Where an input message doesn’t contain a timestamp indicating a time of validity it is advised
that these are fed into the Lodestar/SPRINT via a serial connection to allow the Lodestar/SPRINT to
internally tag the data with a time of arrival. Whilst this will also be completed for Ethernet based
inputs, a direct serial connection by its nature will suffer less latency and jitter when compared to an
Ethernet routed message.
Notes
Even though the DVL is co-housed with the Lodestar/SPRINT the power to the DVL still needs to
be commanded on (and off) via the Lodestar/SPRINT unless the DVL is being independently powered
via the “DVL” connector.
Power is provided to the pressure sensor as soon as power is supplied to the Lodestar/SPRINT.
If there are other “Outputs” or “Logs” configured on the output port configured for a Pass
Through it should be expected that those “Output” or “Logs” will interrupt the data that is being
passed through.
An example might be the vehicle control computer (connected to CP – multiplexed) sending and
receiving commands to a sensor directly connected to a port on the Lodestar/SPRINT, for example
a DVL (connected to T2 non-multiplexed).
Table 7-29 and Table 7-30 show an example of pass through communications, with a control
computer requesting information from a Syrinx DVL connected on port T2. The following commands
would enable the pass through for the following example:
PORT PASS 0 4
PORT PASS 4 0
Note
The example shown in Table 7-29 is the last message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Input_To_SPRINT\Multiplex_pass.bin
Note
The example shown in Table 7-30 is the last message found in the file on the Integration CD at the
following location:
..\Example_Communication_Files\Output_From_SPRINT\Multiplex_pass.bin
The results shown in Figure 7-4 would then need configuring on the Lodestar/SPRINT using the
following commands:
DVL MA 0.461 -0.033 0.327
DVL LATENCY 0
DVL SFERROR -0.00113
Depending on the calibration that has taken place a further two configuration parameters should be
configured for the INS.
For an uncalibrated DVL (heading good to 3°) the following configuration should be used:
INS DVL KFSF 0.025 300
INS DVL KFMA 2.5 300
For a calibrated DVL with position being derived from USBL the following configuration should be
used:
INS DVL KFSF 0.005 300
INS DVL KFMA 0.5 300
For a calibrated DVL with position being derived from RTK GPS the following configuration should
be used:
INS DVL KFSF 0.002 1000
INS DVL KFMA 0.1 1000
Note
The SPRINT User Manual and Janus User Manual should be consulted for further information with
regards to performing the DVL Calibration.
Some output messages also contain angular rate and acceleration information, these are
provided for vehicle control but due to filtering and interpolation/extrapolation they should not be
considered to be the equivalent of IMU data.
Section 8 – Messages
This section contains message specifications for the following message types:
8.2 IN Messages
8.2.1 Digiquartz Pressure Sensor Report
Description
Pressure depth output from Paroscientific Digiquartz intelligent pressure depth sensor.
Format
*0001nnn__<cr><lf>
Digiquartz Formatting
Field Description
* Start character
00 Destination ID (00 is ID of serial host)
01 Source ID (01 is ID of sender device)
nnn__ Measurement Data (units=Metres H2O/KPA/PSI)
<cr><lf> return plus linefeed
Format
$PSONDEP,x.xx,y.y,c*hh<cr><lf>
PSONDEP Formatting
Field Description
$ Start_character
PSONDEP Header
x.xx Depth
y.y Observation Error
c Units (M=metres)
*hh Terminator and Checksum
<cr><lf> Termination (0x0D 0x0A)
DPT Formatting
Field Description
$ Start_character
__DPT Header
x.x Water depth in metres
y.y Offset in metres. (NOT USED)
z.z Maximum range scale in use
*hh Terminator and Checksum
<cr><lf> Termination (0x0D 0x0A)
Winson Data
Field Description
%D Start characters
BBBB Number of bytes in message, displayed as hex-ascii
SS Slot number, displayed as hex-ascii (‘01’ to ‘0C’)
RR Generic device type, displayed as hex-ascii (00 to 63)
A Data reply mode (0=ASCII, 1=Hex, 2=Binary, 3=CSV)
P Send type (0=Processed, 1=Raw, 2=SeaKing Short, 3=SeaKing Long)
m ‘+’ if positive, ‘-‘ if negative
TTTTT Internal temperature
PPPPPPPPPP Digiquartz pressure
m ‘+’ if positive, ‘-‘ if negative
TTTTT Digiquartz temperature
Raw digiquartz pressure reading is the number of 8MHz counts for 10,000
PPPPPPPPPP
digiquartz pulses
Raw digiquartz temperature reading is the number of 8MHz counts for 40,000
RRRRRRRRRR
digiquartz pulses
m ‘+’ if positive, ‘-‘ if negative
OOOOO Local oscillator calibration coefficient
CCCCC Conductivity
m ‘+’ if positive, ‘-‘ if negative
TTTTT Conductivity probe temperature
SSSSS Salinity (calculated from conductivity readings)
VVVVV Velocity of sound (calculated from conductivity readings)
m ‘+’ if positive, ‘-‘ if negative
Altimeter reading (This value DOES include ‘Altimeter Position offset’. V.O.S.
AAAAAAAAAA
figure in preceding field is applied)
Field Description
Bathymetric system devices, byte converted to Uint
Bit 0 = 1 = Digiquartz valid
Bit 1 = 1 = Conductivity valid
Bit 2 = 1 = Altimeter valid
Bit 3 = 1 = Internal temperature valid
(Only installed in SK701 Bathy)
DDD Bit 4 = 1 = Velocity of sound calculation valid
Bit 5 = 1 = Salinity calculation valid
E.G.
Digiquartz valid = “001”
Digiquartz & Conductivity valid = “003”
Digiquartz & Altimeter valid = ”005”
Digiquartz, Conductivity & Altimeter valid = “007”
m ‘+’ if positive, ‘-‘ if negative
Depth (This value DOES include ‘Bathy Position offset’ and ‘Bathy Zero
DDDDDDDDDD
offset’)
HHMMSSCC Time at start of scan
<cr><lf> Terminator, return plus linefeed
SVX2 Data
Field Description
ssss.sss Sound Velocity in metres per second
uuuu Sound Velocity Units (M/SEC)
dddd.ddd Depth
xxxx Depth Units (DBAR)
tttt.ttt Temperature
xxxx Temperature Units (C)
cccc.ccc Conductivity
zzzz Conductivity Units (MS/CM)
Field Description
<cr><lf> return plus linefeed
8.2.6 XDEPTH
Description
External depth input from a non-specific source.
Format
$XDEPTH,hhmmss.sss,d.ddd,x.xxx,aa*hh<cr><lf>
XDepth Formatting
Field Description
$XDEPTH Start Character
hhmmss.sss UTC Time
d.ddd Depth in metres
x.xxx Depth Standard Deviation in metres
aa Spare
<cr><lf> return plus linefeed
8.2.7 PD4
Table 8-2 PD4
27–30 14,15 Bm1 These fields contain the vertical range from the ADCP to the
bottom as determined by each beam. This vertical range does
not compensate for the effects of pitch and roll. When a
bottom detection is bad, the field is set to zero.
Scaling: LSD = 1 centimetre; Range = 0 to 65535 cm
31–34 16,17 Bm2 Rng to
8.2.8 PD0
General Format
Bytes Field name Notes
6 + [2 × No. of data types] HEADER Always output
59 FIXED LEADER DATA
65 VARIABLE LEADER DATA
2 + 8 per depth cell VELOCITY WD-command
2 + 4 per depth cell CORRELATION MAGNITUDE WP-command
Header Format
Byte# Field name Notes
1 Header ID Stores the header identification byte (7Fh)
2 Data source ID Stores the data source identification byte (7Fh for the Work-Horse
ADCP)
3-4 Number of bytes in This field contains the number of bytes from the start of the
ensemble current ensemble up to, but not including, the 2-byte checksum
5 Spare Undefined
6 Number of data types This field contains the number of data types selected for
collection. By default, fixed/variable leader, velocity, correlation
magnitude, echo intensity, and percent good are selected for
collection. This field will therefore have a value of six (4 data types
+ 2 for the Fixed/Variable Leader data).
7–8 Offset for data type #1 These field contains the internal memory address offset where the
Navigator will store information for data type #n Adding “1” to this
9–10 Offset for data type #2 offset number gives the absolute Binary Byte number in the
11–12 Offset for data type #3 ensemble where Data Type #1 begins (the first byte of the
ensemble is Binary Byte #1).
… … Sequence continues for up to n data types
(2n+5)- Offset for data type #n
(2n+6)/2
35/1 ADC CHANNEL 0 These fields contain the outputs of the Analog-to-Digital Converter
(ADC) located on the DSP board. The ADC sequentially samples
36/1 ADC CHANNEL 1 one of the eight channels per ping group (the number of ping groups
37/1 ADC CHANNEL 2 per ensemble is the maximum of the WP). These fields are zeroed at
the beginning of the deployment and updated each ensemble at the
38/1 ADC CHANNEL 3 rate of one channel per ping group. For example, if the ping group
39/1 ADC CHANNEL 4 size is 5, then:
END OF ENSEMBLE No. CHANNELS UPDATED
40/1 ADC CHANNEL 5
Start All channels = 0
41/1 ADC CHANNEL 6
Header Format
Byte# Field name Notes
1 Header ID Stores the header identification byte (7Fh)
2 Data source ID Stores the data source identification byte (7Fh for the Work-
Horse ADCP)
3–4 Number of bytes in ensemble This field contains the number of bytes from the start of the
current ensemble up to, but not including, the 2-byte
checksum
5 Spare Undefined
6 Number of data types This field contains the number of data types selected for
collection. By default, fixed/variable leader, velocity,
correlation magnitude, echo intensity, and percent good are
selected for collection. This field will therefore have a value of
six (4 data types + 2 for the Fixed/Variable Leader data).
7–8 Offset for data type #1 These field contains the internal memory address offset where
the Navigator will store information for data type #n Adding “1”
9–10 Offset for data type #2 to this offset number gives the absolute Binary Byte number in
11–12 Offset for data type #3 the ensemble where Data Type #1 begins (the first byte of the
ensemble is Binary Byte #1).
… … Sequence continues for up to n data types
ZDA Formatting
Field Description
$ Start character
-- Sender Code
ZDA Header
hhmmss.sss Hours, minutes, seconds, and decimal seconds
xx Day, 0 to 31
xx Month, 01 to 12
xxxx Year
xx Local Zone hours 00 to ±13
xx Local Zone minutes 00 to 59
*hh Terminator and checksum
<cr><lf> return plus linefeed
GGA Formatting
Field Description
$ Start character
-- Sender Code (IN or GP)
GGA Sentence Formatter
hhmmss.ss UTC time
Latitude, N/S 2 fixed digits degrees, 2 fixed digits minutes, variable digits of
llll.ll,a
decimal minutes.
Longitude, E/W 3 fixed digits degrees, 2 fixed digits minutes, variable digits of
yyyyy.yy,a
decimal minutes.
x GPS quality Indicator 0-8
xx Number of satellites
x.x Horizontal dilution of precision
x.xxx,M Altitude above/below mean sea level (geoid), Metres
x.x,M Geoidal Separation, Metres
x.x Age of Differential data
xxxx Differential Reference Station ID/SUSBL Beacon ID
*hh Terminator and checksum
<cr><lf> Terminator, return plus linefeed
8.2.12 VTG
Description
This NMEA string outputs Speed and Course Over Ground (SOG & COG).
Format
$--VTG,x.x,T,x.x,M, x.x,N,x.x,K,a*hh<cr><lf>
Field Description
$ Start character
-- Sender Code (e.g. GP, HE or IN )
VTG Sentence Formatter
x.x,T COG, degrees True
x.x,M, COG, degrees Magnetic
x.x,N, SOG, knots
x.x,K SOG, km/hr
a Mode Indicator
*hh Terminator and checksum
<cr><lf> Return plus linefeed
Example
$GPVTG,,T,,,,N,,K*03
$GPVTG,000.00,T,,M,0.00,N,0.0,K*60
$GPVTG,000.00,T,000.00,M,20.00,N,37.04,K*4C
Note
The Mode indicator can have any of the following values:
A = Autonomous
D = Differential
E = Estimated (dead reckoning)
M = Manual input
S = Simulator
N = Data not valid
8.2.13 PSONLOBS
This proprietary string is used for inputting LBL observations to Lodestar/SPRINT. It should be
generated with an associated $PSONBCN message. These messages provide acoustic aiding to
the INS algorithm.
Format
$PSONLOBS,ttttttt.ttttt,ddd,ddd.ddd,dddd.ddd,dddd.ddd,dd.d,dd.d,d,c*hh<cr><lf>
Fields
Field Description Units
$PSONLOBS Start character and format identifier
ttttttt.ttttt INS system timestamp (Note 1) Seconds
ddd Beacon address
ddd.ddd Travel time (Note 2) µSecond
dddd.ddd Sound speed at beacon, as determined by acoustic system m/s
dddd.ddd Sound speed for range, as determined/used by acoustic system m/s
dd.d Signal to noise dB
dd.d Signal level dB
(dB relative to full scale voltage [DBV-12])
d Cross correlation (Note 3)
c Status flag (A = accept, V = invalid)
*hh Terminator and checksum
<cr><lf> Return plus linefeed
Example
$PSONLOBS,20138.186643,1706,444750.000,1485.000,1485.000,71.0,-2.0,89.0,A*7B
<cr><lf>
Notes
1. Time stamp is time of transceiver reception of the acoustic response signal (beginning). This
can be expressed in the INS system time base, or in UTC. UTC timestamp is number of
seconds since midnight with a negative sign to indicate UTC rather than Lodestar system
time.
e.g. 10:53:21.186643UTC should be sent as ‘-39201.186643’.
The acoustic system can either determine INS system time from the INS augmented TCVR
comms or get it via other means (in case TCVR comms is not augmented by INS).
2. Two way travel time including TAT.
3. Depending on the implementation the cross correlation may or may not be present.
The $PSONBCN message will normally be expected before the $PSONLOBS message. If the
$PSONBCN message is missing then the preceding message will be used. If the most recent
PSONBCN is older than 180s then the observation is not used.
8.2.14 PSONLBLBCN
Description
This proprietary string contains the real world position of a calibrated (fixed) beacon. It is sent to
Lodestar along with an associated $PSONLOBS message. These messages provide acoustic
aiding to the INS algorithm.
Format
$PSONBCN,tttttttt.tttttt,dddd,d.ddddddd,d.ddddddd,d.ddd,d.ddd,ddddd,dd.d,d.d*hh<cr><lf>
Fields
Field Description Units
$PSONBCN Start character and format identifier
tttttttt.tttttt INS timestamp (Note 1) Seconds
dddd Beacon address
d.ddddddd Latitude Degrees
d.ddddddd Longitude Degrees
d.ddd Depth Metres
d.ddd TAT (Turn Around Time) ms
ddddd Carrier frequency Hz
dd.d Horizontal error radius Metres
d.d Depth error Metres
*hh Terminator and checksum
<cr><lf> Return plus linefeed
Example
$PSONBCN,922.672222,2306,28.2236437,-88.5303721,1693.373,200.000,25500,0.0,
0.0*59<cr><lf>
Notes
1. Timestamp can be omitted (empty) or set to zero. Time of arrival of message will be used in
either case.
2. The Latitude and Longitude fields can contain up to 7 decimal places for a resolution of
approximately 1 cm at the Equator.
3. The $PSONBCN message will normally be expected before the $PSONLOBS message. If the
$PSONBCN message is missing then the preceding message will be used. If the most recent
PSONBCN is older than 180s then the observation is not used.
Description
The PSIMSSB sentence contains the position of a SSBL beacon which is sent after each USBL
measurement. The operator may define various parameters.
Format
$PSIMSSB,hhmmss.ss,ccc,a,ccc,a,a,a,x.x,x.x,x.x,x.x,a,x.x,x.x*hh <cr><lf>
PSIMSSB Formatting
Field Description
$ Start character
PSIM Proprietary Simrad code
SSB Sentence Formatter
hhmmss.ss Empty or UTC time of reception
ccc Beacon code, Examples: B01, B33, B47
a Status, A for OK, V for not OK
ccc Error_code, Empty or 3 character error code
a C for Cartesian, P for polar, U for UTM coordinates, R for radians
a Orientation, H vessel heading up; N for north; E for East:
a Software filter, M=Measured, F=Filtered, P=Predicted
x.x x coordinate
x.x y coordinate
x.x Depth in metres
x.x Expected accuracy of the position
Additional info, N=None,C= Compass, I=Inclinometer, T=Time from Beacon to
a
Transceiver
x.x First add value, empty or Tp compass or Tp x inclination
x.x Second add value, empty or Tp y inclination.
*hh Terminator and checksum
<cr><lf> return plus linefeed
PSONSS Formatting
Field Description
$ Start_character
PSONSS Address
x.x Depth
y.y Sound Speed in Units per second
c Units
*hh Terminator and Checksum
<cr><lf> Termination (0x0D 0x0A)
Field Description
<space> A space character
xxxx.xxx Sound Speed in metres per second
<cr><lf> Termination (0x0D 0x0A)
8.2.18 XPOS
Description
External position and depth from a non-specific source.
Format
$XPOS,hhmmss.sss,llll.llllll,a,yyyyy.yyyyyy,a,x.xxx,x.xxx,x.xxx,d.ddd,d.ddd,aa*hh<cr><lf>
XPOS Formatting
The 4 MSB of the reject field are shown below. These bits are present in all observation status
messages. The remaining 12 LSB are type specific as defined in the following sub-sections.
8.3.2.2 OBSTZMD
This is generated once per Kalman cycle if and only if ZMD is enabled. Since ZMD is a “virtual”
sensor it has no associated observation message and no message specific rejection bits. TimeTag
is Kalman time of observation.
8.3.2.3 OBSTGPSPOS
The following table provides the type specific rejection bits which together with the generic bits
described in Table 8-4 combine to define the rejection bit field for the OBSTGPSPOS message.
8.3.2.4 OBSTSUSBL
The following table provides the type specific rejection bits which together with the generic bits
described in Table 8-4 combine to define the rejection bit field for the OBSTSUSBL message
8.3.2.5 OBSTXPOS
The following table provides the type specific rejection bits which together with the generic bits
described in Table 8-4 combine to define the rejection bit field for the OBSTXPOS message.
8.3.2.6 OBSTPDEPTH
The following table provides the type specific rejection bits which together with the generic bits
described in Table 8-4 combine to define the rejection bit field for the OBSTPDEPTH message.
8.3.2.7 OBSTSVS
The following table provides the type specific rejection bits which together with the generic bits
described in Table 8-4 combine to define the rejection bit field for the OBSTSVS message.
8.3.2.8 OBSTDVL
The following table provides the type specific rejection bits which together with the generic bits
described in Table 8-4 combine to define the rejection bit field for the OBSTDVL message.
8.3.2.9 OBSTLBL
The following table provides the type specific rejection bits which together with the generic bits
described in Table 8-4 combine to define the rejection bit field for the OBSTLBL message.
For ObStLBL messages, the MISC bit will be set if the status flag in the associated PSONLOBS
message is “V” (invalid).
8.3.2.10 OBSTZUPT
This is generated once per Kalman cycle if and only if ZUPT is enabled. Since ZUPT is a “virtual”
sensor it has no associated observation message and no message specific rejection bits. TimeTag
is Kalman time of observation.
8.3.3 LSZDA
This message is produced by the Lodestar/SPRINT based on its own concept of UTC. The
message format is as per the ZDA definition given in Section 8.2.10. For more details regarding how
the the LSZDA is generated see Section 7.11.6.
8.3.4 PRDKELLBIN
Description
This message is produced whenever a new Pressure measurement is returned from a Keller
pressure sensor, the time given in the message is the Time Of Validity of the pressure data
contained within the message.
Format
Field# Byte# Size Field name Unit/LSB Data type Notes
(from 0) (bytes)
1 0–5 6 timeTag 1e-6 sec Uint48 Instrument time
2 7–10 4 Pressure Float32 Converted from Bar reading
given by sensor
3 11–12 2 Temperature 0.02DegC Int16
Note
Source of RTC to UTC update; 0 = NO SOURCE; 1 = SPRINT UNIT RTC; 2 = Standalone GPZDA; 3
= Standalone GPGGA; 4 = GPZDA 1PPS.
8.3.6 BIST
Description
The Built-In Self Test (BIST) message provides a summary of errors detected within a BIST cycle (2
seconds) and additional LS state information. Unless explicitly stated, an error indication is NOT
persisted across cycles if the underlying cause has cleared or error event has not re-occurred.
BIST is generic, supporting all AHRS/INS applications. Each application will use only the relevant
subset of the information provided as defined in the application specific ICD. Where possible, BIST
information is accumulated into high level “go/no go” bits, thus simplifying the interface/use.
Format
The BIST message is logically subdivided into five blocks as shown below:
Notes
1. “IMU no go” is a high level bit indicating serious HW error causing all AHRS/INS applications
to fail or be unreliable. Bit is cumulative (or) result of bits 1-6,10-12, 16-17, 32-34 and (bit7 &
bit8), e.g. “no go” is set if both 7 and 8 are set.
2. The “AHRS result not ok” bit is set if any of bits 1, 4-6, 10-12, 16 are set. When these bits
become low, bit 17 remains latched high until a GC RST followed by an INS RST is done.
None of these bits must be high between the GC RST and the INS RST otherwise bit 17
remains high.
Note
The Ethernet index entries are in increasing port number order; refer to the SETTINGS & CMDS
msgs to determine which Ethernet port is for which BIST entry.
Notes
1. x = Kalman delay + 1
2. ZMD Bias large when bias > (ZMD command MRms2 value) for > 120s.
3. Horizontal position 1DRMS high when 1DRMS > 1000 m (limit can be set by user) for more
than 5 s.
4. Heading unreasonable when abs(INS hdg – AHRS hdg) > 2 degrees for more than 5 s.
5. Attitude unreasonable when abs (INS roll – AHRS roll) or abs (INS pitch – AHRS pitch) > 0.2
degrees for more than 5s.
6. Gyro bias large when bias > 3 sigma command value for > 120 s.
7. Accelerometer bias large when bias > 3 sigma command value for > 120 s.
8. Bits 32–63 = 0 when AINS is not initialised (bit 1 = 1).
8.3.7 TRG
Description
The purpose of this proprietary string is to record the 1 PPS input or any other trigger input or output
such as DVLs and responders, and to log the trigger parameters.
Format
$PSONTRG,tttttttttttt,hhmmss.ssssss,d,c,c,tttttttt,tttttttt*hh <cr><lf>
Fields
Field Description Units
$PSONTRG Start character and format identifier
tttttttttttt Trigger time in Lodestar System Time, seconds from start up, Seconds
resolution to µs. 12 hex digits.
hhmmss.ssssss Trigger time converted from Lodestar Time System, seconds Seconds
from start up, resolution to µs.
d Trigger port number (1 to 4)
c Trigger direction, (A = input, B = output)
c Sign of the trigger edge, “+” or “-“
tttttttt Width of the trigger pulse, resolution to µs. 8 hex digits. Seconds
tttttttt Period of the output pulse, resolution to µs. 8 hex digits. Seconds
*hh Terminator and checksum
<cr><lf> Return plus linefeed
Example
$PSONTRG,00003FE06FAE,094020.500365,4,B,+,0000C350,000F4240*63<cr><lf>
Notes
1. Lodestar follows the Posix convention for expression of UTC time as a single number: The
number of seconds elapsed since midnight 1970-01-01 not counting UTC leap seconds.
2. The width and period parameters are null fields if the trigger is an input.
8.3.8 NAVCAL
Description
This message is required for offline processing of INS data.
Data
Byte# Field name Unit (LSB)/range Note
type
0–5/6 timeTag 1e-6 sec Uint48 System time
Position (horizontal) error ellipse:
6–9/4 posMajor m Float32
- semi-major axis (1 sigma)
10–13/ 4 posMinor - Float32 - semi-minor axis (1 sigma)
14–17/4 dirPMajor deg [0;360[ Float32 - direction of semi-major axis
18–21/4 stdDepth m Float32 Depth (1 sigma)
22–25/4 stdLevN deg Float32 Level error about North (1 sigma)
26–29/4 stdLevE deg Float32 Level error about East (1 sigma)
30–33/4 stdHeading deg Float32 Heading (1 sigma)
Velocity (horizontal) error ellipse: semi-
34–37/4 velMajor m/s Float32
major axis (1 sigma)
38–41/4 velMinor m/s Float32 - semi-minor axis (1 sigma)
42–45/4 dirVMajor deg [0;360[ Float32 - direction of semi-major axis
46–49/4 velDown m/s Float32 Down velocity (1 sigma)
Nav and NavQual are intended for advanced users including internal (Sonardyne) and external
system integrators. Nav values are valid for vehicle CRP/frame, except acceleration which is valid for
the IMU zero point but expressed in vehicle frame. For best accuracy it is recommended to use
CRP=IMU zero point. AINS algorithm is the only source for the NAV message.
Note
Altitude = 0 imply invalid.
8.3.11 PRDID
Description
Pitch roll and heading message.
Format
$PRDID,PPP.PP,RRR.RR,hhh.hh*hh*hh<cr><lf>
Field Description
$PRDID Header
Pitch Pitch, -30.0 to +30.0, degrees
Roll Roll, -30.0 to +30.0, degrees
Heading True Heading, 0 to 359.99, degrees
*hh Terminator and checksum
<cr><lf> Terminator, return plus linefeed
Example
$PRDID,-0.17,-0.59,172.66*77
Notes
1. The data string has variable length with leading zeros and minus signs added where
necessary.
2. Positive roll is port-side up, starboard down. Positive pitch is bow up, stern down.
3. The attitude measurements contained in the data string will be in real time.
4. There is no status indicator in the data string. This data string does include the optional
checksum allowed within the NMEA 0183 standard.
5. The data string will include gyro heading information only if it is available. If there is no
heading information available, the heading field will be null.
8.3.12 TSS1
Description
The TSS proprietary string outputs accelerations, heave, roll and pitch.
Format
:XXAAAASMHHHHQMRRRRSMPPPP<cr><lf>
Field Description
: Start character
XX Horizontal Acceleration (not populated by SPRINT Unit)
AAAA Vertical Acceleration, vehicle frame
S Space
M Space if positive, minus if negative
HHHH Heave
Q Status Flag, H,h,F,f. Heading or Fully aided, settled or settling
M Space if positive, minus if negative
RRRR Roll
S Space
M Space if positive, minus if negative
PPPP Pitch
<cr><lf> Terminator, return plus linefeed
Example
:003D04 0000H-0058 -0017
Notes
1. Vertical acceleration is positive in the up direction.
2. Horizontal acceleration is not populated by the SPRINT Unit
3. The motion measurements contained in the data string will be in real time, valid for the instant
when the system begins to transmit the string.
4. Motion measurements include ASCII-coded decimal values.
5. Heave measurements are in cm in the range –99.99 to +99.99 metres. Positive heave is
above datum.
6. Roll and pitch measurements are in degrees in the range –99.99° to +99.99°. Positive roll is
port-side up, starboard down. Positive pitch is bow up, stern down.
7. Status flag H – The system is using heading from the settled gyrocompass.
8. Status flag h – The gyrocompass heading is not settled.
9. Status flag f – The system is receiving aiding data from both GGA and VTG NMEA messages
but the gyrocompass is not settled.
10. Status flag F – The system is receiving aiding data from both GGA and VTG NMEA messages
and the gyrocompass is settled.
8.3.13 TSS2
Description
his TSS proprietary string outputs heading, heave, roll and pitch.
Format
:DDDDDSMHHHHQMRRRRSMPPPPE<cr><lf>
Field Description
: Start character
DDDDD Heading x 100 degrees
S Space
M Space if positive, minus if negative
HHHH Heave in centimetres
Q Status Flag, H,h,F,f. Heading or Fully aided, settled or settling
M Space if positive, minus if negative
RRRR Roll x 100 degrees
S Space
M Space if positive, minus if negative
PPPP Pitch x 100 degrees
E Heading status flag, as for other TSS messages
<cr><lf> Terminator, return plus linefeed
Example
:17263 0001H-0058 -0017A
Notes
1. The angle measurements are in hundredths (e.g. x 100).
2. The motion measurements contained in the data string will be in real time, valid for the instant
when the System begins to transmit the string.
3. Motion measurements include ASCII-coded decimal values.
4. Heave measurements are in cm in the range –99.99 to +99.99 metres. Positive heave is
above datum.
5. Roll and pitch measurements are in degrees in the range –99.99° to +99.99°. Positive roll is
port-side up, starboard down. Positive pitch is bow up, stern down.
6. Status flag is as for TSS1
• Status flag H – The system is using heading from the settled gyrocompass.
• Status flag h – The gyrocompass heading is not settled.
• Status flag f – The system is receiving aiding data from both GGA and VTG NMEA
messages but the gyrocompass is not settled.
• Status flag F – The system is receiving aiding data from both GGA and VTG NMEA
messages and the gyrocompass is settled.
7. Heading Status flag can take the following values:
• A – If Status flag above is H or h
• f – if Status flag above is f
• F – if Status flag above is F
8.3.14 TSS3
Description
The TSS proprietary string outputs remote heave, heave, roll and pitch.
Format
:RMhhhhSMHHHHQMRRRRSMPPPP<cr><lf>
Field Description
:R Start character and format identifier
M Space or minus sign
hhhh Remote Heave
S Space
M Space if positive, minus if negative
HHHH Heave
Q Status Flag, H,h,F,f. Heading or Fully aided, settled or settling
M Space if positive, minus if negative
RRRR Roll
S Space
M Space if positive, minus if negative
PPPP Pitch
<cr><lf> Terminator, return plus linefeed
Example
:R 0001 0001H-0059 -0017
Notes
1. After the start character (a colon, ASCII 3Ah) the TSS3 data string includes an upper case ‘R’
to identify the string as using TSS3 remote heave format.
2. The motion measurements contained in the data string will be in real time, valid for the instant
when the System begins to transmit the string.
3. Motion measurements include ASCII-coded decimal values.
4. Heave measurements are in cm in the range –99.99 to +99.99 metres. Positive heave is
above datum.
5. Roll and pitch measurements are in degrees in the range –99.99° to +99.99°. Positive roll is
port-side up, starboard down. Positive pitch is bow up, stern down.
6. Status flag H – The system is using heading from the settled gyrocompass.
7. Status flag h – The gyrocompass heading is not settled.
8. Status flag f – The system is receiving aiding data from both GGA and VTG NMEA messages
but the gyrocompass is not settled.
9. Status flag F – The system is receiving aiding data from both GGA and VTG NMEA messages
and the gyrocompass is settled.
10. Status flag A – General alarm.
8.3.15 EM1000
Description
Roll, pitch, heading and heave output suitable for use with Simrad EM series multibeam sonars.
Format
ABRRPPAAHH bytes 0–9
Example
00900200FF730000 hex
Notes
1. MSB = most significant byte, LSB = least significant byte
2. The data string is a 10-byte message of 16-bit 2’s complement numbers, each expressed as
two binary-coded digits.
3. Positive heave is above datum. Positive roll is port-side up, starboard down. Positive pitch is
bow up, stern down.
4. The motion measurements contained in the data string will be in real time.
5. The data string does not include a status flag.
6. The system updates the heading field in the data string only when it receives new heading
information from the gyrocompass. Depending on the transmission rate of the gyrocompass
there may therefore be a difference between the instantaneous heading and the value
included in the data output string.
7. The gyro heading is NOT a 2’s complement number.
8.3.16 EM3000
Description
Roll, pitch, heading and heave output suitable for use with Simrad EM3000 series multibeam
sonars.
Format
ABRRPPAAHH bytes 0-9
Byte Field
A Header, MSB, 0x00
B Header LSB, 0x90 when settled or 0x91 when unsettled
RR Roll, Range 0-359.99 deg. Units 0.01 deg.
PP Pitch, Range 0-359.99 deg. Units 0.01 deg.
AA Heave +/- 20m, units 1 cm
HH Heading Range 0-359.99 deg. Units 0.01 deg.
Example
00900200FF730000 hex
Notes
1. MSB = most significant byte, LSB = least significant byte.
2. The data string is a 10-byte message of 16-bit 2’s complement numbers, each expressed as
two binary-coded digits.
3. Positive heave is above datum. Positive roll is port-side up, starboard down. Positive pitch is
bow up, stern down.
4. The motion measurements contained in the data string will be in real time.
5. The Status byte = 91h for an unsettled unit or 90h for a settled unit.
6. The system updates the heading field in the data string only when it receives new heading
information from the gyrocompass. Depending on the transmission rate of the gyrocompass
there may therefore be a difference between the instantaneous heading and the value
included in the data output string.
7. The gyrocompass heading is NOT a 2’s complement number.
8.3.17 PHTRO
Description
Pitch and roll message. This is similar to the NMEA 0183 standard. The units for the measurements
are degrees; the angles are as described below.
Format
$PHTRO,x.xx,a,y.yy,b*hh<cr><lf>
Field Description
$PHTRO Header
x.xx x.xx is the pitch in degrees
, comma
a a is ‘M’ for bow up, ‘P’ for bow down
, comma
y.yy y.yy is the roll in degrees
, comma
b b is ‘B’ for port down, ‘T’ for port up
*hh Terminator and checksum
<cr><lf> Carriage return and linefeed characters
Example
$PHTRO,-0.17,P,-0.56,B*46
Notes
1. The data string has variable length with a leading zero if magnitude < 1 and minus signs
added where necessary e.g. –0.59.
2. By default, positive roll is port-side up, starboard down, positive pitch is bow down, stern up.
The “a” and “b” codes will be “P” and “T” respectively.
3. The attitude measurements contained in the data string will be in real time, valid for the instant
when the system begins to transmit the first byte of the string.
4. There is no status indicator in the data string.
8.3.18 HDT
Description
NMEA True Heading.
Format
$HEHDT,x.x,T*hh<cr><lf>
Field Description
$ Start Character
HE Talker identifier
HDT Mnemonic for true heading
, Comma separator
xxx.xxx Heading in degrees and decimal fraction
, Comma separator
T Heading Type True/Grid/Magnetic
*hh Checksum
<cr><lf> Terminator, return plus linefeed
Example
$HEHDT,172.597,T*20
Note
The Heading type indicator is always ‘T’ when transmitted by the Lodestar, to indicate that heading
information is with respect to true north.
8.3.19 THS
Description
This telegram is the NMEA defined “True heading and status” telegram actual vessel heading in
degrees true produced by any device or system producing true heading.
Format
$__THS,XX.XX,a*hh<cr><lf>
Field Description
$ Start Character
_ Talker identifier (HE)
THS Mnemonic for true heading and status
, Comma separator
XX.XX Heading in degrees and decimal fraction
, Comma separator
a Mode indicator
*hh Checksum
<cr><lf> Terminator, return plus linefeed
Example
$HETHS,172.59,E*11
Notes
1. This sentence includes a “mode indicator” field providing critical safety related information
about the heading data, and replaces the deprecated HDT sentence. The sender code for a
north seeking gyrocompass is “HE”. For inertial navigation systems “IN” is used, though IN is
for integrated navigation systems, see ISO 61162-1 for details.
2. Mode indicator states:
• A = Autonomous (aided with GGA and VTG)
• E = Estimated (dead reckoning, neither GGA and VTG are present)
• M = Manual input
• S = Simulator mode
3. V = Data not valid (gyrocompass not settled)
8.3.20 TEMP
Description
Internal temperature readings of Lodestar/SPRINT unit.
Format
$HETXT,d,d,dd,dd,dd,dd,dd,dd,dd*hh<cr><lf>
Field Description
$ Start Character
HE Talker identifier
TXT Mnemonic for text message
d Total number of messages (01 99)
d Message number (01 – 99)
d Text identifier (01 99)
dd.d X sensor temperature, degrees Celsius
dd.d Y sensor temperature, degrees Celsius
dd.d Z sensor temperature, degrees Celsius
dd.d X case temperature, degrees Celsius
dd.d Y case temperature, degrees Celsius
dd.d Z case temperature, degrees Celsius
*hh checksum
<cr><lf> Terminator, return plus linefeed
Example
$HETXT,1,1,66,43.1,43.5,42.9,43.8,42.9,43.9*7C
Notes
1. This message follows the standard spec for the __TXT message, where the first number is the
total number of messages, the second number is the message number and the third the text
identifier.
2. Following this there are 6 numbers and a checksum.
8.3.21 SON2
Description
Lodestar provides a Sonardyne proprietary SON2 telegram, consisting of UTC time, pitch, roll and
heading with an estimated heading error. The heading error of the gyro-compass algorithm cannot
be measured, only estimated from the sensor noise.
Format
:hhmmsssssMRRRRRRMPPPPPPMHHHHHHMVVVS<cr><lf>
Field Description
: Start character
hhmmsssss UTC time, hours, minutes, seconds and milliseconds
M Space if positive, minus if negative
RRRRRR Roll x 1000 degrees
M Space if positive, minus if negative
PPPPPP Pitch x 1000 degrees
M Space if positive, minus if negative
HHHHHH Heading x 1000 degrees
M Space separator
VVV Estimated variance
S Status Flag, U,u,A,a,V,v,G,g
<cr><lf> Terminator, return plus linefeed
Example
:152359000 000222-000022 359999 1234G
Notes
1. Positive roll is starboard down, port up.
2. Positive pitch is bow up, stern down.
3. The SON2 data string contains 39 characters in six data fields.
4. The time is UTC time expressed as time of day hours, minutes, seconds and milliseconds.
5. The angle measurements are in thousandths (e.g. x 1000 degrees)
6. The motion measurements contained in the data string will be in real time, valid for the instant
when the System begins to transmit the string.
7. Due to the definition of the angles, the actual range of roll and pitch together are restricted.
But the format allows for roll and pitch in degrees in the range –179.999° to +180.000°.
Positive roll is port-side up, starboard down. Positive pitch is bow up, stern down.
8. The Status flag can take one of the following values:
• If there is both VTG and GGA the status is A or a
• If there is VTG only the status is V or v
8.3.22 POSMV111
Description
This telegram contains data for delayed heave calculations along with time matched real-time heave
data. Heave sign is positive down.
Notes
1. Time 1 is the system time of validity for the data. The type of data is indicated in the time type
field. UTC time is the seconds of the week.
2. Time 2 is the system time of validity for the data. The type of data is indicated in the time type
field. POS time is the time in seconds since power on.
3. The checksum is calculated so that the sum of short pairs (16 bits) over the complete telegram
has a sum of zero.
4. Byte is 8 bits MSB first.
5. Short is the INTEL format 16 bits MSB first.
6. Long is 32 bits MSB first.
7. Float is INTEL format from IEEE-754 floating point definition.
8. Double is 8 bytes, MSB first.
9. MSB = Most Significant Bit, LSB = Least Significant Bit.
8.3.23 POSMV113
Description
This telegram contains quality data for delayed heave calculations.
Notes
1. Time 1 is the system time of validity for the data. The type of data is indicated in the time type
field. UTC time is the seconds of the week.
2. Time 2 is the system time of validity for the data. The type of data is indicated in the time type
field. POS time is the time in seconds since power on.
3. The checksum is calculated so that the sum of short pairs (16 bits) over the complete telegram
has a sum of zero.
4. Byte is 8 bits MSB first.
5. Short is the INTEL format 16 bits MSB first.
6. Long is 32 bits MSB first.
7. Float is INTEL format from IEEE-754 floating point definition.
8. Double is 8 bytes, MSB first.
9. MSB = Most Significant Bit, LSB = Least Significant Bit.
8.3.24 PSONNAV
Description
The purpose of this proprietary message provides output navigation which consists of a UTC
timestamp, position, depth, velocity, attitude and heading with associated accuracy estimates.
Format
$PSONNAV,hhmmss.sss,llll.llllll,a,yyyyy.yyyyyy,a,x.xxx,x.xxx,x.xxx,a,d.ddd,x.xxx,r.rrr,p.ppp,h.hhh,x.
xxx,a,aaaaaaa, , , , , ,*hh<cr><lf>
Field Description
$ Start character
PSONNAV Address
hhmmss.sss UTC Timestamp
llll.llllll,a Latitude
yyyyy.yyyyyy,a Longitude
x.xxx Major Axis position error ellipse
x.xxx Minor Axis position error ellipse
x.xxx Direction of major Axis position error ellipse
a Position Status (‘A’ – Valid, ‘V’ – Invalid)
d.ddd Depth
x.xxx Depth standard deviation
r.rrr Roll
p.ppp Pitch
h.hhh heading
x.xxx Heading standard deviation
a Orientation status (‘A’ – Valid, ‘V’ – Invalid)
aaaaaaa Sensor status (see Note 1)
,,,,,, Null fields for future use
<cr><lf> return plus linefeed
Sensor/solution Data received and some or all Data received within the last 1
used within the last 1 second. second but none was used.
AHRS ‘A’ ‘a’
LBL ‘B’ ‘b’
Depth (pressure) ‘D’ ‘d’
GNSS ‘G’ ‘g’
AINS (Note 4) ‘I’ na
ZMD (“Zero Mean Depth”, e.g. ‘M’ ‘m’
surface ship)
DVL ‘V’ ‘v’
USBL ‘U’ ‘u’
SUSBL ‘S’ ‘s’
XPOS ‘X’ ‘x’
ZUPT ‘Z’ ‘z’
Notes
1. Latitude, north is positive. 0.5 cm resolution.
2. Longitude, east is positive. 1 cm resolution at equator.
3. Depth, down is positive.
4. Height above seabed as measured by the DVL, contains the last valid altitude received from
the DVL.
5. Roll is the angle between the Stbd-axis and horizontal. Roll is positive when Stbd is pointed
below the horizontal (starboard down).
6. Pitch is the angle between the Fwd-axis and horizontal. Pitch is positive when Fwd is pointed
above the horizontal (bow up).
7. Heading is the angle between North and projection of the Fwd-axis onto the horizontal
(measured about the down direction).
8. Horizontal position 1σ error ellipse
• Horizontal position 1DRMS = sqrt(posMajor^2 + posMinor^2)
• CEP(50%) ~= 0.589 × (posMajor + posMinor)
• Error ellipse (1σ) is 39.4% probability (e.g. 39.4% likelihood that true value is within
ellipse)
• 95% percent probability error ellipse is 2.447 × 1σ error ellipse
9. Roll & pitch 1σ ~= max(stdLevN,stdLevE) for roll, pitch << 45 deg.
10. Velocity RMS = sqrt(velMajor^2+ velMinor^2)
11. Will be populated with zero values if data unavailable (e.g. INS is not initialised/DVL data
invalid)
12. For the LNAVUTC the time is the time since 1st Jan 1970 with a resolution of 0.01ms (not
including leap seconds).
13. The status bits are described below (if bit = 0 then status is OK):
9.2 GC Commands
Mnemonic Purpose
LIST Lists all GC parameters
HELP Helps with command syntax
LAT Sets or reads the latitude
SETTLE Sets or reads the AHRS settling time
RST Resets the AHRS
9.3 OP Commands
Mnemonic Purpose
LIST Lists all OP parameters
HELP Helps with command syntax
SER Sets the baud rate, number of data bits, the parity and the number of stop bits
BAUD Sets the baud rate
DATA Sets the number of data bits
PAR Sets the parity
STOP Sets the number of stop bits
PROT Set signalling protocol (232, 485 …)
MSG Lists the messages and their numbers or sets the messages to be output
ECHO Enables or disables the echoing of user-entered characters
MULTIPLEX Sets if port is to output in native mode or wrapped in binary format
HOLDOFF Used for a network port as a timeout for data output
BREAK Sends a serial break on a UART
NET Sets up the protocol for a network port
CLOSE Closes a network port
9.4 IN Commands
Mnemonic Purpose
LIST Lists all IN parameters
HELP Helps with command syntax
MSG Lists the messages and their numbers or sets the messages to be output
NET Sets up the protocol for a network port message
Mnemonic Purpose
LATENCY Sets or reads the Latency to be applied in the TOV calculations
Mnemonic Purpose
ZDA Sets or reads the port number for GPZDA input
PPS Sets or reads the port number for 1 PPS input
PPSMODE Sets or reads the mode of GPZDA and its corresponding 1 PPS
ZDALATENCY Sets or reads GPZDA latency in seconds
UPDATE Sets or reads the time in seconds to update the RTC
RST Resets Time System
DATETIME Sets or reads the RTC date and time
DATE Sets or reads the RTC date
TIME Sets or reads the RTC time
LSZDA Enables and configures PPS and ZDA generation
Definitions
Term Definition
<cr><lf> Carriage Return, Linefeed
AHRS Attitude & Heading Reference System
ASCII American Standard Code for Information Interchange
AUV Autonomous Underwater Vehicle
BIST Built-In Self-Test
C&C Command & Control
COG Course Over Ground
CPU Central Processing Unit
CRP Central Reference Point
DLE Data Link Escape
DVL Doppler Velocity Log
ETX End of Text
GNSS Global Navigation Satellite System
GPS Global Positioning System
HW Hardware
Hz Hertz
IMU Internal Measurement Unit
INS Inertial Navigation System
kPa kilopascal
LBL Long BaseLine
LNAV Long NAVigation
LSB Least Significant Bit
LSD Least Significant Digit
MRU Motion Reference Unit
MSB Most Significant Bit
OEM Original Equipment Manufacturer
PRESS Pressure Depth
PSI Pounds per Square Inch
ROV Remotely Operated Vehicle
RTC Real Time Calibration
SID Security IDentifier
SOG Speed Over Ground
Sonardyne Sonardyne International Limited and its affiliates.
SPRINT Subsea Precision Reference Inertial Navigation Technology
Definitions 182
IM-8084
Integration Guide for Lodestar and SPRINT Products
Issue A Rev 1
Term Definition
STX Start of Text
SUSBL Subsea USBL
TAT Turn-Around Time
TCVR Transceiver
TMS Time System Status
ToV Time of Validation
USBL Ultra-Short BaseLine
UTC Coordinated Universal Time
Definitions 183
Global Headquarters, UK Rio das Ostras, Brasil Singapore, Asia
Blackbushe Business Park Av. Zen lotes 05 e 06 34 Loyang Crescent
Yateley Quadra D Block B
Hampshire Zen, Rio das Ostras – RJ Singapore
GU46 6GD CEP 28.890-000, Brasil 508993
United Kingdom T. +55 22 2123 4950 T.+65 6542 1911
T. +44 (0) 1252 872288 F. +55 22 2123 4951 F. +65 6542 6937
F. +44 (0) 1252 876100 [email protected] [email protected]
[email protected]
Twitter
@sonardyne