Eye4Software Hydromagic

Hydrographic Survey Software


Download free demo version


NMEA0183 ASCII log files

NMEA0183 log files are files where NMEA0183 data is recorded from devices like GPS and echosounder.
Instead of sending the data directly to Hydromagic in real time, the data was recorded on for instance a SD-Card.

This method is often used on USV's (unmanned survey vessels) when it is not possible to establish a direct link to the shore.
In these cases the data is stored on an onboard SD-Card or any other removable storage device.

  $GPGGA,222525.20,6804.42753000,N,16251.36499361,W,2,08,1.1,305.895,M,2.577,M,1.2,0029*6D
  $GPVTG,240.20,T,,M,0.24,N,0.44,K,D*3A
  $SDDBT,0.91,f,0.28,M,0.15,F*30
  $SDDBT,0.91,f,0.28,M,0.15,F*30
  $GPGGA,222525.40,6804.42750707,N,16251.36503441,W,2,08,1.1,306.227,M,2.577,M,1.4,0029*69
  $GPVTG,236.70,T,,M,0.23,N,0.43,K,D*3E
  $SDDBT,0.91,f,0.28,M,0.15,F*30
  $HCHDG,312.5,,,,*47
  $SDDBT,0.91,f,0.28,M,0.15,F*30
  $GPGGA,222525.60,6804.42748134,N,16251.36507432,W,2,08,1.1,306.555,M,2.577,M,1.6,0029*64
  $GPVTG,227.46,T,,M,0.24,N,0.44,K,D*3B
  $SDDBT,0.91,f,0.28,M,0.15,F*30
  $SDDBT,0.91,f,0.28,M,0.15,F*30
  $GPGGA,222525.80,6804.42746479,N,16251.36504080,W,2,08,1.1,306.793,M,2.577,M,1.8,0029*60
  $GPVTG,222.82,T,,M,0.23,N,0.43,K,D*36
  $SDDBT,0.91,f,0.28,M,0.15,F*30
  $SDDBT,0.91,f,0.28,M,0.15,F*30
  $HCHDG,312.5,,,,*47
  $GPGGA,222526.00,6804.42745489,N,16251.36500786,W,2,09,1.1,306.908,M,2.577,M,2.0,0029*64
  
Content of a NMEA0183 log file (5 Hz position interval / 10 Hz depth interval)


Timing errors with NMEA0183 logs

However, there is a big drawback when it comes to using NMEA0183 log files: Because depth records aren't timestamped in NMEA0183, it is impossible to get the actual time difference between the position and depth data which may cause the depth positions to be shifted. When the position update interval is low errors can be up to several meters which makes the data unusable.

When the data is processed by Hydromagic, you won't have this problem because the incoming data timestamped as soon as the data comes in.

You can easily calculate the maximum error of the depth positions in NMEA0183 imports by dividing the speed in meter per seconds by the position data interval. When your USV is going 5 kilometer per hour, this means the maximum error with a position update of 1 Hz can be:

5 Kmh = 3.1 Mph = 1.39 meter per second divided by 1 update per second (1Hz) = 1.39 meter max position error

To fix this issue, set the NMEA0183 sentences containing a time stamp to a higher output rate. Hydromagic can parse time synchronization data from either GGA or ZDA sentences. When one of these sentences is set to an output rate of for instance 10Hz, the error is becoming acceptable:

5 Kmh = 3.1 Mph = 1.39 meter per second divided by 10 updates per second (10Hz) = 0.139 meter max position error


Starting the raw data import wizard

All file formats which Hydromagic is able to convert to raw data files, can be imported through the raw data import wizard.
To start the wizard, right-click the 'Raw Data' folder in the 'Project Explorer' and select the 'Import Data Wizard...' option.

Starting the raw data import wizard


Select file format

The first page of the wizard allows you to set the format of the file(s) we wish to import.
Since this tutorial is about importing NMEA0183 data, we select the 'NMEA0183 ASCII Log Files (*.*)' option from the drop-down list.

Select file format


Select file(s) to import

In the second page of the wizard you can select which files to import.
Click the 'Browse...' button to select the folder on your computer where the files are stored.

After changing the folder the file list is reloaded, and you can use the check boxes to select one or more file(s) to import.

Select file(s) to import


Import options

With some file formats, including NMEA0183, some additional options have to be set in order to import and interpret the data in the file correctly.
This is shown in the optional third step of the import wizard. When no options have to be set, this third page is skipped.

Projection and units

You can see the projection setting has been disabled, because position data in NMEA0183 is always in WGS84 geographic coordinates.
Also there is no need to set the units used in the file, because the units are mentioned in the NMEA0183 sentences and conversions are performed automatically.

NMEA0183 sentence

Use this settings to select the NMEA0183 sentence used to extract depth from the log file.
Possible settings are: $SDDPT, $SDDBK, $SDDBS, $SDDBT and $SDXDR.

Sentence Description
$SDDBK Depth below keel
$SDDBS Depth below surface
$SDDBT Depth below transducer
$SDDPT Depth and keel offset
$SDXDR Extended Transducer Information (may contain dual frequency depth)

Sounder offset

Use this box to set the transducer offset to be used. This is the distance between the bottom of the transducer to the waterline.
This settings is also called the static draft. If unknown, it is possible to leave this value zero and correct it later in the "Sounding Wizard".

Sounding date

To add correct date and time information to your sounding, you can use the "Date" and "Time zone" settings.
The time of the positions is stored in the NMEA0183 data as GMT time, so the correct time zone is required to convert the times to local time.
This settings are optional, however, if the sounding is going to be used with tide files, you will need the correct timestamps on your data !

import options


Starting the import

When the format, the files and the additional options has been set, you can start the import process by clicking the 'Finish' button on the last page of the wizard.

The file currently processed is displayed in the statusbar at the bottom of the screen and the wizard shows a message box stating 'File(s) successfully imported as raw data file(s)' as soon as the process has completed. Click 'OK' to close the dialog and the imported files will be centered in the map view (only when they contain position data).

import options


Checking the imported raw data file(s)

When the import has completed, you can right-click the generated raw data files, and select 'Analyze Data...' to inspect the imported values and timestamps.