Fixposition SDK 0.0.0-heads/main-0-g90a51ff
Collection of c++ libraries and apps for use with Fixposition products
Loading...
Searching...
No Matches
fpsdk::common::parser::novb Namespace Reference

Parser NOV_B routines and types. More...

Classes

struct  NovbBestgnsspos
 NOV_B-BESTGNSSPOS payload. More...
 
struct  NovbBestvel
 NOV_B-BESTVEL payload. More...
 
struct  NovbHeader
 Union of NOV_B long and short header. More...
 
struct  NovbHeading2
 NOV_B-HEADING2 payload. More...
 
struct  NovbInspvax
 NOV_B-INSPVAX payload. More...
 
struct  NovbLongHeader
 NOV_B frame long header. More...
 
struct  NovbRawdmi
 NOV_B-RAWDMI payload. More...
 
struct  NovbRawimu
 NOV_B-RAWIMU payload. More...
 
struct  NovbShortHeader
 NOV_B frame short header. More...
 

Enumerations

enum class  NovbMsgTypeSource : uint8_t { PRIMARY = 0b00000000 , SECONDARY = 0b00000001 , _MASK = 0b00011111 }
 Message type measurement source (bits 4..0 of NovbLongHeader.message_type) More...
 
enum class  NovbMsgTypeFormat : uint8_t {
  BINARY = 0b00000000 , ASCII = 0b00100000 , AASCII_NMEA = 0b01000000 , RESERVED = 0b01100000 ,
  _MASK = 0b01100000
}
 Message type format (bits 6..5 of NovbLongHeader.message_type) More...
 
enum class  NovbMsgTypeResp : uint8_t { ORIGINAL = 0b00000000 , RESPONSE = 0b10000000 , _MASK = 0b10000000 }
 Message type format (bit 7 of NovbLongHeader.message_type) More...
 
enum class  NovbTimeStatus : uint8_t {
  UNKNOWN = 20 , APPROXIMATE = 60 , COARSEADJUSTING = 80 , COARSE = 100 ,
  COARSESTEERING = 120 , FREEWHEELING = 130 , FINEADJUSTING = 140 , FINE = 160 ,
  FINEBACKUPSTEERING = 170 , FINESTEERING = 180 , SATTIME = 200
}
 Message time status (NovbLongHeader.time_status) More...
 
enum class  NovbPortAddr : uint8_t { NO_PORTS = 0x00 , ALL_PORTS = 0x80 , THISPORT = 0xc0 }
 Message port address (NovbLongHeader.port_address) More...
 
enum class  NovbGnssSolStat : uint32_t {
  SOL_COMPUTED = 0 , INSUFFICIENT_OBS = 1 , NO_CONVERGENCE = 2 , SINGULARITY = 3 ,
  COV_TRACE = 4 , TEST_DIST = 5 , COLD_START = 6 , V_H_LIMIT = 7 ,
  VARIANCE = 8 , RESIDUALS = 9
}
 Solution status. More...
 
enum class  NovbGnssSolExtStat : uint8_t { SOL_VERIFIED = 0b00000001 }
 Extended solution status (bits) More...
 
enum class  NovbSolSource : uint8_t { PRIMARY = 0b00000100 , SECONDARY = 0b00001000 , _MASK = 0b00001100 }
 Solution source (bits) More...
 
enum class  NovbDatumId : uint32_t { WGS84 = 61 , USER = 63 }
 Datum ID. More...
 
enum class  NovbPosOrVelType : uint32_t {
  NONE = 0 , FIXEDPOS = 1 , FIXEDHEIGHT = 2 , DOPPLER_VELOCITY = 8 ,
  SINGLE = 16 , PSRDIFF = 17 , WAAS = 18 , PROPAGATED = 19 ,
  L1_FLOAT = 32 , NARROW_FLOAT = 34 , L1_INT = 48 , WIDE_INT = 49 ,
  NARROW_INT = 50 , RTK_DIRECT_INS = 51 , INS_SBAS = 52 , INS_PSRSP = 53 ,
  INS_PSRDIFF = 54 , INS_RTKFLOAT = 55 , INS_RTKFIXED = 56 , PPP_CONVERGING = 68 ,
  PPP = 69 , OPERATIONAL = 70 , WARNING = 71 , OUT_OF_BOUNDS = 72 ,
  INS_PPP_CONVERGING = 73 , INS_PPP = 74 , PPP_BASIC_CONVERGING = 77 , PPP_BASIC = 78 ,
  INS_PPP_BASIC_CONVERGING = 79 , INS_PPP_BASIC = 80
}
 Position or velocity type. More...
 
enum class  NovbSigUsedGpsGlo : uint8_t {
  GPS_L1 = 0x01 , GPS_L2 = 0x02 , GPS_L5 = 0x04 , GLONASS_L1 = 0x10 ,
  GLONASS_L2 = 0x20 , GLONASS_L5 = 0x40
}
 GPS and GLONASS signals used (bits) More...
 
enum class  NovbSigUsedGalBds : uint8_t {
  GALILEO_L1 = 0x01 , GALILEO_L2 = 0x02 , GALILEO_L5 = 0x04 , GALILEO_ALTBOC = 0x08 ,
  BEIDOU_L1 = 0x10 , BEIDOU_L2 = 0x20 , BEIDOU_L5 = 0x40 , GALILEO_E6 = 0x80
}
 Gelileo and BeiDou signals used (bits) More...
 
enum class  NovbInsSolStatus : uint32_t {
  INS_INACTIVE = 0 , INS_ALIGNING = 1 , INS_HIGH_VARIANCE = 2 , INS_SOLUTION_GOOD = 3 ,
  INS_SOLUTION_FREE = 6 , INS_ALIGNMENT_COMPLETE = 7 , DETERMINING_ORIENTATION = 8 , WAITING_INITIAL_POS = 9 ,
  WAITING_AZIMUTH = 10 , INITIALIZING_BIASES = 11 , MOTION_DETECT = 12 , WAITING_ALIGNMENTORIENTATION = 14
}
 Intertial solution status. More...
 
enum class  NovbInsSolExtStatus : uint32_t {
  POSITION_UPDATE = 0x00000001 , PHASE_UPDATE = 0x00000002 , ZERO_VELOCITY_UPDATE = 0x00000004 , WHEEL_SENSOR_UPDATE = 0x00000008 ,
  HEADING_UPDATE = 0x00000010 , EXTERNAL_POSITION_UPDATE = 0x00000020 , INS_SOLUTION_CONVERGENCE = 0x00000040 , DOPPLER_UPDATE = 0x00000080 ,
  PSEUDORANGE_UPDATE = 0x00000100 , VELOCITY_UPDATE = 0x00000200 , DR_UPDATE = 0x00000800 , PHASE_WINDUP_UPDATE = 0x00001000 ,
  COURSE_OVER_GROUND_UPDATE = 0x00002000 , EXTERNAL_VELOCITY_UPDATE = 0x00004000 , EXTERNAL_ATTITUDE_UPDATE = 0x00008000 , EXTERNAL_HEADING_UPDATE = 0x00010000 ,
  EXTERNAL_HEIGHT_UPDATE = 0x00020000 , SECONDARY_INS_USED = 0x00400000 , TURN_ON_BIAS_ESTIMATED = 0x01000000 , ALIGNMENT_DIRECTION_VERIFIED = 0x02000000 ,
  ALIGNMENT_INDICATION_1 = 0x04000000 , ALIGNMENT_INDICATION_2 = 0x08000000 , ALIGNMENT_INDICATION_3 = 0x10000000 , NVM_SEED_INDICATION_1 = 0x20000000 ,
  NVM_SEED_INDICATION_2 = 0x40000000 , NVM_SEED_INDICATION_3 = 0x80000000
}
 Extended intertial solution status (bits) More...
 

Functions

constexpr uint16_t NovbMsgId (const uint8_t *msg)
 Get message ID.
 
constexpr bool NovbIsLongHeader (const uint8_t *msg)
 Check if message has the long header.
 
constexpr bool NovbIsShortHeader (const uint8_t *msg)
 Check if message has the short header.
 
bool NovbGetMessageName (char *name, const std::size_t size, const uint8_t *msg, const std::size_t msg_size)
 Get NOV_B message name.
 
bool NovbGetMessageInfo (char *info, const std::size_t size, const uint8_t *msg, const std::size_t msg_size)
 Get NOV_B message info.
 
const char * NovbMsgTypeSourceStr (const uint8_t message_type)
 Stringify message type measurement source.
 
const char * NovbTimeStatusStr (const NovbTimeStatus time_status)
 Stringify time status.
 

Variables

static constexpr uint8_t NOV_B_SYNC_1 = 0xaa
 Sync char 1.
 
static constexpr uint8_t NOV_B_SYNC_2 = 0x44
 Sync char 2.
 
static constexpr uint8_t NOV_B_SYNC_3_LONG = 0x12
 Sync char 3 (long header)
 
static constexpr uint8_t NOV_B_SYNC_3_SHORT = 0x13
 Sync char 3 (short header)
 
static constexpr std::size_t NOV_B_HEAD_SIZE_LONG = 28
 Size of the NOV_B long header (NovbLongHeader)
 
static constexpr std::size_t NOV_B_HEAD_SIZE_SHORT = 12
 Size of the NOV_B short header (NovbShortHeader)
 
NOV_B messages (names and IDs)
static constexpr uint16_t NOV_B_BESTGNSSPOS_MSGID = 1429
 NOV_B-BESTGNSSPOS message ID.
 
static constexpr const char * NOV_B_BESTGNSSPOS_STRID = "NOV_B-BESTGNSSPOS"
 NOV_B-BESTGNSSPOS message name.
 
static constexpr uint16_t NOV_B_BESTPOS_MSGID = 42
 NOV_B-BESTPOS message ID.
 
static constexpr const char * NOV_B_BESTPOS_STRID = "NOV_B-BESTPOS"
 NOV_B-BESTPOS message name.
 
static constexpr uint16_t NOV_B_BESTUTM_MSGID = 726
 NOV_B-BESTUTM message ID.
 
static constexpr const char * NOV_B_BESTUTM_STRID = "NOV_B-BESTUTM"
 NOV_B-BESTUTM message name.
 
static constexpr uint16_t NOV_B_BESTVEL_MSGID = 99
 NOV_B-BESTVEL message ID.
 
static constexpr const char * NOV_B_BESTVEL_STRID = "NOV_B-BESTVEL"
 NOV_B-BESTVEL message name.
 
static constexpr uint16_t NOV_B_BESTXYZ_MSGID = 241
 NOV_B-BESTXYZ message ID.
 
static constexpr const char * NOV_B_BESTXYZ_STRID = "NOV_B-BESTXYZ"
 NOV_B-BESTXYZ message name.
 
static constexpr uint16_t NOV_B_CORRIMUS_MSGID = 2264
 NOV_B-CORRIMUS message ID.
 
static constexpr const char * NOV_B_CORRIMUS_STRID = "NOV_B-CORRIMUS"
 NOV_B-CORRIMUS message name.
 
static constexpr uint16_t NOV_B_HEADING2_MSGID = 1335
 NOV_B-HEADING2 message ID.
 
static constexpr const char * NOV_B_HEADING2_STRID = "NOV_B-HEADING2"
 NOV_B-HEADING2 message name.
 
static constexpr uint16_t NOV_B_IMURATECORRIMUS_MSGID = 1362
 NOV_B-IMURATECORRIMUS message ID.
 
static constexpr const char * NOV_B_IMURATECORRIMUS_STRID = "NOV_B-IMURATECORRIMUS"
 NOV_B-IMURATECORRIMUS message name.
 
static constexpr uint16_t NOV_B_INSCONFIG_MSGID = 1945
 NOV_B-INSCONFIG message ID.
 
static constexpr const char * NOV_B_INSCONFIG_STRID = "NOV_B-INSCONFIG"
 NOV_B-INSCONFIG message name.
 
static constexpr uint16_t NOV_B_INSPVA_MSGID = 507
 NOV_B-INSPVA message ID.
 
static constexpr const char * NOV_B_INSPVA_STRID = "NOV_B-INSPVA"
 NOV_B-INSPVA message name.
 
static constexpr uint16_t NOV_B_INSPVAS_MSGID = 508
 NOV_B-INSPVAS message ID.
 
static constexpr const char * NOV_B_INSPVAS_STRID = "NOV_B-INSPVAS"
 NOV_B-INSPVAS message name.
 
static constexpr uint16_t NOV_B_INSPVAX_MSGID = 1465
 NOV_B-INSPVAX message ID.
 
static constexpr const char * NOV_B_INSPVAX_STRID = "NOV_B-INSPVAX"
 NOV_B-INSPVAX message name.
 
static constexpr uint16_t NOV_B_INSSTDEV_MSGID = 2051
 NOV_B-INSSTDEV message ID.
 
static constexpr const char * NOV_B_INSSTDEV_STRID = "NOV_B-INSSTDEV"
 NOV_B-INSSTDEV message name.
 
static constexpr uint16_t NOV_B_PSRDOP2_MSGID = 1163
 NOV_B-PSRDOP2 message ID.
 
static constexpr const char * NOV_B_PSRDOP2_STRID = "NOV_B-PSRDOP2"
 NOV_B-PSRDOP2 message name.
 
static constexpr uint16_t NOV_B_RAWDMI_MSGID = 2269
 NOV_B-RAWDMI message ID.
 
static constexpr const char * NOV_B_RAWDMI_STRID = "NOV_B-RAWDMI"
 NOV_B-RAWDMI message name.
 
static constexpr uint16_t NOV_B_RAWIMU_MSGID = 268
 NOV_B-RAWIMU message ID.
 
static constexpr const char * NOV_B_RAWIMU_STRID = "NOV_B-RAWIMU"
 NOV_B-RAWIMU message name.
 
static constexpr uint16_t NOV_B_RAWIMUSX_MSGID = 1462
 NOV_B-RAWIMUSX message ID.
 
static constexpr const char * NOV_B_RAWIMUSX_STRID = "NOV_B-RAWIMUSX"
 NOV_B-RAWIMUSX message name.
 
static constexpr uint16_t NOV_B_RXSTATUS_MSGID = 93
 NOV_B-RXSTATUS message ID.
 
static constexpr const char * NOV_B_RXSTATUS_STRID = "NOV_B-RXSTATUS"
 NOV_B-RXSTATUS message name.
 
static constexpr uint16_t NOV_B_TIME_MSGID = 101
 NOV_B-TIME message ID.
 
static constexpr const char * NOV_B_TIME_STRID = "NOV_B-TIME"
 NOV_B-TIME message name.
 

Detailed Description

Parser NOV_B routines and types.

Enumeration Type Documentation

◆ NovbMsgTypeSource

Message type measurement source (bits 4..0 of NovbLongHeader.message_type)

Enumerator
PRIMARY 

Primary antenna.

SECONDARY 

Secondary antenna.

_MASK 

Mask for the source part of the NovbLongHeader.message_type field.

Definition at line 263 of file novb.hpp.

◆ NovbMsgTypeFormat

Message type format (bits 6..5 of NovbLongHeader.message_type)

Enumerator
BINARY 

Binary.

ASCII 

ASCII.

AASCII_NMEA 

Abbreviated ASCII, NMEA.

RESERVED 

Reserved.

_MASK 

Mask for the format part of the NovbLongHeader.message_type field.

Definition at line 282 of file novb.hpp.

◆ NovbMsgTypeResp

enum class fpsdk::common::parser::novb::NovbMsgTypeResp : uint8_t
strong

Message type format (bit 7 of NovbLongHeader.message_type)

Enumerator
ORIGINAL 

Primary GNSS receiver.

RESPONSE 

Secondary GNSS receiver.

_MASK 

Mask for the response part of the NovbLongHeader.message_type field.

Definition at line 294 of file novb.hpp.

◆ NovbTimeStatus

enum class fpsdk::common::parser::novb::NovbTimeStatus : uint8_t
strong

Message time status (NovbLongHeader.time_status)

See https://docs.novatel.com/OEM7/Content/Messages/GPS_Reference_Time_Statu.htm#Table_GPSReferenceTimeStatus

Enumerator
UNKNOWN 

Time validity is unknown.

APPROXIMATE 

Time is set approximately.

COARSEADJUSTING 

Time is approaching coarse precision.

COARSE 

This time is valid to coarse precision.

COARSESTEERING 

Time is coarse set and is being steered.

FREEWHEELING 

Position is lost and the range bias cannot be calculated.

FINEADJUSTING 

Time is adjusting to fine precision.

FINE 

Time has fine precision.

FINEBACKUPSTEERING 

Time is fine set and is being steered by the backup system.

FINESTEERING 

Time is fine set and is being steered.

SATTIME 

Time from satellite. Only used in logs containing satellite data, such as eph or alm.

Definition at line 306 of file novb.hpp.

◆ NovbPortAddr

enum class fpsdk::common::parser::novb::NovbPortAddr : uint8_t
strong

Message port address (NovbLongHeader.port_address)

See https://docs.novatel.com/OEM7/Content/Messages/Binary.htm#Table_DetailedPortIdentifier

Enumerator
NO_PORTS 

No ports specified.

ALL_PORTS 

All virtual ports for all ports.

THISPORT 

Current COM port.

Definition at line 335 of file novb.hpp.

◆ NovbGnssSolStat

enum class fpsdk::common::parser::novb::NovbGnssSolStat : uint32_t
strong

Solution status.

See https://docs.novatel.com/OEM7/Content/Logs/BESTPOS.htm#SolutionStatus

Enumerator
SOL_COMPUTED 

Solution computed.

INSUFFICIENT_OBS 

Insufficient observations.

NO_CONVERGENCE 

No convergence.

SINGULARITY 

Singularity at parameters matrix.

COV_TRACE 

Covariance trace exceeds maximum (trace > 1000 m)

TEST_DIST 

Test distance exceeded (maximum of 3 rejections if distance >10 km)

COLD_START 

Not yet converged from cold start.

V_H_LIMIT 

Height or velocity limits exceeded (in accordance with export licensing restrictions)

VARIANCE 

Variance exceeds limits.

RESIDUALS 

Residuals are too large.

Definition at line 350 of file novb.hpp.

◆ NovbGnssSolExtStat

Extended solution status (bits)

See https://docs.novatel.com/OEM7/Content/Logs/BESTPOS.htm#ExtendedSolutionStatus

Enumerator
SOL_VERIFIED 

Solution verified.

Definition at line 370 of file novb.hpp.

◆ NovbSolSource

enum class fpsdk::common::parser::novb::NovbSolSource : uint8_t
strong

Solution source (bits)

See https://docs.novatel.com/OEM7/Content/Logs/HEADING2.htm#SolutionSource

Enumerator
PRIMARY 

Primary antenna.

SECONDARY 

Secondary antenna.

_MASK 

Mask.

Definition at line 381 of file novb.hpp.

◆ NovbDatumId

enum class fpsdk::common::parser::novb::NovbDatumId : uint32_t
strong

Datum ID.

Enumerator
WGS84 

WGS-84 datum.

USER 

User-defined datum.

Definition at line 391 of file novb.hpp.

◆ NovbPosOrVelType

enum class fpsdk::common::parser::novb::NovbPosOrVelType : uint32_t
strong

Position or velocity type.

See https://docs.novatel.com/OEM7/Content/Logs/BESTPOS.htm#Position_VelocityType

Enumerator
NONE 

No solution.

FIXEDPOS 

Position has been fixed by the FIX position command or by position averaging.

FIXEDHEIGHT 

Position has been fixed by the FIX height or FIX auto command or by position averaging.

DOPPLER_VELOCITY 

Velocity computed using instantaneous Doppler.

SINGLE 

Solution calculated using only data supplied by the GNSS satellites.

PSRDIFF 

Solution calculated using pseudorange differential (DGPS, DGNSS) corrections.

WAAS 

Solution calculated using corrections from an SBAS satellite.

PROPAGATED 

Propagated by a Kalman filter without new observations.

L1_FLOAT 

Single-frequency RTK solution with unresolved, float carrier phase ambiguities.

NARROW_FLOAT 

Multi-frequency RTK solution with unresolved, float carrier phase ambiguities.

L1_INT 

Single-frequency RTK solution with carrier phase ambiguities resolved to integers.

WIDE_INT 

Multi-frequency RTK solution with carrier phase ambiguities resolved to wide-lane integers.

NARROW_INT 

Multi-frequency RTK solution with carrier phase ambiguities resolved to narrow-lane integers.

RTK_DIRECT_INS 

RTK status where the RTK filter is directly initialized from the INS filter.

INS_SBAS 

INS position, where the last applied position update used a GNSS solution computed using corrections from an SBAS (WAAS) solution.

INS_PSRSP 

INS position, where the last applied position update used a single point GNSS (SINGLE) solution.

INS_PSRDIFF 

INS position, where the last applied position update used a pseudorange differential GNSS (PSRDIFF) solution.

INS_RTKFLOAT 

INS position, where the last applied position update used a floating ambiguity RTK (L1_FLOAT or NARROW_FLOAT) solution.

INS_RTKFIXED 

INS position, where the last applied position update used a fixed integer ambiguity RTK (L1_INT, WIDE_INT or NARROW_INT) solution.

PPP_CONVERGING 

Converging TerraStar-C, TerraStar-C PRO or TerraStar-X solution.

PPP 

Converged TerraStar-C, TerraStar-C PRO or TerraStar-X solution.

OPERATIONAL 

Solution accuracy is within UAL operational limit.

WARNING 

Solution accuracy is outside UAL operational limit but within warning limit.

OUT_OF_BOUNDS 

Solution accuracy is outside UAL limits.

INS_PPP_CONVERGING 

INS position, where the last applied position update used a converging TerraStar-C, TerraStar-C PRO or TerraStar-X PPP (PPP_CONVERGING) solution.

INS_PPP 

INS position, where the last applied position update used a converged TerraStar-C, TerraStar-C PRO or TerraStar-X PPP (PPP) solution.

PPP_BASIC_CONVERGING 

Converging TerraStar-L solution.

PPP_BASIC 

Converged TerraStar-L solution.

INS_PPP_BASIC_CONVERGING 

INS position, where the last applied position update used a converging TerraStar-L PPP (PPP_BASIC) solution.

INS_PPP_BASIC 

INS position, where the last applied position update used a converged TerraStar-L PPP (PPP_BASIC) solution.

Definition at line 402 of file novb.hpp.

◆ NovbSigUsedGpsGlo

GPS and GLONASS signals used (bits)

See https://docs.novatel.com/OEM7/Content/Logs/BESTPOS.htm#GPS_GLONASSSignalUsedMask

Enumerator
GPS_L1 

GPS L1 used in solution.

GPS_L2 

GPS L2 used in solution.

GPS_L5 

GPS L5 used in solution.

GLONASS_L1 

GLONASS L1 used in solution.

GLONASS_L2 

GLONASS L2 used in solution.

GLONASS_L5 

GLONASS L3 used in solution.

Definition at line 441 of file novb.hpp.

◆ NovbSigUsedGalBds

Gelileo and BeiDou signals used (bits)

See https://docs.novatel.com/OEM7/Content/Logs/BESTPOS.htm#Galileo_BeiDouSignalUsedMask

Enumerator
GALILEO_L1 

Galileo E1 used in Solution.

GALILEO_L2 

Galileo E5a used in Solution.

GALILEO_L5 

Galileo E5b used in Solution.

GALILEO_ALTBOC 

Galileo ALTBOC used in Solution.

BEIDOU_L1 

BeiDou B1 used in Solution (B1I and B1C)

BEIDOU_L2 

BeiDou B2 used in Solution (B2I, B2a and B2b)

BEIDOU_L5 

BeiDou B3 used in Solution (B3I)

GALILEO_E6 

Galileo E6 used in Solution (E6B and E6C)

Definition at line 456 of file novb.hpp.

◆ NovbInsSolStatus

enum class fpsdk::common::parser::novb::NovbInsSolStatus : uint32_t
strong

Intertial solution status.

See https://docs.novatel.com/OEM7/Content/SPAN_Logs/INSATT.htm#InertialSolutionStatus

Enumerator
INS_INACTIVE 

IMU logs are present, but the alignment routine has not started; INS is inactive.

INS_ALIGNING 

INS is in alignment mode.

INS_HIGH_VARIANCE 

The INS solution uncertainty contains outliers and the solution may be outside specifications.

INS_SOLUTION_GOOD 

The INS filter is in navigation mode and the INS solution is good.

INS_SOLUTION_FREE 

The INS Filter is in navigation mode and the GNSS solution is suspected to be in error.

INS_ALIGNMENT_COMPLETE 

The INS filter is in navigation mode, but not enough vehicle dynamics have been experienced for the system to be within specifications.

DETERMINING_ORIENTATION 

INS is determining the IMU axis aligned with gravity.

WAITING_INITIAL_POS 

The INS filter has determined the IMU orientation and is awaiting an initial position estimate to begin the alignment process.

WAITING_AZIMUTH 

The INS filer has orientation, initial biases, initial position and valid roll/pitch estimated.

INITIALIZING_BIASES 

The INS filter is estimating initial biases during the first 10 seconds of stationary data.

MOTION_DETECT 

The INS filter has not completely aligned, but has detected motion.

WAITING_ALIGNMENTORIENTATION 

The INS filter is waiting to start alignment.

Definition at line 473 of file novb.hpp.

◆ NovbInsSolExtStatus

Extended intertial solution status (bits)

See https://docs.novatel.com/OEM7/Content/SPAN_Logs/INSATTX.htm#ExtendedSolutionStatus

Enumerator
POSITION_UPDATE 

Position update.

PHASE_UPDATE 

Phase update.

ZERO_VELOCITY_UPDATE 

Zero velocity update.

WHEEL_SENSOR_UPDATE 

Wheel sensor update.

HEADING_UPDATE 

ALIGN (heading) update.

EXTERNAL_POSITION_UPDATE 

External position update.

INS_SOLUTION_CONVERGENCE 

INS solution convergence flag.

DOPPLER_UPDATE 

Doppler update.

PSEUDORANGE_UPDATE 

Pseudorange update.

VELOCITY_UPDATE 

Velocity update.

DR_UPDATE 

Dead reckoning update.

PHASE_WINDUP_UPDATE 

Phase wind up update.

COURSE_OVER_GROUND_UPDATE 

Course over ground update.

EXTERNAL_VELOCITY_UPDATE 

External velocity update.

EXTERNAL_ATTITUDE_UPDATE 

External attitude update.

EXTERNAL_HEADING_UPDATE 

External heading update.

EXTERNAL_HEIGHT_UPDATE 

External height update.

SECONDARY_INS_USED 

Secondary INS solution.

TURN_ON_BIAS_ESTIMATED 

Turn on biases estimated.

ALIGNMENT_DIRECTION_VERIFIED 

Alignment direction verified.

ALIGNMENT_INDICATION_1 

Alignment indication 1.

ALIGNMENT_INDICATION_2 

Alignment indication 2.

ALIGNMENT_INDICATION_3 

Alignment indication 3.

NVM_SEED_INDICATION_1 

NVM seed indication 1.

NVM_SEED_INDICATION_2 

NVM seed indication 2.

NVM_SEED_INDICATION_3 

NVM seed indication 3.

Definition at line 494 of file novb.hpp.

Function Documentation

◆ NovbMsgId()

uint16_t fpsdk::common::parser::novb::NovbMsgId ( const uint8_t * msg)
constexpr

Get message ID.

Parameters
[in]msgPointer to the start of the message
Note
No check on the data provided is done. The caller must ensure that the data is a valid NOV_B message.
Returns
message ID

Definition at line 69 of file novb.hpp.

◆ NovbIsLongHeader()

bool fpsdk::common::parser::novb::NovbIsLongHeader ( const uint8_t * msg)
constexpr

Check if message has the long header.

Parameters
[in]msgPointer to the start of the message
Note
No check on the data provided is done. The caller must ensure that the data is a valid NOV_B message.
Returns
true if the message has the long header (NovbLongHeader)

Definition at line 83 of file novb.hpp.

References NOV_B_SYNC_3_LONG.

◆ NovbIsShortHeader()

bool fpsdk::common::parser::novb::NovbIsShortHeader ( const uint8_t * msg)
constexpr

Check if message has the short header.

Parameters
[in]msgPointer to the start of the message
Note
No check on the data provided is done. The caller must ensure that the data is a valid NOV_B message.
Returns
true if the message has the short header (NovbShortHeader)

Definition at line 97 of file novb.hpp.

References NOV_B_SYNC_3_SHORT.

◆ NovbGetMessageName()

bool fpsdk::common::parser::novb::NovbGetMessageName ( char * name,
const std::size_t size,
const uint8_t * msg,
const std::size_t msg_size )

Get NOV_B message name.

Generates a name (string) in the form "NOV_B-NAME", where NAME is a suitable stringifications of the message ID if known (for example, "NOV_B-BESTGNSSPOS", respectively "%05u" formatted message ID if unknown (for example, "NOV_B-MSG01234").

Parameters
[out]nameString to write the name to
[in]sizeSize of name (incl. nul termination)
[in]msgPointer to the NOV_B message
[in]msg_sizeSize of the msg
Note
No check on the data provided is done. The caller must ensure that the data is a valid NOV_B message.
Returns
true if message name was generated, false if name buffer was too small

◆ NovbGetMessageInfo()

bool fpsdk::common::parser::novb::NovbGetMessageInfo ( char * info,
const std::size_t size,
const uint8_t * msg,
const std::size_t msg_size )

Get NOV_B message info.

This stringifies the content of some NOV_B messages, for debugging.

Parameters
[out]infoString to write the info to
[in]sizeSize of name (incl. nul termination)
[in]msgPointer to the NOV_B message
[in]msg_sizeSize of the msg
Note
No check on the data provided is done. The caller must ensure that the data is a valid NOV_B message.
Returns
true if message info was generated (even if info is empty), false if name buffer was too small

◆ NovbMsgTypeSourceStr()

const char * fpsdk::common::parser::novb::NovbMsgTypeSourceStr ( const uint8_t message_type)

Stringify message type measurement source.

Parameters
[in]message_typeMessage type
Returns
a unique string for the message type measurement source

◆ NovbTimeStatusStr()

const char * fpsdk::common::parser::novb::NovbTimeStatusStr ( const NovbTimeStatus time_status)

Stringify time status.

Parameters
[in]time_statusThe time status
Returns
a unique string for the time status

Variable Documentation

◆ NOV_B_SYNC_1

uint8_t fpsdk::common::parser::novb::NOV_B_SYNC_1 = 0xaa
staticconstexpr

Sync char 1.

Definition at line 53 of file novb.hpp.

◆ NOV_B_SYNC_2

uint8_t fpsdk::common::parser::novb::NOV_B_SYNC_2 = 0x44
staticconstexpr

Sync char 2.

Definition at line 54 of file novb.hpp.

◆ NOV_B_SYNC_3_LONG

uint8_t fpsdk::common::parser::novb::NOV_B_SYNC_3_LONG = 0x12
staticconstexpr

Sync char 3 (long header)

Definition at line 55 of file novb.hpp.

Referenced by NovbIsLongHeader().

◆ NOV_B_SYNC_3_SHORT

uint8_t fpsdk::common::parser::novb::NOV_B_SYNC_3_SHORT = 0x13
staticconstexpr

Sync char 3 (short header)

Definition at line 56 of file novb.hpp.

Referenced by NovbIsShortHeader().

◆ NOV_B_HEAD_SIZE_LONG

std::size_t fpsdk::common::parser::novb::NOV_B_HEAD_SIZE_LONG = 28
staticconstexpr

Size of the NOV_B long header (NovbLongHeader)

Definition at line 57 of file novb.hpp.

◆ NOV_B_HEAD_SIZE_SHORT

std::size_t fpsdk::common::parser::novb::NOV_B_HEAD_SIZE_SHORT = 12
staticconstexpr

Size of the NOV_B short header (NovbShortHeader)

Definition at line 58 of file novb.hpp.

◆ NOV_B_BESTGNSSPOS_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_BESTGNSSPOS_MSGID = 1429
staticconstexpr

NOV_B-BESTGNSSPOS message ID.

Definition at line 143 of file novb.hpp.

◆ NOV_B_BESTGNSSPOS_STRID

const char* fpsdk::common::parser::novb::NOV_B_BESTGNSSPOS_STRID = "NOV_B-BESTGNSSPOS"
staticconstexpr

NOV_B-BESTGNSSPOS message name.

Definition at line 144 of file novb.hpp.

◆ NOV_B_BESTPOS_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_BESTPOS_MSGID = 42
staticconstexpr

NOV_B-BESTPOS message ID.

Definition at line 145 of file novb.hpp.

◆ NOV_B_BESTPOS_STRID

const char* fpsdk::common::parser::novb::NOV_B_BESTPOS_STRID = "NOV_B-BESTPOS"
staticconstexpr

NOV_B-BESTPOS message name.

Definition at line 146 of file novb.hpp.

◆ NOV_B_BESTUTM_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_BESTUTM_MSGID = 726
staticconstexpr

NOV_B-BESTUTM message ID.

Definition at line 147 of file novb.hpp.

◆ NOV_B_BESTUTM_STRID

const char* fpsdk::common::parser::novb::NOV_B_BESTUTM_STRID = "NOV_B-BESTUTM"
staticconstexpr

NOV_B-BESTUTM message name.

Definition at line 148 of file novb.hpp.

◆ NOV_B_BESTVEL_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_BESTVEL_MSGID = 99
staticconstexpr

NOV_B-BESTVEL message ID.

Definition at line 149 of file novb.hpp.

◆ NOV_B_BESTVEL_STRID

const char* fpsdk::common::parser::novb::NOV_B_BESTVEL_STRID = "NOV_B-BESTVEL"
staticconstexpr

NOV_B-BESTVEL message name.

Definition at line 150 of file novb.hpp.

◆ NOV_B_BESTXYZ_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_BESTXYZ_MSGID = 241
staticconstexpr

NOV_B-BESTXYZ message ID.

Definition at line 151 of file novb.hpp.

◆ NOV_B_BESTXYZ_STRID

const char* fpsdk::common::parser::novb::NOV_B_BESTXYZ_STRID = "NOV_B-BESTXYZ"
staticconstexpr

NOV_B-BESTXYZ message name.

Definition at line 152 of file novb.hpp.

◆ NOV_B_CORRIMUS_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_CORRIMUS_MSGID = 2264
staticconstexpr

NOV_B-CORRIMUS message ID.

Definition at line 153 of file novb.hpp.

◆ NOV_B_CORRIMUS_STRID

const char* fpsdk::common::parser::novb::NOV_B_CORRIMUS_STRID = "NOV_B-CORRIMUS"
staticconstexpr

NOV_B-CORRIMUS message name.

Definition at line 154 of file novb.hpp.

◆ NOV_B_HEADING2_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_HEADING2_MSGID = 1335
staticconstexpr

NOV_B-HEADING2 message ID.

Definition at line 155 of file novb.hpp.

◆ NOV_B_HEADING2_STRID

const char* fpsdk::common::parser::novb::NOV_B_HEADING2_STRID = "NOV_B-HEADING2"
staticconstexpr

NOV_B-HEADING2 message name.

Definition at line 156 of file novb.hpp.

◆ NOV_B_IMURATECORRIMUS_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_IMURATECORRIMUS_MSGID = 1362
staticconstexpr

NOV_B-IMURATECORRIMUS message ID.

Definition at line 157 of file novb.hpp.

◆ NOV_B_IMURATECORRIMUS_STRID

const char* fpsdk::common::parser::novb::NOV_B_IMURATECORRIMUS_STRID = "NOV_B-IMURATECORRIMUS"
staticconstexpr

NOV_B-IMURATECORRIMUS message name.

Definition at line 158 of file novb.hpp.

◆ NOV_B_INSCONFIG_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_INSCONFIG_MSGID = 1945
staticconstexpr

NOV_B-INSCONFIG message ID.

Definition at line 159 of file novb.hpp.

◆ NOV_B_INSCONFIG_STRID

const char* fpsdk::common::parser::novb::NOV_B_INSCONFIG_STRID = "NOV_B-INSCONFIG"
staticconstexpr

NOV_B-INSCONFIG message name.

Definition at line 160 of file novb.hpp.

◆ NOV_B_INSPVA_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_INSPVA_MSGID = 507
staticconstexpr

NOV_B-INSPVA message ID.

Definition at line 161 of file novb.hpp.

◆ NOV_B_INSPVA_STRID

const char* fpsdk::common::parser::novb::NOV_B_INSPVA_STRID = "NOV_B-INSPVA"
staticconstexpr

NOV_B-INSPVA message name.

Definition at line 162 of file novb.hpp.

◆ NOV_B_INSPVAS_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_INSPVAS_MSGID = 508
staticconstexpr

NOV_B-INSPVAS message ID.

Definition at line 163 of file novb.hpp.

◆ NOV_B_INSPVAS_STRID

const char* fpsdk::common::parser::novb::NOV_B_INSPVAS_STRID = "NOV_B-INSPVAS"
staticconstexpr

NOV_B-INSPVAS message name.

Definition at line 164 of file novb.hpp.

◆ NOV_B_INSPVAX_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_INSPVAX_MSGID = 1465
staticconstexpr

NOV_B-INSPVAX message ID.

Definition at line 165 of file novb.hpp.

◆ NOV_B_INSPVAX_STRID

const char* fpsdk::common::parser::novb::NOV_B_INSPVAX_STRID = "NOV_B-INSPVAX"
staticconstexpr

NOV_B-INSPVAX message name.

Definition at line 166 of file novb.hpp.

◆ NOV_B_INSSTDEV_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_INSSTDEV_MSGID = 2051
staticconstexpr

NOV_B-INSSTDEV message ID.

Definition at line 167 of file novb.hpp.

◆ NOV_B_INSSTDEV_STRID

const char* fpsdk::common::parser::novb::NOV_B_INSSTDEV_STRID = "NOV_B-INSSTDEV"
staticconstexpr

NOV_B-INSSTDEV message name.

Definition at line 168 of file novb.hpp.

◆ NOV_B_PSRDOP2_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_PSRDOP2_MSGID = 1163
staticconstexpr

NOV_B-PSRDOP2 message ID.

Definition at line 169 of file novb.hpp.

◆ NOV_B_PSRDOP2_STRID

const char* fpsdk::common::parser::novb::NOV_B_PSRDOP2_STRID = "NOV_B-PSRDOP2"
staticconstexpr

NOV_B-PSRDOP2 message name.

Definition at line 170 of file novb.hpp.

◆ NOV_B_RAWDMI_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_RAWDMI_MSGID = 2269
staticconstexpr

NOV_B-RAWDMI message ID.

Definition at line 171 of file novb.hpp.

◆ NOV_B_RAWDMI_STRID

const char* fpsdk::common::parser::novb::NOV_B_RAWDMI_STRID = "NOV_B-RAWDMI"
staticconstexpr

NOV_B-RAWDMI message name.

Definition at line 172 of file novb.hpp.

◆ NOV_B_RAWIMU_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_RAWIMU_MSGID = 268
staticconstexpr

NOV_B-RAWIMU message ID.

Definition at line 173 of file novb.hpp.

◆ NOV_B_RAWIMU_STRID

const char* fpsdk::common::parser::novb::NOV_B_RAWIMU_STRID = "NOV_B-RAWIMU"
staticconstexpr

NOV_B-RAWIMU message name.

Definition at line 174 of file novb.hpp.

◆ NOV_B_RAWIMUSX_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_RAWIMUSX_MSGID = 1462
staticconstexpr

NOV_B-RAWIMUSX message ID.

Definition at line 175 of file novb.hpp.

◆ NOV_B_RAWIMUSX_STRID

const char* fpsdk::common::parser::novb::NOV_B_RAWIMUSX_STRID = "NOV_B-RAWIMUSX"
staticconstexpr

NOV_B-RAWIMUSX message name.

Definition at line 176 of file novb.hpp.

◆ NOV_B_RXSTATUS_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_RXSTATUS_MSGID = 93
staticconstexpr

NOV_B-RXSTATUS message ID.

Definition at line 177 of file novb.hpp.

◆ NOV_B_RXSTATUS_STRID

const char* fpsdk::common::parser::novb::NOV_B_RXSTATUS_STRID = "NOV_B-RXSTATUS"
staticconstexpr

NOV_B-RXSTATUS message name.

Definition at line 178 of file novb.hpp.

◆ NOV_B_TIME_MSGID

uint16_t fpsdk::common::parser::novb::NOV_B_TIME_MSGID = 101
staticconstexpr

NOV_B-TIME message ID.

Definition at line 179 of file novb.hpp.

◆ NOV_B_TIME_STRID

const char* fpsdk::common::parser::novb::NOV_B_TIME_STRID = "NOV_B-TIME"
staticconstexpr

NOV_B-TIME message name.

Definition at line 180 of file novb.hpp.