NMEA2000 Library
0.1
Library to handle NMEA 2000 Communication written in C++
|
Types used to make the payload of NMEA2000 messages more easy to read for humans. More...
Types used to make the payload of NMEA2000 messages more easy to read for humans.
As the payload of a NMEA2000 is quite limited, the data is stored with variable number of bits. To make these "bitmasks" more convenient for humans to read enums are defined.
using tN2kAISAtoNType = tN2kDD305 |
Alias easier for humans to read for tN2kDD305.
Definition at line 633 of file N2kTypes.h.
using tN2kAnchorDockingStates = tN2kDD482 |
Alias easier for humans to read for tN2kDD482.
Definition at line 734 of file N2kTypes.h.
using tN2kDataMode = tN2kDD025 |
Alias easier for humans to read for tN2kDD025.
Definition at line 604 of file N2kTypes.h.
using tN2kDelaySource = tN2kDD374 |
Alias easier for humans to read for tN2kDD374.
Definition at line 669 of file N2kTypes.h.
using tN2kEngineDiscreteStatus1 = tN2kDD206 |
Alias easier for humans to read for tN2kDD206.
Definition at line 582 of file N2kTypes.h.
using tN2kEngineDiscreteStatus2 = tN2kDD223 |
Alias easier for humans to read for tN2kDD223.
Definition at line 584 of file N2kTypes.h.
using tN2kGenericStatusPair = tN2kDD002 |
Alias easier for humans to read for tN2kDD002.
Definition at line 587 of file N2kTypes.h.
using tN2kMotorPowerType = tN2kDD487 |
Alias easier for humans to read for tN2kDD487.
Definition at line 759 of file N2kTypes.h.
using tN2kPRNUsageStatus = tN2kDD124 |
Alias easier for humans to read for tN2kDD124.
Definition at line 622 of file N2kTypes.h.
using tN2kRangeResidualMode = tN2kDD072 |
Alias easier for humans to read for tN2kDD072.
Definition at line 615 of file N2kTypes.h.
using tN2kRodeTypeStates = tN2kDD481 |
Alias easier for humans to read for tN2kDD481.
Definition at line 726 of file N2kTypes.h.
using tN2kSpeedType = tN2kDD488 |
Alias easier for humans to read for tN2kDD488.
Definition at line 767 of file N2kTypes.h.
using tN2kThrusterControlEvents = tN2kDD475 |
Alias easier for humans to read for tN2kDD475.
Definition at line 701 of file N2kTypes.h.
Alias easier for humans to read for tN2kDD473.
Definition at line 688 of file N2kTypes.h.
using tN2kThrusterMotorEvents = tN2kDD471 |
Alias easier for humans to read for tN2kDD471.
Definition at line 678 of file N2kTypes.h.
using tN2kThrusterRetraction = tN2kDD474 |
Alias easier for humans to read for tN2kDD474.
Definition at line 695 of file N2kTypes.h.
using tN2kWindlassControlEvents = tN2kDD478 |
Alias easier for humans to read for tN2kDD478.
Definition at line 713 of file N2kTypes.h.
Alias easier for humans to read for tN2kDD484.
Definition at line 751 of file N2kTypes.h.
Alias easier for humans to read for tN2kDD477.
Definition at line 706 of file N2kTypes.h.
using tN2kWindlassMotionStates = tN2kDD480 |
Alias easier for humans to read for tN2kDD480.
Definition at line 718 of file N2kTypes.h.
using tN2kWindlassOperatingEvents = tN2kDD483 |
Alias easier for humans to read for tN2kDD483.
Definition at line 742 of file N2kTypes.h.
enum tN2kAISDTE |
Enumeration of Data Terminal Equipment according to PNG 129794.
Enumerator | |
---|---|
N2kaisdte_Ready | equipment is ready |
N2kaisdte_NotReady | equipment is not ready |
Definition at line 416 of file N2kTypes.h.
enum tN2kAISMode |
Enumeration of AIS mode type according to PGN 129039.
https://www.marineteacher.com/ais
There are 3 modes of operation of AIS: Autonomous and continuous mode: In this mode AIS automatically defines its own reporting rate in accordance with its navigational mode, speed and course. The unit also selects its own time slots. This is normal mode for operation in all areas but the mode may be switched from/to Assigned or Polled/Controlled mode by a competent authority via a base station on shore. Assigned/ Controlled Mode: A competent authority responsible for traffic monitoring may remotely set transmissions intervals and/or time slots for the vessel mobile stations. In Assigned mode the mobile station does not change its reporting rate when changing course and speed. Polled Mode: In this mode, mobile station will automatically respond to interrogation (polling) messages from a ship or competent authority. The response is transmitted on the channel where the interrogation message was received. Operation in Polled mode does not conflict with the operation in other two modes.
Enumerator | |
---|---|
N2kaismode_Autonomous | AIS is in Autonomous mode. |
N2kaismode_Assigned | AIS is in assigned mode. |
Definition at line 451 of file N2kTypes.h.
enum tN2kAISNavStatus |
Enumeration of navigational status of an ship sending out an AIS signal according to PGN 129038.
Definition at line 398 of file N2kTypes.h.
enum tN2kAISRepeat |
Enumeration of AIS repeat indicator according to PGN129802, PGN129809, PGN129810, PGN129038, PGN129041,PGN129794.
Enumerator | |
---|---|
N2kaisr_Initial | initial AIS repeat |
N2kaisr_First | first AIS repeat |
N2kaisr_Second | second AIS repeat |
N2kaisr_Final | final AIS repeat |
Definition at line 368 of file N2kTypes.h.
Enumeration of 129039, 129041, 129802.
Definition at line 459 of file N2kTypes.h.
enum tN2kAISUnit |
Enumeration of AIS unit (transmission) type according to PGN 129039.
Enumerator | |
---|---|
N2kaisunit_ClassB_SOTDMA | AIS Unit uses SOTDMA (Self Organizing Time Division Multiple Access) |
N2kaisunit_ClassB_CS | AIS unit uses CSTDMA (Carrier Sense Time Division Multiple Access) |
Definition at line 424 of file N2kTypes.h.
enum tN2kAISVersion |
Enumeration of AIS version which is used in PGN 129794.
M.1371 : Technical characteristics for an automatic identification system using time division multiple access in the VHF maritime mobile frequency band.
Enumerator | |
---|---|
N2kaisv_ITU_R_M_1371_1 | version ITU-R M.1371_1 |
N2kaisv_ITU_R_M_1371_3 | version ITU-R M.1371_3 |
Definition at line 388 of file N2kTypes.h.
enum tN2kBatChem |
Enumeration of battery chemistries according to PGN 127513.
«Battery Chemistry» parameter in PGN 127513 «Battery Configuration Status». Used for reporting, to choose default values of settings and for calculations.
Definition at line 332 of file N2kTypes.h.
enum tN2kBatEqSupport |
Enumeration of Supports Equalization according to PGN 127513.
«Supports Equalization» parameter in PGN 127513 «Battery Configuration Status» (used for reporting only,not for calculations).
Enumerator | |
---|---|
N2kDCES_No | No, Off, Disabled. |
N2kDCES_Yes | Yes, On, Enabled. |
N2kDCES_Error | Error. |
N2kDCES_Unavailable | Unavailable. |
Definition at line 318 of file N2kTypes.h.
enum tN2kBatNomVolt |
Enumeration of nominal battery voltage according to PGN 127513.
Nominal voltage in PGN 127513 «Battery Configuration Status».
Definition at line 345 of file N2kTypes.h.
enum tN2kBatType |
Enumeration of Battery types according to PGN 127513.
Battery type in PGN 127513 «Battery Configuration Status» (for reporting only).
Enumerator | |
---|---|
N2kDCbt_Flooded | battery type is an flooded lead acid |
N2kDCbt_Gel | battery type is GEL |
N2kDCbt_AGM | battery type is AGM |
Definition at line 306 of file N2kTypes.h.
enum tN2kChargerMode |
Enumeration of charger modes according to PGN 127507.
Definition at line 518 of file N2kTypes.h.
enum tN2kChargeState |
Enumeration of state of the battery charger operation according to PGN127507.
Definition at line 500 of file N2kTypes.h.
enum tN2kDCType |
Enumeration of DC power sources according to PGN 127506.
DC Type for PGN 127506 «DC Detailed Status». Legacy NMEA 2000 devices may not support this PGN
Definition at line 292 of file N2kTypes.h.
enum tN2kDD002 |
DD002 - Generic Status Pair.
DD002 Generic status pair DF52 2bit MSB/LSB:
Definition at line 64 of file NMEA2000StdTypes.h.
enum tN2kDD025 |
DD025 - Mode, Data.
DD025 - Mode, Data DF52 4bits
Definition at line 94 of file NMEA2000StdTypes.h.
enum tN2kDD072 |
DD072 - Range Residual Mode.
DD072 Range Residual Mode DF52 2bits Range Residual used in position calculation or range residuals were calculated after the position.
Definition at line 115 of file NMEA2000StdTypes.h.
enum tN2kDD124 |
DD124 - PRN Usage Status.
DD124 PRN Usage Status DF52 4bit
Definition at line 137 of file NMEA2000StdTypes.h.
enum tN2kDD305 |
Enumeration of Aid to Navigation (AtoN) Type according to PGN129041.
Type of AtoN.
Message 21: Aids-to-navigation report (AtoN)
ITU-R M.1371-4 This message should be used by an AtoN AIS station. This station may be mounted on an aid-to-navigation or this message may be transmitted by a fixed station when the functionality of an AtoN station is integrated into the fixed station. This message should be transmitted autonomously at a Rr of once every three (3) min or it may be assigned by an assigned mode command (Message16) via the VHF data link, or by an external command. This message should not occupy more than two slots
Definition at line 264 of file NMEA2000StdTypes.h.
enum tN2kDD374 |
Measurement delay source.
Definition at line 304 of file NMEA2000StdTypes.h.
enum tN2kDD473 |
DD473 - Thruster Direction Control according to PGN 128006.
DD473 - Thruster Direction Control DF52 4bit
Enumerator | |
---|---|
N2kDD473_OFF | Thruster is Off. |
N2kDD473_ThrusterReady | Truster is Ready. |
N2kDD473_ThrusterToPORT | Truster to port. |
N2kDD473_ThrusterToSTARBOARD | Thruster to starboard. |
Definition at line 366 of file NMEA2000StdTypes.h.
enum tN2kDD474 |
DD474 - Thruster Retraction according to PGN 128006.
DD474 - Thruster Retraction DF52 2bit
Enumerator | |
---|---|
N2kDD474_OFF | Thruster retraction Off. |
N2kDD474_Extend | Thruster retraction Extend. |
N2kDD474_Retract | Thruster retraction Retract. |
N2kDD474_Reserved | Thruster retraction Reserved. |
Definition at line 384 of file NMEA2000StdTypes.h.
enum tN2kDD480 |
DD480 - Windlass Motion States according to PGN 128777.
DD480 - Windlass Motion States DF52 2bit
Enumerator | |
---|---|
N2kDD480_WindlassStopped | Windlass stopped. |
N2kDD480_DeploymentOccurring | Deployment occurring. |
N2kDD480_RetrievalOccurring | Retrieval occurring. |
N2kDD480_Unavailable | Unavailable. |
Definition at line 466 of file NMEA2000StdTypes.h.
enum tN2kDD481 |
DD481 - Rode Type States according to PGN 128777.
DD481 - Rode Type States Df52 2bit
Enumerator | |
---|---|
N2kDD481_ChainPresentlyDetected | Chain presently detected. |
N2kDD481_RopePresentlyDetected | Rope presently detected. |
N2kDD481_Error | Error. |
N2kDD481_Unavailable | Unavailable. |
Definition at line 483 of file NMEA2000StdTypes.h.
enum tN2kDD482 |
DD482 - Anchor Docking States according to PGN 128777.
DD482 - Anchor Docking States DF52 2bit
Enumerator | |
---|---|
N2kDD482_NotDocked | Not docked. |
N2kDD482_FullyDocked | Fully docked. |
N2kDD482_Error | Error. |
N2kDD482_DataNotAvailable | Data not available. |
Definition at line 500 of file NMEA2000StdTypes.h.
enum tN2kDD484 |
DD484 - Windlass Direction Control according to PGN 128776.
DD484 - Windlass Direction Control
Enumerator | |
---|---|
N2kDD484_Off | Status only / cannot command. |
N2kDD484_Down | Windlass DOWN. |
N2kDD484_Up | Windlass UP. |
N2kDD484_Reserved | Reserved. |
Definition at line 543 of file NMEA2000StdTypes.h.
enum tN2kDD487 |
DD487 - Motor Power Type according to PGN 128007.
DD487 - Motor Power Type DF52 4bit
Definition at line 562 of file NMEA2000StdTypes.h.
enum tN2kDD488 |
DD488 - Speed Control Type according to PGN 128776.
DD488 - Speed Control Type according to PGN 128776
Enumerator | |
---|---|
N2kDD488_SingleSpeed | Single Speed. |
N2kDD488_DualSpeed | Dual Speed. |
N2kDD488_ProportionalSpeed | Proportional Speed. |
N2kDD488_DataNotAvailable | Data Not Available. |
Definition at line 580 of file NMEA2000StdTypes.h.
Enumeration of distance calculation types for navigation according to PGN129284.
Enumerator | |
---|---|
N2kdct_GreatCircle | great circle calculation |
N2kdct_RhumbLine | rhumb line calculation |
Definition at line 83 of file N2kTypes.h.
enum tN2kFluidType |
Enumeration of fluid types according to PGN127505.
Definition at line 234 of file N2kTypes.h.
enum tN2kGNSSDOPmode |
Enumeration of GNSS DOP Mode according to PGN129539.
Dilution of precision (DOP), or geometric dilution of precision (GDOP), is a term used in satellite navigation and geomatics engineering to specify the error propagation as a mathematical effect of navigation satellite geometry on positional measurement precision.
DOP can be expressed as a number of separate measurements:
https://en.wikipedia.org/wiki/Dilution_of_precision_(navigation)
Definition at line 156 of file N2kTypes.h.
enum tN2kGNSSmethod |
Enumeration of GNSS working methods according to PGN129029.
These working methods of the GNSS determine the precision of the GNSS position
Definition at line 126 of file N2kTypes.h.
enum tN2kGNSStype |
Enumeration of the GPS system which is in use according to PGN129029, PGN129041 and PGN129794.
Definition at line 108 of file N2kTypes.h.
enum tN2kHeadingReference |
Enumeration of the heading type according to PGN129233, PGN129237 , PGN129250, PGN129026 and PGN129284.
Enumerator | |
---|---|
N2khr_true | heading true (eg. GNSS) direction |
N2khr_magnetic | heading magnetic compass direction |
N2khr_error | error occurred |
N2khr_Unavailable | unavailable |
Definition at line 62 of file N2kTypes.h.
enum tN2kHumiditySource |
Enumeration of sources for a humidity value according to PGN130311 and PGN130313.
Enumerator | |
---|---|
N2khs_InsideHumidity | humidity is measured inside |
N2khs_OutsideHumidity | humidity is measured outside |
N2khs_Undef | source is undefined |
Definition at line 194 of file N2kTypes.h.
Enumeration of magnetic variation according to PGN 127258.
The World Magnetic Modell (WMM) can be found under https://www.ngdc.noaa.gov/geomag/WMM/WMM_old_reports.shtml
Definition at line 473 of file N2kTypes.h.
Enumeration of MOB emitter battery status according to PGN127233.
Enumerator | |
---|---|
Good | Battery status of the MOB emitter is good. |
Low | Battery status of the MOB emitter is low. |
Definition at line 572 of file N2kTypes.h.
Enumeration of ManOverBoard position source according to PGN127233.
Enumerator | |
---|---|
PositionEstimatedByVessel | MOB position is estimated by the vessel. |
PositionReportedByMOBEmitter | MOB position is reported by MOB emitter. |
Definition at line 564 of file N2kTypes.h.
enum tN2kMOBStatus |
Enumeration of ManOverBoard state according to PGN127233.
Enumerator | |
---|---|
MOBEmitterActivated | MOB emitter has triggered the status. |
ManualOnBoardMOBButtonActivation | MOB was triggered manually. |
TestMode | MOB in test mode. |
MOBNotActive | MOB not active. |
Definition at line 554 of file N2kTypes.h.
Enumeration of the navigation direction according to PGN129285.
Definition at line 47 of file N2kTypes.h.
enum tN2kOnOff |
Enumeration of On/Off status at a NMEA 2000 network.
Enumerator | |
---|---|
N2kOnOff_Off | No, Off, Disabled. |
N2kOnOff_On | Yes, On, Enabled. |
N2kOnOff_Error | Error. |
N2kOnOff_Unavailable | Unavailable. |
Definition at line 488 of file N2kTypes.h.
enum tN2kPressureSource |
Enumeration of sources for a pressure value according to PGN130314 and PGN130315.
Definition at line 204 of file N2kTypes.h.
Enumeration of Rudder Direction Order according to PGN127237, 127245.
Enumerator | |
---|---|
N2kRDO_NoDirectionOrder | no direction order |
N2kRDO_MoveToStarboard | move to starboard |
N2kRDO_MoveToPort | move to port |
N2kRDO_Unavailable | unavailable |
Definition at line 279 of file N2kTypes.h.
Enumeration of speed thru water sensors types according to PGN128259.
Definition at line 266 of file N2kTypes.h.
enum tN2kSteeringMode |
Enumeration of the steering mode according to PGN127237.
Definition at line 530 of file N2kTypes.h.
enum tN2kTempSource |
Enumeration of sources for a temperature value according to PGN130311, PGN130312 and PGN130316.
Definition at line 171 of file N2kTypes.h.
enum tN2kTimeSource |
Enumeration of sources for the system time according to PGN126992.
Definition at line 222 of file N2kTypes.h.
enum tN2kTransmissionGear |
Enumeration of transmission state according to PGN 127493.
Enumerator | |
---|---|
N2kTG_Forward | transmission state is forward |
N2kTG_Neutral | transmission state is neutral |
N2kTG_Reverse | transmission state is reverse |
N2kTG_Unknown | transmission state is unknown |
Definition at line 358 of file N2kTypes.h.
enum tN2kTurnMode |
Enumeration of tunr control modes according to PGN127237.
Definition at line 544 of file N2kTypes.h.
enum tN2kWindReference |
Enumeration of wind reference types according to PGN130306.
Details found on page 12 of https://www.rocktheboatmarinestereo.com/specs/MSNRX200I.pdf
Definition at line 252 of file N2kTypes.h.
enum tN2kXTEMode |
Enumeration of Cross Track Error modes according to PGN129283.
Cross-track error (XTE) is an essential at-a-glance indication of your distance to port or starboard of your intended straight track between two waypoints.
Enumerator | |
---|---|
N2kxtem_Autonomous | autonomous mode |
N2kxtem_Differential | differential mode |
N2kxtem_Estimated | estimated mode |
N2kxtem_Simulator | simulator mode |
N2kxtem_Manual | manual mode |
Definition at line 95 of file N2kTypes.h.