NMEA Output

The 3DM-GQ7 supports transmission of selected NMEA-0183 sentences over the main communications port.

Supported Sentences and Talker IDs

Sentence Description Supported Talker IDs Applicable Sources
GGA GNSS Fix Information GN, GP, GA, GL GNSS, Filter
GLL Lat/lon position GN, GP, GA, GL GNSS, Filter
GSV Satellites in View Constellation-specific GNSS
RMC Recommended Minimum GNSS data GN, GP, GA, GL GNSS, Filter
VTG Course over Ground GN, GP, GA, GL GNSS, Filter
HDT True Heading GN, GP, GA, GL GNSS, Filter
ZDA Time and Date GN, GP, GA, GL GNSS
PRKA Euler Angles (Proprietary) Proprietary Filter
PRKR Angular Rate and Accel (Proprietary) Proprietary Sensor

Proprietary Messages

PRKA - Euler Angles

Information Format Examples
UTC Time - Hour (24-hour format, 00 = midnight) 2 digits, HH 00, 01, 13, 23
UTC Time - Minute, 00-59 2 digits, MM 00, 15, 30, 59
UTC Time - Second, 00-60 2 digits, SS 00, 05, 10, 55, 60
UTC Time - Millisecond, .00 to .99 2 digits after a decimal, .mm .00, .10, .67, .99
Euler Angles - Roll, Pitch, Yaw [degrees] Float with 3 decimal places 0.523, -23.887, 149.447

Example: $PPKRA,161414.71,-0.397,0.963,107.238*7A

PRKR - Angular Rate and Acceleration

Information Format Examples
UTC Time - Hour (24-hour format, 00 = midnight) 2 digits, HH 00, 01, 13, 23
UTC Time - Minute, 00-59 2 digits, MM 00, 15, 30, 59
UTC Time - Second, 00-60 2 digits, SS 00, 05, 10, 55, 60
UTC Time - Millisecond, .00 to .99 2 digits after a decimal, .mm .00, .10, .67, .99
Acceleration - X, Y, Z [g] Float with 6 decimal places 0.123456, 1.102300, -5.52223
Gyro - Roll, Pitch, Yaw [deg/s] Float with 6 decimal places 0.123456, 1.102300, -5.52223

Example: $PPKRR,161214.99,-0.134271,-0.445030,-0.521750,20.525915,-52.236669,19.040872*7D

Sources and Talker IDs

The NMEA sentences can be produced using data from the IMU, Filter, GNSS 1, or GNSS 2. The source is selected on a per-sentence basis using the corresponding MIP descriptor set. The talker IDs are also configurable for each sentence except for the GSV and proprietary messages.

Configuration

The NMEA system is configured using the NMEA Message Format (0x0C,0x0C) MIP command. It accepts a list of sentence types which includes the talker IDs, source descriptor sets, and decimations for each sentence. A sentence may be specified more than once using different talker IDs or sources. The decimation is relative to the base rate of the source descriptor set.

Important: due to processing limitations, a maximum of 10 Hz applies to each produced NMEA sentence from the IMU and filter descriptor sources and 2 Hz from a GNSS descriptor source. Attempts to set a higher rate than this will result in the command being NACK'd.

The device will transmit NMEA sentences if all of the following conditions are met:

  • At least one sentence is specified in the NMEA message format.
  • The device has not been set to idle with the Set to idle (0x01,0x02) command (issue the Resume (0x01,0x06) command if this is the case).
  • The data required for the configured sentence(s) is available. In some cases, the required data may not be valid, such as when a GNSS fix has not been obtained. A sentence will not be transmitted unless the source data is valid.

If the NMEA sentence list is not empty on startup, transmission will begin as soon as the data becomes available (e.g. once satellite signals have been acquired).

NMEA sentences can also be polled manually using the Poll NMEA Message (0x0C,0x04) MIP command. This command behaves like the NMEA message format command except that messages will only be transmitted once, if the data is available.

Parsing mixed MIP and NMEA data streams

Because the NMEA data is streamed to the main port, MIP command replies and data will be mixed into the data stream if any MIP communication is enabled or initiated. Applications requiring mixed NMEA and MIP should deal with this by running parsers in parallel; that is, by feeding the data stream to both parsers simultaneously. The two parsers must be robust and reject unexpected data for this to work correctly. Each type of packet will be transmitted whole; therefore, the user should not expect a NMEA packet to fall in the middle of a MIP packet and vice-versa.