NaviPac Interfaces
NaviPac Interfaces
SENSOR INTERFACING
1 Interfaces ......................................................................................................................... 4
2 Interface description ...................................................................................................... 4
Page 2 of 51
5 Sharing ports between NaviPac and NaviScan ......................................................... 48
Interfaces.docx
Page 3 of 51
Last update: 11/8/2014
1 Interfaces
In this document, the available instruments that NaviPac currently interfaces to are
described. For each instrument, we give a short identification of the input string allowed for
correct interpretation. If the sensor outputs more than the desired string, a string selection
must be specified in the driver details.
The EIVA number refers to EIVA identification of the instrument and is, for example, used in
the interpretation DLL (“Inst<nnn>.dll”). For a detailed list of instrument numbers, please
refer to the file instype.h.
2 Interface description
Artemis - driver 2 15
“A<Azimuth><CR><LF>” “D<Range>CR><LF> or “<Azimuth > < Range >
Artemis MK3 7
<Status> <CR><LF>” or “<Code><Range><Azimuth><CR><LF>”
Artemis MK4 8
C-Nav GPS 1 29
C&C TRIN format or standard GGA telegram.
C-Nav GPS 2 30
Edgetech 4600 (NaviScan) 59 Position information (routed via NaviScan) in binary networked format.
Page 4 of 51
Instrument EIVA ID Format
“<Code1><LaneId1><LaneRange1> …
Hyperfix 27
<Code8><LaneId8><LaneRange8><CR><LF>”
Fixed station:
Kongsberg HiPAP/APOS 4 “$PSIMSSB,hhmmss.ss,tp,Status,error,coord,orientation,sw,x,y,depth, ...
<cr><lf>” or binary HPR400 format. See dynamic positioning.
Fixed station:
Binary BCD data:
<head> <roll[2]> <pitch[2]> <course[2]> <tp_id> <X_R[3]> <Y_B[3]>
Kongsberg HPR 300 2
<Z_D[3]> <stat> <timeout> < TPs[3]> < TDAngle[2]> < test> <type>
<specification> <transducers> <Tdstatus> < KalmanWindow> <checksum>
<eot> where <eot> equals 40H
Fixed station:
Kongsberg HPR 300P 3
“TT X N SSS CCC.C xxx.x yyy.y zzz.z qq.q nnn tt.t aaa.a<cr><lf>”
Fixed station:
"$PSIMLBP,<time>,<tp_array>,<Type>,<state>,<coordinates>,<easting>,<
Kongsberg LBL 12
northing>,…\r\n"
Coordinates must be ‘E’.
Leica GPS1 46 Leica MC1000 system: Can also use ordinary GGA message.
Interfaces.docx
Page 5 of 51
Last update: 11/8/2014
Instrument EIVA ID Format
Binary format – Id equals 0x2:
Leica GPS2 47 <Sync> <Length> <Id> <GPS Cl> <source> <pos des> <Pos fail> <Datum>
<Lat> <Long> <Height> <Check>
Leica Total 1 (R/B) 40 Based on the GSI format giving slant range, horizontal angle and vertical
angle.
Leica Total 2 (R/B) 41
“…. 21<hor. Angle> 22<vert. Angle> 31 <slant rang> … <cr><lf>”
Fixed station:
Nautronix RS9** 14 “<Date> <Time> B:<Target> X:<delta X> Y:<delta Y> D:<depth> …
E:<Error code><CR><LF>”
Fixed station:
TP-II:“<target> <time> <heading> <bearing> <range> <X> <Y> <Z> ..
ORE Trackpoint II 1
<CR><LF>”
LTX: “<target> <range> <bearing> <depression angle> …<CR><LF>”
Position and height from POSMV – using network UDP/IP protocol Group
POSMV Group 1 35
1.
[LVT**<utc><data><age><datum><latitude><longitude><height><ukooa
Racal UKOOA GPS 1 50
parameters><cr><lf>
“[1123mmddyyHHMMSS.S01.21N540853.17E0090000.00+0012.3111.122
Sea-diff / Skyfix 28 2.2111.1222.233344455.566.677889991122333445566677889991234567
891111 1] <CR><LF>”
Page 6 of 51
Instrument EIVA ID Format
“<Code1> … <Status1> <Partial Range1> … <Code8> … <Status8>
Syledis SB5 21
<Partial Range8> <CR> <LF>”
Topcon GPS 1 31
Topcon GPS 2 32
Topcon NP format or standard GGA telegram.
Topcon GPS 3 33
Topcon GPS 4 34
2.2 Gyro
Instrument EIVA ID Format
NMEA1 Gyro 104 “$..HDT, <gyro><cr><lf>” or “$..TSP, <gyro><cr><lf>” or
“$..HDM, <gyro><cr><lf>”
NMEA2 Gyro 105
You can change between different string layouts by using the string prefix
NMEA3 Gyro 106 definition in the instrument details.
H<gyro>P<pitch>R<roll><cr><lf>
CDL RLG 128
Supports RLG1 (decimal degree) and RLG2 (integer in 1/100 degree).
Gyro calculated by the use of two objects – as it uses direction from the
Constructed Direction 159
base object to the objects it is assigned to.
Edgetech 4600 (NaviScan) 136 Heading information (routed via NaviScan) in binary networked format.
Interfaces.docx
Page 7 of 51
Last update: 11/8/2014
EM3000 HQ Gyro 134 Binary EM3000 format – accepts only highest quality (0x90 start).
Gyro calculated by the use of two different located RTK GPS antennas.
Gyro from RTK GPS 155 Should only be used as secondary gyro. NaviPac automatically selects the
two first RTK-based systems.
$PSIMSSB,<time>,B<id>,A,,C,H,M,-8.00,-
Kongsberg $PSIMSSB 129
37.95,81.56,0.20,C,<compass>,*79
Kongsberg HPR300P Gyro 101 “TT X N SSS CCC.C xxx.x yyy.y zzz.z qq.q nnn tt.t aaa.a<cr><lf>”
"$PSIMLBM,hhmmss.ss,0,1,<roll>,<pitch>,<heading>,,1,2,3,4,5,6,7,8,M\r\n
Kongsberg LBL Gyro 112
”
Fully controllable (individually for each object) manual gyro input. Does also
Manual Gyro 122
allow motion sensor input.
H<gyro>P<pitch>R<roll><cr><lf>
MDL 127
Gyro 1/10 degree.
NaviPac (Remote) 120 Calculated instrument based on input from another vessel using NaviPac.
PHINS/ROVINS Gyro 138 $PIXSE, HSATIT (done via special PHINS IF module).
Page 8 of 51
$SMD,Pitch,Roll,Heading,Tow Force,Burial Depth,Tension,Port Skid
Plough Gyro ($SMD) 131 Height,Stbd Skid Height, Share Angle, Water Depth, Cable Dist, Steer
Angle<CR><LF>
$PCVMB,<frame>,<time>,<dd>,<mm>,<yyyy>,000,<roll>,<pitch>,<gyro>,<
cr><lf> or
Posidonia 118
$PTSAZ,#NNNNN,HHMMSS.SSS,JJ,MM,AAAA,#PTSAW,R,C.CCC,R.RR
R,T.TTT,L.LLLL,L.LLLL,X.XXX,Y.YYY,Z.ZZZ,
POSMV Gyro 102/103 126 Heading from POSMV – network telegram (Group 102).
$SF,Fish,<gyro>,<roll>,<pitch>,<depth>,<altitude>
ScanFish III Gyro 139
Note – this is not a true value – just rough heading indicator.
Sonardyne APS3 119 Calculated instrument based on input from Sonardyne APS-3.
“$PPTIROV,<gyro>,<depth>,<altitude>,<pitch>,<roll>,<CP1>,<CP2>,<Tel>,
Triton XL ROV Gyro 113
<note><cr><lf>”
User defined Gyro 2 198 Any ASCII string with either byte count or separators.
Interfaces.docx
Page 9 of 51
Last update: 11/8/2014
H<gyro>P<pitch>R<roll><cr><lf>
CDL RLG 228
Supports RLG1 (decimal degree) and RLG2 (integer in 1/1000 degree).
Edgetech 4600 (NaviScan) 236 Motion information (routed via NaviScan) in binary networked format.
EM3000 HQ RPH 234 Binary EM3000 format – accepts only highest quality (0x90 start).
Hippy Motion sensor 209 Special voltage information. Requires National Instruments A/D board.
$PHTRH,<pitch>,M/P,<roll>,B/T,<heave>,U/O\r\n
$PHTRO,<x.xx>,<a>,<y.yy>,<b>*hh<CR><LF> (roll & pitch)
":aaaaaasnhhhhqnrrrrsnpppp<cr><lf>" (TSS)
$PIXSE, ATITUDE (PHINS)
Corresponds to the IXSEA format called B&A Standard.
Ixsea RPH (B&A Format) 217
$PHTRH,<pitch>,M/P,<roll>,B/T,<heave>,U/O\r\n
Ixsea RPH $PHTRO,<x.xx>,<a>,<y.yy>,<b>*hh<CR><LF> (roll & pitch)
216
(GYROCOMPASS2) ":aaaaaasnhhhhqnrrrrsnpppp<cr><lf>" (TSS)
Corresponds to the IXSEA format called GYROCOMPASS2.
"$PSIMLBM,hhmmss.ss,0,1,<roll>,<pitch>,<heading>,,1,2,3,4,5,6,7,8,M\r\n
Kongsberg LBL Motion 212
”
Page 10 of 51
KVH Gyro track 211 “%<pitch>,<roll>,<gyro><CR><LF>”
Fully controllable (individually for each object) manual motion sensor input.
Manual RP 222
Does also allow gyro input.
H<gyro>P<pitch>R<roll><cr><lf>
MDL 227 Note: roll is positive port down and pitch positive bow down.
Roll & pitch 1/100 degree.
NaviPac (remote) 220 Calculated instrument based on input from remote NaviPac.
PHINS/ROVINS RPH 238 $PIXSE, HSATIT (done via special PHINS IF module)
$PCVMB,<frame>,<time>,<dd>,<mm>,<yyyy>,000,<roll>,<pitch>,<gyro>,<
0D><0A>
Posidonia 218 or
$PTSAZ,#NNNNN,HHMMSS.SSS,JJ,MM,AAAA,#PTSAW,R,C.CCC,R.RR
R,T.TTT,L.LLLL,L.LLLL,X.XXX,Y.YYY,Z.ZZZ,
POSMV RPH 102/3 226 Motion data from POSMV – network telegram (Group 102).
“….PI<pitch> … RO<roll>…<CR><LF” or
SCV ROV <Motion> 207 “….P:<pitch> … R:<roll>…<CR><LF” or
“….P<pitch> … R<roll>…<CR><LF”
Sonardyne APS3 219 Calculated instrument based on input from Sonardyne APS-3.
Interfaces.docx
Page 11 of 51
Last update: 11/8/2014
“$PPTIROV,<gyro>,<depth>,<altitude>,<pitch>,<roll>,<CP1>,<CP2>,<Tel>,
Triton XL ROV R/P 213
<note><cr><lf>”
User defined Motion 2 298 Any ASCII string with either byte count or separators.
Binary PD0, PD3, PD4, PD5 or ASCII PD6 or special Schilling UHDRov
format.
To change between the formats, please select in driver details.
Note that the definition is saved in NaviPac.INI and will be global for all RDI
DVLS.
Comb. Dynamic pos 1 440 Calculated instrument, which allows multiple transponders/antennas on
Page 12 of 51
Instrument EIVA ID Format
Comb. Dynamic pos 2 441 same vessel.
Digicourse 406 Binary or ASCII format – please see relevant instrument documentation.
Fanbeam - remote 407 Positioning remote vessel using Fanbeam or Artemis. Selection between
Fanbeam - remote 2 414 various standard formats.
Generic Cable Counter 401 A general dynamic positioning using cable length.
Supports the following formats:
Valeport pay-out indicator: “<sign><Distance>M<CR><LF>” – Set empty
start string
MacArtney MKII “L = ddd,d m <LF>” – Set “L” as start string.
Esters PMO 2160: Binary data – Set “<10:16,1,10,0,1,240,0,16,3,4>” as
Generic Cable Counter 2 413
start string to enable binary data and polling.
Hengel cable counter (“CNTlll.lll<cr><lf>”) set CNT as start string.
$CCAlll.ll<cr><lf> (Capital Signal) – Set $CCA as start string.
TCOUNT format “1:<length><cr><lf> - Set 1: as start sting.
MacArtney Triaxus: The CL field – Set DV as start string
Interfaces.docx
Page 13 of 51
Last update: 11/8/2014
Instrument EIVA ID Format
<Z_D[3]> <stat> <timeout> < TPs[3]> < TDAngle[2]> < test> <type>
Kongsberg HPR 300 - 2. 484 <specification> <transducers> <Tdstatus> < KalmanWindow> <checksum>
<eot> where <eot> equals 40H
Kongsberg HPR300P 495 “TT X N SSS CCC.C xxx.x yyy.y zzz.z qq.q nnn tt.t aaa.a<cr><lf>”
Up to 16 objects.
"$PSIMLBP,<time>,<tp_array>,<Type>,<state>,<coordinates>,<easting>,<
Kongsberg LBL 402
northing>,…\r\n"
Coordinates must be ‘E’.
Laser meter:
Leica autotrack 1 403 We use parameter 21 (horizontal angle), 22 (vertical angle) and 31 (slant
range).
Laser meter:
Leica autotrack 2 404 We use parameter 21 (horizontal angle), 22 (vertical angle) and 31 (slant
range).
Leica Disto WH15/30 411 Requires word index (WI) 31 “31 06<distance> \r\n
Nautronix RS9 - 2. 482 “<Date> <Time> B:<Target> X:<delta X> Y:<delta Y> D:<depth> …
Nautronix RS9** <USBL> 492 E:<Error code><CR><LF>”
$POREG,TP,HHMMSS.SS,0678,0000,0032,QC,00,00027.34,00.00,175.23
,xxxxxx.xx,yyyyyy.yy,zzzzz.zz,,-01.32,-00.52,013,050.3*52
ORE BATS ($POREG) 488
Please note that if used with timesync then both BATS and NaviPac must
be synchronised with same time source.
PHINS/ROVINS Position 444 $PIXSE, HSPOS (done via special PHINS IF module)
Up to 15 objects.
Posidonia USBL 493 $PTSAX,#NNNNN,hhmmss.sss,jj,mm,aaaa,BB,XXXXXX,YYYYYY,A,PPPP
,A,CCCC*ch<CR><LF>
Page 14 of 51
Instrument EIVA ID Format
<Status><chk><CR><LF>”
Remote dynamic objects 4 424
Exp. NaviPac: <stx><Id>,<east>,<north>,<heading> XX, <depth/height>,
<std.dev>,<roll>,<pitch>,<heave>,<altitude>,<age> *<checksum>
Remote dynamic objects 5 425 (To be able to use gyro, motion data and data acquisition, these must be
defined as separate calculated instruments (gyro from remote NaviPac,
etc)).
Remote dynamic objects 6 426
Apache:
$SFPOS,<id>,hhmmss.ss,<east>,<north>,<height>,1,<heading>,T*<chksu
Remote dynamic objects 7 427 m>
Tracs-TDMA:
$PRPS,POSN,sss,y,cc,hhmmss,ddmm.mmmm,N,dddmm.mmmm,E,
Remote dynamic objects 8 428
?hhhh.h,vvv.v,bbb.b,x,m,d,aa,hh,ss,rrrr *hh <cr><lf>
IMCA Position: $__TEL,PH, vessel, hhmmss.ss,Lat,Long,Hgt,Sd,Source,
Remote dynamic objects 9 429 Status, heading<cr><lf>
Century Subsea Spar: %0,T@AN|,$HEHDT …. $1GPGGA … <cr><lf>
Remote dynamic objects IxSea GAPS: $PTSAG,NN,hhmmss.sss,jj,mm,aaaa,BBB,DDMM.MMMM,H,
430
10 DDDMM.MMMM,D,A,MMMM.M,A,MMMM.M*ck
Remote GPS 5 435 “$..GGA, time, Latitude, N/S, Longitude, E/W, Quality, # Satellites, HDOP,
Remote GPS 6 436 Antenna Alt., Unit, Geoidal separation, Unit, Age, Diff ID <CR><LF> “
Interfaces.docx
Page 15 of 51
Last update: 11/8/2014
Instrument EIVA ID Format
Geoconsult ="FXT;time,E east, N,north,D depth,A error,H heading,T id"
Stolt Offshore 1="FXT;delay,TARGET SINGL TRAK,E east, N north,D
depth,A error,H heading"
Stolt Offshore
2="FXT;ttttt.tt,m,Eeeeeee.ee,Nnnnnnnn.nn,Ddddd.dd,Axx.xx,Hhhh.h"
Stolt Offshore
3="FXT;ttttt.tt,m,Eeeeeee.ee,Nnnnnnnn.nn,Ddddd.dd,Axx.xx,Hhhh.hZaaa.a
a,Ppp.p, Rrr.r,Sss.s"
Sonardyne LBL
400 EIVA/Pharos
Pharos/APS3
="FXTNP;ID,HH:MM:SS.ss,LL.LL,Eeeeeeeee.ee,Nnnnnnnnn.nn,Dddddd.d
d, Saaa.aa,Maaa.aa,Taaa.aa,Paaa.aa,Hhhh.h<cr><lf>"
On reception of ”FXT<cr><lf>” it outputs the following information on the
same port:
”FXT;hh:mm:ss,E<easting>,N<northing>,H<heading>,S<std.dev><cr><lf>”
Please note that the specific format has to be selected in the instrument
setup.
It is not recommended that special ports are shared with other inputs. Time sync ports (ZDA
or UTC) must not be shared, and due to the PPS input, we highly recommend that the
internal COM ports are used for them.
Page 16 of 51
AIS tracking system based on VDM position telegrams such as:
AIS targets 514
!AIVDM,1,1,,,1P0001P01p1SUGvR1;n00@1p000,0*27
Old format:
“$PRTRC,0,<name>,<number of points><CR><LF>”
“$PRWPT,<number>,<Latitude>,<Longitude>,<Turnradius>,<type>,,<CR><
LF>”
Line data from Kongsberg New format:
513
RDN50 “$PRTNW,H, <name>,<number of points><CR><LF>”
“$PRTNW,W,
<number>,<Latitude>,<N/S>,<Longitude>,<E/W>,<Turnradius>, <Next
leg>, <Speed in next leg>, <Speed in turn-radius>, <Speed
Unit>,<CR><LF>”
$RATTM,<id>,<range>,<bearing>,<T/R>,<smg>,<cmg>,<T/R>,<CPA>,<tC
PA>,<K/N/S>,<name>,<L/Q/T>,<CR><LF>
(M=Metres, N=Nautical miles, K=Kilometres and L=Lost target, Q=Target,
T=Tracked target)
Or
$PAEST,<latitude>,<N/S>,<longitude>,<E/W>,<ID>,<range>,<M//N/K>,<be
NMEA targets 503
aring>,T,<L/Q/R/T/U><cr><lf>
(M=Metres, N=Nautical miles, K=Kilometres and L=Lost target, Q=Target,
R=Radar tracking, T=Tracked target, U=Dead reckoning estimate)
Or
$PXSPT,<latitude>,<N/S>,<Longitude>,<E/W>,<CMG>,T,<SMG>,K,<state
>,<name>,<id><cr><lf>
$..WPL,<Lat>,<N/S>,<Long>,<E/W>,ID*hh<CR>LF>
The ID must be given identical to Waypoint object number, eg 5041 =
WP_1 etc.
NMEA Waypoint Location 504
Or EIVA format:
$EIVWP,<Id>,<East>,<North>,<Name><CR><LF>” – Id corresponds to
special tug id – 201 = Tug 1 etc.
No real input.
Offset: Reson
512 This is a special setup that enables NaviPac to calculate offset position for
Minewarming Sonar
Reson reference position. Special Reson MCM setup.
Interfaces.docx
Page 17 of 51
Last update: 11/8/2014
Binary layout
1: Start 11101011
2-6: Estimated X LSN 0.1 M
7-11: Estimated Y LSB.1 M
Osprey DP Waypoint 501 ….
65-69: X0 Set position
70-74: Y0 set position
97: End 11911100
Data is BCD where each nibble (4 bits) represents a digit.
Sercel Nautilus 515 Special TCP/IP data from Nautilus with streamer depths. Telegram 0x6E.
<0x02><ASCII Data><0x17><CheckSum>
Steinco data to EIVA Cat 509
Defined in NaviPac but handled in EIVA Catenary.
“$..ZDA,hhmmss.ss,dd,mm,yyyy,z1,z2*hh <CR><LF>”
See http://download.eiva.dk/online-
training/NaviPac%20Manuals/16_Timing%20Principles%20in%20NaviPac.
ZDA time + PPS 500 pdf
for details on how to use UTC/ZDA timing.
Note: If PPS is used, NaviPac will automatically synchronise the PC clock
with GPS time.
Page 18 of 51
2.7 Data output
Instrument EIVA ID Format
On each cycle.
NMEA1 624
User can select one or more of the following formats:
$..GGA – Position
NMEA2 625 $..GLL – Position
$..GXP – Simple position (does also include $NPGSS with HDOP)
$..RMC – Position course and speed
NMEA3 626
$..TLL – Target position (for selectable object)
$..VTG – Speed
NMEA4 650 $..HDG – Heading
$..APA – Auto-pilot information (DOL, bearing and name).
$..XTE – Auto-pilot cross track error
NMEA5 651
$..ZDA – Time and date for synchronisation.
NMEA telegrams {GLL, ZDA, DBT, OSD} – specially designed for Asean
AR:CIS 681 Restorer – DBT gives depth from either echo sounder (vessel-mounted) or
special plough water depth.
On new events:
“TX <Time> <Event> __________________<CR><LF>”
Atlas Deso 20/25
630 “*<CR><LF>
Annotation
“EM0<CR><LF>
“*<CR><LF>
Autopilot (Format: EMRI Dedicated EMRI format. Sends the strings $PESSA, $PESSD and
605/604
Autopilot) $PESSX.
Autopilot (Format:
605/608 Waypoints to external unit – generic autopilot.
Kongsberg DP)
Autopilot (Format: EMRI Dedicated EMRI format. Sends the strings $PESSA, $PESSD and
605/609
SEM200 Autopilot) $PESSX.
Autopilot (Format:
605/606 $NPSJOV,Gyro,East,North,Mode,DOL,dE,dN,WP-E,WP-N<cr><lf>
Sjӧfartsverket LowSpeed)
Interfaces.docx
Page 19 of 51
Last update: 11/8/2014
One every cycle:
CODA <easting> <northing> <kp> <dcc> <depth> <alt> <smg> <head
line> <fix> <SOS> <delay> <nav time>
Coda - long format 669
All fields are separated by a space – the number of digits varies from type
to type.
All fields are separated by a space – the number of digits varies from type
to type.
On every cycle:
<Date> <Time> <Reference position> <Offset position> <SMG> <CMG>
<Gyro> <Event> <KP> <DOL> <Depth from USBL> <CR><LF>
Data to Triton ISIS 627
Below is the ISIS template that correspond to the above output:
DMYHISxyENVhGO{KP}{DOT}{0}
DMYHISxyENVhGO{KP}{DOT}X (if no depth from USBL available)
Page 20 of 51
Annotation on new event:
Datasonics ChirpII Data 634 E <Date> <Time> <Event> <Position 1> <Position 2> <Gyro> <CMG>
<SMG> <CR><LF>
DOF SubSea Pipe Inspect 692 Special ASCII output for pipeline inspection.
Start of program:
Synchronise time: ”TIM dd:mm:yy hh:mm:ss:<CR>”
All events:
Event marker: "EVT<CR>"
SOL/EOL:
Dowty 200 Annotation 641
"TXT20 Ev: <event> <S/E>OL: <name> <CR>"
Event interval:
"TXT20 Ev: <event> Kp: <kp><CR>"
For Custom id 46, NaviPac sends the message:
"TXT20 <hh:mm:ss> <kp> <dcc><CR>"
DP Out: Artemis BCD 685 Output of range/bearing to selected waypoint in KA-BCD(.01) format.
Position of bucket and rectangle of cleared area. Special ASCII telegram for
EIVA Dredging 900
Online3D presentation.
Interfaces.docx
Page 21 of 51
Last update: 11/8/2014
”$<S/E>, <Long File Name><cr><lf>”, where
$S : Start logging message
$E : Stop/End logging message
Long File Name : Name of actual runline (from HD)
”xxxxxxxxx.xxyyyyyyyyy.yyRRRzz.zccc.c55/KK/kkhh:mm:ssaaaa<cr><lf>”
xxxxxxxxx.xx East coordinate
yyyyyyyyy.yy North coordinate
RRR Reference system
zz.z Speed made good in knots
ccc.c Course made good in degrees
55 ID (Fixed)
KK Heading 100 and 10ths
ELAC {HDP4060} Data 673
kk Heading degree and 1/10ths
hh Time hours
mm Time minutes
ss Time seconds
aaaa Data age in ms
ELAC HydroStar {XSE Position data in XSE network format – see relevant L-3/ELAC product
667
Position} documentation.
Start Of Line:
”<T>EV:eeeee TI:hh:mm:ss SOL:<Runline name><LF>”
ELAC LAZ 4700 End of Line:
602
Annotation ”<T>EV:eeeee TI:hh:mm:ss EOL:<Runline name><LF>”
Event:
”<T>EV:eeeee TI:hh:mm:ss<LF>”
“$PESSX,<dol>,<l/r>,<brg><cr><lf>“
EMRI $PESSX 676
Is output with user-defined frequency – can be less than cycle time.
Page 22 of 51
Annotation of events (user-determined frequency):
“SIZ <font> <CR><LF>” // Not always supported
EPC 1086 Annotation 637 “MES EV: <Event> <Easting> <Northing> <Standard deviation> <KP>
<CR><LF>”
"EVE <CR><LF>"
Geco TriAcq Data 664 Dedicated binary format 4 – see Geco’s product documentation.
Heave correction and GPS “HC<heave bias>, A<age>, GPSH<raw GPS height>dZ<dynamic antenna
621
height offset><cr><lf>”
Hugin 2001 Data 663 Summarise NMEA GGA and HiPAP position strings on one port.
Interfaces.docx
Page 23 of 51
Last update: 11/8/2014
At each cycle:
”<LF>S<sp>VV.V<CR> (Speed in knots)”
At Start Of Line:
”<LF>E4Event:eeeeeeeeeeTime:<sp><sp><sp>HH.MM.SSDate:<sp><sp>
<sp><sp><sp><sp>dd.mm.yyyySOL:<name><CR>”
Klein 595 Data 601 At End Of Line:
”<LF>E4Event:eeeeeeeeeeTime:<sp><sp><sp>HH.MM.SSDate:<sp><sp>
sp><sp><sp><sp>dd.mm.yyyyEOL:<name><CR>”
At Event:
”<LF>E5Event:eeeeeeeeeeTime:<sp><sp><sp>HH.MM.SSJDJJJ
kp:kkk.kkkE:eeeeeeeeeeee.eN:nnnnnnnnnnnn.n<CR>”
On every cycle:
<Date> <Time> E <Easting> N <Northing><CR><LF>
LL Video Overlay 647
KP <KP> DOL <DOL> DPT <Depth from USBL> <CR><LF>
The second line is only available for Custom id 19.
Dedicated output of OS/9 JetKnife data. Includes raw strings and navigation
Log OS-9 Data 659 data. See http://download.eiva.dk/online-
training/NaviPac%20Manuals/Various/OS9.pdf for further information.
MAGNUM ROV Navigation 678 “ <Ship Y> <Ship X> <ROV Y> <ROV X> <KP> <crosstrack><cr><lf>“
Page 24 of 51
”$<S/E>, <Long File Name><cr><lf>”, where
$S : Start logging message
$E : Stop/End logging message
Long File Name : Name of actual runline (from HD)
$PFFO,MLTPT,<group>,<number>,<Latitude>,<N/S>,<Longitude>,<E/W>,
Navigation Data Server 683
<Symbol>,A<cr><lf>
NaviPac TGO File 695 Creates ASCII TGO file for each navigation cycle.
“0x010x06E:<event>T:<hh:mm:ss>D:<dd.mm.yy>
Odom Annotation 645
E:<easting>N:<northing>Kp:<kp>0x04
Outland Video Overlay 677 Special Outland video overlay – with special control GUI.
Position aiding as either GGA (on deck) or $PUSBA (in water). Handled via
PHINS/ROVINS Aiding 901
special PHINS driver module.
Interfaces.docx
Page 25 of 51
Last update: 11/8/2014
TMS and anchor information.
Special TMS output to Caesar system (Stolt Offshore – LB-200).
$Identifier,R1,R2,R3,R4,R5,R6,R7<CR><LF>
Where Identifier is shown in the list below:
R1 = Null field
R2 = Easting of position
R3 = Northing of position
PLUMS : TMS & Anchor R4 = Null field
684
info R5 = Heading for barge telegram and Null field for Anchor and TDP
telegrams
R6 = Null field
R7 = KP for barge telegram and Null field for Anchor and TDP telegrams
Identifier for Barge = 301
Identifier for TDP = 305
Identifier for Anchor 1 = 401
Identifier for Anchor 2 = 402 etc
On each cycle:
RDI Current Profiler 631
"$PRDID,<Pitch>,<Roll>,<Heading>\r",
ROTS II Data 662 Copy of data from ROTS II (Data acquisition) plus time, position and kp.
$EIVATC,<heading>,<code>,<speed>,<code>,<offtrack>,<speederr>,<regu
ROV Steering (Sperre) 680
lation>*hh<cr><lf>
Page 26 of 51
"@DDDD.DDD A00.00<CR><LF>"
RTK Height to NaviScan 623 Gives difference between heave and RTK height – designed for NaviScan
bathy.
Spectra:
$1<length><revision><status><shottime>UTC<event><line><lat><long><d
epth><source-lat><source-long><gyro><CMG><SMG>000<east><north>
Seismic Navigation <dE><dN> <brg><jd> <cr><lf>
699
Header ION:
$1<length><revision><status><shottime>UTC<event><line><lat><long><d
epth><source-lat><source-long><gyro><CMG><SMG><FFID><Shots to
go><line type> <last FFID><line seq> <brg><extra> <cr><lf>
$PSONDEP,<depth>,,M,*<chksum><cr><lf> and
Sonardyne DEP & VEL 698
$PSONSS,<depth>,<sound-velocity>,M, *<chksum><cr><lf>
Combination runline tracking via NMEA $NPAPB and waypoint list via
Steering info to HRP 690
NMEA $NPRTE and $NPWPL messages.
Interfaces.docx
Page 27 of 51
Last update: 11/8/2014
$ACGDAT,ID,PID,time,east,north,height,gyro,roll,pitch,bathy,age,quality,tim
Subsea7 $ACGDAT 697
e-depth,depth, timedaq1, daq1,timedaq2,daq2*<chksum><cr><lf>
Start of program:
Synchronise time: ”TIM dd:mm:yy hh:mm:ss:<CR>”
All events:
Event marker: "EVT<CR>"
SOL/EOL:
Waverly 3700 Annotation 640
"TXT20 Ev: <event> <S/E>OL: <name> <CR>"
Event interval:
"TXT20 Ev: <event> Kp: <kp><CR>"
For Custom id 46, NaviPac sends the message:
"TXT20 <hh:mm:ss> <kp> <dcc><CR>"
Page 28 of 51
2.8 Data acquisition
Instrument EIVA ID Format
ADCP Depth(s) 746 Select up to three ranges from the binary PD0 format (four beams).
DA<Depth> <CR><LF> or
Atlas Deso 25 700
DB<Depth> <CR><LF>
$CAPIASH,moment,tension,length,diameter,status,alarm,alarm,temp1,tem
Caterpillar Data (JD) 793
p2,temp3,temp4,ttemp1,ttemp2,speed,pressure*chk<cr><lf>
“pppppp<cr><lf>”
DGH 2611 Pulse counter 730
Pulse corresponds to speed in nautical miles (1 NM = 20,000)
Interfaces.docx
Page 29 of 51
Last update: 11/8/2014
Special calculated instrument based on Digicourse and Remote GPS.
Channel 1: Feather angle based on Digicourse
Digicourse Feather Angle 733
Channel 2: Average streamer angle based on Digicourse
Channel 3: Feather angle based on Remote GPS
“*ccccPPP.PPPP<CR><LF>”
Digiquartz Depth 704 NaviPac will give both pressure and depth as two separate channels. Note:
The incoming pressure must be in PSI.
NaviPac will give both pressure and depth as two separate channels – this
Digiquartz Depth
779 will be compensated for barometer reading if present. Note: The incoming
(Compensated)
pressure must be in PSI.
”DDDD<unit><cr><lf>”
ELAC LAZ 4700 707
Where <unit> is m, dm or cm
Reads up to 20 items from ASCII string (byte count, comma, space, colon,
Free Acquisition 855
semicolon or tab separated).
<STX>#<Scan number><ETX>
GSSI Georadar 722
The instrument is polled once each cycle by sending a ‘#’ to the unit.
$PSIMSSB,hhmmss.ss,tp,Status,error,coord,orientation,sw,x,y,depth, ...
HiPAP Travel Time 768
<travel time><cr><lf>
HydroC CO2 794 Special 10-byte binary starting with ‘#’. Measures CO2.
Innovatum Tracker 758 Selectable eight parameters from 64- og 80-character Innovatum string.
Page 30 of 51
LDM 41/42 775 <distance><cr><lf>
$NASCRD,165804.84,CR4,P,-0.19*6B
NASNetR Daq 766 $NASCRD,165804.94,CR4,D,-1.90*7E
$NASCRD,165820.73,CR4,T,17.4*46
$..DBT,,<Depth>… <CR><LF> or
NMEA 183 Depth 703 $..DBS,,<Depth>… <CR><LF> or
$..DPT,<Depth>…. <CR><LF>
NMEA Speed 739 $..VTG, $..VHW and $..VBW standard NMEA format.
“PLCWNE<Time><Length><Tension> ...”
Odim Winch Control 786
Only first data set read by NaviPac.
Interfaces.docx
Page 31 of 51
Last update: 11/8/2014
“ <Resolution> <Depth><CR>” or
“ <Resolution> <Freq> <Depth><CR>” or
Odom EchoTrac 709 “ <Resolution> <B> <Depth1> <Depth2>”
We do not support feet – only metric.
High frequency will always be channel 1 and low frequency channel 2.
DA<Depth> <CR><LF>
Reson Deso Exp. 749 DB<Depth> <CR><LF> and optional
SD<sv><dr1><dr2><cr><lf>
SBE49 CTD 795 Uses Output Format 3 – engineering units and format 0 raw HEX:
SBE49 CTD2 796 TT.TTTT, CC.CCCC, PPPP.PP,SS.SSSS,VVVV.VVVV<cr><lf>
ScanFish II.
ScanFish Data 760
User-selectable fields in comma-separated string.
ScanFish III.
ScanFish III Data 863
$SF,Fish,<gyro>,<roll>,<pitch>,<depth>,<altitude>
“…DE<depth> AL<Altitude>…<CR><LF>” or
SCV ROV <Depth> 714 “…D:<depth> A:<Altitude>…<CR><LF>” or
“…D<depth> A<Altitude>…<CR><LF>”
#<temp>,<pressure>,<date>,<time><cr><lf> or
SeaBird Pressure 785 <LF><tab>TTT.TTTT,CC.CCCCC,PPPP.PPP,SSSS.SSSS,VVVVV.VVV<C
R>
Page 32 of 51
SeaMaster Trawl Data 789 $LD,<len1>,m,<len2>,m,<ten1>,k,<ten2>,k,<cr><lf>
“D<channel>,<Time>,<Depth>,<Strength>,<Transducer>,<Slope>CR><CR
Simrad EA500 713
><LF>”
Simrad UK 90/94 705 “ …. Dddd.dd … Aaaa.aa… <CR><LF>” depth and altitude in metres.
Sonardyne APS3 732 Calculated instrument based on APS3 input – altitude & salinity.
Voltage information from A/D Converter box (ICP DAS I-7012 or similar).
Special A/D Converter 742
Polled by “#01<cr>” answer “><channel 1><channel 2>…<cr>”
“$PPTIROV,<gyro>,<depth>,<altitude>,<pitch>,<roll>,<CP1>,<CP2>,<Tel>,
Triton XL ROV D/A 725
<note><cr><lf>”
Turner C6 - CYCLOPS-7 851 Free ASCII interpreter (date time val1 ... val 6)
User defined input 3 712 Any <CR><LF> ended string with up to three items.
Interfaces.docx
Page 33 of 51
Last update: 11/8/2014
User defined input 6 858
“<speed X><tab><speedy><cr><lf>
Valeport Current Meter 853
NaviPac supports metres per second, knots and millimetres per second.
Valeport Current Meter 853 gives raw measurements and 854 absolute measurements by
854
Process combining with vehicle data.
Aanderaa 4330 852 Free ASCII interpreter (val1 ... val xx)
Page 34 of 51
3 Special interfaces
This section describes some very special instruments handled in NaviPac.
On some vessels, the antenna(s) can be moved up and down to enable travel under
bridges, etc.
To be able to perform optimal navigation while the antenna is away from default position, we
have added an LEM30 laser distance meter.
This instrument must be placed so it measures the distance from a given point to the
antenna either on request or continuously. Initially, the user must enter the default value as
Offsets Z (could be found by installing the instrument and making a measurement).
NaviPac will then at each update find a delta height based on the entered Offsets Z value
and the measured value. This delta value is subtracted from all antenna offsets. At each
change, NaviPac generates an alarm.
Interfaces.docx
Page 35 of 51
Last update: 11/8/2014
3.2 Dual HiPAP
NaviPac versions 3.3L and onwards offer the possibility to use the Kongsberg HiPAP
(HPR400 NMEA Sentence) in both ordinary and dual mode.
The ordinary mode uses the standard $PSIMSSB strings, and the dual mode uses
$PSIMSSD strings.
To avoid changing the transponder principle in NaviPac, we have decided to assign codes
between 101 and 199 to master transponder data and 201 to 299 to slave transponder data.
The codes will not be visible to the user, as the selection displays it as:
Page 36 of 51
But in online displays, the modified codes are visible:
First of all, make sure that the Kongsberg system outputs both PSIMSSB (the position) and
PSIMSNS (attitude, etc), as NaviPac otherwise cannot see the transceiver number.
Both HiPAP drivers have the same instrument setup – the only difference is the
Transceiver Id:
Interfaces.docx
Page 37 of 51
Last update: 11/8/2014
Setting up the HiPAP drivers in NaviPac Configuration from startup can be done easily by
using the clone function:
If you use the clone function at a later stage, you must individually add objects to the new
cloned driver by using all objects on driver 1 as the reference.
In Online, you must select from the Edit > Positioning Systems menu which of the two
transceivers you are using.
3.4 PHINS/ROVINS
NaviPac versions 3.8.4 and onwards include a special driver to the PHINS/ROVINS system.
Page 38 of 51
The system utilises two-way communication with the PHINS/ROVINS instrument to:
The NASNet system outputs position and data telegrams as described in Sections 3.5.1
‘Specification from Nautronix’ to 3.5.3 ‘Use in NaviPac’ below.
String one: All separations are by means of a comma. Below is an example of how the
string will look:
$NASPOS,150536.84,ROV1,5700.001111,N,00159.998616,W,-0.2*4E
Interfaces.docx
Page 39 of 51
Last update: 11/8/2014
$NASPOS: This is the string header.
150536.84: Timestamp of data string in HHMMSS.SS.
ROV1: String identifier. These differentiate as follows:
ROV# for various ROVs being tracked
CR# for various Construction Receivers being tracked
BOAT for Beamformer position
5700.001111,N: Latitude in DDMM.MMMMMM, north or south.
00159.998616,W: Longitude in DDDMM.MMMMMM, east or west.
-0.2: Depth of receiver in metres.
*4E: Checksum followed by carriage return and line feed.
String two: All separations are by means of a comma. There are five readings available
from each construction receiver depending on what the user decides. Below are examples
of how the string will look:
$NASCRD,170257.53,CR4,T,17.4*4A
$NASCRD,170302.12,CR4,PR,+1.10,+2.00*2A
$NASCRD,170303.63,CR4,H,330.50*52
$NASCRD,170235.66,CR4,P,-0.18*6A
$NASCRD,170235.80,CR4,D,-1.78*71
Position
$NASPOS,150536.84,ROV1,5700.001111,N,00159.998616,W,-0.2*4E
$NASPOS,150536.97,CR5,5700.024037,N,00159.976487,W,-0.2*1A
$NASPOS,150542.29,ROV2,5659.999996,N,00159.999137,W,-0.5*49
$NASPOS,150544.55,BOAT,5700.000143,N,00159.998933,W,-0.2*2B
$NASPOS,150544.55,ROV2,5659.999977,N,00159.999152,W,-0.5*48
$NASPOS,150545.73,BOAT,5700.000213,N,00159.998954,W,-0.2*29
$NASPOS,150546.60,BOAT,5700.000167,N,00159.998895,W,-0.2*24
$NASPOS,150546.61,ROV2,5700.000494,N,00159.999525,W,-0.5*4D
Page 40 of 51
Sensor
$NASCRD,165645.59,CR4,H,330.50*58
$NASCRD,165650.11,CR4,PR,+1.10,+2.00*2F
$NASCRD,165652.62,CR4,H,330.50*56
$NASCRD,165653.52,CR4,P,-0.18*6D
$NASCRD,165653.70,CR4,D,-1.78*7E
$NASCRD,165658.05,CR4,PR,+1.10,+2.00*22
$NASCRD,165659.59,CR4,H,330.50*55
$NASCRD,165702.07,CR4,PR,+1.10,+2.00*2E
$NASCRD,165706.16,CR4,PR,+1.10,+2.00*2A
In NaviPac, the NASNet system can be used for the following interface types:
When used, the input must be separated into a minimum of three physical interfaces (serial
or UDP/IP) due to the nature of NaviPac:
Surface navigation
Dynamic positioning
Gyro/Motion sensor/Data acquisition
During setup of the dynamic positioning interface, select which identifier (eg ‘ROV1’) will be
assigned to the object in use – similar to other remote and underwater systems.
Gyro, Motion sensor and Data acquisition also carry an identifier (eg ‘CR4’). NaviPac will
here perform the identification automatically. If the gyro is attached to an object positioned
by NASNet, NaviPac uses the identifier for the corresponding position string to map the data
to the NaviPac object.
Interfaces.docx
Page 41 of 51
Last update: 11/8/2014
NaviPac and NaviScan can be run on the same PC or on two separate computers. If
running both programs on the same PC, we normally recommend that all interfacing is
performed via UDP/IP messages on local IP address 127.0.0.1.
When used on two PCs, you can use serial interfaces (if timing is critical) or UDP/IP.
Position
Recording control
GPS-based height
Gyro correction
Expanded setup
Depth
Please note that you should never send gyro and motion sensor data from NaviPac to
NaviScan in real operations as this will introduce unknown sensor latency.
Page 42 of 51
4.1 Position
NaviPac can export one or more position telegrams to NaviScan.
The gyro correction value will be incorporated as a part of the Position (Exp.) to NaviScan
string.
If you have a setup with two RTK-based GPSs, you can use the position data as a
secondary gyro. NaviPac then compares the primary gyro (high frequency) with the RTK-
based gyro, and you can then send the result to NaviScan for gyro correction.
Interfaces.docx
Page 43 of 51
Last update: 11/8/2014
4.4.2 Correction for speed error
Some gyros are not able to get a position and speed input and will therefore have an error
depending on the sailed direction, the speed and the actual location.
/* Formula 'Fulst: Nautische Tafeln, 24. Aufl.', heading in [deg] as acquired from gyro,
speed over ground 'sog' in [m/s] latitude in [rad] M_PI_180 is (Pi/180)*/
0.25 0.5 -0.062 -0.044 0.000 0.044 0.062 0.044 0.000 -0.044
0.5 1.0 -0.123 -0.087 0.000 0.087 0.123 0.087 0.000 -0.087
0.75 1.5 -0.185 -0.131 0.000 0.131 0.185 0.131 0.000 -0.131
1.25 2.4 -0.309 -0.218 0.000 0.218 0.309 0.218 0.000 -0.218
1.5 2.9 -0.370 -0.262 0.000 0.262 0.370 0.262 0.000 -0.262
1.75 3.4 -0.432 -0.305 0.000 0.305 0.432 0.305 0.000 -0.305
2.25 4.4 -0.555 -0.393 0.000 0.393 0.555 0.393 0.000 -0.393
2.5 4.9 -0.617 -0.436 0.000 0.436 0.617 0.436 0.000 -0.436
2.75 5.3 -0.679 -0.480 0.000 0.480 0.679 0.480 0.000 -0.480
3.25 6.3 -0.802 -0.567 0.000 0.567 0.802 0.567 0.000 -0.567
3.5 6.8 -0.864 -0.611 0.000 0.611 0.864 0.611 0.000 -0.611
3.75 7.3 -0.926 -0.654 0.000 0.654 0.926 0.654 0.000 -0.654
4.25 8.3 -1.049 -0.742 0.000 0.742 1.049 0.742 0.000 -0.742
4.5 8.7 -1.111 -0.785 0.000 0.785 1.111 0.785 0.000 -0.785
4.75 9.2 -1.172 -0.829 0.000 0.829 1.172 0.829 0.000 -0.829
Page 44 of 51
4.5 Expanded setup
The data output Nav Settings to NaviScan:
This data output, as illustrated below, allows transmission of setting and runline information
from NaviPac to NaviScan (or similar).
$S,-----000
$CNF001: [QC]
Interfaces.docx
Page 45 of 51
Last update: 11/8/2014
$CNF003: NumberOfSensors=16
$CNF004: VesselName=MyVessel
$CNF005: [Instrument00]
$CNF011: [Instrument01]
$CNF017: [Instrument02]
….
$CNF128: Channel3=MAG2
$CNF130: InUse3=1
$CNF131:
‘CNF’ represents an INI-like copy of the NaviPac setup, including one section per
instrument.
Due to the amount of data, we suggest that you use UDP/IP for this.
Page 46 of 51
4.6 Depth
NaviScan is configured to send out the observed centre depth (depth below keel) on a
UDP/IP port. This can be read in NaviPac using a standard NMEA input:
The UDP/IP port must always be ‘5999’, and the IP address must be the local address.
4.7 Summary
NaviPac NaviScan
Pos from NaviPac
Position to NaviScan
Logging control: NaviPac old
Interfaces.docx
Page 47 of 51
Last update: 11/8/2014
5 Sharing ports between NaviPac and
NaviScan
NaviPac offers a feature to share COM ports with NaviScan (or other external receivers).
This is done by sending the time-tagged data (registered by NaviPac) out on the UDP/IP
network using the TimeBox/ATTU data format:
{
char Ident[4]; // Packet starter: always ‘EIVA’
INT32 Length; // Length of packet – remaining of entire packet
INT32 VersAndDomain; // First 16 bit version number (1)
// Last 16 bit domain id – unique time box number
INT32 InsId; // Id of instrument – version 1 COM port number
TIMEVAL time_stamp; // Timestamp of reception of telegram (first bit)
}
char data [length-16];
// The raw telegram – not really a part of
// structure – but follows right after the header
struct timeval {
long tv_sec; /* seconds */
long tv_usec; /* and microseconds */
};
And in UNIX/Linux:
struct timeval {
time_t tv_sec // seconds
suseconds_t tv_usec // microseconds
};
The data is delivered with time-tag as per NaviPac – thus delivered in a consistent
way
Several programs use the ATTU (TimeBox) protocol and can use this directly
Page 48 of 51
5.1 Setup in NaviPac
You must enable the port sharing functionality in NaviPac Configuration via Options >
Global Parameters > NaviScan > Enable port sharing.
GPS
Gyro
Motion sensor
Doppler log
Bathy
Destination
Enter the destination address of the receiver computer, eg:
Interfaces.docx
Page 49 of 51
Last update: 11/8/2014
Port ID
The data will be sent out as UDP/IP messages using the TimeBox format. Each serial port
will be output on its own UDP port, defined by the original port number plus this add-on. If
you, for example, enter ‘10000’, then COM1 will be sent on UDP 10001.
Data selector
Select whether you want NaviPac to broadcast all inputs (‘All’) or only for a selected object
(eg ‘ROV1’). The changes in setup will not be available until the next restart of navigation.
The key is to know the mapping between the NaviPac drivers and the NaviScan drivers so
you select the correct driver in both programs.
The mapping can be automated in NaviScan via an import function that guides you through
this mapping.
Page 50 of 51
Figure 11 Importing the setup
Please note that the NaviScan PC must be time-synchronised with the NaviPac PC when
using two different locations. This can either be done via interfacing of ZDA/PPS or by using
the network time server.
Interfaces.docx
Page 51 of 51
Last update: 11/8/2014