8#include <QtCore/QByteArray>
31inline constexpr std::array
BAUD_RATES{9600u, 38400u, 19200u, 57600u, 115200u};
32inline constexpr std::string_view
PORT_QUERY =
"$PASHQ,PRT";
38inline constexpr std::string_view
LINK_SPEED =
"$PASHS,SPD,{port},9";
48 Setting{
"$PASHS,POP,20",
false},
49 Setting{
"$PASHS,SNS,SOL",
false},
50 Setting{
"$PASHS,NME,ALL,{port},OFF",
false},
51 Setting{
"$PASHS,ATM,ALL,{port},OFF",
false},
52 Setting{
"$PASHS,OUT,{port},ON",
false},
53 Setting{
"$PASHS,NME,ZDA,{port},ON,3",
false},
54 Setting{
"$PASHS,NME,GST,{port},ON,3",
false},
55 Setting{
"$PASHS,NME,POS,{port},ON,0.05",
false},
56 Setting{
"$PASHS,NME,GSV,{port},ON,1",
false},
61 Setting{
"$PASHS,ANP,OWN,TRM55971.00"},
67 Setting{
"$PASHS,NME,POS,{port},ON,0.2"},
68 Setting{
"$PASHS,RT3,1074,{port},ON,1"},
69 Setting{
"$PASHS,RT3,1084,{port},ON,1"},
70 Setting{
"$PASHS,RT3,1094,{port},ON,1"},
71 Setting{
"$PASHS,RT3,1114,{port},ON,1"},
72 Setting{
"$PASHS,RT3,1124,{port},ON,1"},
73 Setting{
"$PASHS,RT3,1006,{port},ON,1"},
74 Setting{
"$PASHS,RT3,1033,{port},ON,31"},
75 Setting{
"$PASHS,RT3,1013,{port},ON,1"},
76 Setting{
"$PASHS,RT3,1029,{port},ON,1"},
77 Setting{
"$PASHS,RT3,1230,{port},ON"},
79 Setting{
"$PASHS,RT3,1005,{port},ON,1"},
80 Setting{
"$PASHS,RT3,1077,{port},ON,1"},
81 Setting{
"$PASHS,RT3,1087,{port},ON,1"},
91[[nodiscard]] QByteArray
line(std::string_view command);
94[[nodiscard]] QByteArray
line(std::string_view command,
char port);
98[[nodiscard]] QByteArray
surveyStart(std::chrono::seconds duration);
QByteArray surveyStart(std::chrono::seconds duration)
GPSCommandOutcome rejection(std::string_view reply)
A NAK rejects any command.
GPSCommandSequence::Command fixedPositionCommand(const GPSEllipsoidPosition &position)
The fixedPosition() command, acknowledged by an ACK and labelled without its coordinates.
QByteArray fixedPosition(const GPSEllipsoidPosition &position)
constexpr std::array OUTPUTS
Navigation output. Some receivers do not acknowledge some of these (GSV, for example),...
constexpr std::array BAUD_RATES
Rates the port query probes, in order. Trimble receivers default to 115200.
constexpr std::string_view BOARD_QUERY
Board identification; only an MB-Two (BASE_BOARD) can run as a base station.
constexpr std::string_view LINK_SPEED
GPSCommandSequence sequence(std::span< const Setting > settings, char port)
settings for port, each acknowledged by an ACK.
constexpr std::chrono::milliseconds RESPONSE_TIMEOUT
Per attempt, for every command.
GPSCommandOutcome acknowledgement(std::string_view reply)
A $PASHS setting is acknowledged by an ACK.
constexpr unsigned PORT_QUERY_ATTEMPTS_AT_LINK_BAUD
constexpr std::chrono::milliseconds LINK_SPEED_SETTLE
constexpr std::string_view PORT_QUERY
QByteArray line(std::string_view command)
command as one CR/LF-terminated line.
constexpr unsigned LINK_BAUD
constexpr unsigned PORT_QUERY_ATTEMPTS
constexpr std::array STATION
Station description once averaging has started (see surveyStart()).
constexpr std::string_view BASE_BOARD
constexpr std::array RTCM_OUTPUTS
RTCM3 output once the base position is known.
WGS84 geodetic position with ellipsoid height, not mean-sea-level altitude.