25#ifndef __FPSDK_COMMON_PARSER_SBF_HPP__
26#define __FPSDK_COMMON_PARSER_SBF_HPP__
60 return (((uint16_t)((uint8_t*)msg)[5] << 8) | (uint16_t)((uint8_t*)msg)[4]) & 0x1fff;
74 return ((uint8_t*)msg)[5] >> 5;
88 return (((uint16_t)((uint8_t*)msg)[7] << 8) | (uint16_t)((uint8_t*)msg)[6]);
107bool SbfGetMessageName(
char* name,
const std::size_t size,
const uint8_t* msg,
const std::size_t msg_size);
123bool SbfGetMessageInfo(
char* info,
const std::size_t size,
const uint8_t* msg,
const std::size_t msg_size);
358# define SFB_PACKED __attribute__((packed))
399static constexpr bool SBF_MODEPVT_IS2D(
const uint8_t mode) {
return (mode & 0x80) == 0x80; }
487static constexpr uint8_t
SBF_MISC_MARKER(
const uint8_t flag) {
return (flag >> 6) & 0x03; }
Parser SBF routines and types.
static constexpr uint8_t SBF_MODEPVT_SOL(const uint8_t mode)
GNSS PVT mode.
static constexpr uint8_t SBF_ERRORPVT_DOP_TOO_LARGE
DOP too large (larger than 15)
static constexpr uint8_t SBF_ALERTFLAG_RAIM_FAILED
RAIM integrity test failed.
static constexpr const char * SBF_RXMESSAGE_STRID
SBF-RXMESSAGE message name.
static constexpr uint8_t SBF_PPPINFO_TYPEOFLASTSEED_RTKFIXED
Seeded from RTK fixed.
static constexpr const char * SBF_BDSRAWB2B_STRID
SBF-BDSRAWB2B message name.
static constexpr uint8_t SBF_ERRORPVT_AMBIGUITIES_UNFIXED
Ambiguities not fixed and user requested to only output RTK-fixed positions.
static constexpr uint16_t SBF_RECEIVERTIME_MSGID
SBF-RECEIVERTIME message ID.
static constexpr uint16_t SBF_GALGSTGPS_MSGID
SBF-GALGSTGPS message ID.
static constexpr uint8_t SBF_DATUM_JGD2011
JGD2011, Japanese Geodetic Datum 2011.
static constexpr uint8_t SBF_MODEPVT_SOL_RESERVED1
Reserved.
static constexpr uint16_t SBF_DOP_MSGID
SBF-DOP message ID.
static constexpr const char * SBF_BDSRAWB1C_STRID
SBF-BDSRAWB1C message name.
static constexpr uint8_t SBF_SYNC_1
Sync char 1 (like NMEA...)
static constexpr bool SBF_WACORRINFO_IONO_USED(const uint8_t info)
Set if ionospheric information is used.
static constexpr uint16_t SBF_RECEIVERSETUP_MSGID
SBF-RECEIVERSETUP message ID.
static constexpr bool SbfDoNotUse(const int8_t val)
Check if value is do-not-use.
static constexpr uint16_t SBF_BBSAMPLES_MSGID
SBF-BBSAMPLES message ID.
static constexpr const char * SBF_COMMANDS_STRID
SBF-COMMANDS message name.
static constexpr std::size_t SBF_MEASEPOCH_REV1_MIN_SIZE
Minimal size of MeasEpoch message.
static constexpr uint16_t SBF_GALRAWCNAV_MSGID
SBF-GALRAWCNAV message ID.
static constexpr uint16_t SBF_GPSRAWCA_MSGID
SBF-GPSRAWCA message ID.
static constexpr std::size_t SBF_PVTCARTESIAN_REV2_SIZE
Size of PVTCartesian rev 2 message.
static constexpr uint8_t SBF_ERRORATT_AUX2_NOT_ENOUGH_MEAS
Not enough measurements.
static constexpr uint8_t SBF_DATUM_USER1
First user-defined datum.
static constexpr uint8_t SBF_CHANNELSTATE_PVTSTA_SIG_REJECTED
Rejected.
static constexpr uint16_t SBF_CHANNELSTATUS_MSGID
SBF-CHANNELSTATUS message ID.
static constexpr std::size_t SBF_BBSAMPLES_REV0_MIN_SIZE
Minimal size of BBSamples message.
static constexpr const char * SBF_QUALITYIND_STRID
SBF-QUALITYIND message name.
static constexpr const char * SBF_QZSRAWL6E_STRID
SBF-QZSRAWL6E message name.
static constexpr const char * SBF_GPSUTC_STRID
SBF-GPSUTC message name.
static constexpr uint16_t SBF_GPSRAWL1C_MSGID
SBF-GPSRAWL1C message ID.
static constexpr uint16_t SBF_GPSUTC_MSGID
SBF-GPSUTC message ID.
static constexpr uint8_t SBF_ERRORATT_AUX1_RESERVED0
Reserved.
static constexpr const char * SBF_RECEIVERTIME_STRID
SBF-RECEIVERTIME message name.
static constexpr uint8_t SBF_CHANNELSTATE_TRKSTA_SIG_TRACKING
Tracking.
static constexpr uint16_t SBF_GALAUTHSTATUS_MSGID
SBF-GALAUTHSTATUS message ID.
static constexpr uint8_t SBF_ERRORPVT_NOT_ENOUGH_CORR
Not enough differential corrections available.
static constexpr bool SBF_MISC_BASELINEARP(const uint8_t flag)
Baseline points to base station ARP.
static constexpr uint16_t SBF_CHANNELSTATUS_SI_AZRS_AZIMUTH(const uint16_t azrs)
Azimuth [deg].
static constexpr uint16_t SBF_GPSION_MSGID
SBF-GPSION message ID.
static constexpr uint16_t SBF_EXTEVENTBASEVECTGEOD_MSGID
SBF-EXTEVENTBASEVECTGEOD message ID.
static constexpr uint16_t SBF_BASEVECTORCART_MSGID
SBF-BASEVECTORCART message ID.
static constexpr uint16_t SBF_QZSRAWL1CA_MSGID
SBF-QZSRAWL1CA message ID.
static constexpr uint8_t SBF_DATUM_NAD83
NAD83(2011), North American Datum (2011)
static constexpr const char * SBF_GALRAWFNAV_STRID
SBF-GALRAWFNAV message name.
static constexpr const char * SBF_GPSION_STRID
SBF-GPSION message name.
static constexpr uint16_t SBF_VELCOVCARTESIAN_MSGID
SBF-VELCOVCARTESIAN message ID.
static constexpr uint8_t SBF_MISC_MARKER_ARPZERO
ARP-to-marker offset is zero.
static constexpr uint8_t SBF_ERRORPVT_NO_CONVERGENCE
No convergence.
static constexpr const char * SBF_PVTSUPPORTA_STRID
SBF-PVTSUPPORTA message name.
static constexpr uint16_t SBF_ASCIIIN_MSGID
SBF-ASCIIIN message ID.
static constexpr uint16_t SBF_GLONAV_MSGID
SBF-GLONAV message ID.
static constexpr const char * SBF_RFSTATUS_STRID
SBF-RFSTATUS message name.
static constexpr uint8_t SBF_WACORRINFO_CORRTYPE_SSR
SSR corrections.
static constexpr int16_t SBF_DONOTUSE_INT16
Do-not-use value for int16_t.
static constexpr uint8_t SBF_ERRORPVT_RESIDUALS_TOO_LARGE
Sum of squared residuals too large.
static constexpr uint8_t SBF_DATUM_QDA2020
GDA2020, Geocentric Datum of Australia 2020.
static constexpr bool SBF_WACORRINFO_DO229_USED(const uint8_t info)
Set if DO229 Precision Approach mode is active.
static constexpr uint8_t SBF_MODEATT_NO_ATT
No attitude.
static constexpr uint8_t SBF_CHANNELSTATUS_SI_HEALTH_SIG_HEALTHY
Healthy.
static constexpr bool SBF_WACORRINFO_RANGECORR_USED(const uint8_t info)
Set if range correction information is used.
static constexpr uint8_t SBF_BBSAMPLES_INFO_ANTID_AUX1
Aux1 antenna.
static constexpr const char * SBF_SATVISIBILITY_STRID
SBF-SATVISIBILITY message name.
static constexpr uint8_t SBF_CHANNELSTATE_PVTSTA_SIG(const uint16_t status, const std::size_t sigIx)
Signal health.
static constexpr uint8_t SBF_DATUM_NAD83_MA11
NAD83(MA11), North American Datum, Marianas plate (2011)
static constexpr uint16_t SBF_BDSUTC_MSGID
SBF-BDSUTC message ID.
static constexpr const char * SBF_BASEVECTORCART_STRID
SBF-BASEVECTORCART message name.
static constexpr const char * SBF_POSCOVCARTESIAN_STRID
SBF-POSCOVCARTESIAN message name.
static constexpr uint8_t SBF_ERRORPVT_TOO_MANY_OUTLIERS
Not enough measurements after outlier rejection.
static constexpr const char * SBF_GALSARRLM_STRID
SBF-GALSARRLM message name.
static constexpr const char * SBF_BDSALM_STRID
SBF-BDSALM message name.
static constexpr const char * SBF_EXTEVENTATTEULER_STRID
SBF-EXTEVENTATTEULER message name.
static constexpr uint8_t SBF_ERRORPVT_NO_ERROR
No Error.
static constexpr uint16_t SBF_BDSNAV_MSGID
SBF-BDSNAV message ID.
static constexpr uint8_t SBF_PPPINFO_TYPEOFLASTSEED_NONE
Not seeded.
static constexpr uint8_t SBF_BBSAMPLES_INFO_ANTID(const uint8_t type)
Antenna ID.
static constexpr const char * SBF_LBANDTRACKERSTATUS_STRID
SBF-LBANDTRACKERSTATUS message name.
static constexpr uint16_t SBF_QZSRAWL1S_MSGID
SBF-QZSRAWL1S message ID.
static constexpr uint16_t SBF_GLOTIME_MSGID
SBF-GLOTIME message ID.
static constexpr std::size_t SBF_CHANNELSTATUS_REV0_MIN_SIZE
Minimal size of ChannelStatus message.
static constexpr const char * SBF_GALAUTHSTATUS_STRID
SBF-GALAUTHSTATUS message name.
static constexpr uint16_t SBF_PVTSUPPORTA_MSGID
SBF-PVTSUPPORTA message ID.
static constexpr const char * SBF_QZSRAWL1CA_STRID
SBF-QZSRAWL1CA message name.
static constexpr const char * SBF_QZSALM_STRID
SBF-QZSALM message name.
static constexpr uint16_t SBF_QZSRAWL5_MSGID
SBF-QZSRAWL5 message ID.
static constexpr uint8_t SBF_ERRORATT_AUX1_NOT_ENOUGH_MEAS
Not enough measurements.
static constexpr uint16_t SBF_PVTSUPPORT_MSGID
SBF-PVTSUPPORT message ID.
static constexpr bool SBF_ERRORATT_NO_ATT(const uint8_t mode)
GNSS-based attitude not requested by user.
static constexpr uint8_t SBF_ERRORPVT_NOT_ENOUGH_MEAS
Not enough measurements.
static constexpr const char * SBF_GPSNAV_STRID
SBF-GPSNAV message name.
static constexpr const char * SBF_GALRAWCNAV_STRID
SBF-GALRAWCNAV message name.
static constexpr uint8_t SBF_MODEATT_HDG_PITCH_FIXED
Heading and pitch from fixed ambiguities.
static constexpr bool SBF_ALERTFLAG_GALHPCAFAIL(const uint8_t flag)
Galileo GPCA failed.
bool SbfGetMessageInfo(char *info, const std::size_t size, const uint8_t *msg, const std::size_t msg_size)
Get SBF message info.
static constexpr const char * SBF_QZSRAWL2C_STRID
SBF-QZSRAWL2C message name.
static constexpr uint16_t SBF_GALRAWFNAV_MSGID
SBF-GALRAWFNAV message ID.
static constexpr uint16_t SBF_GPSRAWL2C_MSGID
SBF-GPSRAWL2C message ID.
static constexpr uint16_t SBF_DONOTUSE_UINT16
Do-not-use value for uint16_t.
static constexpr uint16_t SBF_VELCOVGEODETIC_MSGID
SBF-VELCOVGEODETIC message ID.
static constexpr uint16_t SBF_LBANDRAW_MSGID
SBF-LBANDRAW message ID.
static constexpr uint8_t SBF_MEASEPOCH_CHANNEL_TYPE_ANTID_AUX2
Aux2 antenna.
static constexpr uint16_t SBF_NAVCART_MSGID
SBF-NAVCART message ID.
static constexpr uint16_t SBF_XPPSOFFSET_MSGID
SBF-XPPSOFFSET message ID.
static constexpr const char * SBF_QZSRAWL6D_STRID
SBF-QZSRAWL6D message name.
static constexpr uint8_t SBF_WACORRINFO_CORRTYPE_CORS
Corrections from a physical base.
static constexpr uint8_t SBF_DATUM_WGS84_ITRS
WGS84/ITRS.
static constexpr const char * SBF_BDSCNAV3_STRID
SBF-BDSCNAV3 message name.
static constexpr uint16_t SBF_RFSTATUS_MSGID
SBF-RFSTATUS message ID.
static constexpr uint16_t SBF_GALION_MSGID
SBF-GALION message ID.
static constexpr uint16_t SBF_GPSRAWL5_MSGID
SBF-GPSRAWL5 message ID.
static constexpr const char * SBF_INPUTLINK_STRID
SBF-INPUTLINK message name.
static constexpr uint16_t SBF_POSCOVGEODETIC_MSGID
SBF-POSCOVGEODETIC message ID.
static constexpr uint8_t SBF_ERRORPVT_NO_BASE_COORD
Base station coordinates unavailable.
static constexpr std::size_t SBF_ENDOFANY_REV0_SIZE
Size of EndOfPvt/EndOfAtt/EndOfMeas message.
static constexpr const char * SBF_GLONAV_STRID
SBF-GLONAV message name.
static constexpr uint8_t SBF_ERRORPVT_POS_OUTPUT_PROHIB
Position output prohibited due to export laws.
static constexpr uint16_t SBF_QZSALM_MSGID
SBF-QZSALM message ID.
static constexpr uint16_t SBF_EXTEVENTPVTGEODETIC_MSGID
SBF-EXTEVENTPVTGEODETIC message ID.
static constexpr const char * SBF_NAVICRAW_STRID
SBF-NAVICRAW message name.
static constexpr uint8_t SBF_MISC_MARKER_ARPNONZERO
ARP-to-marker offset is not zero.
static constexpr uint16_t SBF_ATTCOVEULER_MSGID
SBF-ATTCOVEULER message ID.
static constexpr uint16_t SBF_MEASEPOCH_MSGID
SBF-MEASEPOCH message ID.
static constexpr uint8_t SBF_DATUM_QDA94
GDA94(2010), Geocentric Datum of Australia (2010)
static constexpr uint8_t SBF_SYNC_2
Sync char 2.
static constexpr uint16_t SBF_BDSION_MSGID
SBF-BDSION message ID.
static constexpr const char * SBF_EXTEVENTPVTCARTESIAN_STRID
SBF-EXTEVENTPVTCARTESIAN message name.
static constexpr const char * SBF_GPSRAWCA_STRID
SBF-GPSRAWCA message name.
static constexpr uint8_t SBF_ERRORATT_AUX1_NO_ERROR
No error.
static constexpr const char * SBF_GALGSTGPS_STRID
SBF-GALGSTGPS message name.
static constexpr uint16_t SBF_DISKSTATUS_MSGID
SBF-DISKSTATUS message ID.
static constexpr const char * SBF_BDSION_STRID
SBF-BDSION message name.
static constexpr uint16_t SBF_QZSRAWL6D_MSGID
SBF-QZSRAWL6D message ID.
static constexpr const char * SBF_BASESTATION_STRID
SBF-BASESTATION message name.
static constexpr uint8_t SBF_CHANNELSTATUS_SI_HEALTH_SIG_UNHEALTHY
Unhealthy.
static constexpr uint8_t SBF_MEASEPOCH_CHANNEL_TYPE_ANTID(const uint8_t type)
Antenna ID.
static constexpr uint8_t SBF_ERRORATT_AUX2_RESERVED0
Reserved.
static constexpr uint16_t SBF_OUTPUTLINK_MSGID
SBF-OUTPUTLINK message ID.
static constexpr uint8_t SBF_MODEPVT_SOL_STANDALONE_PVT
Stand-Alone PVT.
static constexpr uint8_t SBF_ERRORATT_AUX1(const uint8_t mode)
Error code for Main-Aux1 baseline.
static constexpr uint16_t SBF_GALNAV_MSGID
SBF-GALNAV message ID.
static constexpr uint8_t SBF_MODEPVT_SOL_RTK_FLOAT
RTK with float ambiguities.
static constexpr uint16_t SBF_QZSRAWL6E_MSGID
SBF-QZSRAWL6E message ID.
static constexpr uint16_t SBF_GLOALM_MSGID
SBF-GLOALM message ID.
static constexpr uint8_t SBF_CHANNELSTATE_TRKSTA_SIG(const uint16_t status, const std::size_t sigIx)
Signal health.
static constexpr uint32_t SBF_DONOTUSE_UINT32
Do-not-use value for uint32_t.
static constexpr uint16_t SBF_NAVICLNAV_MSGID
SBF-NAVICLNAV message ID.
static constexpr uint16_t SBF_GPSCNAV_MSGID
SBF-GPSCNAV message ID.
static constexpr uint8_t SBF_CHANNELSTATUS_SI_AZRS_RISESET_RISING
SV is rising.
static constexpr const char * SBF_GALALM_STRID
SBF-GALALM message name.
static constexpr uint8_t SBF_MODEPVT_SOL_DIFFERENTIAL_PVT
Differential PVT.
static constexpr const char * SBF_COMMENT_STRID
SBF-COMMENT message name.
bool SbfGetMessageName(char *name, const std::size_t size, const uint8_t *msg, const std::size_t msg_size)
Get SBF message name.
static constexpr uint8_t SBF_ERRORPVT_NOT_ENOUGH_EPH
Not enough ephemerides available.
static constexpr const char * SBF_QZSNAV_STRID
SBF-QZSNAV message name.
static constexpr uint8_t SBF_MODEPVT_SOL_MOVINGBASE_RTK_FLOAT
moving-base RTK with float ambiguities
static constexpr uint8_t SBF_ERRORATT_AUX1_RESERVED1
Reserved.
static constexpr const char * SBF_BDSRAW_STRID
SBF-BDSRAW message name.
static constexpr uint16_t SBF_QZSRAWL5S_MSGID
SBF-QZSRAWL5S message ID.
static constexpr uint16_t SBF_COMMANDS_MSGID
SBF-COMMANDS message ID.
static constexpr uint16_t SBF_NAVICRAW_MSGID
SBF-NAVICRAW message ID.
static constexpr uint8_t SBF_CHANNELSTATUS_SI_AZRS_RISESET_SETTING
SV is setting.
static constexpr uint8_t SBF_ERRORATT_AUX2_RESERVED1
Reserved.
static constexpr uint16_t SBF_BDSRAWB1C_MSGID
SBF-BDSRAWB1C message ID.
static constexpr uint16_t SBF_PVTCARTESIAN_MSGID
SBF-PVTCARTESIAN message ID.
static constexpr uint16_t SBF_POSCOVCARTESIAN_MSGID
SBF-POSCOVCARTESIAN message ID.
static constexpr uint8_t SBF_CHANNELSTATUS_SI_HEALTH_SIG(const uint16_t health, const std::size_t sigIx)
Signal health.
static constexpr uint8_t SBF_PPPINFO_TYPEOFLASTSEED_MANUAL
Manual seed.
constexpr uint16_t SbfBlockType(const uint8_t *msg)
Get block type (message ID w/o revision)
static constexpr bool SBF_MODEPVT_IS2D(const uint8_t mode)
true = 2D mode, false = 3D mode
static constexpr int8_t SBF_DONOTUSE_UINT8
Do-not-use value for uint8_t.
static constexpr uint8_t SBF_ALERTFLAG_RAIM_SUCESSFUL
RAIM integrity test successful.
static constexpr const char * SBF_GALION_STRID
SBF-GALION message name.
static constexpr const char * SBF_QZSRAWL1S_STRID
SBF-QZSRAWL1S message name.
static constexpr const char * SBF_RECEIVERSTATUS_STRID
SBF-RECEIVERSTATUS message name.
static constexpr uint8_t SBF_DATUM_DGNSS_BASE
Datum equal to that used by the DGNSS/RTK base station.
static constexpr uint16_t SBF_SATVISIBILITY_MSGID
SBF-SATVISIBILITY message ID.
static constexpr const char * SBF_VELCOVGEODETIC_STRID
SBF-VELCOVGEODETIC message name.
static constexpr uint8_t SBF_ERRORATT_AUX2_NO_ERROR
No error.
static constexpr uint8_t SBF_PPPINFO_TYPEOFLASTSEED_DGNSS
Seeded from DGNSS.
static constexpr const char * SBF_PVTGEODETIC_STRID
SBF-PVTGEODETIC message name.
const char * SbfGetTypeDesc(const uint16_t type)
Get description for a SBF message.
static constexpr uint8_t SBF_MODEPVT_SOL_SBAS_AIDED_PVT
SBAS aided PVT.
static constexpr float SBF_DONOTUSE_FLOAT
Do-not-use value for float.
static constexpr uint16_t SBF_GEOALM_MSGID
SBF-GEOALM message ID.
static constexpr const char * SBF_BBSAMPLES_STRID
SBF-BBSAMPLES message name.
static constexpr uint8_t SBF_MEASEPOCH_CHANNEL_OBSINFO_SIGIDXHI(const uint8_t info)
Signal number (part 2)
static constexpr uint8_t SBF_CHANNELSTATE_PVTSTA_SIG_USED
Used.
static constexpr const char * SBF_GALUTC_STRID
SBF-GALUTC message name.
static constexpr uint8_t SBF_WACORRINFO_CORRTYPE_UNKNOWN
Unknown or not in differential positioning mode.
static constexpr uint16_t SBF_BDSRAWB2B_MSGID
SBF-BDSRAWB2B message ID.
static constexpr uint8_t SBF_CHANNELSTATE_PVTSTA_SIG_UNUSED
Not used.
static constexpr uint8_t SBF_TIMESYSTEM_GLO
GLONASS time.
static constexpr const char * SBF_GPSRAWL5_STRID
SBF-GPSRAWL5 message name.
static constexpr uint8_t SBF_MODEATT_HDG_PITCH_ROLL_FIXED
Heading, pitch and roll from fixed ambiguities.
static constexpr const char * SBF_BASEVECTORGEOD_STRID
SBF-BASEVECTORGEOD message name.
static constexpr uint16_t SBF_ENDOFPVT_MSGID
SBF-ENDOFPVT message ID.
static constexpr uint16_t SBF_PVTGEODETIC_MSGID
SBF-PVTGEODETIC message ID.
static constexpr const char * SBF_AUXANTPOSITIONS_STRID
SBF-AUXANTPOSITIONS message name.
static constexpr const char * SBF_GEORAWL5_STRID
SBF-GEORAWL5 message name.
static constexpr const char * SBF_DIFFCORRIN_STRID
SBF-DIFFCORRIN message name.
static constexpr bool SBF_ALERTFLAG_GALIONOSTORM(const uint8_t flag)
Galileo ionospheric storm flag.
static constexpr const char * SBF_BDSUTC_STRID
SBF-BDSUTC message name.
static constexpr uint8_t SBF_MODEPVT_SOL_RESERVED0
Reserved.
static constexpr uint16_t SBF_GEONAV_MSGID
SBF-GEONAV message ID.
static constexpr uint8_t SBF_DATUM_NAD83_PA11
NAD83(PA11), North American Datum, Pacific plate (2011)
static constexpr bool SBF_MISC_ROVERBASEOFFS(const uint8_t flag)
Rover phase center offset compensated.
static constexpr uint16_t SBF_GALSARRLM_MSGID
SBF-GALSARRLM message ID.
static constexpr uint16_t SBF_QZSRAWL1C_MSGID
SBF-QZSRAWL1C message ID.
static constexpr const char * SBF_NAVCART_STRID
SBF-NAVCART message name.
static constexpr uint16_t SBF_GPSALM_MSGID
SBF-GPSALM message ID.
static constexpr uint16_t SBF_BDSRAW_MSGID
SBF-BDSRAW message ID.
static constexpr const char * SBF_GPSALM_STRID
SBF-GPSALM message name.
constexpr uint16_t SbfMsgSize(const uint8_t *msg)
Get message size.
static constexpr uint16_t SBF_BASEVECTORGEOD_MSGID
SBF-BASEVECTORGEOD message ID.
static constexpr const char * SBF_PVTCARTESIAN_STRID
SBF-PVTCARTESIAN message name.
static constexpr uint8_t SBF_MISC_MARKER_UNKNOWN
Unknown.
static constexpr uint16_t SBF_BDSRAWB2A_MSGID
SBF-BDSRAWB2A message ID.
static constexpr uint8_t SBF_TIMESYSTEM_FUGRO
Fugro AtomiChron time.
static constexpr uint8_t SBF_MODEPVT_SOL_PPP
Precise point positioning (PPP)
static constexpr const char * SBF_BDSNAV_STRID
SBF-BDSNAV message name.
static constexpr const char * SBF_EXTEVENTPVTGEODETIC_STRID
SBF-EXTEVENTPVTGEODETIC message name.
static constexpr uint8_t SBF_MISC_MARKER(const uint8_t flag)
Marker position.
static constexpr uint16_t SBF_BDSCNAV3_MSGID
SBF-BDSCNAV3 message ID.
static constexpr const char * SBF_QZSRAWL5_STRID
SBF-QZSRAWL5 message name.
static constexpr uint8_t SBF_MODEPVT_SOL_FIXED_LOCATION
Fixed location.
static constexpr const char * SBF_GEORAWL1_STRID
SBF-GEORAWL1 message name.
static constexpr const char * SBF_CHANNELSTATUS_STRID
SBF-CHANNELSTATUS message name.
static constexpr uint16_t SBF_ENDOFMEAS_MSGID
SBF-ENDOFMEAS message ID.
static constexpr const char * SBF_ENDOFPVT_STRID
SBF-ENDOFPVT message name.
static constexpr uint16_t SBF_GALRAWINAV_MSGID
SBF-GALRAWINAV message ID.
static constexpr uint8_t SBF_MEASEPOCH_CHANNEL_TYPE_SIGIDXLO(const uint8_t type)
Signal number (part 1)
static constexpr uint8_t SBF_DATUM_ETRS89
ETRS89 (ETRF2000 realization)
static constexpr const char * SBF_EXTEVENTBASEVECTGEOD_STRID
SBF-EXTEVENTBASEVECTGEOD message name.
static constexpr uint16_t SBF_BDSCNAV1_MSGID
SBF-BDSCNAV1 message ID.
static constexpr const char * SBF_QZSRAWL5S_STRID
SBF-QZSRAWL5S message name.
static constexpr uint16_t SBF_GALUTC_MSGID
SBF-GALUTC message ID.
static constexpr uint8_t SBF_MEASEPOCH_CHANNEL_TYPE_ANTID_MAIN
Main antenna.
static constexpr uint8_t SBF_MODEATT_HDG_PITCH_FLOAT
Heading and pitch from float ambiguities.
static constexpr uint8_t SBF_CHANNELSTATE_TRKSTA_SIG_SYNC
Sync.
static constexpr uint8_t SBF_TIMESYSTEM_GAL
Galileo time.
static constexpr uint8_t SBF_TIMESYSTEM_BDS
BeiDou time.
static constexpr uint8_t SBF_CHANNELSTATUS_SI_AZRS_RISESET_UNKNOWN
Elevation rate unknown.
static constexpr uint16_t SBF_DIFFCORRIN_MSGID
SBF-DIFFCORRIN message ID.
static constexpr uint8_t SBF_ALERTFLAG_RAIM_NOTACTIVE
RAIM not active.
static constexpr const char * SBF_GLOALM_STRID
SBF-GLOALM message name.
static constexpr uint16_t SBF_ENDOFATT_MSGID
SBF-ENDOFATT message ID.
static constexpr uint16_t SBF_PPPINFO_AGEOFLASTSEED(const uint16_t flag)
Age of last seed [s].
static constexpr const char * SBF_GEONAV_STRID
SBF-GEONAV message name.
static constexpr uint8_t SBF_CHANNELSTATE_PVTSTA_SIG_NOEPH
No ephemeris.
static constexpr uint16_t SBF_BASESTATION_MSGID
SBF-BASESTATION message ID.
static constexpr uint16_t SBF_MEASEXTRA_MSGID
SBF-MEASEXTRA message ID.
static constexpr const char * SBF_GPSRAWL1C_STRID
SBF-GPSRAWL1C message name.
static constexpr const char * SBF_QZSRAWL1C_STRID
SBF-QZSRAWL1C message name.
static constexpr const char * SBF_RECEIVERSETUP_STRID
SBF-RECEIVERSETUP message name.
static constexpr const char * SBF_MEASEXTRA_STRID
SBF-MEASEXTRA message name.
static constexpr uint8_t SBF_CHANNELSTATE_TRKSTA_SIG_SEARCH
Search.
static constexpr uint16_t SBF_EXTEVENTATTEULER_MSGID
SBF-EXTEVENTATTEULER message ID.
static constexpr const char * SBF_NAVICLNAV_STRID
SBF-NAVICLNAV message name.
static constexpr int32_t SBF_DONOTUSE_INT32
Do-not-use value for int32_t.
static constexpr const char * SBF_GALNAV_STRID
SBF-GALNAV message name.
static constexpr const char * SBF_OUTPUTLINK_STRID
SBF-OUTPUTLINK message name.
static constexpr uint8_t SBF_CHANNELSTATE_TRKSTA_SIG_IDLE
Idle.
static constexpr const char * SBF_GALRAWINAV_STRID
SBF-GALRAWINAV message name.
static constexpr const char * SBF_POSCOVGEODETIC_STRID
SBF-POSCOVGEODETIC message name.
static constexpr uint8_t SBF_BBSAMPLES_INFO_ANTID_AUX2
Aux2 antenna.
static constexpr const char * SBF_GPSRAWL2C_STRID
SBF-GPSRAWL2C message name.
static constexpr uint8_t SBF_MODEPVT_SOL_NO_GNSS_PVT
No GNSS PVT available (the Error field indicates the cause of the absence of the PVT solution)
static constexpr uint16_t SBF_GEORAWL5_MSGID
SBF-GEORAWL5 message ID.
static constexpr std::size_t SBF_HEAD_SIZE
Size of the SBF header (SbfHeader)
static constexpr uint8_t SBF_WACORRINFO_CORRTYPE(const uint8_t info)
Which corrections have been applied.
static constexpr uint8_t SBF_CHANNELSTATUS_SI_AZRS_RISESET(const uint16_t azrs)
Rise/set indicator.
static constexpr const char * SBF_ENDOFMEAS_STRID
SBF-ENDOFMEAS message name.
static constexpr double SBF_DONOTUSE_DOUBLE
Do-not-use value for double.
static constexpr const char * SBF_ATTCOVEULER_STRID
SBF-ATTCOVEULER message name.
static constexpr uint16_t SBF_GEORAWL1_MSGID
SBF-GEORAWL1 message ID.
static constexpr const char * SBF_ENDOFATT_STRID
SBF-ENDOFATT message name.
static constexpr uint16_t SBF_QZSRAWL2C_MSGID
SBF-QZSRAWL2C message ID.
static constexpr const char * SBF_ATTEULER_STRID
SBF-ATTEULER message name.
static constexpr uint8_t SBF_TIMESYSTEM_GPS
GPS time.
static constexpr uint16_t SBF_COMMENT_MSGID
SBF-COMMENT message ID.
static constexpr bool SBF_WACORRINFO_ORBCLK_USED(const uint8_t info)
Set if orbit and satellite clock correction information is used.
static constexpr std::size_t SBF_NAVCART_REV0_SIZE
Size of NavCart rev 0 message.
static constexpr const char * SBF_GEOALM_STRID
SBF-GEOALM message name.
static constexpr uint16_t SBF_ATTEULER_MSGID
SBF-ATTEULER message ID.
static constexpr const char * SBF_BDSRAWB2A_STRID
SBF-BDSRAWB2A message name.
static constexpr uint16_t SBF_LBANDTRACKERSTATUS_MSGID
SBF-LBANDTRACKERSTATUS message ID.
static constexpr uint16_t SBF_BDSALM_MSGID
SBF-BDSALM message ID.
static constexpr uint16_t SBF_RECEIVERSTATUS_MSGID
SBF-RECEIVERSTATUS message ID.
static constexpr int8_t SBF_DONOTUSE_INT8
Do-not-use value for int8_t.
static constexpr uint8_t SBF_WACORRINFO_CORRTYPE_VRS
Corrections from a virtual base (VRS)
static constexpr uint16_t SBF_QZSNAV_MSGID
SBF-QZSNAV message ID.
static constexpr uint16_t SBF_EXTEVENTPVTCARTESIAN_MSGID
SBF-EXTEVENTPVTCARTESIAN message ID.
static constexpr const char * SBF_GPSCNAV_STRID
SBF-GPSCNAV message name.
static constexpr const char * SBF_DOP_STRID
SBF-DOP message name.
static constexpr uint16_t SBF_EXTEVENT_MSGID
SBF-EXTEVENT message ID.
static constexpr uint8_t SBF_PPPINFO_TYPEOFLASTSEED(const uint16_t flag)
Type of last seed.
static constexpr std::size_t SBF_PVTGEODETIC_REV2_SIZE
Size of PVTGeodetic rev 2 message.
static constexpr const char * SBF_PVTSUPPORT_STRID
SBF-PVTSUPPORT message name.
static constexpr const char * SBF_EXTEVENT_STRID
SBF-EXTEVENT message name.
static constexpr uint16_t SBF_QUALITYIND_MSGID
SBF-QUALITYIND message ID.
static constexpr const char * SBF_DISKSTATUS_STRID
SBF-DISKSTATUS message name.
static constexpr const char * SBF_MEASEPOCH_STRID
SBF-MEASEPOCH message name.
static constexpr const char * SBF_XPPSOFFSET_STRID
SBF-XPPSOFFSET message name.
static constexpr const char * SBF_GLOTIME_STRID
SBF-GLOTIME message name.
static constexpr uint16_t SBF_GLORAWCA_MSGID
SBF-GLORAWCA message ID.
static constexpr uint16_t SBF_AUXANTPOSITIONS_MSGID
SBF-AUXANTPOSITIONS message ID.
static constexpr bool SBF_WACORRINFO_ORBACC_USED(const uint8_t info)
Set if orbit accuracy information is used (UERE/SISA)
static constexpr const char * SBF_LBANDRAW_STRID
SBF-LBANDRAW message name.
static constexpr uint8_t SBF_MODEPVT_SOL_MOVINGBASE_RTK_FIXED
moving-base RTK with fixed ambiguities
static constexpr uint8_t SBF_MODEPVT_SOL_RTK_FIXED
RTK with fixed ambiguities.
static constexpr uint16_t SBF_BDSCNAV2_MSGID
SBF-BDSCNAV2 message ID.
static constexpr const char * SBF_GLORAWCA_STRID
SBF-GLORAWCA message name.
static constexpr uint16_t SBF_RXMESSAGE_MSGID
SBF-RXMESSAGE message ID.
static constexpr uint8_t SBF_TIMESYSTEM_QZSS
QZSS time.
static constexpr uint8_t SBF_CHANNELSTATUS_SI_HEALTH_SIG_UNKNOWN
Health unknown.
constexpr uint8_t SbfBlockRev(const uint8_t *msg)
Get block revision.
static constexpr const char * SBF_BDSCNAV2_STRID
SBF-BDSCNAV2 message name.
static constexpr const char * SBF_VELCOVCARTESIAN_STRID
SBF-VELCOVCARTESIAN message name.
static constexpr uint16_t SBF_INPUTLINK_MSGID
SBF-INPUTLINK message ID.
static constexpr uint8_t SBF_MODEATT_HDG_PITCH_ROLL_FLOAT
Heading, pitch and roll from float ambiguities.
static constexpr uint8_t SBF_ERRORATT_AUX2(const uint8_t mode)
Error code for Main-Aux2 baseline.
static constexpr uint8_t SBF_MEASEPOCH_CHANNEL_TYPE_ANTID_AUX1
Aux1 antenna.
static constexpr const char * SBF_BDSCNAV1_STRID
SBF-BDSCNAV1 message name.
static constexpr uint8_t SBF_ALERTFLAG_RAIM(const uint8_t flag)
RAIM integrity flag.
static constexpr const char * SBF_ASCIIIN_STRID
SBF-ASCIIIN message name.
static constexpr uint16_t SBF_GPSNAV_MSGID
SBF-GPSNAV message ID.
static constexpr uint8_t SBF_DATUM_USER2
Second user-defined datum.
static constexpr uint8_t SBF_BBSAMPLES_INFO_ANTID_MAIN
Main antenna.
static constexpr uint16_t SBF_GALALM_MSGID
SBF-GALALM message ID.
Fixposition SDK: Common library.
#define SFB_PACKED
Message struct that must be packed.
SBF ChannelSatInfo payload (rev 0)
uint8_t Reserved
Reserved.
uint8_t N2
Number of ChannelStateInfo blocks following this ChannelSatInfo block.
uint8_t SVID
Satellite ID.
uint8_t RxChannel
Channel number.
uint16_t HealthStatus
-> SBF_CHANNELSTATUS_SI_HEALTH_...
uint8_t FreqNr
GLONASS frequency number.
uint16_t AzimuthRiseSet
-> SBF_CHANNELSTATUS_SI_AZRS_...
int8_t Elevation
Elevation [deg].
uint16_t SVIDFull
If the SVID field is zero, this field contains the satellite ID.
SBF ChannelStateInfo payload (rev 0)
uint16_t PVTStatus
-> SBF_CHANNELSTATE_PVTSTA_...
uint16_t TrackingStatus
-> SBF_CHANNELSTATE_TRKSTA_...
uint16_t PVTInfo
Internal info.
uint8_t Antenna
Anntena number (0 = main antenna)
uint8_t Reserved
Reserved.
SBF ChannelStatus payload (rev 0)
uint8_t N
Number of ChannelSatInfo sub-blocks.
uint8_t SB2Length
Length of a ChannelStateInfo sub-block.
uint8_t SB1Length
Length of a ChannelSatInfo sub-block, excluding the nested ChannelStatusChannelType2 sub-blocks.
uint32_t TOW
GPS time of week [ms].
uint8_t Reserved[3]
Reserved.
uint16_t WNc
GPS week number.
SBF MeasEpochChannelType1Rev0 (rev 0) sub-block.
uint8_t N2
Number of MeasEpochChannelType2 sub-blocks contained in this MeasEpochChannelType1 sub-block.
uint8_t Type
-> MEASEPOCH_CHANNEL_TYPE_...
uint8_t ObsInfo
-> MEASEPOCH_CHANNEL_OBSINFO_...
uint16_t LockTime
Lock time [s].
uint8_t CN0
C/N0 [0.25dBHz].
uint8_t RxChannel
Receiver channel.
uint8_t SVID
Satellite ID.
SBF MeasEpochChannelType2Rev0 sub-block.
uint8_t LockTime
Lock time [s].
uint8_t ObsInfo
-> SBF_MEASEPOCH_CHANNEL_OBSINFO_...
uint8_t Type
-> SBF_MEASEPOCH_CHANNEL_TYPE_...
uint16_t DopplerOffsetLSB
uint8_t CN0
C/N0 [0.25dBHz].
SBF MeasEpoch payload (rev 1)
uint8_t Reserved
Reserved.
uint8_t CommonFlags
Bit field containing flags common to all measurements.
uint8_t SB2Length
Length of a MeasEpochChannelType2 sub-block.
uint32_t TOW
GPS time of week [ms].
uint8_t CumClkJumps
Cumulative millisecond clock jumps since start-up.
uint8_t N1
Number of MeasEpochChannelType1Rev0 sub-blocks in this MeasEpoch block.
uint16_t WNc
GPS week number.
uint8_t SB1Length
Length of a MeasEpochChannelType1 sub-block, excluding the nested MeasEpochChannelType2Rev0 sub-block...
SBF BBSamples payload head (rev 0)
uint16_t N
Number of samples.
uint32_t SampleFreq
Sampling frequency [Hz] FIXME: looks like this is the span (bandwidth)
uint8_t reserved[3]
Reserved.
uint32_t LOFreq
Local oscillator frequency [Hz] FIXME: looks like this is the centre frequency.
uint8_t info
-> SBF_BBSAMPLES_INFO_...
uint32_t TOW
GPS time of week [ms].
uint16_t WNc
GPS week number.
SBF BBSamples payload sample (rev 0)
SBF BBSamples payload tail (rev 0)
float TOWDelta
Time offset [s].
SBF EndOfPvt/EndOfAtt/EndOfMeas payload (rev 0)
uint8_t padding[2]
Padding.
uint16_t WNc
GPS week number.
uint32_t TOW
GPS time of week [ms].
SBF NavCart payload (rev 0)
int8_t UTCMonth
UTC hours.
uint8_t TimeSystem
-> SBF_TIMESYSTEM_...
uint8_t NrSV
Number of satellites used.
float COG
Course over ground [deg].
uint16_t PDOP
PDOP [0.01].
uint16_t Latency
Latency [0.0001s].
float Vy
Velocity Y [m/s].
uint16_t HeadingAcc
2-sigma heading accuracy estimate [0.001deg]
double X
X coordinate in coordinate frame specified by Datum [m].
uint8_t NrSVAtt
Number of satellites used for attitude.
uint8_t Error
-> SBF_PVTERROR_
uint8_t NrBases
Number of basestations used.
uint16_t WNc
GPS week number.
uint16_t VelVacc
2-sigma vertical velocity accuracy estimate [0.01m]
uint16_t PosVAcc
2-sigma vertical position accuracy estimate [0.01m]
uint16_t MeanCorrAge
Mean age of corrections [0.01s].
uint32_t TOW
GPS time of week [ms].
uint8_t Reserved
Reserved.
float Vz
Velocity Z [m/s].
uint16_t ModeAtt
-> SBF_MODEATT_...
uint16_t PPPInfo
-> SBF_PPPINFO_...
uint8_t AlertFlag
-> SBF_ALERTFLAG_...
float RxClkDrift
Receiver clock drift [ppm].
double Z
Z coordinate in coordinate frame specified by Datum [m].
uint16_t PitchAcc
2-sigma pitch accuracy estimate [0.001deg]
uint64_t SignalInfo
Used signals (bitmask)
int16_t UTCmsec
UTC seconds [0.001s].
float Undulation
Geoid undilation [m].
uint16_t PosHAcc
2DRMS horizontal position accuracy estimate [0.01m]
uint8_t Misc
-> SBF_MISC_...
float Heading
Heading [deg].
int8_t UTCMin
UTC minutes.
uint8_t Mode
-> SBF_PVTMODE_...
uint8_t Padding[1]
Padding.
double RxClkBias
Receiver clock bias [ms].
uint8_t WACorrInfo
Applied corrections (bitfield)
uint16_t ReferenceID
Reference station ID.
uint16_t RollAcc
2-sigma roll accuracy estimate [0.001deg]
uint8_t ErrorAtt
-> SBF_ERRORATT_...
uint16_t VelHAcc
2DRMS horizontal velocity accuracy estimate [0.01m]
uint8_t Datum
-> SBF_DATUM_...
float Vx
Velocity X [m/s].
double Y
Y coordinate in coordinate frame specified by Datum [m].
SBF PVTCartesian payload (rev 2)
uint8_t WACorrInfo
Applied corrections (bitfield)
uint8_t NrBases
Number of basestations used.
float Vx
Velocity X [m/s].
uint32_t TOW
GPS time of week [ms].
uint8_t Misc
-> SBF_MISC_...
uint16_t PPPInfo
-> SBF_PPPINFO_...
uint32_t SignalInfo
Used signals (bitmask)
float RxClkDrift
Receiver clock drift [ppm].
uint16_t HAccuracy
2DRMS horizontal accuracy estimate [0.01m]
float Vy
Velocity Y [m/s].
float Vz
Velocity Z [m/s].
float Undulation
Geoid undilation [m].
uint8_t TimeSystem
-> SBF_TIMESYSTEM_...
uint16_t WNc
GPS week number.
uint16_t Latency
Latency [0.0001s].
uint8_t Error
-> SBF_ERRORPVT_...
double X
X coordinate in coordinate frame specified by Datum [m].
double Z
Z coordinate in coordinate frame specified by Datum [m].
uint16_t VAccuracy
2-sigma vertical accuracy estimate [0.01m]
uint8_t NrSV
Number of satellites used.
uint8_t Mode
-> SBF_MODEPVT_...
double RxClkBias
Receiver clock bias [ms].
uint8_t padding[1]
Padding.
uint16_t ReferenceID
Reference station ID.
double Y
Y coordinate in coordinate frame specified by Datum [m].
uint16_t MeanCorrAge
Mean age of corrections [0.01s].
uint8_t AlertFlag
-> SBF_ALERTFLAG_...
uint8_t Datum
-> SBF_DATUM_...
float COG
Course over ground [deg].
SBF PVTGeodetic payload (rev 2)
float Vn
Velocity north [m/s].
uint8_t NrSV
Number of satellites used.
float Ve
Velocity east [m/s].
uint16_t ReferenceID
Reference station ID.
double Height
Ellips. height [m].
float Vu
Velocity up [m/s].
uint16_t MeanCorrAge
Mean age of corrections [0.01s].
uint8_t WACorrInfo
Applied corrections (bitfield)
uint16_t VAccuracy
2-sigma vertical accuracy estimate [0.01m]
uint8_t Mode
-> SBF_MODEPVT_...
uint16_t PPPInfo
-> SBF_PPPINFO_...
uint8_t TimeSystem
-> SBF_TIMESYSTEM_...
uint8_t padding[1]
Padding.
uint8_t Datum
-> SBF_DATUM_...
uint16_t WNc
GPS week number.
double Longitude
Longitude [rad].
uint32_t TOW
GPS time of week [ms].
uint8_t Misc
-> SBF_MISC_...
double Latitude
Latitude [rad].
uint16_t HAccuracy
2DRMS horizontal accuracy estimate [0.01m]
uint16_t Latency
Latency [0.0001s].
float Undulation
Geoid undilation [m].
uint8_t Error
-> SBF_ERRORPVT_...
uint8_t NrBases
Number of basestations used.
uint8_t AlertFlag
-> SBF_ALERTFLAG_...
double RxClkBias
Receiver clock bias [ms].
float COG
Course over ground [deg].
uint32_t SignalInfo
Used signals (bitmask)
float RxClkDrift
Receiver clock drift [ppm].