This document contains some details about existing file formats and their contents.
It is copy / pasted from the gps-wizard documentation and as such it defines the formats in the standardised types of the Python project.
No changes have been made to the text so bear that in mind when reading through the list of fields.
FIT Name | Description | Name | Type | Units | Resolution |
---|---|---|---|---|---|
timestamp | Date + Time | ts | float64 | s | - |
position_lat 1 | Latitude | lat | float64 | deg | 1 x 10-7 |
position_long 1 | Longitude | lon | float64 | deg | 1 x 10-7 |
distance | Cumulative Distance | dist | float64 | m | 1 x 10-3 |
altitude 2 3 | Altitude | - | - | - | - |
enhanced_altitude 3 | Altitude | ele | float64 | m | 2 x 10-1 |
speed 2 4 | Speed | - | - | - | - |
enhanced_speed 4 | Speed | sog | float32 | m/s | 1 x 10-3 |
vertical_speed 5 | roc | float32 | m/s | 1 x 10-3 | |
cog 6 7 | Course Over Ground | cog | float32 | deg | 1 x 10-3 |
Sat 6 | Satellites | sat | uint8 | - | - |
hdop 6 8 | HDOP | hdop | float32 | - | 1 x 10-1 |
heart_rate | Heart Rate | hr | uint16 | bpm | - |
Notes:
GPX Name | Description | Name | Type | Units | Resolution |
---|---|---|---|---|---|
lat 1 | Latitude | lat | float64 | deg | 1 x 10-7 |
lon 1 | Longitude | lon | float64 | deg | 1 x 10-7 |
ele 2 | Elevation | ele | float64 | m | 1 x 10-3 |
time | Date + Time | ts | float64 | s | 1 x 10-3 |
course / cog 3 4 5 | Course Over Ground | cog | float32 | deg | 1 x 10-3 |
speed 3 6 | Speed Over Ground | sog | float32 | m/s | 1 x 10-3 |
sat | Satellites | sat | uint8 | - | - |
hdop 7 | HDOP | hdop | float32 | - | 1 x 10-2 |
hr / heart_rate 8 | Heart Rate | hr | uint16 | bpm | - |
Notes:
The RMC message contains the core data; latitude, longitude, speed and course.
NMEA Name | Raw Name | Type | Name | Type | Units | Resolution |
---|---|---|---|---|---|---|
UTC | hhmmss | f8 | ts | float64 | s | 1 x 10-3 |
Status | status | U1 | - | - | - | - |
Latitude 1 | lat | f8 | lat | float64 | deg | 1 x 10-7 |
N or S | ns | U1 | - | - | - | - |
Longitude 1 | lon | f8 | lon | float64 | deg | 1 x 10-7 |
E or W | ew | U1 | - | - | - | - |
Speed over Ground 2 | sog | f4 | sog | float32 | m/s | 1 x 10-3 |
Track Made Good (True) 3 | cog | f4 | cog | float32 | deg | 1 x 10-3 |
Date 4 | ddmmyy | u4 | ts | float64 | s | 1 x 10-3 |
Magnetic Variation | magVar | f4 | - | - | - | - |
E or W | magVarEw | U1 | - | - | - | - |
FAA Mode Indicator 5 | faaMode | U1 | - | - | - | - |
Nav Status 6 | navStatus | U1 | - | - | - | - |
Notes:
The first few fields are unused because they are also present in the corresponding RMC message.
NMEA Name | Raw Name | Type | Name | Type | Units | Resolution |
---|---|---|---|---|---|---|
UTC | - | - | - | - | - | - |
Latitude | - | - | - | - | - | - |
N or S | - | - | - | - | - | - |
Longitude | - | - | - | - | - | - |
E or W | - | - | - | - | - | - |
GPS Quality Indicator | quality | u1 | - | - | - | - |
Number of Satellites | numSv | u1 | sat | uint8 | - | - |
Horizontal Dilution of Precision 1 | hdop | f4 | hdop | float32 | - | 1 x 10-2 |
Altitude from MSL 2 | alt | f8 | ele | float64 | m | 1 x 10-3 |
Units of Altitude | altUnit | U1 | - | - | - | - |
Geoidal Separation | geoSep | f4 | - | - | - | - |
Units of Geoidal Separation | geoSepUnit | U1 | - | - | - | - |
Age of differential GPS data | dgpsAge | u2 | - | - | - | - |
Differential reference station ID | dgpsId | u2 | - | - | - | - |
Notes:
GPS / GNSS chips outputting NMEA data typically provide a maximum precision of ddmm.mmmmm for latitude and dddmm.mmmmm for longitude. Since the mm before the decimal point is whole minutes (00 - 60), overall resolution is only 60% of the SiRF and ublox binary formats which provide 7 decimal digits.
SiRF Name | Raw Name | Type | Name | Type | Units | Resolution |
---|---|---|---|---|---|---|
HDOP | hdop | u1 | hdop | float32 | - | 2 x 10-1 |
Number of SVs in Fix | sv_count | u1 | sat | uint8 | - | - |
UTC Milliseconds | utc_millisecs | <u2 | ts | float64 | s | 1 x 10-3 |
UTC Packed Datetime | utc_packed_datetime | <u4 | ts | float64 | s | 1 x 10-3 |
Satellite ID List | sv_ids | <u4 | svids | uint32 | - | - |
Latitude | latitude | <i4 | lat | float64 | deg | 1 x 10-7 |
Longitude | longitude | <i4 | lon | float64 | deg | 1 x 10-7 |
Altitude from MSL | altitude_msl | <i4 | ele | float64 | m | 1 x 10-2 |
Speed Over Ground (SOG) | sog | <u2 | sog | float32 | m/s | 1 x 10-2 |
Course Over Ground (COG, True) | cog | <u2 | cog | float32 | deg | 1 x 10-2 |
Climb Rate | climb_rate | <i2 | roc | float32 | m/s | 1 x 10-2 |
Speed Dilution of Precision | sdop | u1 | sdop | float32 | m/s | 1 x 10-2 |
Vertical Speed Dilution of Precision | vsdop | u1 | vsdop | float32 | m/s | 1 x 10-2 |
The SiRF binary format consists of 91 to 97 byte messages which mainly originate from the Geodetic Navigation Data.
The first 91 bytes are standard SiRF and remaining bytes are specific to Locosys; unfiltered SOG + COG, SDOP and VSDOP.
SiRFDrive fields are always set to zero on the GT-11 and GT-31, so they can safely be ignored.
SiRF Name | Raw Name | Type | Name | Type | Units | Resolution |
---|---|---|---|---|---|---|
Message ID 1 | message_id | u1 | - | - | - | - |
Nav Valid 2 | nav_valid | >u2 | - | - | - | - |
Nav Type 3 | nav_type | >u2 | - | - | - | - |
Extended Week Number | extended_week_no | >u2 | - | - | - | - |
TOW | time_of_week | >u4 | - | - | - | - |
UTC Year | utc_year | >u2 | ts | float64 | s | 1 x 10-3 |
UTC Month | utc_month | u1 | ts | float64 | s | 1 x 10-3 |
UTC Day | utc_day | u1 | ts | float64 | s | 1 x 10-3 |
UTC Hour | utc_hour | u1 | ts | float64 | s | 1 x 10-3 |
UTC Minute | utc_minute | u1 | ts | float64 | s | 1 x 10-3 |
UTC Second | utc_millisecs | >u2 | ts | float64 | s | 1 x 10-3 |
Satellite ID List | sv_ids | >u4 | svids | uint32 | - | - |
Latitude | latitude | >i4 | lat | float64 | deg | 1 x 10-7 |
Longitude | longitude | >i4 | lon | float64 | deg | 1 x 10-7 |
Altitude from Ellipsoid | altitude_ellipsoid | >i4 | - | - | - | - |
Altitude from MSL | altitude_msl | >i4 | ele | float64 | m | 1 x 10-2 |
Map Datum 4 | map_datum | u1 | - | - | - | - |
Speed Over Ground (SOG) | sog | >u2 | sog | float32 | m/s | 1 x 10-2 |
Course Over Ground (COG, True) | cog | >u2 | cog | float32 | m/s | 1 x 10-2 |
Magnetic Variation 5 | magnetic_variation | >i2 | - | - | - | - |
Climb Rate | climb_rate | >i2 | roc | float32 | m/s | 1 x 10-2 |
Heading Rate - SiRFDrive | heading_rate | >i2 | - | - | - | - |
Estimated Horizontal Position Error | ehpe | >u4 | ehpe | float32 | m | 1 x 10-2 |
Estimated Vertical Position Error | evpe | >u4 | evpe | float32 | m | 1 x 10-2 |
Estimated Time Error - SiRFDrive | ete | >u4 | - | - | - | - |
Estimated Horizontal Velocity Error - SiRFDrive | ehve | >u2 | - | - | - | - |
Clock Bias 6 | clock_bias | >i4 | - | - | - | - |
Clock Bias Error - SiRFDrive | clock_bias_error | >u4 | - | - | - | - |
Clock Drift 6 | clock_drift | >i4 | - | - | - | - |
Clock Drift Error - SiRFDrive | clock_drift_error | >u4 | - | - | - | - |
Distance - SiRFDrive | distance | >u4 | - | - | - | - |
Distance Error - SiRFDrive | distance_error | >u2 | - | - | - | - |
Heading Error - SiRFDrive | heading_error | >u2 | - | - | - | - |
Number of SVs in Fix | sv_count | u1 | sat | uint8 | - | - |
HDOP | hdop | u1 | hdop | float32 | - | 2 x 10-1 |
Additional Mode Info 7 | additional_mode_info | u1 | - | - | - | - |
Unfiltered Speed Over Ground 8 | unfiltered_sog | >u2 | sogu | float32 | m/s | 1 x 10-2 |
Unfiltered Course Over Ground 8 | unfiltered_cog | >u2 | cogu | float32 | m/s | 1 x 10-2 |
Speed Dilution of Precision 9 | sdop | u1 | sdop | float32 | m/s | 1 x 10-2 |
Vertical Speed Dilution of Precision 9 | vsdop | u1 | vsdop | float32 | m/s | 1 x 10-2 |
Notes:
Message ID is always 41 (geodetic navigation data), so it is ignored.
Navigation valid is always zero or one on the GT-11 and GT-31 and is currently ignored.
Navigation type is described in the SiRF binary protocol.
Map datum is typically 21 (WGS-84), so it is ignored.
Magnetic variation is always zero on the GT-11 and GT-31, so it is ignored.
Clock bias and clock drift are currently ignored.
Additional mode information is always zero on the GT-31 and always zero or one on the GT-11, so it is ignored.
Unfiltered SOG + COG were added by SiRF and Locosys for the GT-11.
SDOP and VSDOP were added by SiRF and Locosys for the GT-31, GW-62 and GW-60.
UBX Name | Raw Name | Type | Name | Type | Units | Resolution |
---|---|---|---|---|---|---|
GPS time of week | iTOW | <u4 | - | - | - | - |
Year (UTC) | year | <u2 | ts | float64 | s | 1 x 10-3 |
Month (UTC) | month | u1 | ts | float64 | s | 1 x 10-3 |
Day (UTC) | day | u1 | ts | float64 | s | 1 x 10-3 |
Hour (UTC) | hour | u1 | ts | float64 | s | 1 x 10-3 |
Minute (UTC) | min | u1 | ts | float64 | s | 1 x 10-3 |
Second (UTC) | sec | u1 | ts | float64 | s | 1 x 10-3 |
Validity flags | valid | u1 | - | - | - | - |
Time accuracy estimate | tAcc | <u4 | - | - | - | - |
Fraction of second (ns) | nano | <i4 | ts | float64 | s | 1 x 10-3 |
GNSS fix type (includes DR) | fixType | u1 | fix | uint8 | - | - |
Fix status flags | flags | u1 | - | - | - | - |
Additional flags | flags2 | u1 | - | - | - | - |
Number of satellites used | numSV | u1 | sat | uint8 | - | - |
Longitude | lon | <i4 | lat | float64 | deg | 1 x 10-7 |
Latitude | lat | <i4 | lon | float64 | deg | 1 x 10-7 |
Height above ellipsoid | height | <i4 | - | - | - | - |
Height above mean sea level | hMSL | <i4 | ele | float64 | m | 1 x 10-3 |
Horizontal accuracy estimate | hAcc | <u4 | hacc | float32 | m | 1 x 10-3 |
Vertical accuracy estimate | vAcc | <u4 | vacc | float32 | m | 1 x 10-3 |
NED north velocity 1 | velN | <i4 | - | - | - | - |
NED east velocity 1 | velE | <i4 | - | - | - | - |
NED down velocity 2 | velD | <i4 | roc | float32 | deg | 1 x 10-3 |
Ground Speed (2-D) | gSpeed | <i4 | sog | float32 | m/s | 1 x 10-3 |
Heading of motion (2-D) | headMot | <i4 | cog | float32 | deg | 1 x 10-3 |
Speed accuracy estimate | sAcc | <u4 | sacc | float32 | m/s | 1 x 10-3 |
Heading accuracy estimate | headAcc | <u4 | cacc | float32 | deg | 1 x 10-3 |
Position DOP | pDOP | <u2 | pdop | float32 | - | 1 x 10-2 |
Additional flags | flags3 | <u2 | - | - | - | - |
Reserved | reserved | <u4 | - | - | - | - |
Heading of vehicle | headVeh | <i4 | - | - | - | - |
Magnetic declination | magDec | <i2 | - | - | - | - |
Magnetic declination accuracy | magAcc | <u2 | - | - | - | - |
Notes: