Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mr-ingenious/arduinoubxlib
A library for arduino to communicate ublox receivers via the ubx protocol
https://github.com/mr-ingenious/arduinoubxlib
arduino arduino-library arduino-sketches gnss gps-library hardware ublox ubx-gps-library
Last synced: 14 days ago
JSON representation
A library for arduino to communicate ublox receivers via the ubx protocol
- Host: GitHub
- URL: https://github.com/mr-ingenious/arduinoubxlib
- Owner: mr-ingenious
- License: gpl-3.0
- Created: 2021-07-22T21:46:03.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2021-08-19T11:38:39.000Z (about 3 years ago)
- Last Synced: 2023-07-29T13:43:04.165Z (over 1 year ago)
- Topics: arduino, arduino-library, arduino-sketches, gnss, gps-library, hardware, ublox, ubx-gps-library
- Language: C++
- Homepage:
- Size: 98.6 KB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ArduinoUbxLib
# Purpose
A C++ Arduino library that helps communicating with uBlox GNSS receivers via the proprietary ubx protocol.# Software library
## Design Goals
1. Easy to use and useful
2. Extendable## How to use the library
The main part of the library is the class *UbxGps* that provides the functionality to parse data that is input via the *parse()* method. Any correctly identified (and known) UBX messages, NMEA GPS or proprietary PUBX messages are reported with the *onReceive()* methods. When overriding these methods the identified messages can be further processed. Messages generally have the payload *pl* included which is a struct containing all specific data. For example, the structure of the NAV-STATUS ubx message is as follows:```
struct UbxNavStatusPayload {
unsigned int iTOW = 0;
byte gpsFix = 0;
byte flags = 0;
byte fixStat = 0;
byte flags2 = 0;
unsigned int ttff = 0;
unsigned int msss = 0;
};
```# Hardware
I tested the software with my GY-GPS6MV2 module that has a uBlox NEO-6M chip. Compatibility with other uBlox chips is not guaranteed, but feedback is highly appreciated!