|
QGroundControl
Ground Control Station for MAVLink Drones
|
#include <array>#include <chrono>#include <cstdint>#include <string_view>#include <type_traits>#include <vector>#include "GPSReceiverConfig.h"#include "UBX/UBXConfigKeys.h"#include "UBX/UBXFrame.h"#include "UBX/UBXMessageSchema.h"
Include dependency graph for UBXPlan.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| struct | UBX::ReceiverProfile |
| struct | UBX::Plan::ValsetItem |
| struct | UBX::Plan::ValsetBatch |
| struct | UBX::Plan::UnexpectedOutput |
| Messages a protocol 27+ receiver can send unasked and their CFG-MSGOUT keys, which a message ID does not imply. More... | |
| struct | UBX::Plan::MessageRate |
| CFG-MSG output rate of one message, as a divisor of the measurement rate. More... | |
| struct | UBX::Plan::RTCMOutput |
Namespaces | |
| namespace | UBX |
| u-blox receivers over UBX: CFG-VALSET configuration from protocol 27, CFG-MSG and CFG-TMODE3 before it. | |
| namespace | UBX::Plan |
Enumerations | |
| enum class | UBX::Board : uint8_t { UBX::unknown = 0 , UBX::u_blox5 = 5 , UBX::u_blox6 = 6 , UBX::u_blox7 = 7 , UBX::u_blox8 = 8 , UBX::u_blox9 = 9 , UBX::u_blox9_F9P_L1L2 = 10 , UBX::u_blox10 = 11 , UBX::u_blox9_F9P_L1L5 = 12 , UBX::u_blox10_L1L5 = 13 , UBX::u_blox_X20 = 14 } |
| enum class | UBX::Plan::NakPolicy : uint8_t { UBX::Plan::Fail , UBX::Plan::Tolerate , UBX::Plan::Warn , UBX::Plan::WriteOnly } |
| What a batch that is rejected, unanswered or not written means for configuration. More... | |
| enum class | UBX::Plan::RTCMContent : uint8_t { UBX::Plan::StationPosition , UBX::Plan::Observations , UBX::Plan::Optional } |
Functions | |
| constexpr ReceiverProfile | UBX::receiverProfile (Board board) |
| constexpr Board | UBX::boardFromHardwareVersion (std::string_view hardwareVersion) |
| The generation whose MON-VER hwVersion is hardwareVersion; unknown when none matches. | |
| ValsetBatch | UBX::Plan::uart1Protocols () |
| Protocol 27+ port setup at the detected baud rate: UBX only on UART1, 8N1. | |
| ValsetBatch | UBX::Plan::uart1Baudrate (uint32_t baudrate) |
| std::vector< ValsetBatch > | UBX::Plan::portsAndNavigation (const ReceiverProfile &profile) |
| Protocol 27+ configuration before jamming detection: ports, navigation, odometer and RTK. | |
| ValsetBatch | UBX::Plan::jammingDetection () |
| Probes CFG-SEC-JAMDET, which F9 HPG 1.50+, F9 L1L5 and X20 have instead of CFG-ITFM. | |
| ValsetBatch | UBX::Plan::interferenceMonitor () |
| Enables the interference monitor of firmware without CFG-SEC-JAMDET. | |
| std::vector< ValsetBatch > | UBX::Plan::messageOutput (const ReceiverProfile &profile) |
| Protocol 27+ configuration after jamming detection: message output and receiver-specific extras. | |
| ValsetBatch | UBX::Plan::disableRTCMOutput () |
| Stops RTCM output, including observations a previous session left in the other MSM format. | |
| ValsetBatch | UBX::Plan::disableTimeMode () |
| ValsetBatch | UBX::Plan::surveyIn (const GPSBaseStationConfig::SurveyIn &survey) |
| ValsetBatch | UBX::Plan::fixedBase (const GPSBaseStationConfig::Fixed &fixed) |
| ValsetBatch | UBX::Plan::rtcmOutput (bool compactObservations) |
| Base output at 1 Hz: station position, observations in the selected MSM format and GLONASS biases. | |
| ValsetBatch | UBX::Plan::disableMessage (MsgOutKey key) |
| Disables unexpected output; the reply is not awaited. | |
| std::array< uint8_t, 2 *WIRE_SIZE< CfgPrt > > | UBX::Plan::legacyPorts (uint32_t baudrate) |
| std::array< MessageRate, 5 > | UBX::Plan::legacyMessageOutput () |
| NAV-PVT, status, satellite and MON-HW (antenna and jamming) rates during the survey. | |
| std::array< MessageRate, 10 > | UBX::Plan::legacyDisableRTCMOutput () |
| Written without waiting for acknowledgements. | |
| std::array< MessageRate, 2 > | UBX::Plan::legacyBaseStatus () |
| Survey status and satellite rates for the 1 Hz base; rejections are ignored. | |
| std::array< RTCMOutput, 6 > | UBX::Plan::legacyRTCMOutput (bool compactObservations) |
| CfgTmode3 | UBX::Plan::legacySurveyIn (const GPSBaseStationConfig::SurveyIn &survey) |
| CfgTmode3 | UBX::Plan::legacyFixedBase (const GPSBaseStationConfig::Fixed &fixed) |
Variables | |
| constexpr std::array | UBX::RECEIVER_PROFILES |
| constexpr std::chrono::milliseconds | UBX::Plan::CONFIG_TIMEOUT {250} |
| Acknowledgement timeout of one configuration command. | |
| constexpr std::chrono::milliseconds | UBX::Plan::LEGACY_REPLY_TIMEOUT {1000} |
| The u-blox 8 protocol has CFG commands acknowledged within one second. | |
| constexpr std::chrono::milliseconds | UBX::Plan::IDENTITY_TIMEOUT {2000} |
| Slow factory NMEA output can delay a MON-VER response by over a second. | |
| constexpr std::chrono::milliseconds | UBX::Plan::PORT_TIMEOUT {2000} |
| constexpr std::chrono::milliseconds | UBX::Plan::BAUD_PROBE_DRAIN {20} |
| Traffic the baud probe drains before polling MON-VER. | |
| constexpr std::chrono::milliseconds | UBX::Plan::SURVEY_STOP_TIMEOUT {3000} |
| constexpr std::chrono::milliseconds | UBX::Plan::SURVEY_STOP_POLL {100} |
| constexpr std::chrono::microseconds | UBX::Plan::DISABLE_MESSAGE_INTERVAL = std::chrono::seconds(1) |
| An unwanted message is disabled at most this often; some cannot be disabled. | |
| constexpr std::array | UBX::Plan::BAUD_RATES {38400u, 57600u, 9600u, 115200u, 230400u, 460800u, 921600u} |
| Probing order of the automatic baud detection. | |
| constexpr unsigned | UBX::Plan::BASE_BAUD = 115200 |
| The link rate a base is moved to when no rate is selected. | |
| constexpr size_t | UBX::Plan::VALSET_CAPACITY = 256 |
| Bounds a CFG-VALSET independently of received message sizes. | |
| constexpr uint8_t | UBX::Plan::NO_OUTPUT = 0 |
| constexpr uint8_t | UBX::Plan::STATIONARY_DYNAMIC_MODEL = 2 |
| Base stations always use the stationary navigation model. | |
| constexpr uint8_t | UBX::Plan::SURVEY_SATELLITE_RATE = 10 |
| NAV-SAT every tenth survey epoch. | |
| constexpr uint8_t | UBX::Plan::BASE_SATELLITE_INFO_RATE = 2 |
| constexpr uint8_t | UBX::Plan::SURVEY_STATUS_RATE = 5 |
| constexpr uint16_t | UBX::Plan::BASE_MEASUREMENT_PERIOD_MS = 1000 |
| RTCM output only needs 1 Hz; the survey keeps the faster navigation rate because it converges faster. | |
| constexpr std::array< UnexpectedOutput, 3 > | UBX::Plan::UNEXPECTED_OUTPUT |
| constexpr uint16_t | UBX::Plan::LEGACY_PORT_UART1 = 1 |
| constexpr uint16_t | UBX::Plan::LEGACY_PORT_USB = 3 |
| constexpr CfgRate | UBX::Plan::LEGACY_SURVEY_RATE {.measRate = 200, .navRate = 1, .timeRef = 0} |
| 5 Hz, UTC-aligned. | |
| constexpr CfgRate | UBX::Plan::LEGACY_BASE_RATE {.measRate = BASE_MEASUREMENT_PERIOD_MS, .navRate = 1, .timeRef = 0} |
| constexpr CfgNav5 | UBX::Plan::LEGACY_NAVIGATION {.mask = 0x0005, .dynModel = STATIONARY_DYNAMIC_MODEL, .fixMode = 2} |
| Updates only the dynamic model and the fix mode (3D only). | |
| constexpr MessageRate | UBX::Plan::LEGACY_SURVEY_STATUS {Msg::NAV_SVIN, SURVEY_STATUS_RATE} |