Advanced NMEA Data Logger

Grouping NMEA data from two data sources to one row in a CSV file


I have two data sources, depth sounder connected to COM3, 9600bps, 1Hz, $DPDPT (with Aten USB), and GPS (Geomax Zenith20+Getac236) connected to COM4, 9600bps, 1Hz, $GPGGA.

Data is collected to my navigation software (SeaClear), displayed on a screen (position and depth), and collected to log file.

Now I want to redirect incoming data simultaneously, without stopping collecting data to navigation software, to my Advanced NMEA Data Logger in two columns, row by row.

Preliminary requirements:

  1. Advanced NMEA Data Logger Enterprise, or a trial version (download).
  2. Configure NMEA devices to use identical communication parameters (baud rate, number of data bits, etc.).


Configuring the data parser

1. Create the configuration in the main window using the "Green Plus" button or open the existing configuration (Options → Manage configurations → Your configuration → Modify).

2. Switch to the "COM port → COM port settings" tab (fig.1), then select two COM ports in the list with COM ports.

COM port settings
Fig. 1: COM port settings

3. Switch to the "Modules → Query Parse Filter" tab (fig. 2).

The parser module
Fig. 2: The parser module

4. Click the "Setup" button next to the "NMEA data parser" item.

5. When a dialog box appears (fig. 3), select the packet types you need to process and export.

Selecting NMEA sentences
Fig. 3: Selecting NMEA sentences

Important: Select only the packet types that you need to avoid exporting unnecessary data.

6. On the "Common" tab (fig. 4), you should add the necessary NMEA sentences to the data aggregation list. Please note that a device type identifier must be specified in addition to a packet type identifier (GGA → GPGGA).

NMEA sentences aggregation
Fig. 4: NMEA sentences aggregation

7. Save the changes by clicking the "OK" button.

Configuring other options

8. Change data view mode in the main window and select the "CSV" format (fig. 5).

CSV data view mode
Fig. 5: CSV data view mode

9. Configure log files settings: change mode, a file name prefix and extension, and other important options, as shown in figure 6.

Log file settings
Fig. 6: Log file settings

10. Save the changes by clicking the "OK" button.

11. Wait for incoming data from both data sources. The CSV data string appears in the main window when the parser receives selected NMEA sentences from both data sources. Immediately, the logger writes the same string to a log file.

NMEA - CSV data
Fig. 7: NMEA - CSV data


My NMEA devices have different communication parameters. How to aggregate data then?

You should create two configurations, redirect data from the second configuration, and aggregate it in the first configuration. Please, look at our other tutorial.

My NMEA devices send data too often. How can I write to a CSV file once per minute?

You can add the "Deadband" filter plugin to your setup, and it can filter out data by a custom interval. Please, look at our other tutorial.

I need an elementary log file with three columns (GPS coordinates and depth). I don't need other values.

Instead of a standard log file, you can use the "Local Database" data export plugin. It allows you to select the necessary columns and their order.

I have two NMEA devices; the first is connected through a COM port, while the other one is connected through my LAN. I would like to be able to access both of these devices through the same software. Is that possible?

NMEA data logger allows you to select a data source type when you install the program. Later you cannot combine different data source types. In this case, you can use our TCP COM Bridge software to send a network data stream to a virtual COM port. Then you can easily aggregate data from heterogeneous data sources.

I have a GPS NMEA 0183-compatible device and a non-NMEA sensor. Can I write a sensor value with coordinates to one log file?

NMEA data logger cannot parse non-NMEA data, and you should use our Data Logger Suite instead. You should manually configure the parsing of RMC or GGA sentences using the ASCII Data Parser plugin. Additionally, you should configure a data parser for your sensor. After this, you can aggregate data using the following tutorial.

Related articles: