Skip to content

Releases: adrianmo/go-nmea

v1.10.0

08 Aug 19:03
af41c6a
Compare
Choose a tag to compare

Enhancements 🎉

  • Add DateTime func (#116)

Thank you! 🥇

@mholt

v1.9.0

12 Jul 01:50
65fb477
Compare
Choose a tag to compare

New Sentences 💌

  • PGN: NMEA2000 over NMEA0183 (#106)
  • PCDIN: NMEA2000 over NMEA0183 (#106)

Enhancements 🎉

  • Allow sentence parsing customization (SentenceParser struct) (#97)
  • Add ParseTagBlock func (#112)

Bug fixes 🐛

  • Correct handling of navigational status in RMC and GNS (#108)
  • Fix LonDir returning wrong east/west direction (#105)

Thank you! 🥇

@calmh @aldas

v1.8.0

06 Feb 11:01
2740e68
Compare
Choose a tag to compare

New Sentences 💌

  • ABM: AIS addressed binary and safety related message (#100)
  • ACK: Acknowledge alarm (#100)
  • ACN: Alert command (#100)
  • ALC: Cyclic alert list (#100)
  • ALF: Alert sentence (#100)
  • ALR: Set alarm state (#100)
  • ARC: Alert command refused (#100)
  • BBM: AIS broadcast binary message (#100)
  • HBT: Heartbeat supervision sentence (#100)
  • PSKPDPT: Depth of Water for multiple transducer installation (#94)
  • TLB: Target label (#100)
  • TTD: Tracked target data (#100)
  • VSD: AIS voyage static data (#100)

Enhancements 🎉

  • Add support for optional values (#99)

Bug fixes 🐛

  • Fix XDR missing N (Newtons) as measurement unit enum value (#95)

Thank you! 🥇

@aldas @@bezineb5 @icholy


Full Changelog: v1.7.0...v1.8.0

v1.7.0

01 Mar 11:25
d882190
Compare
Choose a tag to compare

New Sentences 💌

  • DTM - Datum Reference
  • OSD - Own Ship Data
  • RSD - RADAR System Data
  • TLL - Target latitude and longitude
  • TTM - Tracked Target Message
  • VBW - Dual Ground/Water Speed

Thank you! 🥇

@aldas


Full Changelog: v1.6.0...v1.7.0

v1.6.0

11 Jan 10:01
e6fa0a7
Compare
Choose a tag to compare

New Sentences 💌

  • AAM - Waypoint Arrival Alarm (#88)
  • ALA - System Faults and alarms (#88)
  • APB - Autopilot Sentence "B" (#88)
  • BEC - Bearing and distance to waypoint (dead reckoning) (#88)
  • BOD - Bearing waypoint to waypoint (origin to destination) (#88)
  • BWC - Bearing and distance to waypoint, great circle (#88)
  • BWR - Bearing and distance to waypoint (Rhumb Line) (#88)
  • BWW - bearing (from destination) destination waypoint to origin waypoint (#88)
  • DBK - Depth Below Keel (obsolete, use DPT instead) (#88)
  • DOR - Door Status Detection (#88)
  • DSC - Digital Selective Calling Information (#88)
  • DSE - Expanded digital selective calling (#88)
  • EVE - General Event Message (#88)
  • FIR - Fire Detection event with time and location (#88)
  • HSC - Heading steering command (#88)
  • MTA - Air Temperature (obsolete, use XDR instead) (#88)
  • RMB - Recommended Minimum Navigation Information (#88)
  • RPM - Engine or Shaft revolutions and pitch (#88)
  • RSA - Rudder Sensor Angle (#88)
  • VDR - Set and Drift (#88)
  • VLW - Distance Traveled through Water (#88)
  • VPW - Speed Measured Parallel to Wind (#88)
  • VWR - Relative Wind Speed and Angle (#88)
  • VWT - True Wind Speed and Angle (#88)
  • XDR - Transducer Measurement (#88)
  • XTE - Cross-track error, measured (#88)

Enhancements 🎉

  • DBS - Validate field units in sentences (#88)

Thank you! 🥇

@aldas

Full Changelog: v1.5.0...v1.6.0

v1.5.0

29 Dec 17:09
7315e63
Compare
Choose a tag to compare

New Sentences 💌

  • HDG - Heading, Deviation & Variation (#87)
  • HDM - Heading - Magnetic (#87)
  • MTW - Mean Temperature of Water (#87)
  • ROT - Rate of turn (#87)
  • TXT - Transmission of text messages (#87)
  • PHTRO - (Proprietary) Vessel pitch and roll (Xsens IMU/VRU/AHRS) (#87)
  • PRDID - (Proprietary) Vessel pitch, roll and heading (Xsens IMU/VRU/AHRS) (#87)
  • PSONCMS - (Proprietary) Quaternion, acceleration, rate of turn, magnetic field, sensor temperature (Xsens IMU/VRU/AHRS) (#87)

Enhancements 🎉

  • Add NMEA 2.3/4.0 related field (FAA mode and Navigation status) (#87)
  • Improved docs with formats, examples and links (#87)
  • GLL - added FAA mode field (NMEA 2.3+) (#87)
  • GNS - added Navigation status field (NMEA 4.1+) (#87)
  • GSA - added System ID field (NMEA 4.1+) (#87)
  • GSV - added System ID field (NMEA 4.1+) (#87)
  • RMC - added FAA Mode (NMEA 2.3+) and Navigaton status (NMEA 4.1+) fields (#87)
  • VTG - added FAA mode field (NMEA 2.3+) (#87)
  • Added Makefile to make testing/checking easier from command line (#87)

Thank you! 🥇

@aldas

Full Changelog: v1.4.2...v1.5.0

Release v1.4.2

10 Dec 13:49
a4c9590
Compare
Choose a tag to compare

Enhancements 🎉

  • Allow omitting the DPT scale field (#84)
  • Add specific error type (NotSupportedError) when parsing not supported sentence (#85)

Thank you! 🥇

@aldas @icholy

Full Changelog: v1.4.1...v1.4.2

Release v1.4.1

29 Nov 07:56
df350fd
Compare
Choose a tag to compare

Bug fix 🐛

  • GSV failure when no satellite in view (#82)

Thank you! 🥇

@bezineb5 @icholy

Release v1.4.0

10 Sep 09:26
Compare
Choose a tag to compare

New Sentences 💌

  • MDA - Meteorological Composite (#81)
  • MWD - Wind Direction and Speed (#81)
  • MWV - Wind Speed and Angle (#81)

Thank you! 🥇

@Maescool @icholy

Release v1.3.0

26 Aug 10:25
3160bbb
Compare
Choose a tag to compare

New features

TAG Block struct

type TagBlock struct {
	Time         int64  // TypeUnixTime unix timestamp (unit is likely to be s, but might be ms, YMMV), parameter: -c
	RelativeTime int64  // TypeRelativeTime relative time, parameter: -r
	Destination  string // TypeDestinationID destination identification 15 char max, parameter: -d
	Grouping     string // TypeGrouping sentence grouping, parameter: -g
	LineCount    int64  // TypeLineCount line count, parameter: -n
	Source       string // TypeSourceID source identification 15 char max, parameter: -s
	Text         string // TypeTextString valid character string, parameter -t
}

Ref.: https://github.com/adrianmo/go-nmea/blob/master/tagblock.go#L10

Code example

NMEA 4.10 TAG Block values can be accessed via the message's TagBlock struct:

package main

import (
	"fmt"
	"log"
	"time"
	"github.com/adrianmo/go-nmea"
)

func main() {
	sentence := "\\s:Satelite_1,c:1553390539*62\\!AIVDM,1,1,,A,13M@ah0025QdPDTCOl`K6`nV00Sv,0*52"
	s, err := nmea.Parse(sentence)
	if err != nil {
		log.Fatal(err)
	}
	parsed := s.(nmea.VDMVDO)
	fmt.Printf("TAG Block timestamp: %v\n", time.Unix(parsed.TagBlock.Time, 0))
	fmt.Printf("TAG Block source:    %v\n", parsed.TagBlock.Source)
}

Output (locale/time zone dependent):

$  go run main/main.go
 
TAG Block timestamp: 2019-03-24 14:22:19 +1300 NZDT
TAG Block source:    Satelite_1

Thank you!

@klyve @simeonmiteff @icholy