QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
UBXFrame.h File Reference
#include <algorithm>
#include <array>
#include <cstddef>
#include <cstdint>
#include <optional>
#include <span>
#include <string_view>
#include <utility>
#include <QtCore/QByteArray>
#include <QtCore/QByteArrayView>
#include "Checksums.h"
+ Include dependency graph for UBXFrame.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  UBX::MessageId
 
struct  UBX::Frame
 A received frame. Its views borrow the decoder's storage until the next consume(). More...
 
class  UBX::FrameDecoder
 

Namespaces

namespace  UBX
 u-blox receivers over UBX: CFG-VALSET configuration from protocol 27, CFG-MSG and CFG-TMODE3 before it.
 
namespace  UBX::MsgClass
 
namespace  UBX::Msg
 

Functions

QByteArray UBX::messageName (MessageId message)
 The name of message, such as "UBX-CFG-VALSET", or its class and id in hex when it has none.
 
constexpr std::span< const uint8_t > UBX::encodeFrame (MessageId message, std::span< const uint8_t > payload, std::span< uint8_t > out)
 Writes the frame of payload to the front of out.
 

Variables

constexpr uint8_t UBX::MsgClass::NAV = 0x01
 
constexpr uint8_t UBX::MsgClass::RXM = 0x02
 
constexpr uint8_t UBX::MsgClass::INF = 0x04
 
constexpr uint8_t UBX::MsgClass::ACK = 0x05
 
constexpr uint8_t UBX::MsgClass::CFG = 0x06
 
constexpr uint8_t UBX::MsgClass::MON = 0x0a
 
constexpr uint8_t UBX::MsgClass::SEC = 0x27
 
constexpr uint8_t UBX::MsgClass::RTCM3 = 0xf5
 
constexpr MessageId UBX::Msg::NAV_STATUS {MsgClass::NAV, 0x03}
 
constexpr MessageId UBX::Msg::NAV_DOP {MsgClass::NAV, 0x04}
 
constexpr MessageId UBX::Msg::NAV_PVT {MsgClass::NAV, 0x07}
 
constexpr MessageId UBX::Msg::NAV_HPPOSLLH {MsgClass::NAV, 0x14}
 
constexpr MessageId UBX::Msg::NAV_TIMEGPS {MsgClass::NAV, 0x20}
 
constexpr MessageId UBX::Msg::NAV_SVINFO {MsgClass::NAV, 0x30}
 
constexpr MessageId UBX::Msg::NAV_SAT {MsgClass::NAV, 0x35}
 
constexpr MessageId UBX::Msg::NAV_SVIN {MsgClass::NAV, 0x3b}
 
constexpr MessageId UBX::Msg::NAV_EOE {MsgClass::NAV, 0x61}
 
constexpr MessageId UBX::Msg::RXM_SFRBX {MsgClass::RXM, 0x13}
 
constexpr MessageId UBX::Msg::RXM_RAWX {MsgClass::RXM, 0x15}
 
constexpr MessageId UBX::Msg::INF_ERROR {MsgClass::INF, 0x00}
 
constexpr MessageId UBX::Msg::INF_WARNING {MsgClass::INF, 0x01}
 
constexpr MessageId UBX::Msg::INF_NOTICE {MsgClass::INF, 0x02}
 
constexpr MessageId UBX::Msg::INF_DEBUG {MsgClass::INF, 0x04}
 
constexpr MessageId UBX::Msg::ACK_NAK {MsgClass::ACK, 0x00}
 
constexpr MessageId UBX::Msg::ACK_ACK {MsgClass::ACK, 0x01}
 
constexpr MessageId UBX::Msg::CFG_PRT {MsgClass::CFG, 0x00}
 
constexpr MessageId UBX::Msg::CFG_MSG {MsgClass::CFG, 0x01}
 
constexpr MessageId UBX::Msg::CFG_RATE {MsgClass::CFG, 0x08}
 
constexpr MessageId UBX::Msg::CFG_NAV5 {MsgClass::CFG, 0x24}
 
constexpr MessageId UBX::Msg::CFG_TMODE3 {MsgClass::CFG, 0x71}
 
constexpr MessageId UBX::Msg::CFG_VALSET {MsgClass::CFG, 0x8a}
 
constexpr MessageId UBX::Msg::CFG_VALGET {MsgClass::CFG, 0x8b}
 
constexpr MessageId UBX::Msg::MON_VER {MsgClass::MON, 0x04}
 
constexpr MessageId UBX::Msg::MON_HW {MsgClass::MON, 0x09}
 
constexpr MessageId UBX::Msg::MON_RF {MsgClass::MON, 0x38}
 
constexpr MessageId UBX::Msg::SEC_SIG {MsgClass::SEC, 0x09}
 
constexpr MessageId UBX::Msg::RTCM3_1005 {MsgClass::RTCM3, 0x05}
 
constexpr MessageId UBX::Msg::RTCM3_1074 {MsgClass::RTCM3, 0x4a}
 
constexpr MessageId UBX::Msg::RTCM3_1077 {MsgClass::RTCM3, 0x4d}
 
constexpr MessageId UBX::Msg::RTCM3_1084 {MsgClass::RTCM3, 0x54}
 
constexpr MessageId UBX::Msg::RTCM3_1087 {MsgClass::RTCM3, 0x57}
 
constexpr MessageId UBX::Msg::RTCM3_1094 {MsgClass::RTCM3, 0x5e}
 
constexpr MessageId UBX::Msg::RTCM3_1097 {MsgClass::RTCM3, 0x61}
 
constexpr MessageId UBX::Msg::RTCM3_1124 {MsgClass::RTCM3, 0x7c}
 
constexpr MessageId UBX::Msg::RTCM3_1127 {MsgClass::RTCM3, 0x7f}
 
constexpr MessageId UBX::Msg::RTCM3_1230 {MsgClass::RTCM3, 0xe6}
 
constexpr std::pair< MessageId, std::string_view > UBX::MESSAGE_NAMES []
 Readable names of the messages above, as the interface description writes them.
 
constexpr uint8_t UBX::SYNC1 = 0xb5
 
constexpr uint8_t UBX::SYNC2 = 0x62
 
constexpr size_t UBX::HEADER_SIZE = 6
 
constexpr size_t UBX::FRAME_OVERHEAD = HEADER_SIZE + 2
 Header and checksum.
 
constexpr size_t UBX::MAX_PAYLOAD_SIZE = 4096
 The longest payload decoded.
 
constexpr size_t UBX::MAX_SKIPPED_PAYLOAD_SIZE = 8192