Skip to content

Commit 5fa3246

Browse files
committed
Add extra defs for NMEA THS
1 parent 793e8b4 commit 5fa3246

File tree

3 files changed

+12
-5
lines changed

3 files changed

+12
-5
lines changed

src/u-blox_Class_and_ID.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,7 @@ const uint8_t UBX_NMEA_GST = 0x07; // GxGST (GNSS Pseudo Range Error Statistics)
130130
const uint8_t UBX_NMEA_GSV = 0x03; // GxGSV (GNSS satellites in view)
131131
const uint8_t UBX_NMEA_RLM = 0x0B; // GxRMC (Return link message (RLM))
132132
const uint8_t UBX_NMEA_RMC = 0x04; // GxRMC (Recommended minimum data)
133+
const uint8_t UBX_NMEA_THS = 0x0E; // GxTHS (True heading and status)
133134
const uint8_t UBX_NMEA_TXT = 0x41; // GxTXT (text transmission)
134135
const uint8_t UBX_NMEA_VLW = 0x0F; // GxVLW (dual ground/water distance)
135136
const uint8_t UBX_NMEA_VTG = 0x05; // GxVTG (course over ground and Ground speed)
@@ -237,9 +238,9 @@ const uint8_t UBX_MON_VER = 0x04; // Receiver/Software Version. Used for obtai
237238
// The following are used to configure the NAV UBX messages (navigation results messages). Descriptions from UBX messages overview (ZED_F9P Interface Description Document page 35-36)
238239
const uint8_t UBX_NAV_ATT = 0x05; // Vehicle "Attitude" Solution
239240
const uint8_t UBX_NAV_CLOCK = 0x22; // Clock Solution
240-
const uint8_t UBX_NAV_COV = 0x36; // Covariance matrices
241+
const uint8_t UBX_NAV_COV = 0x36; // Covariance matrices
241242
const uint8_t UBX_NAV_DOP = 0x04; // Dilution of precision
242-
const uint8_t UBX_NAV_EELL = 0x3D; // Position error ellipse parameters
243+
const uint8_t UBX_NAV_EELL = 0x3D; // Position error ellipse parameters
243244
const uint8_t UBX_NAV_EOE = 0x61; // End of Epoch
244245
const uint8_t UBX_NAV_GEOFENCE = 0x39; // Geofencing status. Used to poll the geofence status
245246
const uint8_t UBX_NAV_HPPOSECEF = 0x13; // High Precision Position Solution in ECEF. Used to find our positional accuracy (high precision).
@@ -254,8 +255,8 @@ const uint8_t UBX_NAV_PVAT = 0x17; // Navigation position velocity attitude
254255
const uint8_t UBX_NAV_RELPOSNED = 0x3C; // Relative Positioning Information in NED frame
255256
const uint8_t UBX_NAV_RESETODO = 0x10; // Reset odometer
256257
const uint8_t UBX_NAV_SAT = 0x35; // Satellite Information
257-
const uint8_t UBX_NAV_SBAS = 0x32; // SBAS subsystem
258-
const uint8_t UBX_NAV_SLAS = 0x42; // QZSS L1S SLAS status data
258+
const uint8_t UBX_NAV_SBAS = 0x32; // SBAS subsystem
259+
const uint8_t UBX_NAV_SLAS = 0x42; // QZSS L1S SLAS status data
259260
const uint8_t UBX_NAV_SIG = 0x43; // Signal Information
260261
const uint8_t UBX_NAV_STATUS = 0x03; // Receiver Navigation Status
261262
const uint8_t UBX_NAV_SVIN = 0x3B; // Survey-in data. Used for checking Survey In status
@@ -269,7 +270,6 @@ const uint8_t UBX_NAV_VELECEF = 0x11; // Velocity Solution in ECEF
269270
const uint8_t UBX_NAV_VELNED = 0x12; // Velocity Solution in NED
270271
const uint8_t UBX_NAV_AOPSTATUS = 0x60; // AssistNow Autonomous status
271272

272-
273273
// Class: RXM
274274
// The following are used to configure the RXM UBX messages (receiver manager messages). Descriptions from UBX messages overview (ZED_F9P Interface Description Document page 36)
275275
const uint8_t UBX_RXM_COR = 0x34; // Differential correction input status

src/u-blox_GNSS.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2144,6 +2144,8 @@ bool DevUBLOXGNSS::logThisNMEA()
21442144
logMe = true;
21452145
if ((nmeaAddressField[3] == 'R') && (nmeaAddressField[4] == 'M') && (nmeaAddressField[5] == 'C') && (_logNMEA.bits.UBX_NMEA_RMC == 1))
21462146
logMe = true;
2147+
if ((nmeaAddressField[3] == 'T') && (nmeaAddressField[4] == 'H') && (nmeaAddressField[5] == 'S') && (_logNMEA.bits.UBX_NMEA_THS == 1))
2148+
logMe = true;
21472149
if ((nmeaAddressField[3] == 'T') && (nmeaAddressField[4] == 'X') && (nmeaAddressField[5] == 'T') && (_logNMEA.bits.UBX_NMEA_TXT == 1))
21482150
logMe = true;
21492151
if ((nmeaAddressField[3] == 'V') && (nmeaAddressField[4] == 'L') && (nmeaAddressField[5] == 'W') && (_logNMEA.bits.UBX_NMEA_VLW == 1))
@@ -2202,6 +2204,8 @@ bool DevUBLOXGNSS::isNMEAHeaderValid()
22022204
return (true);
22032205
if ((nmeaAddressField[3] == 'R') && (nmeaAddressField[4] == 'M') && (nmeaAddressField[5] == 'C'))
22042206
return (true);
2207+
if ((nmeaAddressField[3] == 'T') && (nmeaAddressField[4] == 'H') && (nmeaAddressField[5] == 'S'))
2208+
return (true);
22052209
if ((nmeaAddressField[3] == 'T') && (nmeaAddressField[4] == 'X') && (nmeaAddressField[5] == 'T'))
22062210
return (true);
22072211
if ((nmeaAddressField[3] == 'V') && (nmeaAddressField[4] == 'L') && (nmeaAddressField[5] == 'W'))
@@ -2255,6 +2259,8 @@ bool DevUBLOXGNSS::processThisNMEA()
22552259
return (true);
22562260
if ((nmeaAddressField[3] == 'R') && (nmeaAddressField[4] == 'M') && (nmeaAddressField[5] == 'C') && (_processNMEA.bits.UBX_NMEA_RMC == 1))
22572261
return (true);
2262+
if ((nmeaAddressField[3] == 'T') && (nmeaAddressField[4] == 'H') && (nmeaAddressField[5] == 'S') && (_processNMEA.bits.UBX_NMEA_THS == 1))
2263+
return (true);
22582264
if ((nmeaAddressField[3] == 'T') && (nmeaAddressField[4] == 'X') && (nmeaAddressField[5] == 'T') && (_processNMEA.bits.UBX_NMEA_TXT == 1))
22592265
return (true);
22602266
if ((nmeaAddressField[3] == 'V') && (nmeaAddressField[4] == 'L') && (nmeaAddressField[5] == 'W') && (_processNMEA.bits.UBX_NMEA_VLW == 1))

src/u-blox_external_typedefs.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ typedef struct
131131
uint32_t UBX_NMEA_VLW : 1;
132132
uint32_t UBX_NMEA_VTG : 1;
133133
uint32_t UBX_NMEA_ZDA : 1;
134+
uint32_t UBX_NMEA_THS : 1;
134135
} bits;
135136
};
136137
} sfe_ublox_nmea_filtering_t;

0 commit comments

Comments
 (0)