Call me back | My basket | Checkout | Add to email list

     You are here: Website » Knowledge base

« back to website

DataAndConfigurationMessages / 109CompleteHighPrecisionGPSSolutionData

Complete high precision GNSS solution data

Channel Number 109
Total Length Variable length message
Channel Message length Message type Data 1 Data 2 ... Data n Checksum

Message type description

  1. External GNSS navigation solution

Message type 1: External GNSS navigation solution

Channel:

109

Message length:

71 bytes

Message type:

1: From GPS2
2: From SPEEDBOX
3: Target data (to SPEEDBOX)

Solution Time: (6 bytes: 48 bits, unsigned)

Solution time (GPS time of week in microseconds) = (Data1 * 2^ 40) + (Data2 *2 ^ 32) + (Data3 * 2^ 24) + (Data4 * 2^ 16) + (Data5 * 2 ^ 8) + Data6


Solution Week: (2 bytes: 16 bits, unsigned)

GPS week number = (Data7 * 2^8) + Data8
Note: The value 0xFFFF is used to indicate the the GPS week is invalid and should not be used.


LLH position: (24 bytes)

Longitude components: (8 bytes: 64 bits, signed)

Longitude (degrees) = (64 bits of Data9 to Data16) * 10-9; as shown below:
Lonint = (Data9 * 2 ^ 56) + (Data10 * 2^ 48) + (Data11 * 2^ 40) + (Data12 * 2^ 32) + (Data13 * 2^ 24) + (Data14 * 2^ 16) + (Data15 * 2^ 8) + Data16
Lon_deg (degrees) = Lonint * 10-9;


Latitude components: (8 bytes: 64 bits, signed)

Latitude (degrees) = (64 bits of Data17 to Data24) * 10-9; as shown below:

Latint = (Data17 * 2^ 56) + (Data18 * 2^ 48) + (Data19 * 2^ 40) + (Data20 * 2^ 32) + (Data21 * 2^ 24) + (Data22 * 2^ 16) + (Data23 * 2^ 8) + Data24
Lat_deg (degrees) = Latint * 10-9;


Height components: (8 bytes: 64 bits, signed)

Height (metres) = (64 bits of Data25 to Data32) * 10-10;

Height (metres) = ((Data25 * 2 ^ 56) + (Data26 * 2^ 48) + (Data27 * 2^ 40) + (Data28 * 2^ 32) + (Data29 * 2^ 24) + (Data30 * 2^ 16) + (Data31 * 2^ 8) + Data32) * 10-10;


Velocity Components: (12 bytes)

X-component/East velocity (m/s) = (32 bits of Data33 to Data36, signed) * 10-4; shown below:
East Velocity (m/s) = ((Data33 * 2 ^ 24) + (Data34 * 2 ^ 16) + (Data35 * 2^ 8) + Data36) * 10-4;
Y-component/North velocity (m/s) = (32 bits of Data37 to Data40, signed) * 10-4;
North Velocity (m/s) = ((Data37 * 2 ^ 24) + (Data38 * 2 ^ 16) + (Data39 * 2^ 8) + Data40) * 10-4;
Z-component/Up velocity (m/s) = (32 bits of Data41 to Data44, signed) * 10-4;
Up Velocity (m/s) = ((Data41 * 2 ^ 24) + (Data42 * 2 ^ 16) + (Data43 * 2^ 8) + Data44) * 10-4;


Yaw Angle: (2 bytes: 16 bits)

Yaw angle (degrees) = (16 bits of Data45 to Data46, signed) * 0.01; shown below:
Yaw (degrees) = ((Data45 * 2^ 8) + Data46) * 0.01;
(Note that yaw angle will be within the range -180°..180°)


Pitch Angle: (2 bytes: 16 bits)

Pitch angle (degrees) = (16 bits of Data47 to Data48, signed) * 0.01; shown below:
Pitch (degrees) = ((Data47 * 2^ 8) + Data48) * 0.01;


Time since last differential correction [s]: (1 byte: 8bits)

Data49
Use a value of 255 if no corrections have been received, or if the last correction was received more than 255s previously.


Data 50 is currently unused.


Position Error: (4 bytes)

Pos_accuracy (metres) = (32 bits of Data51 to Data54, unsigned) * 10-3;
Position_accuracy (metres) = ((Data51 * 2 ^ 24) + (Data52 * 2 ^ 16) + (Data53 * 2 ^ 8) + Data54) * 10-3;


Data 55 and Data 56 are currently unused.


Velocity Error: (4 bytes)

Vel_accuracy (metres) = (32 bits of Data57 to Data60, unsigned) * 10-3;
Velocity_accuracy (metres) = ((Data57 * 2^ 24) + (Data58 * 2^ 16) + (Data59 * 2^ 8) + Data60) * 10-3;


Yaw Accuracy: (1 byte: 8bits) (empty)

Data61

Pitch Accuracy: (1 byte: 8 bits) (empty)

Data62


Number of SVs (GPS): (1 byte: 8 bits)

Data63

Number of SVs (Glonass): (1 byte: 8 bits)

Data64

Number of SVs (Galileo): (1 byte: 8 bits)

Data65

Number of SVs (BeiDou): (1 byte: 8 bits)

Data66


GPS Receiver State: (1 byte: 8 bits)

Data67
Values:
0 - No valid solution
1 – Standalone (autonomous) solution
2 – Solution using WAAS/SBAS corrections
3 – Code differential (DGPS) solution
4 – Phase differential (RTK) solution with float ambiguities
5 – Phase differential (RTK) solution with integer ambiguities


Error State: (2 bytes: 16 bits) (empty)

Data68 Data69


Latency Estimate: (1 byte: 8 bits)

Latency estimate (ms) = Data70 * 10
The latency estimate applies to the end of transmission of msg109. A value of zero implies no latency estimate given (i.e. latency estimate invalid).
Page last modified on February 18, 2020, at 06:17 PM