gnsstools

module
v0.10.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 18, 2024 License: Apache-2.0

README

GNSS Tools

GoDoc

This repository contains a Golang module with packages for working with data types related to GNSS (Global Navigation Satellite System). It includes support for serialization and deserialization of GNSS data in various formats (e.g., BINEX, RINEX, RTCM, ...), as well as utility functions for handling GNSS-specific computations. Additionally, the repository provides several command-line utilities for interacting with GNSS data.

├── LICENSE
├── README.md
├── cmd
├── go.mod
├── go.sum
└── pkg

Packages

Encoding
  • binex: BINEX deserialization.
  • bottle: Bottle deserialization.
  • fcn: Functions for retreiving GLONASS Fequency Channel Numbers.
  • gnss: Core GNSS data types and utilities.
  • met: Meteorologic data serialization and deserialization.
  • novatel: NovAtel receiver format deserialization.
  • pos: EarthScope's daily integrated position solution format.
  • rinex: RINEX format serialization and deserialization.
  • rtcm: RTCM3 serialization and deserialization.
  • sbf: Septentrio Binary Format (SBF) serialization and deserialization.
  • sinex: SINEX deserialization (todo).
  • sp3: SP3 deserialization.
  • tdb: TileDB serialization and deserialization.
  • ublox: U-Blox serialization and deserialization.
  • vaisala: Vaisala weather data deserialization.
Supported RINEX Message Types
Message Type Description Deserialization Serialization
RINEX 2.11 Obs GNSS Observations ✅ Supported ✅ Supported
RINEX 2.11 Nav GNSS Observations ✅ Supported 📝 To Do
RINEX 2.11 Met GNSS Observations ✅ Supported 📝 To Do
RINEX 3.05 Obs GNSS Observations ✅ Supported ✅ Supported
RINEX 3.05 Nav GNSS Observations ✅ Supported 📝 To Do
RINEX 3.05 Met GNSS Observations ✅ Supported 📝 To Do
RINEX 4.01 Obs GNSS Observations ✅ Supported ✅ Supported
RINEX 4.01 Nav GNSS Observations ✅ Supported ✅ Supported
RINEX 4.01 Met GNSS Observations ✅ Supported 📝 To Do
Supported BINEX Message Types
Message Type Description Deserialization Serialization
0x00 Metadata 🚧 Under Construction 📝 To Do
0x01-00 Ephemeris 📝 To Do 📝 To Do
0x01-01 Ephemeris ✅ Supported 📝 To Do
0x01-02 Ephemeris ✅ Supported 📝 To Do
0x01-03 Ephemeris ✅ Supported 📝 To Do
0x01-04 Ephemeris 📝 To Do 📝 To Do
0x01-05 Ephemeris ✅ Supported 📝 To Do
0x01-06 Ephemeris ✅ Supported 📝 To Do
0x01-07 Ephemeris ✅ Supported 📝 To Do
0x01-14 Ephemeris ✅ Supported 📝 To Do
0x05 Position ✅ Supported 📝 To Do
0x7d-00 Receiver State ✅ Supported 📝 To Do
0x7e-00 Ancillary Site Data ✅ Supported 📝 To Do
0x7e-01 Ancillary Site Data ✅ Supported 📝 To Do
0x7f-00 Observable Data 📝 To Do 📝 To Do
0x7f-01 Observable Data 📝 To Do 📝 To Do
0x7f-02 Observable Data 📝 To Do 📝 To Do
0x7f-03 Observable Data ✅ Supported 📝 To Do
0x7f-04 Observable Data 📝 To Do 📝 To Do
0x7f-05 Observable Data ✅ Supported 📝 To Do
Supported Septentrio Binary Format (SBF) Message Types
Message Type Description Deserialization Serialization
4001 DOP ✅ Supported ✅ Supported
4002 GALNav ✅ Supported ✅ Supported
4006 PVTCartesian ✅ Supported ✅ Supported
4007 PVTGeodetic ✅ Supported ✅ Supported
4008 PVTSatCartesian ✅ Supported ✅ Supported
4011 RAIMStatistics ✅ Supported ✅ Supported
4012 SatVisibility ✅ Supported ✅ Supported
4013 ChannelStatus ✅ Supported ✅ Supported
4014 ReceiverStatus ✅ Supported ✅ Supported
4027 MeasEpoch ✅ Supported ✅ Supported
4044 PosCart ✅ Supported ✅ Supported
4075 ASCIIIn ✅ Supported ✅ Supported
5891 GPSNav ✅ Supported ✅ Supported
5914 ReceiverTime ✅ Supported ✅ Supported
Supported RTCM 3 Message Types
Message Type Description Deserialization Serialization
1077 GPS MSM 7 ✅ Supported ✅ Supported
1087 GLONASS MSM 7 ✅ Supported ✅ Supported
1097 Galileo MSM 7 ✅ Supported ✅ Supported
1107 SBAS MSM 7 ✅ Supported ✅ Supported
1117 QZSS MSM 7 ✅ Supported ✅ Supported
1127 Beidou MSM 7 ✅ Supported ✅ Supported
Supported Novatel Binary Message Types
Message Type Description Deserialization Serialization
140 RANGECMP ✅ Supported 📝 To Do
Supported U-blox Binary Message Types
Message Type Description Deserialization Serialization
ubx-rxm-rawx GNSS Raw Observation Data ✅ Supported ✅ Supported
NTRIP

| Package | Description | Support | | 'client' | NTRIP 2.0 Client | ✅ Supported |

Position
Package Description Support
ssp Single Point Positioning 🚧 Under Construction
PubSub
Package Description Support
pubsub Implements publish-subscribe mechanisms for GNSS data. ✅ Supported
Velocity
Package Description Support
tdcp Time-Differenced Carrier Phase (TDCP) velocity estimation ✅ Supported

Command-Line Tools

The cmd directory contains command-line tools for working with supported GNSS data formats. Each subdirectory under cmd represents a different tool. For example:

Installation

go get gitlab.com/earthscope/gnsstools

License

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright (C) 2023 Henry Berglund, EarthScope Data Services

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL