Remarks

CGNSS5
Status Status badge: working
Source code GitHub
NuGet package NuGet Gallery for Meadow.Foundation.mikroBUS.Sensors.Gnss.CGNSS10

Code Example

CGNSS5 gps;

public override Task Initialize()
{
    Resolver.Log.Info("Initializing ...");

    //gps = new CGNSS5(Device.PlatformOS.GetSerialPortName("COM1"), Device.Pins.D09, Device.Pins.D11);

    gps = new CGNSS5(Device.CreateI2cBus(), resetPin: Device.Pins.D09, ppsPin: Device.Pins.D11);

    gps.GgaReceived += (object sender, GnssPositionInfo location) =>
    {
        Resolver.Log.Info("*********************************************");
        Resolver.Log.Info($"{location}");
        Resolver.Log.Info("*********************************************");
    };
    // GLL
    gps.GllReceived += (object sender, GnssPositionInfo location) =>
    {
        Resolver.Log.Info("*********************************************");
        Resolver.Log.Info($"{location}");
        Resolver.Log.Info("*********************************************");
    };
    // GSA
    gps.GsaReceived += (object sender, ActiveSatellites activeSatellites) =>
    {
        Resolver.Log.Info("*********************************************");
        Resolver.Log.Info($"{activeSatellites}");
        Resolver.Log.Info("*********************************************");
    };
    // RMC (recommended minimum)
    gps.RmcReceived += (object sender, GnssPositionInfo positionCourseAndTime) =>
    {
        Resolver.Log.Info("*********************************************");
        Resolver.Log.Info($"{positionCourseAndTime}");
        Resolver.Log.Info("*********************************************");

    };
    // VTG (course made good)
    gps.VtgReceived += (object sender, CourseOverGround courseAndVelocity) =>
    {
        Resolver.Log.Info("*********************************************");
        Resolver.Log.Info($"{courseAndVelocity}");
        Resolver.Log.Info("*********************************************");
    };
    // GSV (satellites in view)
    gps.GsvReceived += (object sender, SatellitesInView satellites) =>
    {
        Resolver.Log.Info("*********************************************");
        Resolver.Log.Info($"{satellites}");
        Resolver.Log.Info("*********************************************");
    };

    return Task.CompletedTask;
}

public override Task Run()
{
    gps.StartUpdating();

    return Task.CompletedTask;
}

Sample project(s) available on GitHub

Characteristic Locus
Inheritance System.Object NeoM8 > CGNSS5
Inherited Members NeoM8.GgaReceived NeoM8.GllReceived NeoM8.GsaReceived NeoM8.RmcReceived NeoM8.VtgReceived NeoM8.GsvReceived NeoM8.PulsePerSecondPort NeoM8.ResetPort NeoM8.Reset() NeoM8.StartUpdating()
Namespace Meadow.Foundation.mikroBUS.Sensors.Gnss
Assembly CGNSS5.dll

Syntax

public class CGNSS5 : NeoM8

Constructors

CGNSS5(II2cBus, IPin, IPin)

Creates a new CGNSS5 object using I2C

Declaration
public CGNSS5(II2cBus i2cBus, IPin resetPin, IPin ppsPin = null)

Parameters

Type Name Description
II2cBus i2cBus
IPin resetPin
IPin ppsPin

CGNSS5(IMeadowDevice, SerialPortName, IPin, IPin)

Creates a new CGNSS5 object using serial

Declaration
public CGNSS5(IMeadowDevice device, SerialPortName serialPortName, IPin resetPin, IPin ppsPin = null)

Parameters

Type Name Description
IMeadowDevice device
SerialPortName serialPortName
IPin resetPin
IPin ppsPin