SharpGIS.NmeaParser 1.7.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package SharpGIS.NmeaParser --version 1.7.0                
NuGet\Install-Package SharpGIS.NmeaParser -Version 1.7.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SharpGIS.NmeaParser" Version="1.7.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add SharpGIS.NmeaParser --version 1.7.0                
#r "nuget: SharpGIS.NmeaParser, 1.7.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install SharpGIS.NmeaParser as a Cake Addin
#addin nuget:?package=SharpGIS.NmeaParser&version=1.7.0

// Install SharpGIS.NmeaParser as a Cake Tool
#tool nuget:?package=SharpGIS.NmeaParser&version=1.7.0                

Nmea Parser

Library for reading and parsing NMEA data message streams. It makes it easy to connect and listen for NMEA messages coming from various devices in Windows Store, Windows Phone, Windows Desktop/.NET and Windows Universal apps as well as Xamarin for iOS and Android.

The following inputs are supported:

  • System.IO.Stream (all platforms)
  • Emulation from NMEA log file (all platforms)
  • Bluetooth: Windows Store, Windows Phone, Windows Universal. Desktop is supported using the bluetooth device via the SerialPortDevice.
  • Serial Device: Windows Desktop and Windows Universal.

Currently supported NMEA messages:

  • Generic GPS NMEA (GPRMC, GPGGA, GPGLL, GPGSA, GPGSCV, GPRMB, GPRMC, GPBOD, GPRTE, GPGST)
  • Garmin GPS NMEA (PGRME, PGRMZ)
  • Trimble Laser Range Finder (PTNLA, PTNLB)
  • TruePulse Laser Range Finder (PLTIT)

The API is easily extensible with more NMEA messages. Simply create a new class inheriting from "NmeaMessage" and use the NmeaMessageType Attribute to tag it with the NMEA Message Token it supports.

Example:

[NmeaMessageType("GPRMC")]
public class Gprmc : NmeaMessage
{
	protected override void LoadMessage(string[] message)
	{
		//TODO: Process message parts
	}
}

If you add new messages, please fork, provide a simple unit test for the message and submit a pull request.

NuGet

You can get the library via NuGet if you have the extension installed for Visual Studio or via the PowerShell package manager. This control is published via NuGet at SharpGIS.NmeaParser.

<table border="4px"> <tr><td> <code>PM> Install-Package SharpGIS.NmeaParser</code> </td></tr></table>

Usage

Please see the WIKI how to use it on the various platforms

Screenshots

Screenshots from Desktop sample app:

sampleapp2 sampleapp3

Map view using the ArcGIS Runtime (see separate branch): sampleapp1

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp1.0 was computed.  netcoreapp1.1 was computed.  netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard1.4 is compatible.  netstandard1.5 was computed.  netstandard1.6 was computed.  netstandard2.0 was computed.  netstandard2.1 was computed. 
.NET Framework net451 is compatible.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed.  monoandroid50 is compatible. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen30 was computed.  tizen40 was computed.  tizen60 was computed. 
Universal Windows Platform uap was computed.  uap10.0 is compatible. 
Windows Store win81 is compatible. 
Xamarin.iOS xamarinios was computed.  xamarinios10 is compatible. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on SharpGIS.NmeaParser:

Package Downloads
NINA.Equipment

This assembly contains the Equipment components of N.I.N.A. to interact and connect to various types of astronomy equipment.

VertiGIS.Mobile

Create VertiGIS Mobile apps for Android, iOS, and UWP. Extend your apps with custom components, operations and services.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.2.2 170,065 1/3/2022
2.2.0 44,365 2/16/2021
2.1.0 7,508 8/28/2020
2.0.0 21,713 1/20/2020
2.0.0-beta1 1,080 1/17/2020
1.10.0 39,739 3/29/2018
1.9.0 4,588 12/21/2017
1.8.0 1,960 12/21/2017
1.7.0 1,803 12/12/2017
1.6.1 3,461 3/7/2017
1.6.0 2,713 6/6/2016
1.5.1 6,106 3/21/2015
1.4.1 2,612 11/15/2014
1.3.1 1,906 10/8/2014
1.2.0 1,857 10/7/2014
1.1.0 1,826 7/31/2014
1.0.0 1,918 7/31/2014

New project architecture for better .NET Standard support